vim - aktualisiert den Dateiverlauf häufiger

252

Ich habe mich gefragt, ob es überhaupt möglich ist, vim das Dateiverlauf öfter aktualisieren zu lassen.

Wenn ich zum Beispiel in den Einfügemodus gerät und 20 Zeilen Code eingebe, "Exit" und "u" drücke, wird alles, was ich eingegeben habe, rückgängig gemacht.

Gibt es eine Möglichkeit, diese Undos genauer zu machen, ohne ständig den Einfügemodus ein- und ausschalten zu müssen?

1

1 Antwort auf die Frage

1
Ingo Karkat

Sie können explizit einen zusätzlichen Rückgängig-Punkt <C-G>uim Einfügemodus ( :help i_CTRL-G_u) erstellen .

Da dies langwierig ist, würde ich empfehlen, Mappings zu erstellen, die dies auslösen. Zum Beispiel, wenn Sie einen Satz vervollständigen:

inoremap . <C-g>u. 

Oder beim Einfügen eines Registers:

inoremap <C-r> <C-g>u<C-r> 

Sie können auch eine erstellen, wenn Sie eine kurze Pause machen :autocmd:

autocmd CursorHoldI * call feedkeys("\<C-g>u", 'n') 
Was meinen Sie mit dem Einfügen eines Registers? Wofür steht das n im letzten Befehl? vor 8 Jahren 0
Sie können den Einfügemodus über `einfügen `, wie` " p` 'im Normalmodus. Da dies eine ganze Menge Text hinzufügen kann, ist ein Undo-Punkt hilfreich. Ingo Karkat vor 8 Jahren 0
Sie können das ausgezeichnete `: help 'verwenden, um weitere Fragen zu beantworten:`: help feedkeys () `sagt Ihnen, dass' n 'bedeutet, dass _keys nicht neu belegt werden. Ingo Karkat vor 8 Jahren 0