我和vim一起工作了4周,我想知道如何做到这一点:
我想在ruby中添加一个'#'注释代码。我可以做一个'。'对于所有线路。但是,如果我有很多要评论的话呢?
我是否可以在一个块上执行某些命令?
不是:这并不仅仅意味着放置'#'。
答案 0 :(得分:4)
您可以进行视觉阻止模式。在行的开头按ctrl + v然后将光标向下移动任意多行以便注释掉,按Shift + i然后#然后转义它将在所有这些行的前面加上#。我个人使用tComment。有很多插件可用于评论处理。
答案 1 :(得分:2)
您需要按块选择。
开始用CTRL-V选择,按4j,然后按I(大写i)。
答案 2 :(得分:1)
对于所有行,您可以执行此操作:
:%s/^\(.*)/#\1
对于一个区块,您可以通过交互式选择来完成:
:%s/^\(.*)/#\1/c
Vim会在每场比赛时提示替换(回答y或n)
我想有一种方法可以使用行号,或者可能是行组,但我现在还没有这个想法。
编辑:所以对于块(如评论建议的那样):
vip (in normal mode to select the block)
:'<,'>s/^\(.*\)/#\1/
也
:'<,'>s/^/#/
答案 3 :(得分:0)
答案已被接受,但您可能会觉得这很有用。 <leader>/
评论一个块,<leader>?
取消注释。以可视模式或正常运动工作,例如3,/
来评论3行,假设逗号为你的邮件。
map <leader>/ :s/^\(\s*\)/# \1/<CR>:nohl<CR>"
map <leader>? :s/^\(\s*\)# /\1/<CR>:nohl<CR>"