我正在尝试使用 tabular.vim 插件格式化一些 python 代码。它目前是一个 sqlalchemy 声明类,看起来像这样:
id = db.Column(db.Integer, primary_key=True)
status = db.Column(db.Integer, nullable=False, default=3)
...etc...
我希望能够仅对齐列表中的第一个等号。
id = db.Column(db.Integer, primary_key=True)
status = db.Column(db.Integer, nullable=False, default=3)
...etc...
只是一个普通的
: Tabularize /=
似乎匹配一切,一切都变得疯狂。
提前非常感谢!
最佳答案
你可以使用这个命令:
:Tabularize /^[^=]*\zs=
模式只匹配第一个 =
。
您可以将这两行添加到 ~/.vim/after/plugin/TabularMaps.vim
AddTabularPattern 1= /^[^=]*\zs=
AddTabularPattern 1== /^[^=]*\zs=/r0c0l0
下一次,直接运行:
:Tabularize 1=
如果您不需要 =
周围的空格,请运行以下命令:
:Tabularize 1==
关于vim tabular 只在第一场比赛就行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11497593/