如何使用NERD Commenter for vim – 如何使用<Leader>键

我发现vim的NERD注释插件,但我不明白的文档。 说我想评论一些代码在C / C + +例如

code line 1 code line 2 

 /* code line 1 code line 2 */ 

我已经看到了其他线程,但说实话,我不知道NERD评论者文档中的<leader>是什么。 当我尝试在另一个线程中接受的答案时,我最终在选定的行上执行change命令。 什么是<leader>并且一步一步地如何去处理与/* */注释行?

尝试内置的帮助,这是非常好的。 :help <Leader>将您带到相关文档。 这只是一个未使用的密钥的标识符(默认情况下, \ ,但很多改变它),build议启动任何自定义映射。

NERD_commenter定义了<Leader>cc映射,所以你可以按(一个接一个): \ C C。

这就是问题

在许多非英文键盘上,反斜杠\只能通过AltGr组合键进行访问。 这使得<Leader>字符的默认设置对于这些用户来说是不切实际的。 此外, <Leader>组合键受默认的1000ms超时限制。 这可以通过命令行右边的<Leader>键的消失来观察。 因此,非英语键盘用户需要成为真正的快速打字员才能工作。 如果不这样做,会导致不希望的cc行更改。

下面是德国键盘布局的一个例子,右边第三行是反斜杠键, 德语键盘布局

build议非英语键盘用户将<Leader>键从\字符更改为更易于访问的键。 Vim初学者也应该考虑稍微延长1500ms的超时时间。 这是什么需要被添加到~/.vimrc

 let mapleader="," set timeout timeoutlen=1500 

最后一个警告 这些变化只有在完全退出Vim之后才会生效。 资源与:source $MYVIMRC将无法正常工作!

现在,可以使用cc来与NERD Commenter进行评论。

我怎么去注释/ * * /?

Аs在文档中说明 :

 [count]<leader>cm |NERDComMinimalComment| Comments the given lines using only one set of multipart delimiters. 

所以,只要使用

  • \ m (如果你的<leader>\ ),或者
  • c m (如果你的<leader>是)

@IngoKarkatNote:您不需要按住按键,只需按任何其他键,然后释放它。

原来的问题完全是错误的build议!

用NerdCommenter,你必须按住<leader>键。 否则,就像OP发现的那样,你最终只能激活“改变”模式。