10 ответов:
Также проверьте
:undolist, который предлагает несколько путей через историю отмены. Это полезно, если вы случайно наберете что-то после удаления слишком многого.
Странно, что никто не упомянул
:earlier/:later. Чтобы переделать все, что вам просто нужно сделатьlater 9999999d(предполагая, что вы впервые отредактировали файл не более 9999999 дней назад), или, если вы помните разницу между текущим состоянием отмены и необходимым, используйте
Nh,NmилиNsдля часов, минут и секунд соответственно. +:later N<CR>Ng+и:later Nfдля записи файлов.
<Undo> or *undo* *<Undo>* *u* u Undo [count] changes. {Vi: only one level} *:u* *:un* *:undo* :u[ndo] Undo one change. {Vi: only one level} *CTRL-R* CTRL-R Redo [count] changes which were undone. {Vi: redraw screen} *:red* *:redo* *redo* :red[o] Redo one change which was undone. {Vi: no redo} *U* U Undo all latest changes on one line. {Vi: while not moved off of it}
В командном режиме используйте клавишу U для отмены и Ctrl + r повторить. Взгляните на http://www.vim.org/htmldoc/undo.html .
Обратитесь к части "отменить" и "повторить" документа vim .
:red [o] (повторить одно изменение, которое было отменено) и {count} Ctrl+r (Redo {count} изменения, которые были отменены) оба в порядке.
Также : ранее {count} (перейти к более старому текстовому состоянию {count} раз.) всегда может быть заменой отмены и повтора.
Сначала нажмите клавишу ESC , чтобы выйти из режима редактирования.
Затем,
Для отмены используйте u ключ столько раз, сколько вы хотите отменить.
Для повтора используйте CTRL +r ключ
Использование VsVim для Visual Studio?
Я столкнулся с этим, когда экспериментировал с VsVim, который предоставляет привязки для vim-команд в Visual Studio.
Я знаю о ctrlr в самом vim, но эта конкретная привязка не работает в VsVim (по крайней мере, не в моей настройке?).
То, что делает, однако, является командой
:red. Это немного больше хлопот, чем выше, но все равно прекрасно, когда вам это действительно нужно.
Практически говоря,: undolist трудно использовать, а vim: earlier and: later Time tracking of changes можно использовать только для исправления ошибок курса. Учитывая это, я прибегаю к плагину, который сочетает в себе эти функции, чтобы обеспечить визуальное дерево просматриваемых undo, называемое "gundo." Очевидно, что это то, что нужно использовать только тогда, когда вам нужно исправить мелкое зерно, или вы не уверены в точном состоянии документа, к которому вы хотите вернуться. Смотрите: https://sjl.bitbucket.io/gundo.vim/
Comments