Vim:将文本与列对齐

Vim:将文本与列对齐,vim,Vim,假设我有以下文本: key:value1 key:value234 key:val0 key:val1 key:value1 key:value5 key:value65799 key:value356 key:3790 是否有可能以某种方式将其转换为某种对齐的列 key:value1 key:value234 key:val0 key:val1 key:value1 key:value5 key:valu

假设我有以下文本:

key:value1 key:value234 key:val0
key:val1 key:value1 key:value5
key:value65799 key:value356 key:3790
是否有可能以某种方式将其转换为某种对齐的列

key:value1          key:value234            key:val0
key:val1            key:value1              key:value5
key:value65799      key:value356            key:3790

当然,我可以用制表符替换分隔的空格,但仅此一点没有帮助…

我通常会先将空格转换为#,然后使用“对齐”基于#对齐,然后删除#


我通常会先将空格转换为#,然后使用Align基于#对齐,然后删除#

在类Unix系统上:

:%!column -t
在类Unix系统上:

:%!column -t

如果您不介意使用插件,请参阅

在这里,您可以直观地选择您的线路并使用:

:'<,'>Tabular/ /

:”如果您不介意使用插件,请参阅

在这里,您可以直观地选择您的线路并使用:

:'<,'>Tabular/ /

:'try
:%s/\r/g
然后
:%!pr-3at
@Sundeep很有趣,谢谢!试试
:%s/\r/g
,然后再试试
:%!pr-3at
@Sundeep很有趣,谢谢!谢谢,这似乎很管用:)。不客气!顺便说一句,有一个叫做easyalign的高级插件,你可能会喜欢它。虽然我很高兴使用简单的Align命令:)谢谢,这似乎可以完成任务:)。欢迎使用!顺便说一句,有一个叫做easyalign的高级插件,你可能会喜欢它。虽然我对简单的Align命令很满意:)可能最好使用带有
:Tabularize
,例如
:Tabularize/
@PeterRincker的模式在这种情况下可以工作,但一般来说使用模式更好。谢谢,@PeterRincker!可能最好将模式与
:Tabularize
,例如
:Tabularize/
@PeterRincker一起使用。在这种情况下,它会起作用,但通常使用模式会更好。谢谢,@PeterRincker!