1" Vim syntax file 2" Language: tpp - Text Presentation Program 3" Maintainer: Debian Vim Maintainers 4" Former Maintainer: Gerfried Fuchs <[email protected]> 5" Last Change: 2018 Dec 27 6" URL: https://salsa.debian.org/vim-team/vim-debian/master/syntax/tpp.vim 7" Filenames: *.tpp 8" License: BSD 9" 10" XXX This file is in need of a new maintainer, Debian VIM Maintainers maintain 11" it only because patches have been submitted for it by Debian users and the 12" former maintainer was MIA (Missing In Action), taking over its 13" maintenance was thus the only way to include those patches. 14" If you care about this file, and have time to maintain it please do so! 15" 16" Comments are very welcome - but please make sure that you are commenting on 17" the latest version of this file. 18" SPAM is _NOT_ welcome - be ready to be reported! 19 20" quit when a syntax file was already loaded 21if exists('b:current_syntax') 22 finish 23endif 24 25if !exists('main_syntax') 26 let main_syntax = 'tpp' 27endif 28 29 30"" list of the legal switches/options 31syn match tppAbstractOptionKey contained "^--\%(author\|title\|date\|footer\) *" nextgroup=tppString 32syn match tppPageLocalOptionKey contained "^--\%(heading\|center\|right\|huge\|sethugefont\|exec\) *" nextgroup=tppString 33syn match tppPageLocalSwitchKey contained "^--\%(horline\|-\|\%(begin\|end\)\%(\%(shell\)\?output\|slide\%(left\|right\|top\|bottom\)\)\|\%(bold\|rev\|ul\)\%(on\|off\)\|withborder\)" 34syn match tppNewPageOptionKey contained "^--newpage *" nextgroup=tppString 35syn match tppColorOptionKey contained "^--\%(\%(bg\|fg\)\?color\) *" 36syn match tppTimeOptionKey contained "^--sleep *" 37 38syn match tppString contained ".*" 39syn match tppColor contained "\%(white\|yellow\|red\|green\|blue\|cyan\|magenta\|black\|default\)" 40syn match tppTime contained "\d\+" 41 42syn region tppPageLocalSwitch start="^--" end="$" contains=tppPageLocalSwitchKey oneline 43syn region tppColorOption start="^--\%(\%(bg\|fg\)\?color\)" end="$" contains=tppColorOptionKey,tppColor oneline 44syn region tppTimeOption start="^--sleep" end="$" contains=tppTimeOptionKey,tppTime oneline 45syn region tppNewPageOption start="^--newpage" end="$" contains=tppNewPageOptionKey oneline 46syn region tppPageLocalOption start="^--\%(heading\|center\|right\|huge\|sethugefont\|exec\)" end="$" contains=tppPageLocalOptionKey oneline 47syn region tppAbstractOption start="^--\%(author\|title\|date\|footer\)" end="$" contains=tppAbstractOptionKey oneline 48 49if main_syntax !=# 'sh' 50 " shell command 51 syn include @tppShExec syntax/sh.vim 52 unlet b:current_syntax 53 54 syn region shExec matchgroup=tppPageLocalOptionKey start='^--exec *' keepend end='$' contains=@tppShExec 55 56endif 57 58syn match tppComment "^--##.*$" 59 60" Define the default highlighting. 61" Only when an item doesn't have highlighting yet 62 63hi def link tppAbstractOptionKey Special 64hi def link tppPageLocalOptionKey Keyword 65hi def link tppPageLocalSwitchKey Keyword 66hi def link tppColorOptionKey Keyword 67hi def link tppTimeOptionKey Comment 68hi def link tppNewPageOptionKey PreProc 69hi def link tppString String 70hi def link tppColor String 71hi def link tppTime Number 72hi def link tppComment Comment 73hi def link tppAbstractOption Error 74hi def link tppPageLocalOption Error 75hi def link tppPageLocalSwitch Error 76hi def link tppColorOption Error 77hi def link tppNewPageOption Error 78hi def link tppTimeOption Error 79 80 81let b:current_syntax = 'tpp' 82 83" vim: ts=8 sw=2 84