我正在尝试将表格从Excel文件复制到VI编辑器文本文件。当前格式如下:
abcsddsds 1.2
aabb 2.3
wwwww 4.5.1
ab 2
c 1
我想要的样子:
abcsddsds 1.2
aabb 2.3
wwwww 4.5.1
ab 2
c 1
在搜索中,出现了我不明白的命令,例如:%!column -t。请帮忙。
答案 0 :(得分:3)
您可以使用!<command>
语法从Vim内部执行Unix命令。
column是unix命令,可将数据整齐地对齐到列中。您为其提供了一个-t
参数,以便它自动检测文件中的列(按空格分割)。
因此,要进行分解,请在Vim中依次按以下键以实现所需的功能:
Esc
进入(或确保您已经进入)命令模式
:
和%
选择整个文件的内容
!
运行紧随其后的unix命令
column -t
实际上执行列格式化的unix命令。
或者,您可以在没有正确对齐的情况下将文件保存在Vim中,然后从终端运行命令column -t <source_file> > <aligned_file>
。
答案 1 :(得分:0)
使用vim tabular插件(godlygeek / tabular),您可以执行以下操作:
:Tabularize /\d.*