我在Vim中使用Tabularize插件并具有以下文本:
reg [321:123] ip_addr=32'h12345678;
reg [15:0] trie_data=16'h9abc;
reg [2:0] select=3'h5;
wire [3:0] nibble;
wire sram_bit;
我希望以这种方式对齐:
reg [321:123] ip_addr = 32'h12345678;
reg [15:0] trie_data = 16'h9abc;
reg [2:0] select = 3'h5;
wire [3:0] nibble;
wire sram_bit;
用语言说:
到目前为止,我已经按顺序尝试了以下内容:
:Tabularize /[[0-9]*:/l1r0l0
:Tabularize /:[0-9]*]/l0l1l0
:Tabularize /=
但是它在第一列中组合了'wire'和'sram_bit',而不是分别将它放在第一列和第三列中。
答案 0 :(得分:2)
使用两个Tabularize命令可以像这样完成
:Tabularize /[[0-9]*:/l1c0l0
:Tabularize /=
所以在这里你基本上使用[number:
作为分隔符。
答案 1 :(得分:1)
或使用Align.vim
:AlignCtrl <>
:AlignCtrl p0
:%Align \S\+
:AlignCtrl p1
:%Align =
我觉得应该有一种简单的方法来组合这些,但我没有立刻弄明白,所以我会把它留下一天