" Vim syntax file " Language: Vim help file " Maintainer: Bram Moolenaar (Bram@vim.org) " Last Change: 2004 May 17 " 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 syn match helpHeadline "^[A-Z ]\+[ ]\+\*"me=e-1 syn match helpSectionDelim "^=\{3,}.*===$" syn match helpSectionDelim "^-\{3,}.*--$" syn region helpExample matchgroup=helpIgnore start=" >$" start="^>$" end="^[^ \t]"me=e-1 end="^<" if has("ebcdic") syn match helpHyperTextJump "\\\@" syn match helpSpecial "\"ms=s+1 syn match helpSpecial "\[N]" " avoid highlighting N N in help.txt syn match helpSpecial "N N"he=s+1 syn match helpSpecial "Nth"me=e-2 syn match helpSpecial "N-1"me=e-2 syn match helpSpecial "{[-a-zA-Z0-9'":%#=[\]<>.,]\+}" syn match helpSpecial "{[-a-zA-Z0-9'"*+/:%#=[\]<>.,]\+}" syn match helpSpecial "\s\[[-a-z^A-Z0-9_]\{2,}]"ms=s+1 syn match helpSpecial "<[-a-zA-Z0-9_]\+>" syn match helpSpecial "<[SCM]-.>" syn match helpNormal "<---*>" syn match helpSpecial "\[range]" syn match helpSpecial "\[line]" syn match helpSpecial "\[count]" syn match helpSpecial "\[offset]" syn match helpSpecial "\[cmd]" syn match helpSpecial "\[num]" syn match helpSpecial "\[+num]" syn match helpSpecial "\[-num]" syn match helpSpecial "\[+cmd]" syn match helpSpecial "\[++opt]" syn match helpSpecial "\[arg]" syn match helpSpecial "\[arguments]" syn match helpSpecial "\[ident]" syn match helpSpecial "\[addr]" syn match helpSpecial "\[group]" syn match helpSpecial "CTRL-." syn match helpSpecial "CTRL-Break" syn match helpSpecial "CTRL-PageUp" syn match helpSpecial "CTRL-PageDown" syn match helpSpecial "CTRL-Insert" syn match helpSpecial "CTRL-Del" syn match helpSpecial "CTRL-{char}" syn region helpNotVi start="{Vi[: ]" start="{not" start="{only" end="}" contains=helpLeadBlank,helpHyperTextJump syn match helpLeadBlank "^\s\+" contained " Highlight group items in their own color. syn match helpComment "\t[* ]Comment\t\+[a-z].*" syn match helpConstant "\t[* ]Constant\t\+[a-z].*" syn match helpString "\t[* ]String\t\+[a-z].*" syn match helpCharacter "\t[* ]Character\t\+[a-z].*" syn match helpNumber "\t[* ]Number\t\+[a-z].*" syn match helpBoolean "\t[* ]Boolean\t\+[a-z].*" syn match helpFloat "\t[* ]Float\t\+[a-z].*" syn match helpIdentifier "\t[* ]Identifier\t\+[a-z].*" syn match helpFunction "\t[* ]Function\t\+[a-z].*" syn match helpStatement "\t[* ]Statement\t\+[a-z].*" syn match helpConditional "\t[* ]Conditional\t\+[a-z].*" syn match helpRepeat "\t[* ]Repeat\t\+[a-z].*" syn match helpLabel "\t[* ]Label\t\+[a-z].*" syn match helpOperator "\t[* ]Operator\t\+["a-z].*" syn match helpKeyword "\t[* ]Keyword\t\+[a-z].*" syn match helpException "\t[* ]Exception\t\+[a-z].*" syn match helpPreProc "\t[* ]PreProc\t\+[a-z].*" syn match helpInclude "\t[* ]Include\t\+[a-z].*" syn match helpDefine "\t[* ]Define\t\+[a-z].*" syn match helpMacro "\t[* ]Macro\t\+[a-z].*" syn match helpPreCondit "\t[* ]PreCondit\t\+[a-z].*" syn match helpType "\t[* ]Type\t\+[a-z].*" syn match helpStorageClass "\t[* ]StorageClass\t\+[a-z].*" syn match helpStructure "\t[* ]Structure\t\+[a-z].*" syn match helpTypedef "\t[* ]Typedef\t\+[Aa-z].*" syn match helpSpecial "\t[* ]Special\t\+[a-z].*" syn match helpSpecialChar "\t[* ]SpecialChar\t\+[a-z].*" syn match helpTag "\t[* ]Tag\t\+[a-z].*" syn match helpDelimiter "\t[* ]Delimiter\t\+[a-z].*" syn match helpSpecialComment "\t[* ]SpecialComment\t\+[a-z].*" syn match helpDebug "\t[* ]Debug\t\+[a-z].*" syn match helpUnderlined "\t[* ]Underlined\t\+[a-z].*" syn match helpError "\t[* ]Error\t\+[a-z].*" syn match helpTodo "\t[* ]Todo\t\+[a-z].*" " Additionally load a language-specific syntax file "help_ab.vim". let i = match(expand("%"), '\.\a\ax$') if i > 0 exe "runtime syntax/help_" . strpart(expand("%"), i + 1, 2) . ".vim" endif syn sync minlines=40 " 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_help_syntax_inits") if version < 508 let did_help_syntax_inits = 1 command -nargs=+ HiLink hi link else command -nargs=+ HiLink hi def link endif HiLink helpExampleStart helpIgnore HiLink helpIgnore Ignore HiLink helpHyperTextJump Subtitle HiLink helpHyperTextEntry String HiLink helpHeadline Statement HiLink helpHeader PreProc HiLink helpSectionDelim PreProc HiLink helpVim Identifier HiLink helpExample Comment HiLink helpOption Type HiLink helpNotVi Special HiLink helpSpecial Special HiLink helpNote Todo HiLink Subtitle Identifier HiLink helpComment Comment HiLink helpConstant Constant HiLink helpString String HiLink helpCharacter Character HiLink helpNumber Number HiLink helpBoolean Boolean HiLink helpFloat Float HiLink helpIdentifier Identifier HiLink helpFunction Function HiLink helpStatement Statement HiLink helpConditional Conditional HiLink helpRepeat Repeat HiLink helpLabel Label HiLink helpOperator Operator HiLink helpKeyword Keyword HiLink helpException Exception HiLink helpPreProc PreProc HiLink helpInclude Include HiLink helpDefine Define HiLink helpMacro Macro HiLink helpPreCondit PreCondit HiLink helpType Type HiLink helpStorageClass StorageClass HiLink helpStructure Structure HiLink helpTypedef Typedef HiLink helpSpecialChar SpecialChar HiLink helpTag Tag HiLink helpDelimiter Delimiter HiLink helpSpecialComment SpecialComment HiLink helpDebug Debug HiLink helpUnderlined Underlined HiLink helpError Error HiLink helpTodo Todo delcommand HiLink endif let b:current_syntax = "help" " vim: ts=8 sw=2