示例:
Monte Bianco 4.807 France/Italy
Monte Rosa 4.634 Italy/Switzerland
Dom 4.545 Switzerland/Italy
Weisshorn 4.505 Switzerland
Cervino (Matterhorn) 4.478 Italy/Switzerland
Suphan Dagi 4.434 Turkey
我正在尝试创建2个新菜单选项(在menu.vim中):
我无法找到如何仅对齐表格中间的第一列,仅对齐最后一列或特定列。
Monte Bianco 4.807 France/Italy
Monte Rosa 4.634 Italy/Switzerland
Dom 4.545 Switzerland/Italy
Weisshorn 4.505 Switzerland
Cervino (Matterhorn) 4.478 Italy/Switzerland
Suphan Dagi 4.434 Turkey
我知道我可以使用它来对齐最新专栏
Tabular /^\(.\{-}\s\{1,}\)\{1,}/l0l0r0
但我想知道的是如何在行尾之前找到最新的对齐参数
(例如上面的例子“Spaces”)并在此之后对齐所有文本(不计算列数)。
这可能吗?
我根本不知道如何仅对齐第一列或特定列。
答案 0 :(得分:1)
为了正确对齐第一个以空格分隔的列,剩下的就是其余部分
它们对齐到左侧,使用以下:Tabular
命令,
:Tab/^\S*\s\+\zs/r1l0l0
同样,要右对齐最后一列,请运行
:Tab/\s\@<!\ze\s\+\S*$/l1l0r0
如果列分隔符必须包含至少两个空格字符,请修改 命令如下。
:Tab/\(\s\{2,}.*\)\@<!\s\{2,}\zs/r1l0l0
和
:Tab/\s\@<!\ze\s\{2,}\(.*\s\{2,}\)\@!/l1l0r0