在vim中编写python代码时,我被无法比拟的括号反复烧毁.我喜欢它们是如何处理C代码的 - 在无与伦比的paren之后的所有花括号中的红色vim亮点.我c.vim
简要地查看了语法文件以尝试理解它,但处理括号错误的部分非常复杂.任何人都可以解释该代码如何工作,并建议我如何为python代码编写类似的东西?
具有不匹配的parens的示例C代码:
int main(void { /* brace highlighted in red */ } /* brace highlighted in red */
由于python代码没有花括号来突出显示,我们必须选择其他东西(也许是其他括号).
顺便说一句,我尝试了这个vim插件,但我对这种行为不满意.
编辑:
我正在使用python生成C++代码(一种喜欢括号和分号的语言).我有一个令人讨厌的习惯,就是让方向file.write()
调用离开尾随的paren .如果我能让vim更明显地犯这个错误,那就太好了.
更新:
好的,这是我到目前为止所尝试的内容.
:syn region pParen transparent start="(" end=")" contains=ALL :syn match pError display ")" :hi def link pError Error
不幸的是,所有这一切都是突出显示所有平衡括号的正确错误,与我想做的相反.我真的不明白我在这里做什么(只是复制了现有的C语法文件).如果有人能解释我的所作所为(错误),我将不胜感激.
你可以让vim做相反的事情:做一个
:设置showmatch
它将突出匹配的parens.当你没有突出某些东西时,你会知道什么时候你是不平衡的.
我还假设您熟悉'%'命令,它会将您弹回匹配元素.