Text 如何将文本文件重新排列为列?

Text 如何将文本文件重新排列为列?,text,vim,Text,Vim,我想将一个文本和两个文本块重新排列为列 考虑下面的例子 line a1 line a2 line a3 space line a4 line b1 line b2 line b3 line b4 我想把它变成 # Col1 #Col2 line a1 line b1 line a2 line b2 line a3 space line b3 line a4 line b4 我已经研究了列命令,该命令要求行在一行中使

我想将一个文本和两个文本块重新排列为列

考虑下面的例子

line a1 
line a2
line a3 space
line a4

line b1 
line b2
line b3 
line b4
我想把它变成

# Col1         #Col2 
line a1        line b1 
line a2        line b2 
line a3 space  line b3 
line a4        line b4 
我已经研究了
命令,该命令要求行在一行中使用适当的分隔符,例如
行a1和行b1
。然后我就可以运行
列-s”&-t
(在vim中)

有没有更优雅的方法?我首选的编辑器是vim,因此基于vim的解决方案将非常好

  • ctrl-v
    进入列模式,选择第一个块,按
    d
  • ctrl-v
    相同,选择第二块中的第一列,然后按
    I
  • 按shift-p键将第一个块粘贴到位
  • ggd)
    删除空行
它的工作原理如下:

  • ctrl-v
    进入列模式,选择第一个块,按
    d
  • ctrl-v
    相同,选择第二块中的第一列,然后按
    I
  • 按shift-p键将第一个块粘贴到位
  • ggd)
    删除空行
它的工作原理如下:


谢谢。那太好了。这很有帮助。顺便说一句,我正在为明子和次添加一些歌词,就像把音译和翻译放在一起一样。事实上,你可以强迫一个动作按块进行。e、 g.
$yip
将按块复制第一段。请参见
:h力运动
@PeterRincker thx!我不知道。。在我的vim8.1中尝试过,它是有效的。但是在
:h强制运动方面没有帮助
我发现这是
强制运动
谢谢。那太好了。这很有帮助。顺便说一句,我正在为明子和次添加一些歌词,就像把音译和翻译放在一起一样。事实上,你可以强迫一个动作按块进行。e、 g.
$yip
将按块复制第一段。请参见
:h力运动
@PeterRincker thx!我不知道。。在我的vim8.1中尝试过,它是有效的。但是在
:h力运动方面没有帮助
我发现这是
强迫运动