Я добавил несколько простых команд inoremap
в мой .vimrc
чтобы помочь с выполнением парсеров и скобок, но я хочу, чтобы они обращались к php-файлам.
inoremap ( ()<Esc>i inoremap { {<CR>}<Esc>ko inoremap <? <?php ?><Esc><Left>i
Как установить эти команды для активации только тогда, когда я редактирую файл .php?
Использовать autocmd FileType
:
autocmd FileType php,c,java inoremap ( ()<Esc>i
Вам нужно сделать 2 вещи:
<buffer>
для inoremap
. Это можно сделать с помощью автокоманды в вашем .vimrc
например:
autocmd FileType php inoremap <buffer> ( ()<Esc>i
Другой способ – создать плагин filetype. (подробнее см :h ftplugin
)
Простым примером является создание файла с именем ~/.vim/after/ftplugin/php.vim
и размещение ваших отображений внутри так:
inoremap <buffer> ( ()<Esc>i inoremap <buffer> { {<CR>}<Esc>ko inoremap <buffer> <? <?php ?><Esc><Left>i
Я лично больше склоняюсь к подходу ftplugin, но наличие всего в вашем файле .vimrc
может быть приятным.
поместите их в этот файл
~/.vim/ftplugin/php.vim
Добавьте их в файл ftplugin в каталоге after:
~/.vim/after/ftplugin/php.vim
Дополнительная информация в этом ответе .
Изменить: этот файл, а может быть, и каталог, по умолчанию не будет. Возможно, вам придется это сделать, если вы этого не увидите.
Там может быть лучший способ сделать это, но это должно работать:
autocmd FileType php call Inoremaps() fu! Inoremaps() inoremap ... endfu