Kann ich meinen Cursor in einem Puffer an seine letzte Position zurückspringen lassen? (vorzugsweise ohne die vorherige Position markieren zu müssen)
Zum Beispiel, Ca springt an den Anfang der aktuellen Zeile. Kann ich dorthin zurückspringen, wo es vorher war?
Zum Beispiel, wenn Cx Cf eine Datei in einem anderen Verzeichnis öffnen, möchte ich zur vorherigen Position im Pfadnamen zurückspringen.
Vielen Dank.
C-x x
was laufenexchange-point-and-mark
? Emacs speichert nicht alle Cursorbewegungen, sondern nur die, denen Sie dies ausdrücklich gesagt haben. Das Hinzufügen und Entfernen von Markierungen ist eine Möglichkeit, den Verlauf der Cursorbewegung zu speichern. emacswiki.org/emacs/MarkCommands - hier ist eine gute Diskussion über das Thema.C-x x
ist undefiniert.M-x exchange-point-and-mark
: In diesem Puffer ist keine Markierung gesetzt.C-x C-x
. Außerdem müssen Sie zuerst eine Markierung setzen, damit dies funktioniert. Um eine Marke explizit zu setzen, tun Sie diesC-SPC
. So springen Sie zur vorherigen Marke zurückC-u C-SPC
.C-x C-x
.C-x x
ist meine eigene Bindung.Antworten:
Hier sind einige Zeichen -related Bindungen , die Ihnen helfen können:
C-SPC
- Markierung setzen und Region aktivieren (gebunden anset-mark-command
)C-SPC C-SPC
- Markierung setzen (aktiviert und deaktiviert Region)C-x C-x
- gebunden anexchange-point-and-mark
C-u C-SPC
- zur vorherigen Marke springenWeitere Informationen zu diesem Thema finden Sie in der Dokumentation zu Mark .
quelle
C-u C-SPC
.counsel-mark-ring
es ist auch möglich , alle Noten aufzulisten und mit Cursor navigieren, eine Echtzeit - Vorschau im Puffer zu bekommen.Wenn Sie an den Orten bearbeiten, an denen Sie landen,
goto-last-change
wird dies für Sie erledigt. http://www.emacswiki.org/emacs/GotoLastChangequelle
g ;
Sie können "Register" verwenden.
Aus der Emacs-Info-Datei
13.1 Positionen in Registern speichern
C-x r <SPC> R' Record the position of point and the current buffer in register R (
point-to-register ').C-x r j R' Jump to the position and buffer saved in register R (
zum Register springen ').Wenn Sie
C-x r <SPC>' (
point-to-register ') gefolgt von einem Zeichen `R' eingeben, werden sowohl die Position des Punkts als auch der aktuelle Puffer in Register R gespeichert. Das Register speichert diese Informationen, bis Sie etwas anderes darin speichern.Der Befehl `Cx rj R 'wechselt zu dem in Register R aufgezeichneten Puffer und bewegt den Punkt an die aufgezeichnete Position. Der Inhalt des Registers wird nicht geändert, sodass Sie beliebig oft zur gespeicherten Position springen können.
Wenn Sie
C-x r j' to go to a saved position, but the buffer it was saved from has been killed,
Cx verwenden, versucht rj ', den Puffer durch Aufrufen derselben Datei erneut zu erstellen. Dies funktioniert natürlich nur für Puffer, die Dateien besucht haben.quelle