Отображение Vim только для .vimrc

344
omnesia

Я знаю о

autocmd FileType <TYPE> inoremap <MAPPING> 

для файлов типа * .html. Но я хотел бы создать несколько сочетаний клавиш для моего .vimrcкак это:

autocmd FileType vimrc inoremap ;; autocmd<Space>FileType ... 

Очевидно, что это должно работать только внутри файла vimrc, поскольку в других местах это не имеет смысла. Использование в vimrcкачестве FileType не работает, хотя. Какие-либо предложения?


РЕДАКТИРОВАТЬ:

Я также пытался

au Bufread,BufNewFile *.vimrc setfiletype vimrc 

а также

au Bufread,BufNewFile .vimrc setfiletype vimrc 

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

1

1 ответ на вопрос

1
Heptite

Ты почти там.

Во-первых, вам нужно знать, что, если вы не создаете новый тип файла (например, как подтип типа файла vim), тип файла "vimrc" отсутствует. .vimrcфайлы являются сценариями Vim и уже должны автоматически распознаваться как таковые.

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

au Bufread,BufNewFile .vimrc inoremap <buffer> ;; autocmd<Space>FileType ... 

Увидеть: :help :map-<buffer>

Большое спасибо, это именно то, что я искал. Все еще новичок в vim, но я уже поражен тем, что с ним можно сделать. omnesia 6 лет назад 0