![](/img/trans.png)
[英]Vim autocmd - Run command on WinEnter for every buffer name EXCEPT {name}
[英]Run vim command on every line in a vim buffer
我想JJ
当前 vim 缓冲区中的每一行。 因为我有非常大的文件,所以不可能在每一行都手动运行。 我如何告诉 vim 为我做这件事? 基本上我有一个单列数据的文件。 我想将其转换为三列
a
b
c
到:
a b c
还有一个:
:%norm JJ
请参阅:help:normal
。
:g/^/join
连接整个缓冲区中的连续行(1+2、3+4 等等...)。 您还可以为:global
命令提供[range]
,这里仅用于其智能行处理; ^
正则表达式模式匹配任何行。
要连接三个连续的行,请使用
:g/^/.,.+2join
或者
:g/^/join|join
(如果总行数不能被 3 整除,前者可能会出错;后者避免了这种情况。)
所有行到只有一行
:g/^/1j
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.