为什么此命令适用于 shell,但不适用于 vim?
Why this command works on shell, but not on vim?
我想每两行插入一个空行。
这个命令在 shell 上是完美的
我可以“直接”使用它
awk 'ORS=NR%1?RS:RS RS'
或用管道
printf "%s\n" {a..z} | awk 'ORS=NR%1?RS:RS RS'
但是在 vim(我需要它的地方!),我 select 使用“视觉”lshift+v 我的 56 行,我把这个
:'<,'>!awk 'ORS=NR%2?RS:RS RS'
而不是插入空行 return 我这个错误
awk: row com.:1: (FILENAME=- FNR=1) fatal: attempt to divide by zero
为什么?我在使用 Slackware,使用 Gawk
我找到了一个使用sed的solution/workaround,每两行插入一个空行
:'<,'>!sed '0~2 s/$/\n/g'
我想每两行插入一个空行。 这个命令在 shell 上是完美的 我可以“直接”使用它
awk 'ORS=NR%1?RS:RS RS'
或用管道
printf "%s\n" {a..z} | awk 'ORS=NR%1?RS:RS RS'
但是在 vim(我需要它的地方!),我 select 使用“视觉”lshift+v 我的 56 行,我把这个
:'<,'>!awk 'ORS=NR%2?RS:RS RS'
而不是插入空行 return 我这个错误
awk: row com.:1: (FILENAME=- FNR=1) fatal: attempt to divide by zero
为什么?我在使用 Slackware,使用 Gawk
我找到了一个使用sed的solution/workaround,每两行插入一个空行
:'<,'>!sed '0~2 s/$/\n/g'