为了给行加上前缀,我使用了两种不同的方法之一:
一种方法是块选择(由sth提及)。通常,您可以选择一个矩形区域,ctrl-V然后移动光标。突出显示矩形后,按shift-I将在矩形的左侧插入字符,或shift-A将其附加在矩形的右侧。因此,您可以使用此技术制作一个矩形,该矩形包含要添加前缀的行的最左列,单击shift-I,键入前缀,然后单击转义。
另一种方法是使用替代(如Brian Agnew所提到的)。Brian的替换将影响整个文件(命令中的%表示“所有行”)。仅影响几行,最简单的方法是shift-V在第一行/最后一行上击中(启用可视行模式),然后移至最后一行/第一行。然后输入:
:s/^/YOUR PREFIX/
^是正则表达式(在本例中为行的开头)。通过在视线模式下键入此命令,您将看到'<,'>自动插入到s之前。这意味着替换范围将是视觉选择。
额外提示:如果您的前缀包含斜杠,则可以使用反斜杠对其进行转义,或者可以在命令中使用其他标点符号作为分隔符。例如,要添加C ++行注释,我通常会这样写:
:s:^:// :
对于添加后缀,除非所有行的长度完全相同,否则替换方法通常更容易。只需将$用作模式而不是^,您的字符串将被附加而不是前置。
如果要同时添加前缀和后缀,则可以执行以下操作:
:s/.*/PREFIX & SUFFIX/
。*匹配整行。替换中的&会将匹配的文本(整行)放回去,但是现在它将添加您的前缀和后缀。
顺便说一句:在注释掉代码时,您可能以后想取消注释。您可以使用visual-block(ctrl-V)选择斜杠,然后按d将其删除,或者您可以使用替换(可能是用视觉效果选择的,用制成shift-V)来删除前导斜杠,如下所示:
:s:// ::