1

Используя VIM (в частности MacVim), я пытался добавить несколько ярлыков в мой файл .vimrc с разным синтаксисом на разных языках.

Я использую autocmd для добавления различных сопоставлений клавиш в зависимости от типа файла, но javascript и perl filetypes .js и .pl не получают сопоставления.

Моя попытка сделать / закомментировать визуально выбранный блок (а? раскомментировать это):

autocmd FileType php,js,java,cpp    vnoremap <buffer> / :s/^/\/\/ /<cr>gv
autocmd FileType php,js,java,cpp    vnoremap <buffer> ? :s/^\s*\/\/ \?//<cr>gv
autocmd FileType sql                vnoremap <buffer> / :s/^/-- /<cr>gv
autocmd FileType sql                vnoremap <buffer> ? :s/^--\s\?//<cr>gv  
autocmd FileType pl                 vnoremap <buffer> / :s/^/## /<cr>gv
autocmd FileType pl                 vnoremap <buffer> ? :s/^\s*##\s\?//<cr>gv

Это работает для файлов php, java, cpp и sql, но не для файлов pl и js.

1 ответ1

4

Имя Vim для типа файла не обязательно совпадает с расширением. Имя типа файла для javascript - это javascript а имя типа файла для perl - это perl . В ваших автокомандах замените js на javascript и pl на perl . Вы можете найти отображения Vim от расширений до типов файлов в $VIMRUNTIME/filetype.vim .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .