Warum sollte man bei den heutigen großen Bildschirmen jemals etwas anderes als Fenster nebeneinander betreiben wollen? Ich verwende sechs auf zwei Monitorns verteilte Fenster - ich verwende github.com/Lindydancer/multicolumn , um die Fenster einzurichten, wenn ich Emacs starte und die meisten meiner Pakete so konfiguriert habe, dass vorhandene Fenster wiederverwendet werden.
Hier ist eine einfache Funktion, die zwischen einer horizontalen und einer vertikalen Teilung umschaltet. Es wird davon ausgegangen, dass Sie nur zwei Fenster haben und die Größe nicht ändern:
(defun window-split-toggle ()
"Toggle between horizontal and vertical split with two windows."
(interactive)
(if (> (length (window-list)) 2)
(error "Can't toggle with more than 2 windows!")
(let ((func (if (window-full-height-p)
#'split-window-vertically
#'split-window-horizontally)))
(delete-other-windows)
(funcall func)
(save-selected-window
(other-window 1)
(switch-to-buffer (other-buffer))))))
Alternativ gibt es tranpose-frameauf EmacsWiki ein Paket , mit dem Sie den gesamten Frame transponieren und andere Transformationen durchführen können (um 180 Grad drehen; um 90 Grad im oder gegen den Uhrzeigersinn drehen; horizontal oder vertikal drehen).
Antworten:
Hier ist eine einfache Funktion, die zwischen einer horizontalen und einer vertikalen Teilung umschaltet. Es wird davon ausgegangen, dass Sie nur zwei Fenster haben und die Größe nicht ändern:
quelle
Alternativ gibt es
tranpose-frame
auf EmacsWiki ein Paket , mit dem Sie den gesamten Frame transponieren und andere Transformationen durchführen können (um 180 Grad drehen; um 90 Grad im oder gegen den Uhrzeigersinn drehen; horizontal oder vertikal drehen).quelle
Das
transpose-frame
Paket ist auch bei MELPA erhältlich .Verwenden
M-x transpose-frame
oder binden Sie es an etwas, um dies zu erreichen.quelle