在CSS文件中,此行超过5条规则。
border: 1px solid black;
我想像这样评论这一行:
/*border: 1px solid black;*/
是否有快捷方式为所有5次出现执行此评论?
我可以指定一个键来评论一行或一行吗?
我不想搜索和替换这一行,我想设置一个键,这样当我悬停一行并按下该键时,该行将被注释或选择一行或选择一行,如果我按下该键,则会对该行或行块进行注释。
答案 0 :(得分:10)
我建议使用一个宏。 Vim会自动保存宏,并且可以跨会话使用。
录制宏类型:q<letter><commands>q
。其中<letter>
是来自a-z的任何字母,表示将保存宏的寄存器。之后,您只需键入要录制的命令,最后再次按q
即可停止录制。
在您的情况下,您可以执行以下操作。按q
,然后按a
选择a
注册,然后输入插入模式并在行的开头和结尾输入/*
和*/
。再次按q
可停止录制。
现在只需将光标移动到任意一行,然后按@a
即可在该行上执行宏。
答案 1 :(得分:3)
为什么不使用正则表达式?
:1,$s/border: 1px solid black;/\/*border: 1px solid black;\*\//
1,$s
表示您的替换应该从第1
行到最后一行$
。请注意,您必须转义*
或/
等字符。
根据Stackoverflow上的this问题,您可以在.vimrc中添加以下内容
vnoremap <C-r> "hy:%s/\(<C-r>h\)/\/\*\1\*\//gc<left><left><left>
您现在可以直观地标记一条线并按 ctrl + r ,这将为您提供正确的正则表达式。现在,如果要对其进行注释,可以逐行询问,并且可以通过按 y 来执行此操作。
答案 2 :(得分:2)
您必须为VIM尝试NERD Commenter插件。恕我直言这个插件是这项任务的最佳选择。