mirror of
https://github.com/vim/vim
synced 2025-03-16 14:57:52 +01:00
93 lines
3.3 KiB
VimL
93 lines
3.3 KiB
VimL
" Vim syntax file
|
|
" Language: tpp - Text Presentation Program
|
|
" Maintainer: Gerfried Fuchs <alfie@ist.org>
|
|
" Filenames: *.tpp
|
|
" Last Change: 28. October 2004
|
|
" URL: http://alfie.ist.org/projects/vim/syntax/tpp.vim
|
|
" License: BSD
|
|
"
|
|
" Comments are very welcome - but please make sure that you are commenting on
|
|
" the latest version of this file.
|
|
" SPAM is _NOT_ welcome - be ready to be reported!
|
|
|
|
" 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
|
|
|
|
if !exists("main_syntax")
|
|
let main_syntax = 'tpp'
|
|
endif
|
|
|
|
|
|
"" list of the legal switches/options
|
|
syn match tppAbstractOptionKey contained "^--\%(author\|title\|date\) *" nextgroup=tppValue
|
|
syn match tppPageLocalOptionKey contained "^--\%(heading\|center\|right\|huge\|sethugefont\|exec\) *" nextgroup=tppValue
|
|
syn match tppPageLocalSwitchKey contained "^--\%(horline\|-\|\%(begin\|end\)\%(\%(shell\)\?output\|slide\%(left\|right\|top\|bottom\)\)\|\%(bold\|rev\|ul\)\%(on\|off\)\|withborder\)"
|
|
syn match tppNewPageOptionKey contained "^--newpage *" nextgroup=tppValue
|
|
syn match tppColorOptionKey contained "^--\%(\%(bg\|fg\)\?color\) *"
|
|
syn match tppTimeOptionKey contained "^--sleep *"
|
|
|
|
syn match tppValue contained ".*"
|
|
syn match tppColor contained "\%(white\|yellow\|red\|green\|blue\|cyan\|magenta\|black\)"
|
|
syn match tppTime contained "\d\+"
|
|
|
|
syn region tppPageLocalSwitch start="^--" end="$" contains=tppPageLocalSwitchKey oneline
|
|
syn region tppColorOption start="^--\%(\%(bg\|fg\)\?color\)" end="$" contains=tppColorOptionKey,tppColor oneline
|
|
syn region tppTimeOption start="^--sleep" end="$" contains=tppTimeOptionKey,tppTime oneline
|
|
syn region tppNewPageOption start="^--newpage" end="$" contains=tppNewPageOptionKey oneline
|
|
syn region tppPageLocalOption start="^--\%(heading\|center\|right\|huge\|sethugefont\|exec\)" end="$" contains=tppPageLocalOptionKey oneline
|
|
syn region tppAbstractOption start="^--\%(author\|title\|date\)" end="$" contains=tppAbstractOptionKey oneline
|
|
|
|
if main_syntax != 'sh'
|
|
" shell command
|
|
if version < 600
|
|
syn include @tppShExec <sfile>:p:h/sh.vim
|
|
else
|
|
syn include @tppShExec syntax/sh.vim
|
|
endif
|
|
unlet b:current_syntax
|
|
|
|
syn region shExec matchgroup=tppPageLocalOptionKey start='^--exec *' keepend end='$' contains=@tppShExec
|
|
|
|
endif
|
|
|
|
syn match tppComment "^--##.*$"
|
|
|
|
" 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_tpp_syn_inits")
|
|
if version < 508
|
|
let did_tpp_syn_inits = 1
|
|
command -nargs=+ HiLink hi link <args>
|
|
else
|
|
command -nargs=+ HiLink hi def link <args>
|
|
endif
|
|
|
|
HiLink tppAbstractOptionKey Special
|
|
HiLink tppPageLocalOptionKey Keyword
|
|
HiLink tppPageLocalSwitchKey Keyword
|
|
HiLink tppColorOptionKey Keyword
|
|
HiLink tppTimeOptionKey Comment
|
|
HiLink tppNewPageOptionKey PreProc
|
|
HiLink tppValue String
|
|
HiLink tppColor String
|
|
HiLink tppTime Number
|
|
HiLink tppComment Comment
|
|
HiLink tppAbstractOption Error
|
|
HiLink tppPageLocalOption Error
|
|
HiLink tppPageLocalSwitch Error
|
|
HiLink tppColorOption Error
|
|
HiLink tppNewPageOption Error
|
|
HiLink tppTimeOption Error
|
|
|
|
delcommand HiLink
|
|
endif
|
|
|
|
let b:current_syntax = "tpp"
|
|
|
|
" vim: ts=8 sw=2
|