Как создать короткие сниппеты в Vim?

В качестве другого предложения viml (хотя и немного другого) с vimrc использованием встроенных vimscript функций vim:

:iabbrev def def(): #

Теперь всякий vim раз, когда вы вводите def, за vimscript которым следует пробел или vim другой символ, не являющийся gvimrc словом, он будет расширяться gvimrc до того же значения, что gvim и вывод SnippetsEmu (пробел viml берется из введенного вами vim пробела, чтобы вызвать завершение) .

Этот gvim подход не страдает проблемой gvim "запаздывания", с которой vimscript вы столкнулись при использовании: inoremap, и vimrc встроен в vim. Дополнительные vim сведения об этой функции vimrc см. На странице :help abbrev.

Вы можете viml быть обеспокоены тем, что vimrc при срабатывании пробела, а vimrc не табуляции он будет запускаться vimrc без необходимости, но в целом vimrc vim довольно умен, когда gvim его запускать. Проблема может viml быть дополнительно уменьшена vim путем включения сокращения gvimrc только для определенных типов viml файлов (например, python):

au filetype python :iabbrev ... etc

Snip vimrc [ets] (Manager | Emu | Mate gvim | .vim), конечно, тоже идеальное vimscript решение, но приятно знать gvim об альтернативах (особенно vimscript когда они встроены).

vim

2022-07-13T07:47:24+00:00