Ich möchte die Datei foo.bar
zweimal (oder öfter) in Emacs öffnen , damit ich zwei verschiedene Teile gleichzeitig bearbeiten kann. Ist es möglich? Wahrscheinlich ist die bessere Frage, wie es geht? Gibt es eine Möglichkeit, jede Instanz in einem eigenen Puffer / Frame zu öffnen?
28
Antworten:
Sie können denselben Puffer in mehr als einem Fenster öffnen (das auf verschiedene Frames verteilt werden kann), dies ist jedoch nicht sehr praktisch. Jedes Fenster hat einen eigenen Punkt, aber alle haben die Marke, den Dateimodus, die Verengung und andere Eigenschaften gemeinsam, da abgesehen vom Punkt so ziemlich alle Eigenschaften mit dem Puffer verknüpft sind. Wenn Sie zufällig einen anderen Puffer in einem Fenster aufrufen, verlieren Sie Ihren Platz in der Datei.
Sie können einen indirekten Puffer erstellen, der über einen eigenen Punkt, eine eigene Markierung, Modi usw. verfügt, jedoch denselben Inhalt wie der ursprüngliche Puffer hat (und einen der beiden Puffer speichert, der in dieselbe Datei geschrieben wird). Führen Sie den folgenden Befehl aus, um einen zweiten Puffer zu erstellen, der ein Klon des aktuellen Puffers ist
M-x clone-indirect-buffer RET
. Um diesen zweiten Puffer in einem anderen Fenster zu öffnen, können Sie Folgendes eingebenC-x 4 c
.quelle
C-x 4 c
Wird ausgeführtclone-indirect-buffer-other-window
, wird also verwendet, anstattclone-indirect-buffer
diesem Befehl nicht zu folgen. Auf meinem System scheinen beide Befehle dasselbe zu tun.C-x 4
ist das Präfix für Windows,c
ist für den Klon . Sie können andere Bindungen definieren, wenn Sie dies vorziehen.C-x c
wird in der Standardkonfiguration nicht verwendet, können Sie dies verwenden, wenn Sie keine Angst haben, versehentlich zu schlagenC-x C-c
. Ich definiereC-x 5 c
das Klonen in einem neuen Frame in meiner Init-Datei.Geteilter Bildschirmmodus: wobei ctrl+ xbedeutet, dass Sie die Strg-Taste gedrückt halten und ein x eingeben. Geben Sie dann die folgende Zahl ein.
ctrl+ x2 (horizontale Teilung)
oder
ctrl+ x3 (vertikale Teilung)
Dann können Sie sie unabhängig voneinander in derselben Datei scrollen oder einen anderen Puffer öffnen, wenn Sie dies in einer von ihnen wünschen.
So kehren Sie zu einem einzelnen Ansichtstyp zurück
ctrl+ x1
Wenn Sie möchten, können Sie jeden Bildschirm (Abschnitt) so oft wie nötig teilen. Wählen Sie den Bildschirm aus, den Sie zuerst teilen möchten, und führen Sie dann eine horizontale oder vertikale Teilung durch.
quelle
C-x o
Läuftother-window
und durchläuft die sichtbaren "Fenster" in jedem "Frame". (Unter Verwendung der Emacs-Konfiguration, in der Fenster des Fenstermanagers als Frames bezeichnet werden und die separaten Fenster darin als Fenster bezeichnet werden (ich weiß, ich weiß, aber ich bin nicht dafür verantwortlich).)Emacs ist auf Fenster und nicht auf Frames ausgerichtet. Es ist oft wünschenswert, denselben Puffer in einem anderen Frame zu öffnen, nicht nur in einem anderen Fenster im selben Frame. Aber
C-x 5 c
ist standardmäßig ungebunden. Dieser Code definiert die fehlendeclone-indirect-buffer-other-frame
Funktion:quelle