Как вставить конкретные строки в файл с помощью vim?

Я использую vim для программирования и конкурентного кодирования.

Теперь, поскольку я хочу вставлять определенные макросы, когда я открываю исходный файл, когда я делаю конкурсное кодирование. Я просто скопирую все макросы в редактор vim вручную из того места, где я их сохранил.

Есть ли способ сделать это более эффективно в редакторе vim , например, я нажимаю C C, и макросы автоматически вставлены в начало исходного файла?

Если да, то какие изменения мне нужны в файле .vimrc чтобы сделать это?

Существуют различные решения, описанные в существующем сообщении:

https://stackoverflow.com/questions/690386/writing-a-vim-function-to-insert-a-block-of-static-text

Если вы имеете в виду вставку кода шаблона или фрагментов многократного использования, вы можете определить сопоставления, аббревиатуры вставки режима или использовать один из более мощных модулей плагинов.

фрагменты похожи на встроенный :abbreviate на стероидах, как правило, с вставками параметров, зеркалированием и несколькими остановками внутри них. Одним из первых, очень известных (и все еще широко используемых) плагинов Vim является snipMate (вдохновленный редактором TextMate ); к сожалению, он больше не поддерживается; хотя есть вилка . Современная альтернатива (которая требует Python) – это UltiSnips . Их больше, см. Этот список в Wim Tips Wiki .

Также есть плагины, которые автоматически заполняют пустой файл шаблоном.


Макросы обычно означают нажатия клавиш / последовательности команд, записанные в регистре, или сопоставления, полученные из этого. Если вы хотите их только для своих конкурентных сессий кодирования, вы можете поместить их в отдельный скрипт macros.vim и :source который по запросу (вместо того, чтобы помещать их непосредственно в ~/.vimrc ). Даже источники могут быть автоматизированы:

Локальная конфигурация со встроенной функциональностью

Если вы всегда запускаете Vim из корневого каталога проекта, встроенный

 :set exrc 

позволяет считывать файл .vimrc из текущего каталога.

Локальная конфигурация через плагин

В противном случае вам понадобится помощь плагина; на vim.org есть несколько; Я могу порекомендовать плагин localrc , который даже позволяет локальную конфигурацию, специфичную для файлового типа .