Czy mogę zmusić kursor w buforze do powrotu do ostatniej pozycji? (najlepiej bez zaznaczania poprzedniej pozycji)
Na przykład Ca przeskakuje na początek bieżącej linii, czy mogę skoczyć z powrotem do poprzedniej linii?
Na przykład, gdy Cx Cf otwiera plik w innym katalogu, chcę skoczyć z powrotem do poprzedniej pozycji w nazwie ścieżki.
Dzięki.
C-x x
które biegiexchange-point-and-mark
wystarczą? Emacs nie przechowuje wszystkich ruchów kursora, tylko te, które specjalnie mu to nakazałeś. Dodawanie i usuwanie znaków to jeden ze sposobów przechowywania historii ruchów kursora. emacswiki.org/emacs/MarkCommands - oto dobra dyskusja na ten temat.C-x x
jest niezdefiniowany.M-x exchange-point-and-mark
: brak znaku w tym buforze.C-x C-x
. Musisz także najpierw oznaczyć ten znak, aby zadziałał. Aby wyraźnie oznaczyć znak, robiszC-SPC
. Aby wrócić do poprzedniego znaku, musiszC-u C-SPC
.C-x C-x
.C-x x
to moje własne zobowiązanie.Odpowiedzi:
Oto kilka powiązań związanych ze znakami, które mogą ci pomóc:
C-SPC
- ustaw znacznik i aktywuj region (związany zset-mark-command
)C-SPC C-SPC
- ustaw znacznik (aktywuje, a następnie dezaktywuje region)C-x C-x
- przywiązany doexchange-point-and-mark
C-u C-SPC
- przejście do poprzedniego znakuSprawdź dokumentację Mark, aby lepiej zrozumieć ten temat.
źródło
C-u C-SPC
.counsel-mark-ring
jest to również możliwe, aby wymienić wszystkie znaki i przejdź je z kursorami, uzyskanie podglądu w czasie rzeczywistym w buforze.Jeśli edytujesz w lokalizacjach, na których wylądujesz,
goto-last-change
zrób to za Ciebie. http://www.emacswiki.org/emacs/GotoLastChangeźródło
g ;
Możesz użyć `Rejestry '.
Z pliku informacyjnego emacsa
13.1 Zapisywanie pozycji w rejestrach
C-x r <SPC> R' Record the position of point and the current buffer in register R (
punkt do rejestracji ”).C-x r j R' Jump to the position and buffer saved in register R (
Jump-to-Register ').Wpisanie
C-x r <SPC>' (
point-to-register '), po którym następuje znak `R', zapisuje zarówno pozycję point, jak i bieżący bufor w rejestrze R. Rejestr zachowuje tę informację, dopóki nie zapiszesz w niej czegoś innego.Polecenie „Cx rj R” przełącza się na bufor zapisany w rejestrze R i przesuwa punkt do zapisanej pozycji. Zawartość rejestru nie ulega zmianie, więc możesz przeskoczyć do zapisanej pozycji dowolną liczbę razy.
Jeśli używasz
C-x r j' to go to a saved position, but the buffer it was saved from has been killed,
Cx rj 'próbuje ponownie utworzyć bufor, odwiedzając ten sam plik. Oczywiście działa to tylko w przypadku buforów, które odwiedzały pliki.źródło