我有一些像这样的行
abc defg hijklmnopq
abc defghi jklmn opq
abc defgh ijklmno pq
我希望将它们列为最多三列,列之间至少有两个空格,即
abc defg hijklmnopq
abc defghi jklmn opq
abc defgh ijklmno pq
我应该在Vim中使用什么Tabularize
命令?
答案 0 :(得分:4)
根据您的输入和输出样本,以下命令应该这样做。
:Tab /\s\+\zs\s/l1c0
您可以将:Tabularize
缩写为:Tab
以保存一些按键。正则表达式依赖于数据的属性,即分隔列的空格字符不止一个;否则就不可能知道哪个文本属于哪个列。
我们选择最后一个空格作为分隔符,然后将左边的文本与填充为1对齐。\s
用作第二个填充空间。
将来,和往常一样,请考虑:help
。 :help tabular
具有广泛且非常易读的文档,详细描述了上述所有内容。