xref: /vim-8.2.3635/runtime/syntax/cheetah.vim (revision bb76f24a)
1" Vim syntax file
2" Language:	Cheetah template engine
3" Maintainer:	Max Ischenko <[email protected]>
4" Last Change: 2003-05-11
5"
6" Missing features:
7"  match invalid syntax, like bad variable ref. or unmatched closing tag
8"  PSP-style tags: <% .. %> (obsoleted feature)
9"  doc-strings and header comments (rarely used feature)
10
11" quit when a syntax file was already loaded
12if exists("b:current_syntax")
13	finish
14endif
15
16syntax case match
17
18syn keyword cheetahKeyword contained if else unless elif for in not
19syn keyword cheetahKeyword contained while repeat break continue pass end
20syn keyword cheetahKeyword contained set del attr def global include raw echo
21syn keyword cheetahKeyword contained import from extends implements
22syn keyword cheetahKeyword contained assert raise try catch finally
23syn keyword cheetahKeyword contained errorCatcher breakpoint silent cache filter
24syn match   cheetahKeyword contained "\<compiler-settings\>"
25
26" Matches cached placeholders
27syn match   cheetahPlaceHolder "$\(\*[0-9.]\+[wdhms]\?\*\|\*\)\?\h\w*\(\.\h\w*\)*" display
28syn match   cheetahPlaceHolder "$\(\*[0-9.]\+[wdhms]\?\*\|\*\)\?{\h\w*\(\.\h\w*\)*}" display
29syn match   cheetahDirective "^\s*#[^#].*$"  contains=cheetahPlaceHolder,cheetahKeyword,cheetahComment display
30
31syn match   cheetahContinuation "\\$"
32syn match   cheetahComment "##.*$" display
33syn region  cheetahMultiLineComment start="#\*" end="\*#"
34
35" Define the default highlighting.
36" Only when an item doesn't have highlighting yet
37
38hi def link cheetahPlaceHolder Identifier
39hi def link cheetahDirective PreCondit
40hi def link cheetahKeyword Define
41hi def link cheetahContinuation Special
42hi def link cheetahComment Comment
43hi def link cheetahMultiLineComment Comment
44
45
46let b:current_syntax = "cheetah"
47
48