Vim突出显示嵌套区域
我现在和vim一起工作了几个月,我仍然在努力提高使用这个伟大编辑器的经验 我试图做的是为spice网络列表(电子产品)创建一个语法突出显示文件 我试图强调以下模式: .分包商或_门A B出 (*或_gate*是单元格的名称Vim突出显示嵌套区域,vim,vim-syntax-highlighting,Vim,Vim Syntax Highlighting,我现在和vim一起工作了几个月,我仍然在努力提高使用这个伟大编辑器的经验 我试图做的是为spice网络列表(电子产品)创建一个语法突出显示文件 我试图强调以下模式: .分包商或_门A B出 (*或_gate*是单元格的名称 A、 B和该单元的输出引脚) 我尝试用3种不同的颜色来突出它: 一个给我 一个用于or_门(单元) 一个用于A、B和OUT(引脚) 我在看以.subbkt开头的行,我试图找到一种匹配行中不同单词的方法 我尝试了很多不同的syn匹配组合,或者嵌套的syn区域,但我觉得我做得
A、 B和该单元的输出引脚) 我尝试用3种不同的颜色来突出它:
- 一个给我
- 一个用于or_门(单元)
- 一个用于A、B和OUT(引脚)
任何人都可以帮我找出我的错误以及如何处理这种模式突出显示?你可以尝试
syn match
和look back
:
syn match spiceCKT /^\s*\.SUBCKT/
syn match spiceCell /\v(^\s*\.SUBCKT\s+)@<=or_gate/
syn match spicePins /\v(^\s*\.SUBCKT\s+or_gate\s+)@<=A B OUT/
syn match spiceCKT/^\s*\.SUBCKT/
syn match SPICELL/\v(^\s*\.SUBCKT\s+)@感谢您的回答!
它确实有效。谢谢你的提示
唯一的缺点是,当文件必须加载完整的行时,速度有点慢
我完成您的代码以满足我的需要:
syn match spiceCKT/^\s*.SUBCKT/
syn match SPICELL/\v(^\s*.SUBCKT\s+)@