将 NERDCommenter 切换到基于文件类型的替代值



我想在vim中配置NERDCommenter,以便对某些文件类型使用替代注释样式。正确的方法是什么。我不知道如何从autocmd调用插件代码.我想做的是这样的:

autocmd FileType dosbatch :call NERDCommenterAltDelims

以上方法不起作用,但我发现我可以使用以下命令获取函数名称:

map <Plug>NERDCommenterAltDelims

返回:

:call <SNR>17_SwitchToAlternativeDelimiters(1)<CR>

有没有办法使用 map 命令来执行映射的值?

或者

,为什么不直接切换dosbatch文件类型的默认和alt定义,因为NERDCommenter提供了这个扩展点。将以下内容放入您的~/.vimrc;它必须在plugin/NERDCommenter.vim之前执行。

let g:NERDCustomDelimiters = {'dosbatch': { 'left': '::', 'leftAlt': 'REM ' }}

由于只有脚本本地函数,因此必须通过:normal调用提供的<Plug>映射:

:autocmd FileType dosbatch execute "normal <Plug>NERDCommenterAltDelims"

若要禁止显示Now using ... to delimit comments消息,请改用silent execute

建立在@ingo-karkat 答案的基础上:

autocmd FileType dosbatch autocmd VimEnter * execute "normal <Plug>NERDCommenterAltDelims"

我的 vimscript 技能不存在,所以可能有更干净的方法来做到这一点。随意改进它。

现在似乎有一种新的更好的方法来使用NERDCommenter在我们自己的映射中:

call NERDComment('n', 'altDelims')

看:

:h NERDComNERDComment

相关内容

  • 没有找到相关文章

最新更新