Иногда при редактировании файла вы можете удалить неправильную строку или передумать о редактировании, и вы захотите отменить изменения.
В этой статье объясняется, как отменить и повторить изменения в Vim/Vi.
Vi или Vim по умолчанию установлены в macOS и почти во всех дистрибутивах Linux. Знание основ Vim может быть очень полезно, когда вы сталкиваетесь с ситуацией, когда ваш любимый редактор недоступен.
Vim отслеживает все изменения, которые вы внесли в текущую сессию. Команда undo отменяет одно или несколько изменений в том порядке, в котором они были сделаны.
Чтобы отменить изменения в Vim и Vi, используйте команду u, :u или :undo:
Убедитесь, что вы набираете строчную u, а не прописную команду U, которая отменяет все последние изменения в одной строке. Если вы случайно напечатаете U, вы можете отменить изменение с помощью u.
Используйте команду undo, чтобы отменить изменения, сделанные любой другой командой, такой как удаление, вставка, поиск и замена и т. д.
При работе в режиме вставки все изменения в тексте рассматриваются как одна запись в дереве отмены. Например, если вы переключаетесь в режим вставки и вводите пять строк, затем возвращаетесь в нормальный режим и нажимаете, uчтобы отменить изменения, все пять строк удаляются.
Функция повтора отменяет действие отмены.
Чтобы отменить изменения в Vim и Vi, используйте Ctrl-R или :redo:
Каждая команда отмены может быть отменена командой повторения.
Чтобы отменить изменение в типе Vim/Vi u и отменить изменение, которое было отменено, используйте последовательность клавиш Ctrl-R.
Vim также поддерживает ветки отмены.
Не стесняйтесь оставлять комментарии, если у вас есть какие-либо вопросы.