Как отменить и повторить действие в Vim/Vi

Vim Отменить и Повторить

Вы когда-нибудь оказывались в ситуации, когда вы случайно удалили строку или передумали по поводу редактирования и хотели отменить изменения?

В этой статье мы покажем вам, как отменять и повторять изменения в Vim/Vi.

Vi — это облегченный редактор, который появился еще на заре Unix, в то время как Vim — это расширенная версия Vi, которая включает в себя множество дополнительных функций и опций.

Vi или Vim предустановлен по умолчанию в macOS и почти во всех дистрибутивах Linux. Знание основ Vim может быть особенно полезно, когда вы сталкиваетесь с ситуацией, когда ваш любимый редактор недоступен.

Отмена изменений в Vim / Vi

Vim отслеживает все изменения, внесённые вами в текущем сеансе. Команда «Отменить» отменяет одно или несколько изменений в том порядке, в котором они были внесены.

Для отмены изменений в Vim и Vi используйте команды u , :u или :undo :

  1. Если вы находитесь в режиме вставки или любом другом режиме, нажмите клавишу Esc , чтобы вернуться в обычный режим, который также известен как командный режим.
  2. Введите u , чтобы отменить последнее изменение. В Vim команда u также принимает квантификаторы. Например, если вы хотите отменить четыре последних изменения, используйте 4u .

Убедитесь, что вы вводите строчную букву u , а не заглавную команду U , которая отменяет все последние изменения в одной строке. Если вы случайно набрали U отменить изменение можно с помощью u .

Используйте команду «Отменить», чтобы отменить изменения, внесенные любой другой командой, например, «Удалить», «Вставить» , «Поиск и замена» и т. д.

При работе в режиме вставки все изменения текста рассматриваются как одна запись в дереве отмены. Например, если переключиться в режим вставки и ввести пять строк, а затем вернуться в обычный режим и нажать клавишу u для отмены изменения, все пять строк будут удалены.

Повторить изменения в Vim / Vi

Функция «Повторить» является противоположностью функции «Отменить»: она позволяет отменить предыдущее действие.

Чтобы повторить изменение в Vim и Vi, используйте команду Ctrl-R или :redo :

  1. Нажмите клавишу Esc , чтобы вернуться в обычный режим.
  2. Используйте сочетание Ctrl-R (нажмите и удерживайте Ctrl и нажмите клавишу r ), чтобы повторить последнее изменение. В Vim также можно использовать квантификаторы. Например, чтобы повторить четыре последних изменения, нажмите 4Ctrl-R .

Каждую команду отмены можно отменить командой повтора.

Заключение

При работе с текстовыми файлами часто случаются ошибки при редактировании, например, случайное удаление строки или внесение непреднамеренных изменений. Чтобы отменить изменение в Vim/Vi, нажмите u , а чтобы вернуть отменённое изменение, используйте сочетание клавиш Ctrl-R .

Vim также поддерживает отмену переходов .

Кроме того, вы можете использовать команды :earlier и :later для перемещения назад и вперёд во времени по внесённым вами изменениям. Например, команда :earlier 10m отменит изменения, внесённые за последние десять минут, а команда :later 5s вернёт изменения, внесённые пять секунд назад.

Если у вас есть вопросы, не стесняйтесь оставлять комментарии.

терминал vim

Связанные руководства

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *