2008-10-30 54 views
3

我喜欢Vim的视觉模式。 v用于突出显示/选择字符或行,Ctrlv矩形突出显示,据我所知(我是初学者)。有没有办法使用视觉模式来突出显示最后两个字符,例如,对于某些选定的行,在每行上?选定的线条长度不同。基本上,我想找到一个快速的方法来删除一些选定行的最后两个字符。不确定我可以使用视觉模式来突出显示不规则区域。VIM视觉模式:突出显示每行中的最后2个字符?

回答

3

我不能想办法在可视模式要做到这一点,但你可以使用这样的命令做...

:10,20 normal $xx 

这会去行号10之间每行和20,使用$到该行的末尾,然后使用x两次删除两个字符。正常只是告诉vim使用下面的符号,就好像它们是在普通模式下输入的键盘快捷键一样(即在命中esc后)。

这是否帮助?

+0

我喜欢你的方式。这是我想要做的。 – 2008-10-30 18:40:06

9

我对这种问题的方法是使用行选择(移-V,光标移动)选择线的兴趣,然后键入:

:s/..$// 

这是一个取代,使用正则表达式..$它将匹配行尾的最后两个字符。然后替换'nothing',即删除。

在vim中,一旦你打的:与选线活跃,在命令提示符下将实际显示:

:'<,'> 

这是在这种情况下,下一个命令开始和选择地址的结束(S )

+0

不错,我不知道vim会让你操作这样的选择。 – 2008-10-30 18:00:39