1" Vim syntax file 2" Language: Vim help file 3" Maintainer: Bram Moolenaar ([email protected]) 4" Last Change: 2016 Sep 02 5 6" Quit when a (custom) syntax file was already loaded 7if exists("b:current_syntax") 8 finish 9endif 10 11let s:cpo_save = &cpo 12set cpo&vim 13 14syn match helpHeadline "^[-A-Z .][-A-Z0-9 .()]*[ \t]\+\*"me=e-1 15syn match helpSectionDelim "^===.*===$" 16syn match helpSectionDelim "^---.*--$" 17if has("conceal") 18 syn region helpExample matchgroup=helpIgnore start=" >$" start="^>$" end="^[^ \t]"me=e-1 end="^<" concealends 19else 20 syn region helpExample matchgroup=helpIgnore start=" >$" start="^>$" end="^[^ \t]"me=e-1 end="^<" 21endif 22if has("ebcdic") 23 syn match helpHyperTextJump "\\\@<!|[^"*|]\+|" contains=helpBar 24 syn match helpHyperTextEntry "\*[^"*|]\+\*\s"he=e-1 contains=helpStar 25 syn match helpHyperTextEntry "\*[^"*|]\+\*$" contains=helpStar 26else 27 syn match helpHyperTextJump "\\\@<!|[#-)!+-~]\+|" contains=helpBar 28 syn match helpHyperTextEntry "\*[#-)!+-~]\+\*\s"he=e-1 contains=helpStar 29 syn match helpHyperTextEntry "\*[#-)!+-~]\+\*$" contains=helpStar 30endif 31if has("conceal") 32 syn match helpBar contained "|" conceal 33 syn match helpBacktick contained "`" conceal 34 syn match helpStar contained "\*" conceal 35else 36 syn match helpBar contained "|" 37 syn match helpBacktick contained "`" 38 syn match helpStar contained "\*" 39endif 40syn match helpNormal "|.*====*|" 41syn match helpNormal "|||" 42syn match helpNormal ":|vim:|" " for :help modeline 43syn match helpVim "\<Vim version [0-9][0-9.a-z]*" 44syn match helpVim "VIM REFERENCE.*" 45syn match helpOption "'[a-z]\{2,\}'" 46syn match helpOption "'t_..'" 47syn match helpCommand "`[^` \t]\+`"hs=s+1,he=e-1 contains=helpBacktick 48syn match helpCommand "\(^\|[^a-z"[]\)\zs`[^`]\+`\ze\([^a-z\t."']\|$\)"hs=s+1,he=e-1 contains=helpBacktick 49syn match helpHeader "\s*\zs.\{-}\ze\s\=\~$" nextgroup=helpIgnore 50syn match helpGraphic ".* \ze`$" nextgroup=helpIgnore 51if has("conceal") 52 syn match helpIgnore "." contained conceal 53else 54 syn match helpIgnore "." contained 55endif 56syn keyword helpNote note Note NOTE note: Note: NOTE: Notes Notes: 57syn keyword helpWarning WARNING: Warning: 58syn match helpSpecial "\<N\>" 59syn match helpSpecial "\<N\.$"me=e-1 60syn match helpSpecial "\<N\.\s"me=e-2 61syn match helpSpecial "(N\>"ms=s+1 62syn match helpSpecial "\[N]" 63" avoid highlighting N N in help.txt 64syn match helpSpecial "N N"he=s+1 65syn match helpSpecial "Nth"me=e-2 66syn match helpSpecial "N-1"me=e-2 67syn match helpSpecial "{[-a-zA-Z0-9'"*+/:%#=[\]<>.,]\+}" 68syn match helpSpecial "\s\[[-a-z^A-Z0-9_]\{2,}]"ms=s+1 69syn match helpSpecial "<[-a-zA-Z0-9_]\+>" 70syn match helpSpecial "<[SCM]-.>" 71syn match helpNormal "<---*>" 72syn match helpSpecial "\[range]" 73syn match helpSpecial "\[line]" 74syn match helpSpecial "\[count]" 75syn match helpSpecial "\[offset]" 76syn match helpSpecial "\[cmd]" 77syn match helpSpecial "\[num]" 78syn match helpSpecial "\[+num]" 79syn match helpSpecial "\[-num]" 80syn match helpSpecial "\[+cmd]" 81syn match helpSpecial "\[++opt]" 82syn match helpSpecial "\[arg]" 83syn match helpSpecial "\[arguments]" 84syn match helpSpecial "\[ident]" 85syn match helpSpecial "\[addr]" 86syn match helpSpecial "\[group]" 87syn match helpSpecial "CTRL-." 88syn match helpSpecial "CTRL-Break" 89syn match helpSpecial "CTRL-PageUp" 90syn match helpSpecial "CTRL-PageDown" 91syn match helpSpecial "CTRL-Insert" 92syn match helpSpecial "CTRL-Del" 93syn match helpSpecial "CTRL-{char}" 94syn region helpNotVi start="{Vi[: ]" start="{not" start="{only" end="}" contains=helpLeadBlank,helpHyperTextJump 95syn match helpLeadBlank "^\s\+" contained 96 97" Highlight group items in their own color. 98syn match helpComment "\t[* ]Comment\t\+[a-z].*" 99syn match helpConstant "\t[* ]Constant\t\+[a-z].*" 100syn match helpString "\t[* ]String\t\+[a-z].*" 101syn match helpCharacter "\t[* ]Character\t\+[a-z].*" 102syn match helpNumber "\t[* ]Number\t\+[a-z].*" 103syn match helpBoolean "\t[* ]Boolean\t\+[a-z].*" 104syn match helpFloat "\t[* ]Float\t\+[a-z].*" 105syn match helpIdentifier "\t[* ]Identifier\t\+[a-z].*" 106syn match helpFunction "\t[* ]Function\t\+[a-z].*" 107syn match helpStatement "\t[* ]Statement\t\+[a-z].*" 108syn match helpConditional "\t[* ]Conditional\t\+[a-z].*" 109syn match helpRepeat "\t[* ]Repeat\t\+[a-z].*" 110syn match helpLabel "\t[* ]Label\t\+[a-z].*" 111syn match helpOperator "\t[* ]Operator\t\+["a-z].*" 112syn match helpKeyword "\t[* ]Keyword\t\+[a-z].*" 113syn match helpException "\t[* ]Exception\t\+[a-z].*" 114syn match helpPreProc "\t[* ]PreProc\t\+[a-z].*" 115syn match helpInclude "\t[* ]Include\t\+[a-z].*" 116syn match helpDefine "\t[* ]Define\t\+[a-z].*" 117syn match helpMacro "\t[* ]Macro\t\+[a-z].*" 118syn match helpPreCondit "\t[* ]PreCondit\t\+[a-z].*" 119syn match helpType "\t[* ]Type\t\+[a-z].*" 120syn match helpStorageClass "\t[* ]StorageClass\t\+[a-z].*" 121syn match helpStructure "\t[* ]Structure\t\+[a-z].*" 122syn match helpTypedef "\t[* ]Typedef\t\+[Aa-z].*" 123syn match helpSpecial "\t[* ]Special\t\+[a-z].*" 124syn match helpSpecialChar "\t[* ]SpecialChar\t\+[a-z].*" 125syn match helpTag "\t[* ]Tag\t\+[a-z].*" 126syn match helpDelimiter "\t[* ]Delimiter\t\+[a-z].*" 127syn match helpSpecialComment "\t[* ]SpecialComment\t\+[a-z].*" 128syn match helpDebug "\t[* ]Debug\t\+[a-z].*" 129syn match helpUnderlined "\t[* ]Underlined\t\+[a-z].*" 130syn match helpError "\t[* ]Error\t\+[a-z].*" 131syn match helpTodo "\t[* ]Todo\t\+[a-z].*" 132 133syn match helpURL `\v<(((https?|ftp|gopher)://|(mailto|file|news):)[^' <>"]+|(www|web|w3)[a-z0-9_-]*\.[a-z0-9._-]+\.[^' <>"]+)[a-zA-Z0-9/]` 134 135" Additionally load a language-specific syntax file "help_ab.vim". 136let s:i = match(expand("%"), '\.\a\ax$') 137if s:i > 0 138 exe "runtime syntax/help_" . strpart(expand("%"), s:i + 1, 2) . ".vim" 139endif 140 141" Italian 142if v:lang =~ '\<IT\>' || v:lang =~ '_IT\>' || v:lang =~? "italian" 143 syn keyword helpNote nota Nota NOTA nota: Nota: NOTA: notare Notare NOTARE notare: Notare: NOTARE: 144 syn match helpSpecial "Nma"me=e-2 145 syn match helpSpecial "Nme"me=e-2 146 syn match helpSpecial "Nmi"me=e-2 147 syn match helpSpecial "Nmo"me=e-2 148 syn match helpSpecial "\[interv.]" 149 syn region helpNotVi start="{non" start="{solo" start="{disponibile" end="}" contains=helpLeadBlank,helpHyperTextJump 150endif 151 152syn sync minlines=40 153 154 155" Define the default highlighting. 156" Only used when an item doesn't have highlighting yet 157hi def link helpIgnore Ignore 158hi def link helpHyperTextJump Identifier 159hi def link helpBar Ignore 160hi def link helpBacktick Ignore 161hi def link helpStar Ignore 162hi def link helpHyperTextEntry String 163hi def link helpHeadline Statement 164hi def link helpHeader PreProc 165hi def link helpSectionDelim PreProc 166hi def link helpVim Identifier 167hi def link helpCommand Comment 168hi def link helpExample Comment 169hi def link helpOption Type 170hi def link helpNotVi Special 171hi def link helpSpecial Special 172hi def link helpNote Todo 173hi def link helpWarning Todo 174 175hi def link helpComment Comment 176hi def link helpConstant Constant 177hi def link helpString String 178hi def link helpCharacter Character 179hi def link helpNumber Number 180hi def link helpBoolean Boolean 181hi def link helpFloat Float 182hi def link helpIdentifier Identifier 183hi def link helpFunction Function 184hi def link helpStatement Statement 185hi def link helpConditional Conditional 186hi def link helpRepeat Repeat 187hi def link helpLabel Label 188hi def link helpOperator Operator 189hi def link helpKeyword Keyword 190hi def link helpException Exception 191hi def link helpPreProc PreProc 192hi def link helpInclude Include 193hi def link helpDefine Define 194hi def link helpMacro Macro 195hi def link helpPreCondit PreCondit 196hi def link helpType Type 197hi def link helpStorageClass StorageClass 198hi def link helpStructure Structure 199hi def link helpTypedef Typedef 200hi def link helpSpecialChar SpecialChar 201hi def link helpTag Tag 202hi def link helpDelimiter Delimiter 203hi def link helpSpecialComment SpecialComment 204hi def link helpDebug Debug 205hi def link helpUnderlined Underlined 206hi def link helpError Error 207hi def link helpTodo Todo 208hi def link helpURL String 209 210let b:current_syntax = "help" 211 212let &cpo = s:cpo_save 213unlet s:cpo_save 214" vim: ts=8 sw=2 215