我想在vim中配置NERDCommenter,以便为某些文件类型使用备用注释样式。这样做的正确方法是什么。我无法弄清楚如何从autocmd
调用插件代码。我想做的是这样的事情:
autocmd FileType dosbatch :call NERDCommenterAltDelims
以上操作无效,但我发现我可以使用以下命令获取函数名称:
map <Plug>NERDCommenterAltDelims
返回:
:call <SNR>17_SwitchToAlternativeDelimiters(1)<CR>
有没有办法使用map命令执行地图的值?
答案 0 :(得分:1)
由于只有脚本本地函数,您必须通过<Plug>
调用提供的:normal
映射:
:autocmd FileType dosbatch execute "normal \<Plug>NERDCommenterAltDelims"
要取消Now using ... to delimit comments
消息,请改用silent execute
。
答案 1 :(得分:1)
或者,为什么不切换dosbatch
文件类型的默认和alt定义,因为NERDCommenter提供此扩展点。将以下内容放入~/.vimrc
;它必须在 plugin/NERDCommenter.vim
之前执行。
let g:NERDCustomDelimiters = {'dosbatch': { 'left': '::', 'leftAlt': 'REM ' }}
答案 2 :(得分:0)
建立@ ingo-karkat回答:
autocmd FileType dosbatch autocmd VimEnter * execute "normal \<Plug>NERDCommenterAltDelims"
我的vimscript技能不存在,因此可能有更简洁的方法来做到这一点。随意改进它。
答案 3 :(得分:0)
现在似乎有一种新的更好的方法可以在我们自己的映射中使用NERDCommenter的功能:
call NERDComment('n', 'altDelims')
请参阅:
:h NERDComNERDComment