Zurückgehen (Strg + Z) in vi / vim

106

In normalen Texteditoren [bei allem Respekt vor Vim] gibt es eine Verknüpfung Ctrl+, Zwenn Sie etwas Böses getan haben und zur vorherigen Version des Textes zurückkehren möchten. Wie die Schaltfläche ZURÜCK in Word. Ich frage mich, wie Sie dieses Verhalten in Vim erreichen können.

Slazer
quelle
1
Die Vim-Dokumentation ist auch sehr gut - :help undohier finden Sie zum Beispiel Ihre Antwort.
Chris Morgan
2
Bevor Sie vollständig in vim
eintauchen
1
Ich danke Ihnen allen und entschuldige mich für dieses q. Muss beim nächsten Mal mehr lesen.
Slazer
1
Unter Linux bedeutet STRG-Z in vi / vim / gvim, dass Sie zur Konsole entkommen oder dies in den Hintergrund stellen. Sie tun dann, was Sie wollen, auf der Konsole und geben fg (Vordergrund) ein, um Sie wieder in die vim-Bearbeitungssitzung zu bringen.
Mancocapac

Antworten:

187

Mit der uSchaltfläche können Sie die letzte Änderung rückgängig machen. (Und Ctrl+ Rum es zu wiederholen).

Weitere Informationen finden Sie unter: http://vim.wikia.com/wiki/Undo_and_Redo

Qiau
quelle
2
Ich ordne U Redo zu, damit ich den gesamten Bearbeitungsverlauf bei Bedarf schnell rückgängig machen / wiederholen kann, in vimrc: nnoremap U <CR>
NeilG
10

Die Antwort u(und viele andere) ist in $ vimtutor.

romainl
quelle
up vote nur , weil ich gehört habe ich nie vimtutorvor
Paiusco
4

Hier ist jedoch ein Trick. Sie können die Ctrl+ ZTasten zuordnen. Dies kann durch Bearbeiten der .vimrcDatei erreicht werden. Fügen Sie die folgenden Zeilen in die Datei '.vimrc` ein.

nnoremap <c-z> :u<CR>      " Avoid using this**
inoremap <c-z> <c-o>:u<CR>

Dies ist möglicherweise nicht der bevorzugte Weg, kann aber verwendet werden.

** Ctrl+ Zwird unter Linux verwendet, um das laufende Programm / den laufenden Prozess anzuhalten.

madD7
quelle
1

Drücken Sie im normalen Modus :

  • u- rückgängig machen ,
  • Ctrl+ r- Redo Änderungen , die rückgängig gemacht wurden ( rückgängig machen die Undo - Schritte ).

Rückgängig machen und wiederholen

simhumileco
quelle
Ich weiß, dass der größte Teil meiner Antwort mit den bereits vorhandenen Antworten dupliziert wird, aber der Mehrwert meiner Antwort wird basierend auf der Dokumentation als Ctrl + r(Kleinbuchstaben r) wiederholt . Niemand zuvor hat es hierher gebracht. Außerdem habe ich versucht, die Antwort so klar wie möglich zu machen.
Simhumileco
0

Auf einem Mac können Sie auch den Befehl Z verwenden, der rückgängig gemacht wird. Ich bin mir nicht sicher warum, aber manchmal hört es auf, und wenn Sie wie ich und vimtutor am Ende dieser langen Liste von Dingen stehen, die Sie lernen müssen, können Sie einfach das Fenster schließen und es wieder öffnen und sollten gut funktionieren.

Eichhörnchen
quelle
0

Ich hatte jetzt das gleiche Problem und habe es gelöst. Du darfst es nicht mehr brauchen, also schreibe ich für andere:

Wenn Sie gvim unter Windows verwenden , fügen Sie dies einfach in Ihr _vimrc ein : $VIMRUNTIME/mswin.vim behave mswin

sonst benutze einfach imap ...

Wolke Duan
quelle