376 lines · 18.8 KB · Text
RawDownload
" Vim syntax file" Language:         TeX (core definition)" Maintainer:       Nikolai Weibull <now@bitwi.se>" Latest Revision:  2006-04-19 if exists("b:current_syntax")  finishendif let s:cpo_save = &cposet cpo&vim " This follows the grouping (sort of) found at" http://www.tug.org/utilities/plain/cseq.html#top-fam syn keyword initexTodo                          TODO FIXME XXX NOTE syn match initexComment                         display contains=initexTodo      \ '\\\@<!\%(\\\\\)*\zs%.*$' syn match   initexDimension                     display contains=@NoSpell      \ '[+-]\=\s*\%(\d\+\%([.,]\d*\)\=\|[.,]\d\+\)\s*\%(true\)\=\s*\%(p[tc]\|in\|bp\|c[mc]\|m[mu]\|dd\|sp\|e[mx]\)\>' syn cluster initexBox      \ contains=initexBoxCommand,initexBoxInternalQuantity,      \ initexBoxParameterDimen,initexBoxParameterInteger,      \ initexBoxParameterToken syn cluster initexCharacter      \ contains=initexCharacterCommand,initexCharacterInternalQuantity,      \ initexCharacterParameterInteger syn cluster initexDebugging      \ contains=initexDebuggingCommand,initexDebuggingParameterInteger,      \ initexDebuggingParameterToken syn cluster initexFileIO      \ contains=initexFileIOCommand,initexFileIOInternalQuantity,      \ initexFileIOParameterToken syn cluster initexFonts      \ contains=initexFontsCommand,initexFontsInternalQuantity syn cluster initexGlue      \ contains=initexGlueCommand,initexGlueDerivedCommand syn cluster initexHyphenation      \ contains=initexHyphenationCommand,initexHyphenationDerivedCommand,      \ initexHyphenationInternalQuantity,initexHyphenationParameterInteger syn cluster initexInserts      \ contains=initexInsertsCommand,initexInsertsParameterDimen,      \ initexInsertsParameterGlue,initexInsertsParameterInteger syn cluster initexJob      \ contains=initexJobCommand,initexJobInternalQuantity,      \ initexJobParameterInteger syn cluster initexKern      \ contains=initexKernCommand,initexKernInternalQuantity syn cluster initexLogic      \ contains=initexLogicCommand syn cluster initexMacro      \ contains=initexMacroCommand,initexMacroDerivedCommand,      \ initexMacroParameterInteger syn cluster initexMarks      \ contains=initexMarksCommand syn cluster initexMath      \ contains=initexMathCommand,initexMathDerivedCommand,      \ initexMathInternalQuantity,initexMathParameterDimen,      \ initexMathParameterGlue,initexMathParameterInteger,      \ initexMathParameterMuglue,initexMathParameterToken syn cluster initexPage      \ contains=initexPageInternalQuantity,initexPageParameterDimen,      \ initexPageParameterGlue syn cluster initexParagraph      \ contains=initexParagraphCommand,initexParagraphInternalQuantity,      \ initexParagraphParameterDimen,initexParagraphParameterGlue,      \ initexParagraphParameterInteger,initexParagraphParameterToken syn cluster initexPenalties      \ contains=initexPenaltiesCommand,initexPenaltiesInternalQuantity,      \ initexPenaltiesParameterInteger syn cluster initexRegisters      \ contains=initexRegistersCommand,initexRegistersInternalQuantity syn cluster initexTables      \ contains=initexTablesCommand,initexTablesParameterGlue,      \ initexTablesParameterToken syn cluster initexCommand      \ contains=initexBoxCommand,initexCharacterCommand,      \ initexDebuggingCommand,initexFileIOCommand,      \ initexFontsCommand,initexGlueCommand,      \ initexHyphenationCommand,initexInsertsCommand,      \ initexJobCommand,initexKernCommand,initexLogicCommand,      \ initexMacroCommand,initexMarksCommand,initexMathCommand,      \ initexParagraphCommand,initexPenaltiesCommand,initexRegistersCommand,      \ initexTablesCommand syn match   initexBoxCommand                    display contains=@NoSpell      \ '\\\%([hv]\=box\|[cx]\=leaders\|copy\|[hv]rule\|lastbox\|setbox\|un[hv]\%(box\|copy\)\|vtop\)\>'syn match   initexCharacterCommand              display contains=@NoSpell      \ '\\\%([] ]\|\%(^^M\|accent\|char\|\%(lower\|upper\)case\|number\|romannumeral\|string\)\>\)'syn match   initexDebuggingCommand              display contains=@NoSpell      \ '\\\%(\%(batch\|\%(non\|error\)stop\|scroll\)mode\|\%(err\)\=message\|meaning\|show\%(box\%(breadth\|depth\)\=\|lists\|the\)\)\>'syn match   initexFileIOCommand                 display contains=@NoSpell      \ '\\\%(\%(close\|open\)\%(in\|out\)\|endinput\|immediate\|input\|read\|shipout\|special\|write\)\>'syn match   initexFontsCommand                  display contains=@NoSpell      \ '\\\%(/\|fontname\)\>'syn match   initexGlueCommand                   display contains=@NoSpell      \ '\\\%([hv]\|un\)skip\>'syn match   initexHyphenationCommand            display contains=@NoSpell      \ '\\\%(discretionary\|hyphenation\|patterns\|setlanguage\)\>'syn match   initexInsertsCommand                display contains=@NoSpell      \ '\\\%(insert\|split\%(bot\|first\)mark\|vsplit\)\>'syn match   initexJobCommand                    display contains=@NoSpell      \ '\\\%(dump\|end\|jobname\)\>'syn match   initexKernCommand                   display contains=@NoSpell      \ '\\\%(kern\|lower\|move\%(left\|right\)\|raise\|unkern\)\>'syn match   initexLogicCommand                  display contains=@NoSpell      \ '\\\%(else\|fi\|if[a-zA-Z@]\+\|or\)\>'"      \ '\\\%(else\|fi\|if\%(case\|cat\|dim\|eof\|false\|[hv]box\|[hmv]mode\|inner\|num\|odd\|true\|void\|x\)\=\|or\)\>'syn match   initexMacroCommand                  display contains=@NoSpell      \ '\\\%(after\%(assignment\|group\)\|\%(begin\|end\)group\|\%(end\)\=csname\|e\=def\|expandafter\|futurelet\|global\|let\|long\|noexpand\|outer\|relax\|the\)\>'syn match   initexMarksCommand                  display contains=@NoSpell      \ '\\\%(bot\|first\|top\)\=mark\>'syn match   initexMathCommand                   display contains=@NoSpell      \ '\\\%(abovewithdelims\|delimiter\|display\%(limits\|style\)\|l\=eqno\|left\|\%(no\)\=limits\|math\%(accent\|bin\|char\|choice\|close\|code\|inner\|op\|open\|ord\|punct\|rel\)\|mkern\|mskip\|muskipdef\|nonscript\|\%(over\|under\)line\|radical\|right\|\%(\%(script\)\{1,2}\|text\)style\|vcenter\)\>'syn match   initexParagraphCommand              display contains=@NoSpell      \ '\\\%(ignorespaces\|indent\|no\%(boundary\|indent\)\|par\|vadjust\)\>'syn match   initexPenaltiesCommand              display contains=@NoSpell      \ '\\\%(un\)\=penalty\>'syn match   initexRegistersCommand              display contains=@NoSpell      \ '\\\%(advance\|\%(count\|dimen\|skip\|toks\)def\|divide\|multiply\)\>'syn match   initexTablesCommand                 display contains=@NoSpell      \ '\\\%(cr\|crcr\|[hv]align\|noalign\|omit\|span\)\>' syn cluster initexDerivedCommand      \ contains=initexGlueDerivedCommand,initexHyphenationDerivedCommand,      \ initexMacroDerivedCommand,initexMathDerivedCommand syn match   initexGlueDerivedCommand            display contains=@NoSpell      \ '\\\%([hv]fil\%(l\|neg\)\=\|[hv]ss\)\>'syn match   initexHyphenationDerivedCommand     display contains=@NoSpell      \ '\\-'syn match   initexMacroDerivedCommand           display contains=@NoSpell      \ '\\[gx]def\>'syn match   initexMathDerivedCommand            display contains=@NoSpell      \ '\\\%(above\|atop\%(withdelims\)\=\|mathchardef\|over\|overwithdelims\)\>' syn cluster initexInternalQuantity      \ contains=initexBoxInternalQuantity,initexCharacterInternalQuantity,      \ initexFileIOInternalQuantity,initexFontsInternalQuantity,      \ initexHyphenationInternalQuantity,initexJobInternalQuantity,      \ initexKernInternalQuantity,initexMathInternalQuantity,      \ initexPageInternalQuantity,initexParagraphInternalQuantity,      \ initexPenaltiesInternalQuantity,initexRegistersInternalQuantity syn match   initexBoxInternalQuantity           display contains=@NoSpell      \ '\\\%(badness\|dp\|ht\|prevdepth\|wd\)\>'syn match   initexCharacterInternalQuantity     display contains=@NoSpell      \ '\\\%(catcode\|chardef\|\%([ul]c\|sf\)code\)\>'syn match   initexFileIOInternalQuantity        display contains=@NoSpell      \ '\\inputlineno\>'syn match   initexFontsInternalQuantity         display contains=@NoSpell      \ '\\\%(font\%(dimen\)\=\|nullfont\)\>'syn match   initexHyphenationInternalQuantity   display contains=@NoSpell      \ '\\hyphenchar\>'syn match   initexJobInternalQuantity           display contains=@NoSpell      \ '\\deadcycles\>'syn match   initexKernInternalQuantity          display contains=@NoSpell      \ '\\lastkern\>'syn match   initexMathInternalQuantity          display contains=@NoSpell      \ '\\\%(delcode\|mathcode\|muskip\|\%(\%(script\)\{1,2}\|text\)font\|skewchar\)\>'syn match   initexPageInternalQuantity          display contains=@NoSpell      \ '\\page\%(depth\|fil\{1,3}stretch\|goal\|shrink\|stretch\|total\)\>'syn match   initexParagraphInternalQuantity     display contains=@NoSpell      \ '\\\%(prevgraf\|spacefactor\)\>'syn match   initexPenaltiesInternalQuantity     display contains=@NoSpell      \ '\\lastpenalty\>'syn match   initexRegistersInternalQuantity     display contains=@NoSpell      \ '\\\%(count\|dimen\|skip\|toks\)\d\+\>' syn cluster initexParameterDimen      \ contains=initexBoxParameterDimen,initexInsertsParameterDimen,      \ initexMathParameterDimen,initexPageParameterDimen,      \ initexParagraphParameterDimen syn match   initexBoxParameterDimen             display contains=@NoSpell      \ '\\\%(boxmaxdepth\|[hv]fuzz\|overfullrule\)\>'syn match   initexInsertsParameterDimen         display contains=@NoSpell      \ '\\splitmaxdepth\>'syn match   initexMathParameterDimen            display contains=@NoSpell      \ '\\\%(delimitershortfall\|display\%(indent\|width\)\|mathsurround\|nulldelimiterspace\|predisplaysize\|scriptspace\)\>'syn match   initexPageParameterDimen            display contains=@NoSpell      \ '\\\%([hv]offset\|maxdepth\|vsize\)\>'syn match   initexParagraphParameterDimen       display contains=@NoSpell      \ '\\\%(emergencystretch\|\%(hang\|par\)indent\|hsize\|lineskiplimit\)\>' syn cluster initexParameterGlue      \ contains=initexInsertsParameterGlue,initexMathParameterGlue,      \ initexPageParameterGlue,initexParagraphParameterGlue,      \ initexTablesParameterGlue syn match   initexInsertsParameterGlue          display contains=@NoSpell      \ '\\splittopskip\>'syn match   initexMathParameterGlue             display contains=@NoSpell      \ '\\\%(above\|below\)display\%(short\)\=skip\>'syn match   initexPageParameterGlue             display contains=@NoSpell      \ '\\topskip\>'syn match   initexParagraphParameterGlue        display contains=@NoSpell      \ '\\\%(baseline\|left\|line\|par\%(fill\)\=\|right\|x\=space\)skip\>'syn match   initexTablesParameterGlue           display contains=@NoSpell      \ '\\tabskip\>' syn cluster initexParameterInteger      \ contains=initexBoxParameterInteger,initexCharacterParameterInteger,      \ initexDebuggingParameterInteger,initexHyphenationParameterInteger,      \ initexInsertsParameterInteger,initexJobParameterInteger,      \ initexMacroParameterInteger,initexMathParameterInteger,      \ initexParagraphParameterInteger,initexPenaltiesParameterInteger, syn match   initexBoxParameterInteger           display contains=@NoSpell      \ '\\[hv]badness\>'syn match   initexCharacterParameterInteger     display contains=@NoSpell      \ '\\\%(\%(endline\|escape\|newline\)char\)\>'syn match   initexDebuggingParameterInteger     display contains=@NoSpell      \ '\\\%(errorcontextlines\|pausing\|tracing\%(commands\|lostchars\|macros\|online\|output\|pages\|paragraphs\|restores|stats\)\)\>'syn match   initexHyphenationParameterInteger   display contains=@NoSpell      \ '\\\%(defaulthyphenchar\|language\|\%(left\|right\)hyphenmin\|uchyph\)\>'syn match   initexInsertsParameterInteger       display contains=@NoSpell      \ '\\\%(holdinginserts\)\>'syn match   initexJobParameterInteger           display contains=@NoSpell      \ '\\\%(day\|mag\|maxdeadcycles\|month\|time\|year\)\>'syn match   initexMacroParameterInteger         display contains=@NoSpell      \ '\\globaldefs\>'syn match   initexMathParameterInteger          display contains=@NoSpell      \ '\\\%(binoppenalty\|defaultskewchar\|delimiterfactor\|displaywidowpenalty\|fam\|\%(post\|pre\)displaypenalty\|relpenalty\)\>'syn match   initexParagraphParameterInteger     display contains=@NoSpell      \ '\\\%(\%(adj\|\%(double\|final\)hyphen\)demerits\|looseness\|\%(pre\)\=tolerance\)\>'syn match   initexPenaltiesParameterInteger     display contains=@NoSpell      \ '\\\%(broken\|club\|exhyphen\|floating\|hyphen\|interline\|line\|output\|widow\)penalty\>' syn cluster initexParameterMuglue      \ contains=initexMathParameterMuglue syn match   initexMathParameterMuglue           display contains=@NoSpell      \ '\\\%(med\|thick\|thin\)muskip\>' syn cluster initexParameterDimen      \ contains=initexBoxParameterToken,initexDebuggingParameterToken,      \ initexFileIOParameterToken,initexMathParameterToken,      \ initexParagraphParameterToken,initexTablesParameterToken syn match   initexBoxParameterToken             display contains=@NoSpell      \ '\\every[hv]box\>'syn match   initexDebuggingParameterToken       display contains=@NoSpell      \ '\\errhelp\>'syn match   initexFileIOParameterToken          display contains=@NoSpell      \ '\\output\>'syn match   initexMathParameterToken            display contains=@NoSpell      \ '\\every\%(display\|math\)\>'syn match   initexParagraphParameterToken       display contains=@NoSpell      \ '\\everypar\>'syn match   initexTablesParameterToken          display contains=@NoSpell      \ '\\everycr\>'  hi def link initexCharacter                     Characterhi def link initexNumber                        Number hi def link initexIdentifier                    Identifier hi def link initexStatement                     Statementhi def link initexConditional                   Conditional hi def link initexPreProc                       PreProchi def link initexMacro                         Macro hi def link initexType                          Type hi def link initexDebug                         Debug hi def link initexTodo                          Todohi def link initexComment                       Commenthi def link initexDimension                     initexNumber hi def link initexCommand                       initexStatementhi def link initexBoxCommand                    initexCommandhi def link initexCharacterCommand              initexCharacterhi def link initexDebuggingCommand              initexDebughi def link initexFileIOCommand                 initexCommandhi def link initexFontsCommand                  initexTypehi def link initexGlueCommand                   initexCommandhi def link initexHyphenationCommand            initexCommandhi def link initexInsertsCommand                initexCommandhi def link initexJobCommand                    initexPreProchi def link initexKernCommand                   initexCommandhi def link initexLogicCommand                  initexConditionalhi def link initexMacroCommand                  initexMacrohi def link initexMarksCommand                  initexCommandhi def link initexMathCommand                   initexCommandhi def link initexParagraphCommand              initexCommandhi def link initexPenaltiesCommand              initexCommandhi def link initexRegistersCommand              initexCommandhi def link initexTablesCommand                 initexCommand hi def link initexDerivedCommand                initexStatementhi def link initexGlueDerivedCommand            initexDerivedCommandhi def link initexHyphenationDerivedCommand     initexDerivedCommandhi def link initexMacroDerivedCommand           initexDerivedCommandhi def link initexMathDerivedCommand            initexDerivedCommand hi def link initexInternalQuantity              initexIdentifierhi def link initexBoxInternalQuantity           initexInternalQuantityhi def link initexCharacterInternalQuantity     initexInternalQuantityhi def link initexFileIOInternalQuantity        initexInternalQuantityhi def link initexFontsInternalQuantity         initexInternalQuantityhi def link initexHyphenationInternalQuantity   initexInternalQuantityhi def link initexJobInternalQuantity           initexInternalQuantityhi def link initexKernInternalQuantity          initexInternalQuantityhi def link initexMathInternalQuantity          initexInternalQuantityhi def link initexPageInternalQuantity          initexInternalQuantityhi def link initexParagraphInternalQuantity     initexInternalQuantityhi def link initexPenaltiesInternalQuantity     initexInternalQuantityhi def link initexRegistersInternalQuantity     initexInternalQuantity hi def link initexParameterDimen                initexNumberhi def link initexBoxParameterDimen             initexParameterDimenhi def link initexInsertsParameterDimen         initexParameterDimenhi def link initexMathParameterDimen            initexParameterDimenhi def link initexPageParameterDimen            initexParameterDimenhi def link initexParagraphParameterDimen       initexParameterDimen hi def link initexParameterGlue                 initexNumberhi def link initexInsertsParameterGlue          initexParameterGluehi def link initexMathParameterGlue             initexParameterGluehi def link initexPageParameterGlue             initexParameterGluehi def link initexParagraphParameterGlue        initexParameterGluehi def link initexTablesParameterGlue           initexParameterGlue hi def link initexParameterInteger              initexNumberhi def link initexBoxParameterInteger           initexParameterIntegerhi def link initexCharacterParameterInteger     initexParameterIntegerhi def link initexDebuggingParameterInteger     initexParameterIntegerhi def link initexHyphenationParameterInteger   initexParameterIntegerhi def link initexInsertsParameterInteger       initexParameterIntegerhi def link initexJobParameterInteger           initexParameterIntegerhi def link initexMacroParameterInteger         initexParameterIntegerhi def link initexMathParameterInteger          initexParameterIntegerhi def link initexParagraphParameterInteger     initexParameterIntegerhi def link initexPenaltiesParameterInteger     initexParameterInteger hi def link initexParameterMuglue               initexNumberhi def link initexMathParameterMuglue           initexParameterMuglue hi def link initexParameterToken                initexIdentifierhi def link initexBoxParameterToken             initexParameterTokenhi def link initexDebuggingParameterToken       initexParameterTokenhi def link initexFileIOParameterToken          initexParameterTokenhi def link initexMathParameterToken            initexParameterTokenhi def link initexParagraphParameterToken       initexParameterTokenhi def link initexTablesParameterToken          initexParameterToken let b:current_syntax = "initex" let &cpo = s:cpo_saveunlet s:cpo_save