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