Очистить все текущие определенные макросы vim - PullRequest
8 голосов
/ 22 апреля 2010

У меня есть макрос vim, который я продолжаю набирать неправильно, обычно, когда я пытаюсь что-то сохранить, поэтому я делаю это быстро и не могу понять, какие клавиши я нажал. Это раздражает, поскольку в мой файл вставляется какой-то нерелевантный код bash, поэтому я должен отменить ошибочное вставление, которое также отменяет последнее, что я набрал, что я хочу.

Я искал способ перечисления текущих определенных макросов (чтобы я мог переопределить нарушающий) или способ их полного удаления. Я использую макросы только в очень короткий срок, поэтому я не против потерять их все.

Приветствия

Ответы [ 2 ]

19 голосов
/ 22 апреля 2010

Макросы

То, что обычно называется макросом в vim, начинается с @ и буквы.Он выполняет содержимое регистра с указанным письмом в качестве имени.

Список содержимого регистра

:reg

Вы можете очистить регистр a с помощью

:let @a = ''Иногда сопоставления или сокращения путают для макросов, поэтому здесь приводится некоторая информация о них.

Отображения списка

все сопоставления

:map

все сопоставления, начинающиеся с \

:map \

нормальный режим

:nmap

режим вставки

:imap

визуальный режим

:vmap

командный режим

:cmap

Список сокращений

все сокращения

:abbr

все сокращения, начинающиеся с электронной почты

:abbr email

режим вставки

:iabbr

командный режим

:cabbr

Вы можете использовать :verbose перед предыдущими командами, чтобы получить больше информации о том, где сопоставление / сокращение были последнимиустановить, как в :verbose nmap.Эти команды также показывают все сопоставления, которые были установлены подключаемыми модулями и другими файлами конфигурации.

Удаление сопоставления / сокращения

(здесь перечислены только несколько режимов,Вы должны быть в состоянии удалить один только для определенного режима, как с командами перечисления выше.)

режим вставки, удалите отображение, которое определено как \:

:iunmap \\

нормальный режим:

:nunmap \\

удалить аббревиатуру, определенную как электронная почта:

:unabbr email

режим вставки:

:iunabbr email

Очистить сопоставления / сокращения

Я бы не рекомендовал очищать все сопоставления / сокращения, так как вы потеряли бы все, что ваши плагины отображали / сокращали.Однако вы можете очистить сопоставления, поставив букву c после команды перечисления, как в :imapc, чтобы очистить сопоставления режима вставки.Сокращения могут быть очищены с помощью :abclear, или просто для режима вставки :iabclear и только для командного режима :cabclear.

1 голос
/ 10 июня 2015

Чтобы очистить один макрос - запись поверх него - ни с чем.

Для вашей ситуации в обычном режиме вы просто наберете "qwq".

  • q, чтобы начать запись макроса
  • w для установки буферного пространства на w
  • q снова, чтобы сохранить (теперь пустой) макрос

Проверьте с помощью: reg [ister] w

Это только немного быстрее, чем: let @w = '', но для меня легче запомнить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...