我可以运行什么命令来删除Vim中的空行?
当前回答
我尝试了这一页上的一些答案,但很多都不适合我。也许是因为我在Windows 7上使用Vim(别嘲笑我,可怜可怜我吧:p)?
下面是我在Windows 7的Vim上找到的最简单的方法:
:v/\S/d
在Vim Wikia上有一个更长的答案:http://vim.wikia.com/wiki/Remove_unwanted_empty_lines
其他回答
这招对我很管用:
:%s/^[^a-zA-Z0-9]$\n//ig
它基本上会删除所有没有数字或字母的行。因为列表中的所有项目都有字母,所以它删除了所有的空行。
如何删除所有空白行 : \ n \ n % s, M ^, g (这样做多次直到所有的空行都消失了) 如何删除所有空白行留下单一的空行 : % s。\ n \ n \ n, M ^ ^ M g (重复多次) 如何删除所有空白行留下两个空行在最大, : % s。\ n \ n \ n \ n, M M ^ ^ ^ M g (重复多次)
为了输入^M,我必须在窗口中control-Q和control-M
以下命令可以用来删除多个空行(将它们减少为单个空行),并保留单个空行:
:g/^\_$\n\_^$/d
在vim中使用perl:
这是正确的道路。Perl -pi -e s/^\s*$//g
:g/^\s*$/d
^ begin of a line
\s* at least 0 spaces and as many as possible (greedy)
$ end of a line
粘贴
:command -range=% DBL :<line1>,<line2>g/^\s*$/d
在你的。vimrc,然后重新启动你的vim。 如果你使用命令:5,12DBL 它将删除第5行到第12行之间的所有空行。 我认为我的答案是最好的答案!