在 vim 中从 1 列中创建 2 列

use*_*519 1 linux vim shell sed

我有 2 个非常长的串联数组:

["MyHashMap"
"remove"
"put"
"remove"]
[[]
[27]
[65,65]
[19]]
Run Code Online (Sandbox Code Playgroud)

我只是进入可视模式,y第二个数组,然后返回到第一行,转到它的末尾,添加空格并点击p。它变成:

["MyHashMap"
[[]
[27]
[65,65]
[19]]
"remove"
"put"
"remove"]
Run Code Online (Sandbox Code Playgroud)

我想要的输出是:

["MyHashMap" [[]
"remove"     [27]
"put"        [65,65]
"remove"]    [19]]
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

小智 5

:set virtualedit=all 所以你可以将光标移动到没有字符的地方(超过行尾)。

将光标移动到第 5 行的第一列并使用 进入视觉块模式CTRL-V。选择最后四行的内容。按d删除选择。

将光标移动到第一行,您需要第二列的位置。按p粘贴。