ファイルタイプの構文を拡張し、既存のファイルタイプを強調表示したいと思います。新しいファイル構文の基本構造は次のとおりです。
" Some local (new) syntax that I want to match
syn match upfOperator "[&|~><!)(*#%@+/=?:;}{,.\^\-\[\]]"
syn match upfDefines "\$\S\+"
syn match upfDefines "\${\S\+}"
syn match upfParens "[)(}{\[\]]"
" load syntax that I want to extend. This contains it's own highlight commands
runtime syntax/dtcl.vim
" New highlight statements
hi link upfOperator Statement
hi link upfDefines Constant
hi link upfParens Constant
問題は、dtcl.vimファイルに含まれているすべての構文が強調表示されていないことです。dctlファイルを開くことができ、強調表示が機能します。ただし、他のファイルタイプ(* .upf)を開くと、upf.vimはロードされますが、dtcl.vimはロードされません。
dctl.vimには、ファイルがロードされない原因となる「構文が定義されている場合」のタイプのコマンドはありません。