Der eingebaute Weg, dies zu tun, ist mit Registern.
Zum Beispiel C-xrwazum Speichern der aktuellen Fensterkonfiguration zum Registrieren von a.
Dann können Sie die eingebaute Bindung C-x1zum Ausführen verwendendelete-other-windows
Nachdem Sie die einzelne Datei angesehen haben, kehren Sie mit C-xrjazu der gespeicherten Fensterkonfiguration in Register a zurück.
Zusamenfassend:
C-xrwa (Konfiguration im Register speichern)
C-x1 (andere Fenster löschen)
C-xrja (gespeicherte Fensterkonfiguration erneut anwenden)
Ich finde Register jedoch unhandlich. Ich verwende einen benutzerdefinierten Fenster-Konfigurationsstapel, um meine Konfigurationen zu verwalten.
Ich habe zwei Bindungen, die die aktuelle Konfiguration auf den Stapel schieben und die oberste Konfiguration einfügen und anwenden.
In Ihrem Szenario würde ich also zuerst meine Push-Bindung, dann Cx 1 und dann meine Pop-Bindung ausführen.
Hier ist der Code:
(defvar winstack-stack '()
"A Stack holding window configurations.
Use `winstack-push' and
`winstack-pop' to modify it.")
(defun winstack-push()
"Push the current window configuration onto `winstack-stack'."
(interactive)
(if (and (window-configuration-p (first winstack-stack))
(compare-window-configurations (first winstack-stack) (current-window-configuration)))
(message "Current config already pushed")
(progn (push (current-window-configuration) winstack-stack)
(message (concat "pushed " (number-to-string
(length (window-list (selected-frame)))) " frame config")))))
(defun winstack-pop()
"Pop the last window configuration off `winstack-stack' and apply it."
(interactive)
(if (first winstack-stack)
(progn (set-window-configuration (pop winstack-stack))
(message "popped"))
(message "End of window stack")))
Anschließend können Sie binden winstack-push
an so etwas wie C-cC-u, und winstack-pop
zu C-cC-oleicht zu springen herum.