0

仅当文件类型为“perl”时如何启用映射命令?

就像是:

if(&ft=='perl')
  map ,pt <ESC>:%! perltidy<CR>
endif

但它不起作用。

4

3 回答 3

4
  1. Create the file ~/.vim/after/ftplugin/perl.vim.

  2. Put this line in that file:

    nnoremap <buffer> ,pt <ESC>:%! perltidy<CR>
    
于 2013-04-14T11:46:40.980 回答
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 年多的时间里,我一直在使用这些设置。功劳归于提出这些命令的人。我没有做出上述命令。

于 2013-04-14T11:34:42.250 回答
0

我找到了更短的方法。

将此行添加到您的 ~/.vimrc

au FileType perl nnoremap <buffer> _t <ESC>:%! perltidy<CR>
于 2013-07-05T13:31:39.843 回答