私がしたいvim構文ファイルで
- 1 つの一致に名前を付け
foo
てからbar
- そして、
bar
それに続く別のfoo
そして、それらの両方を機能させます。
これが私がこれまでに持っているものです
syn match myFoo /foo\zebar/ display
syn match myBar /foo\zsbar/ display
私がそれを行うと、後者にのみ一致します。と の両方を一致させることはできませfoo
んbar
。
これを試して:
syn match myFoo /foo/ contained
syn match myBar /bar/ contained
syn match myFooBar /foobar/ contains=myFoo,myBar
動作することを確認しました。foo が 1 つの色で、bar が別の色である Vim の foobar があります。これは、それらが foobar として一緒にいる場合にのみ発生します。それ以外の場合、それらは色付けされません。次のように、それらをさまざまなカテゴリに割り当てました。
hi def link myFoo Keyword
hi def link myBar Type
あなたはおそらくこれをすでにカバーしています。