Звучит как макрос для меня. Макросы Google vim для множества полезной информации. В основном
- В командном режиме введите q, а затем еще одну букву, которая будет регистром, в котором мы будем хранить макрос. Например, 'qw'.
- Запустите команды, которые вы хотите сохранить для дальнейшего использования. Это может быть что угодно, включая замены регулярных выражений, движения, вставки, удаления и т. Д.
- Когда вы закончите, снова нажмите q. Теперь вы сохранили свои действия для дальнейшего использования. Чтобы повторить то, что вы только что сделали, наберите @w (или любую букву, которую вы использовали в регистре для сохранения макроса).
В макросах много силы. Иногда вы хотите сохранить макросы между сессиями. Когда я хочу это сделать, вы можете вставить макрос в буфер, вставив только что сохраненный регистр. Например, если вы сохранили макрос в регистре w, введите «wp, чтобы вставить регистр w (обратите внимание, что это двойная кавычка, а не две одинарные кавычки). Вы увидите несколько забавных символов, когда вы нажимаете escape или enter. удобочитаемые способы написания таких как и, но ^ [и ^ M тоже будут работать.
Теперь вы можете скопировать эти строки в регистр (я вижу, что кто-то только что опубликовал ответ с этим, но несколько иначе, чем я бы это сделал), выбрав текст в визуальном режиме и затем напечатав "wy. Это выдернет выделенный текст в регистр w. Теперь, чтобы запустить регистр как макрос, введите @w, как и раньше.
Если вы часто используете это, возможно, стоит сопоставить макрос с командой быстрого доступа в вашем .vimrc. Например, вот несколько карт, которые у меня есть в моем vimrc, чтобы помочь мне легко открыть и сохранить мой .vimrc
" For modifying the .vimrc
nmap ,e :e $HOME/.vimrc<cr>
nmap ,s :write!<cr>:source $HOME/.vimrc<cr>
Теперь, когда я редактирую любой файл и обнаруживаю новый макрос, я хотел бы сохранить, я набираю e, чтобы открыть мой .vimrc. Я вставляю макрос, добавляю оператор карты (есть разные карты в зависимости от того, в каком режиме вы находитесь, много документации, чтобы объяснить это, если вам интересно), и сохраняю .vimrc с, s, который также является источником .vimrc так что моя новая сопоставленная команда доступна в других файлах без перезапуска vim.