Кто-нибудь знает, как правильно сохранять/повторно использовать макросы, записанные внутри редактора vim?
Сохранение макросов vim
Ответ 1
Используйте q, за которым следует буква для записи макроса. Это просто входит в один из регистров копирования/вставки, поэтому вы можете вставлять его как обычно с помощью команд "xp или "xp в нормальном режиме.
Чтобы сохранить его, вы открываете .vimrc и вставляете содержимое, тогда регистр будет в следующий раз, когда вы запустите vim.
Формат выглядит примерно так:
let @q = 'macro contents'
Будьте осторожны с цитатами. Им нужно будет сбежать должным образом.
Итак, чтобы сохранить макрос, вы можете сделать:
- Из нормального режима:
qq - введите любые команды
- Из нормального режима:
q - открыть .vimrc
-
"qp, чтобы вставить макрос в строкуlet @q = '...'
Ответ 2
Напишите свои макросы внутри ~/.vimrc, чтобы определить макрос, запущенный CTRL + O, например, добавьте следующую строку в ваш ~/.vimrc:
map <C-O> MACROTEXT
когда вы записываете макрос, набрав qa, вы можете получить текст макроса, набрав "ap
Ответ 3
Для более надежного решения вы можете проверить Marvim.
Позволяет сохранять макрос в определенном пространстве имен (или использовать тип файла как пространство имен по умолчанию), и вы можете впоследствии искать сохраненные макросы и загружать их в регистр, готовый для использования.
Если вы повторно используете много макросов, это очень полезно.
Ответ 4
Команда :mkexrc (или :mkvimrc) может использоваться для сохранения всех текущих настроек :map и :set в файле. Подробнее см. :help mkexrc.