如何使用 vim 将一列单词重新排列为一行?

如何使用 vim 将一列单词重新排列为一行?

我有一栏单词:

text
text 
text
text
text

我正在寻找一个可以产生以下内容的 vim 命令:

text text text text text

宏当然可以起作用,但有没有更简单的方法可以达到此目的?

答案1

是的,宏可以起作用,但它可能不是最有效的方法。

做一个简单的替换怎么样:

:%s/\n/ <-- whitespace!

或者简单地“加入”:

5J

编辑

由于不知道您的文件是什么样子,因此很难给出明确的答案。替换假设缓冲区仅包含示例中的行(意思%是“整个缓冲区”),而连接假设这些行位于文本海洋中,并使用绝对计数以获得更高的精度。

正常J模式命令与其姊妹:join命令 Ex 一样,可以在范围/选择上工作,因此完全可以直观地选择这些行并点击J

V<down><down><down><down>J
v4jJ
5VJ
etc.

相关内容