Vimの空白行を削除するために実行できるコマンドは何ですか?
:g/^$/d
:g
は正規表現に一致する行でコマンドを実行します。正規表現は '空白行'、コマンドは:d
(削除)です
:v/./d
または
:g/^$/d
または
:%!cat -s
以下は、複数の空白行だけを削除し(それらを単一の空白行にする)、単一の空白行をそのままにするために使用できます。
:g/^\_$\n\_^$/d
すべての空白行を削除する方法
:%s,\n\n,^M,g
(これを何度も実行すると、すべての空行が消えてしまいます)
sINGLE空行を残してすべての空白行を削除する方法
:%s,\n\n\n,^M^M,g
(これを複数回)
空白行を2行残してすべての空白行を削除する方法AT MAXIMUM、
:%s,\n\n\n\n,^M^M^M,g
(これを複数回)
^ Mを入力するためには、Windowsでcontrol-Qとcontrol-Mを制御する必要があります。
どうですか?
:g/^[ \t]*$/d
この関数は、2行以上の空白行を削除し、vimrcに以下の行を入れてから、\ dを使ってfunctionを呼び出します。
fun! DelBlank()
let _s=@/
let l = line(".")
let c = col(".")
:g/^\n\{2,}/d
let @/=_s
call cursor(l, c)
endfun
map <special> <leader>d :keepjumps call DelBlank()<cr>
これは私のために働く
:%s/^\s*$\n//gc
vimでPerlを操作します。
:%!Perl -pi -e s/^\s*$//g
私はこのページでいくつかの答えを試したが、それらの多くは私のために働かなかった。 Windows 7上でVimを使用しているのではないでしょうか(嘲笑しないでください、残念ですが:p)。
これが私が見つけたWindows 7のVim上で最も簡単なものです:
:v/\S/d
これがVim Wikiaに関する長い答えです: http://vim.wikia.com/wiki/Remove_unwanted_empty_lines
: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を再起動してください。 command:5,12DBLを使用すると、5行目から12行目までのすべての空白行が削除されます。私の答えが最高の答えだと思います。
押す delete 空白行を削除するには、挿入モードでキーを押します。
テキストのスペースが2行になった場合は、このコマンドによって2行のスペースが削除され、既存の繰り返し空白行が1つの空白行にマージされます。行頭に^^^の一時的な区切り文字を使用するので、これがコンテンツと衝突する場合は別のものを選択してください。空白のみを含む行は空白として扱われます。
%s/^\s*\n\n\+/^^^\r/g | g/^\s*$/d | %s/^^^^.*
これは私のために働いた:
:%s/^[^a-zA-Z0-9]$\n//ig
それは基本的に数字や文字を持たないすべての行を削除します。私のリストのすべての項目に文字があったので、それはすべての空白行を削除しました。