我使用vimdiff合并了一个python文件,结果如下:
def code():
line 1
line 2
line 3
line 4
...
line n
在此状态下,缩进不一致。我怎么能删除前面的所有空格?我尝试了可视模式,但它选择了整条线。 vim有多行编辑吗? Notepad ++允许使用Alt-Shift。
答案 0 :(得分:6)
Ctrl-V
选择块。
或者,删除文件中所有行开头的所有空格:
:%s/^\s\+
答案 1 :(得分:6)
您的问题至少有两种解决方案:
使用 Ctrl v 进行逐块选择模式。您可以在行的开头选择空格,然后点击 d 。
或者,您可以通过使用 SHift v 进入可视模式来逐行选择要修改的行(然后使用向下箭头或 j < / kbd>选择)。然后使用&lt; 删除一个缩进级别。如果要删除多个缩进,请使用。重复上一个操作。
答案 2 :(得分:3)
Shift V 会使您进入可视线模式,然后您可以按:输入一个命令,仅对选定的内容执行线。
答案 3 :(得分:3)
使用VISUAL模式,您只需选择要重新缩进的所有行并点击=
。
我从未使用过Notepad ++,但我认为你所谓的多行编辑是可以通过Vim调用VISUAL BLOCK实现的:而不是V
命中<C-v>
。然后,您可以选择文本的矩形部分。获得专栏后,点击I
或A
进入编辑模式,然后<Esc>
将修改应用到所有专栏。由于您要删除单个空格,因此您必须直观地选择空格列并点击x
或d
。
我猜你也可以通过简单的搜索/替换来完成。或者使用:norm
。