view runtime/syntax/cheetah.vim @ 7382:58958b8c9881 v7.4.996

commit https://github.com/vim/vim/commit/e292d80bede5cb0b9b1ca95176ad6c3fbaae2e0a Author: Bram Moolenaar <Bram@vim.org> Date: Tue Dec 29 19:03:21 2015 +0100 patch 7.4.996 Problem: New GDK files and testdir/Make_all.mak missing from distribution. PC build instructions are outdated. Solution: Add the file to the list. Update PC build instructions.
author Christian Brabandt <cb@256bit.org>
date Tue, 29 Dec 2015 19:15:05 +0100
parents 3fc0f57ecb91
children 43efa4f5a8ea
line wrap: on
line source

" Vim syntax file
" Language:	Cheetah template engine
" Maintainer:	Max Ischenko <mfi@ukr.net>
" Last Change: 2003-05-11
"
" Missing features:
"  match invalid syntax, like bad variable ref. or unmatched closing tag
"  PSP-style tags: <% .. %> (obsoleted feature)
"  doc-strings and header comments (rarely used feature)

" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
if version < 600
	syntax clear
elseif exists("b:current_syntax")
	finish
endif

syntax case match

syn keyword cheetahKeyword contained if else unless elif for in not
syn keyword cheetahKeyword contained while repeat break continue pass end
syn keyword cheetahKeyword contained set del attr def global include raw echo
syn keyword cheetahKeyword contained import from extends implements
syn keyword cheetahKeyword contained assert raise try catch finally
syn keyword cheetahKeyword contained errorCatcher breakpoint silent cache filter
syn match   cheetahKeyword contained "\<compiler-settings\>"

" Matches cached placeholders
syn match   cheetahPlaceHolder "$\(\*[0-9.]\+[wdhms]\?\*\|\*\)\?\h\w*\(\.\h\w*\)*" display
syn match   cheetahPlaceHolder "$\(\*[0-9.]\+[wdhms]\?\*\|\*\)\?{\h\w*\(\.\h\w*\)*}" display
syn match   cheetahDirective "^\s*#[^#].*$"  contains=cheetahPlaceHolder,cheetahKeyword,cheetahComment display

syn match   cheetahContinuation "\\$"
syn match   cheetahComment "##.*$" display
syn region  cheetahMultiLineComment start="#\*" end="\*#"

" Define the default highlighting.
" For version 5.7 and earlier: only when not done already
" For version 5.8 and later: only when an item doesn't have highlighting yet
if version >= 508 || !exists("did_cheetah_syn_inits")
	if version < 508
		let did_cheetah_syn_inits = 1
		command -nargs=+ HiLink hi link <args>
	else
		command -nargs=+ HiLink hi def link <args>
	endif

	HiLink cheetahPlaceHolder Identifier
	HiLink cheetahDirective PreCondit
	HiLink cheetahKeyword Define
	HiLink cheetahContinuation Special
	HiLink cheetahComment Comment
	HiLink cheetahMultiLineComment Comment

	delcommand HiLink
endif

let b:current_syntax = "cheetah"