我有一些文字,
我想移动variable2,var3和var4,以便所有四个变量对齐在一起。我可以使用 CTRL-V j j w 在视觉上选择列。但之后如何重新加入或删除variable2,var3和var4前面的额外空格?
请注意,移动变量1不是一个选项,因为有多行与variable1对齐。我也不能使用插件。
通过基本的vim命令,是否有更简单的方法可以在不使用任何插件的情况下完成此操作?
感谢。
答案 0 :(得分:6)
你可以选择块然后
:'<,'>s/\v%V\s+//
这是'zap'在视觉选择中找到的所有连续的起始空格。
演示:
答案 1 :(得分:2)
将光标放在第二行,就在'variable1'中'v'的正下方。 选择一列并删除它。这是 Ctrl V j j d 。
根据需要多次重复(。)。
如果删除列太多,则撤消( u )。 ;-)
答案 2 :(得分:1)
没有插件,对齐该特定示例的最简单方法是直观地选择 v a 下面的2x3列,如您已经注意到的那样,然后点击 x 删除它。如果不使用插件,我无法想到更通用的解决方案。
您也可以做一些可重复的事情,比如将光标放在不需要的空格之前,点击 2 x 删除两个空格,使用 j 向下移动,然后使用。重复双字符删除。在后续行重复。
最后,你可以创建一个macro来处理其他模式命令,但为变量对齐情况创建正确的宏需要一些练习,并且有点超出了这个答案的范围。
答案 3 :(得分:1)
如果你想用VISUAL BLCOK:
假设您的光标位于第2行的开头(c of char
),您可以:
瓦特 ħ CTRL-V Ĵ Ĵ ħ< / KBD> X
你也可以用宏来做,假设光标仍在char
,对于单行,你可以这样做:
w2X
然后你可以记录为:
qqw2Xj0q