" Clean syntax file " Language: Simple imperative language " Author: Camil Staps if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn include @ABC syntax/abc.vim syn keyword silConditional if else while syn keyword silStatement return syn keyword silType Bool Int Void syn match silOperator "[-~@#$%^?!+*<>\/|&=:.]\+" display syn match silInteger "\<\d\+\>" display syn keyword silBool True False syn match silABC "|\~.*$" contains=@ABC transparent syn region silComment start="//" end="$" contains=@Spell oneline display syn region cleanComment start="/\*" end="\*/" contains=@Spell fold keepend extend hi def link silConditional Conditional hi def link silStatement Statement hi def link silType Type hi def link silOperator Operator hi def link silInteger Number hi def link silBool Boolean hi def link silComment Comment let b:current_syntax = 'sil' let &cpo = s:cpo_save unlet s:cpo_save