繁体   English   中英

如何使用 NERD Commenter for vim——如何使用<Leader>钥匙

[英]How to use NERD Commenter for vim — how to use <Leader> key

我找到了 vim 的 NERD 评论插件,但我不明白文档。 假设我想在 c/c++ 中注释一些代码,例如

code line 1  
code line 2

变成

/*
code line 1  
code line 2  
*/ 

我已经看过其他主题,但老实说,我不知道NERD 评论者文档中的<leader>是什么。 当我在另一个线程中尝试接受的答案时,我最终在选定的行上执行更改命令。 什么是<leader> ,我如何一步一步地用/* */注释行?

试试内置的帮助,它很棒。 :help <Leader>带您到相关文档。 它只是一个未使用的键的标识符(默认为\\ ,但许多人将其更改为, ),建议用于启动任何自定义映射。

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

你的键盘有问题

在许多非英语键盘布局上,反斜杠\\只能通过AltGr组合键访问。 这使得<Leader>字符的默认设置对于这些非英语键盘用户来说是不切实际的。

此外, <Leader>键组合受默认 1000 毫秒超时限制。 这可以通过命令行右边缘的<Leader>键的消失来观察。 因此,非英语键盘用户需要成为真正的快速打字员才能使用</kbd> c c 否则,会导致不希望的cc线路更改。

这是德语键盘布局的示例,顶行右数第三个带有反斜杠的键:德语键盘布局

#Solution 建议非英语键盘用户<Leader>\\字符更改为更易于访问的,键。 Vim 初学者还应该考虑稍长的 1500 毫秒超时。 这是需要添加到~/.vimrc

let mapleader=","
set timeout timeoutlen=1500

最后一个警告; 这些更改只有在完全退出 Vim 后才会生效。 使用:source $MYVIMRC资源将不起作用!

完成后,现在可以使用, c c 与 NERD Commenter 进行评论。

如何使用 /* */ 注释行?

Аs 在文档中说明

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

所以,只需使用

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

@IngoKarkatNote:您不需要按住该键,只需像其他任何键一样按下它,然后松开它。

对于原始问题,完全是错误的建议!

使用 NerdCommenter,您必须按住<leader>键。 否则,正如 OP 所发现的那样,您最终只会激活“更改”模式。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM