我想在当前vim缓冲区的每一行上JJ
。由于我的文件非常庞大,因此无法在每一行上手动运行。我该如何告诉vim为我这样做?
基本上我有一个文件,其中包含单列数据。我想将其转换为三列
a
b
c
为:
a b c
答案 0 :(得分:3)
答案 1 :(得分:3)
还有一个:
:%norm JJ
请参阅:help :normal
。
答案 2 :(得分:1)
:g/^/join
在整个缓冲区中连接连续行(1 + 2,3 + 4等等)。您还可以向[range]
命令提供:global
,此命令仅用于智能线路处理; ^
正则表达式模式匹配任意行。
要加入三个连续行,请使用
:g/^/.,.+2join
或
:g/^/join|join
(如果总行数不能被3整除,前者可能会出错;后者可以避免这种情况。)
答案 3 :(得分:0)
据我所知,JJ
不是一件事。 J 加入行。如果要对整个文件执行此操作,可以使用可视模式,选择整个文件,然后使用 J :
ggVGJ