Como disparar mapeamentos de teclas autocmd do VIM para arquivos .js ou .pl

1

Usando VIM (MacVim para ser específico) Eu tenho tentado adicionar um número de atalhos para o meu arquivo .vimrc que tem sintaxe diferente em diferentes idiomas.

Estou usando o autocmd para adicionar diferentes mapeamentos de teclado, dependendo do tipo de arquivo, mas os tipos de arquivo javascript e perl .js e .pl não recebem os mapeamentos.

Minha tentativa de ter um / comentário fora de um bloco visualmente selecionado (e? de descomente-lo):

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

Isso funciona para os arquivos php, java, cpp e sql, mas não para os arquivos pl e js.

    
por davur 11.09.2010 / 15:32

1 resposta

4

O nome do Vim para um tipo de arquivo não é necessariamente o mesmo da extensão. O nome do tipo de arquivo para o javascript é javascript e o nome do tipo de arquivo para perl é perl . Nos seus comandos automáticos, altere js para javascript e pl para perl . Você pode encontrar os mapeamentos do Vim de extensões para tipos de arquivos em $VIMRUNTIME/filetype.vim .

    
por 11.09.2010 / 18:27

Tags