仅当filetype为'perl'时如何启用map命令?
类似的东西:
if(&ft=='perl')
map ,pt <ESC>:%! perltidy<CR>
endif
但它不起作用。
答案 0 :(得分:4)
创建文件~/.vim/after/ftplugin/perl.vim
。
将此行放在该文件中:
nnoremap <buffer> ,pt <ESC>:%! perltidy<CR>
答案 1 :(得分:0)
我的.vimrc
中有以下行。第一个为任何“perl”文件类型设置“tab”单元,第二个单元用perltidy
键盘快捷键运行_t
。有很多人没有得到你的确切答案,但肯定应该给你一些指示:
autocmd FileType perl set tabstop=4|set shiftwidth=4|set expandtab|set softtabstop=4
nnoremap <silent> _t :%!perltidy -q<Enter>
vnoremap <silent> _t :!perltidy -q<Enter>
我在.vimrc
过去5年多来一直使用这些设置。如果能想出这些命令,那就归功于谁。我没有做出上述命令。
答案 2 :(得分:0)
我找到了更短的路。
将此行添加到〜/ .vimrc
au FileType perl nnoremap <buffer> _t <ESC>:%! perltidy<CR>