1" Vim syntax file 2" Language: NeoMutt setup files 3" Maintainer: Richard Russon <[email protected]> 4" Previous Maintainer: Guillaume Brogi <[email protected]> 5" Last Change: 2019-11-18 6" Original version based on syntax/muttrc.vim 7 8" This file covers NeoMutt 2019-11-02 9 10" quit when a syntax file was already loaded 11if exists("b:current_syntax") 12 finish 13endif 14 15let s:cpo_save = &cpo 16set cpo&vim 17 18" Set the keyword characters 19setlocal isk=@,48-57,_,- 20 21" handling optional variables 22syntax match muttrcComment "^# .*$" contains=@Spell 23syntax match muttrcComment "^#[^ ].*$" 24syntax match muttrcComment "^#$" 25syntax match muttrcComment "[^\\]#.*$"lc=1 26 27" Escape sequences (back-tick and pipe goes here too) 28syntax match muttrcEscape +\\[#tnr"'Cc ]+ 29syntax match muttrcEscape +[`|]+ 30syntax match muttrcEscape +\\$+ 31 32" The variables takes the following arguments 33"syn match muttrcString contained "=\s*[^ #"'`]\+"lc=1 contains=muttrcEscape 34syntax region muttrcString contained keepend start=+"+ms=e skip=+\\"+ end=+"+ contains=muttrcEscape,muttrcCommand,muttrcAction,muttrcShellString 35syntax region muttrcString contained keepend start=+'+ms=e skip=+\\'+ end=+'+ contains=muttrcEscape,muttrcCommand,muttrcAction 36syntax match muttrcStringNL contained skipwhite skipnl "\s*\\$" nextgroup=muttrcString,muttrcStringNL 37 38syntax region muttrcShellString matchgroup=muttrcEscape keepend start=+`+ skip=+\\`+ end=+`+ contains=muttrcVarStr,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcCommand,muttrcVarDeprecatedStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad 39 40syntax match muttrcRXChars contained /[^\\][][.*?+]\+/hs=s+1 41syntax match muttrcRXChars contained /[][|()][.*?+]*/ 42syntax match muttrcRXChars contained /['"]^/ms=s+1 43syntax match muttrcRXChars contained /$['"]/me=e-1 44syntax match muttrcRXChars contained /\\/ 45" Why does muttrcRXString2 work with one \ when muttrcRXString requires two? 46syntax region muttrcRXString contained skipwhite start=+'+ skip=+\\'+ end=+'+ contains=muttrcRXChars 47syntax region muttrcRXString contained skipwhite start=+"+ skip=+\\"+ end=+"+ contains=muttrcRXChars 48syntax region muttrcRXString contained skipwhite start=+[^ "'^]+ skip=+\\\s+ end=+\s+re=e-1 contains=muttrcRXChars 49" For some reason, skip refuses to match backslashes here... 50syntax region muttrcRXString contained matchgroup=muttrcRXChars skipwhite start=+\^+ end=+[^\\]\s+re=e-1 contains=muttrcRXChars 51syntax region muttrcRXString contained matchgroup=muttrcRXChars skipwhite start=+\^+ end=+$\s+ contains=muttrcRXChars 52syntax region muttrcRXString2 contained skipwhite start=+'+ skip=+\'+ end=+'+ contains=muttrcRXChars 53syntax region muttrcRXString2 contained skipwhite start=+"+ skip=+\"+ end=+"+ contains=muttrcRXChars 54 55" these must be kept synchronized with muttrcRXString, but are intended for 56" muttrcRXHooks 57syntax region muttrcRXHookString contained keepend skipwhite start=+'+ skip=+\\'+ end=+'+ contains=muttrcRXString nextgroup=muttrcString,muttrcStringNL 58syntax region muttrcRXHookString contained keepend skipwhite start=+"+ skip=+\\"+ end=+"+ contains=muttrcRXString nextgroup=muttrcString,muttrcStringNL 59syntax region muttrcRXHookString contained keepend skipwhite start=+[^ "'^]+ skip=+\\\s+ end=+\s+re=e-1 contains=muttrcRXString nextgroup=muttrcString,muttrcStringNL 60syntax region muttrcRXHookString contained keepend skipwhite start=+\^+ end=+[^\\]\s+re=e-1 contains=muttrcRXString nextgroup=muttrcString,muttrcStringNL 61syntax region muttrcRXHookString contained keepend matchgroup=muttrcRXChars skipwhite start=+\^+ end=+$\s+ contains=muttrcRXString nextgroup=muttrcString,muttrcStringNL 62syntax match muttrcRXHookStringNL contained skipwhite skipnl "\s*\\$" nextgroup=muttrcRXHookString,muttrcRXHookStringNL 63 64" these are exclusively for args lists (e.g. -rx pat pat pat ...) 65syntax region muttrcRXPat contained keepend skipwhite start=+'+ skip=+\\'+ end=+'\s*+ contains=muttrcRXString nextgroup=muttrcRXPat 66syntax region muttrcRXPat contained keepend skipwhite start=+"+ skip=+\\"+ end=+"\s*+ contains=muttrcRXString nextgroup=muttrcRXPat 67syntax match muttrcRXPat contained /[^-'"#!]\S\+/ skipwhite contains=muttrcRXChars nextgroup=muttrcRXPat 68syntax match muttrcRXDef contained "-rx\s\+" skipwhite nextgroup=muttrcRXPat 69 70syntax match muttrcSpecial +\(['"]\)!\1+ 71 72syntax match muttrcSetStrAssignment contained skipwhite /=\s*\%(\\\?\$\)\?[0-9A-Za-z_-]\+/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr contains=muttrcVariable,muttrcEscapedVariable 73syntax region muttrcSetStrAssignment contained skipwhite keepend start=+=\s*"+hs=s+1 end=+"+ skip=+\\"+ nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr contains=muttrcString 74syntax region muttrcSetStrAssignment contained skipwhite keepend start=+=\s*'+hs=s+1 end=+'+ skip=+\\'+ nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr contains=muttrcString 75syntax match muttrcSetBoolAssignment contained skipwhite /=\s*\\\?\$\w\+/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr contains=muttrcVariable,muttrcEscapedVariable 76syntax match muttrcSetBoolAssignment contained skipwhite /=\s*\%(yes\|no\)/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 77syntax match muttrcSetBoolAssignment contained skipwhite /=\s*"\%(yes\|no\)"/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 78syntax match muttrcSetBoolAssignment contained skipwhite /=\s*'\%(yes\|no\)'/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 79syntax match muttrcSetQuadAssignment contained skipwhite /=\s*\\\?\$\w\+/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr contains=muttrcVariable,muttrcEscapedVariable 80syntax match muttrcSetQuadAssignment contained skipwhite /=\s*\%(ask-\)\?\%(yes\|no\)/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 81syntax match muttrcSetQuadAssignment contained skipwhite /=\s*"\%(ask-\)\?\%(yes\|no\)"/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 82syntax match muttrcSetQuadAssignment contained skipwhite /=\s*'\%(ask-\)\?\%(yes\|no\)'/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 83syntax match muttrcSetNumAssignment contained skipwhite /=\s*\\\?\$\w\+/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr contains=muttrcVariable,muttrcEscapedVariable 84syntax match muttrcSetNumAssignment contained skipwhite /=\s*\d\+/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 85syntax match muttrcSetNumAssignment contained skipwhite /=\s*"\d\+"/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 86syntax match muttrcSetNumAssignment contained skipwhite /=\s*'\d\+'/hs=s+1 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 87 88" Now catch some email addresses and headers (purified version from mail.vim) 89syntax match muttrcEmail "[a-zA-Z0-9._-]\+@[a-zA-Z0-9./-]\+" 90syntax match muttrcHeader "\<\c\%(From\|To\|C[Cc]\|B[Cc][Cc]\|Reply-To\|Subject\|Return-Path\|Received\|Date\|Replied\|Attach\)\>:\=" 91 92syntax match muttrcKeySpecial contained +\%(\\[Cc'"]\|\^\|\\[01]\d\{2}\)+ 93syntax match muttrcKey contained "\S\+" contains=muttrcKeySpecial,muttrcKeyName 94syntax region muttrcKey contained start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=muttrcKeySpecial,muttrcKeyName 95syntax region muttrcKey contained start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=muttrcKeySpecial,muttrcKeyName 96syntax match muttrcKeyName contained "\\[trne]" 97syntax match muttrcKeyName contained "\c<\%(BackSpace\|BackTab\|Delete\|Down\|End\|Enter\|Esc\|Home\|Insert\|Left\|Next\|PageDown\|PageUp\|Return\|Right\|Space\|Tab\|Up\)>" 98syntax match muttrcKeyName contained "\c<F\d\+>" 99 100syntax match muttrcFormatErrors contained /%./ 101 102syntax match muttrcStrftimeEscapes contained /%[AaBbCcDdeFGgHhIjklMmnpRrSsTtUuVvWwXxYyZz+%]/ 103syntax match muttrcStrftimeEscapes contained /%E[cCxXyY]/ 104syntax match muttrcStrftimeEscapes contained /%O[BdeHImMSuUVwWy]/ 105 106syntax region muttrcIndexFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcIndexFormatEscapes,muttrcIndexFormatConditionals,muttrcFormatErrors,muttrcTimeEscapes nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 107syntax region muttrcIndexFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcIndexFormatEscapes,muttrcIndexFormatConditionals,muttrcFormatErrors,muttrcTimeEscapes nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 108syntax region muttrcGroupIndexFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcGroupIndexFormatEscapes,muttrcGroupIndexFormatConditionals,muttrcFormatErrors,muttrcTimeEscapes nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 109syntax region muttrcGroupIndexFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcGroupIndexFormatEscapes,muttrcGroupIndexFormatConditionals,muttrcFormatErrors,muttrcTimeEscapes nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 110syntax region muttrcSidebarFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcSidebarFormatEscapes,muttrcSidebarFormatConditionals,muttrcFormatErrors,muttrcTimeEscapes nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 111syntax region muttrcSidebarFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcSidebarFormatEscapes,muttrcSidebarFormatConditionals,muttrcFormatErrors,muttrcTimeEscapes nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 112syntax region muttrcQueryFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcQueryFormatEscapes,muttrcQueryFormatConditionals,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 113syntax region muttrcAliasFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcAliasFormatEscapes,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 114syntax region muttrcAliasFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcAliasFormatEscapes,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 115syntax region muttrcAttachFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcAttachFormatEscapes,muttrcAttachFormatConditionals,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 116syntax region muttrcAttachFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcAttachFormatEscapes,muttrcAttachFormatConditionals,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 117syntax region muttrcComposeFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcComposeFormatEscapes,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 118syntax region muttrcComposeFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcComposeFormatEscapes,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 119syntax region muttrcFolderFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcFolderFormatEscapes,muttrcFolderFormatConditionals,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 120syntax region muttrcFolderFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcFolderFormatEscapes,muttrcFolderFormatConditionals,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 121syntax region muttrcMixFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcMixFormatEscapes,muttrcMixFormatConditionals,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 122syntax region muttrcMixFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcMixFormatEscapes,muttrcMixFormatConditionals,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 123syntax region muttrcPGPFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcPGPFormatEscapes,muttrcPGPFormatConditionals,muttrcFormatErrors,muttrcPGPTimeEscapes nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 124syntax region muttrcPGPFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcPGPFormatEscapes,muttrcPGPFormatConditionals,muttrcFormatErrors,muttrcPGPTimeEscapes nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 125syntax region muttrcPGPCmdFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcPGPCmdFormatEscapes,muttrcPGPCmdFormatConditionals,muttrcVariable,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 126syntax region muttrcPGPCmdFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcPGPCmdFormatEscapes,muttrcPGPCmdFormatConditionals,muttrcVariable,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 127syntax region muttrcStatusFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcStatusFormatEscapes,muttrcStatusFormatConditionals,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 128syntax region muttrcStatusFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcStatusFormatEscapes,muttrcStatusFormatConditionals,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 129syntax region muttrcPGPGetKeysFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcPGPGetKeysFormatEscapes,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 130syntax region muttrcPGPGetKeysFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcPGPGetKeysFormatEscapes,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 131syntax region muttrcSmimeFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcSmimeFormatEscapes,muttrcSmimeFormatConditionals,muttrcVariable,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 132syntax region muttrcSmimeFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcSmimeFormatEscapes,muttrcSmimeFormatConditionals,muttrcVariable,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 133syntax region muttrcStrftimeFormatStr contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcStrftimeEscapes,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 134syntax region muttrcStrftimeFormatStr contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcStrftimeEscapes,muttrcFormatErrors nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 135 136" Format escapes and conditionals 137syntax match muttrcFormatConditionals2 contained /[^?]*?/ 138function! s:escapesConditionals(baseName, sequence, alignment, secondary) 139 exec 'syntax match muttrc' . a:baseName . 'Escapes contained /%\%(\%(-\?[0-9]\+\)\?\%(\.[0-9]\+\)\?\)\?[:_]\?\%(' . a:sequence . '\|%\)/' 140 if a:alignment 141 exec 'syntax match muttrc' . a:baseName . 'Escapes contained /%[>|*]./' 142 endif 143 if a:secondary 144 exec 'syntax match muttrc' . a:baseName . 'Conditionals contained /%?\%(' . a:sequence . '\)?/ nextgroup=muttrcFormatConditionals2' 145 else 146 exec 'syntax match muttrc' . a:baseName . 'Conditionals contained /%?\%(' . a:sequence . '\)?/' 147 endif 148endfunction 149 150" CHECKED 2019-11-18 151" Ref: index_format_str() in hdrline.c 152call s:escapesConditionals('IndexFormat', '[AaBbCDdEeFfgHIiJKLlMmNnOPqRrSsTtuvWXxYyZ(<[{]\|G[a-zA-Z]\+\|Fp\=\|z[cst]\|cr\=', 1, 1) 153" Ref: alias_format_str() in addrbook.c 154syntax match muttrcAliasFormatEscapes contained /%\%(\%(-\?[0-9]\+\)\?\%(\.[0-9]\+\)\?\)\?[:_]\?[afnrt%]/ 155" Ref: group_index_format_str() in browser.c 156call s:escapesConditionals('GroupIndexFormat', '[CdfMNns]', 1, 1) 157" Ref: sidebar_format_str() in sidebar.c 158call s:escapesConditionals('SidebarFormat', '[!BDdFLNnSt]', 1, 1) 159" Ref: query_format_str() in query.c 160call s:escapesConditionals('QueryFormat', '[acent]', 0, 1) 161" Ref: attach_format_str() in recvattach.c 162call s:escapesConditionals('AttachFormat', '[CcDdeFfIMmnQsTtuX]', 1, 1) 163" Ref: compose_format_str() in compose.c 164syntax match muttrcComposeFormatEscapes contained /%\%(\%(-\?[0-9]\+\)\?\%(\.[0-9]\+\)\?\)\?[:_]\?[ahlv%]/ 165syntax match muttrcComposeFormatEscapes contained /%[>|*]./ 166" Ref: folder_format_str() in browser.c 167call s:escapesConditionals('FolderFormat', '[CDdFfgilmNnstu]', 1, 0) 168" Ref: mix_format_str() in remailer.c 169call s:escapesConditionals('MixFormat', '[acns]', 0, 0) 170" Ref: status_format_str() in status.c 171call s:escapesConditionals('StatusFormat', '[bDdFfhLlMmnoPpRrSstuVv]', 1, 1) 172" Ref: fmt_smime_command() in ncrypt/smime.c 173call s:escapesConditionals('SmimeFormat', '[aCcdfiks]', 0, 1) 174" Ref: crypt_format_str() in ncrypt/crypt_gpgme.c 175" Ref: pgp_entry_fmt() in ncrypt/pgpkey.c 176" Note: crypt_format_str() supports 'p', but pgp_entry_fmt() does not 177call s:escapesConditionals('PGPFormat', '[AaCcFfKkLlnptu[]', 0, 0) 178" Ref: fmt_pgp_command() ncrypt/pgpinvoke.c 179call s:escapesConditionals('PGPCmdFormat', '[afprs]', 0, 1) 180 181" This matches the documentation, but directly contradicts the code 182" (according to the code, this should be identical to the muttrcPGPCmdFormatEscapes 183syntax match muttrcPGPGetKeysFormatEscapes contained /%\%(\%(-\?[0-9]\+\)\?\%(\.[0-9]\+\)\?\)\?[:_]\?[acfklntu[%]/ 184 185syntax region muttrcTimeEscapes contained start=+%{+ end=+}+ contains=muttrcStrftimeEscapes 186syntax region muttrcTimeEscapes contained start=+%\[+ end=+\]+ contains=muttrcStrftimeEscapes 187syntax region muttrcTimeEscapes contained start=+%(+ end=+)+ contains=muttrcStrftimeEscapes 188syntax region muttrcTimeEscapes contained start=+%<+ end=+>+ contains=muttrcStrftimeEscapes 189syntax region muttrcPGPTimeEscapes contained start=+%\[+ end=+\]+ contains=muttrcStrftimeEscapes 190 191syntax match muttrcVarEqualsAliasFmt contained skipwhite "=" nextgroup=muttrcAliasFormatStr 192syntax match muttrcVarEqualsAttachFmt contained skipwhite "=" nextgroup=muttrcAttachFormatStr 193syntax match muttrcVarEqualsComposeFmt contained skipwhite "=" nextgroup=muttrcComposeFormatStr 194syntax match muttrcVarEqualsFolderFmt contained skipwhite "=" nextgroup=muttrcFolderFormatStr 195syntax match muttrcVarEqualsGrpIdxFmt contained skipwhite "=" nextgroup=muttrcGroupIndexFormatStr 196syntax match muttrcVarEqualsIdxFmt contained skipwhite "=" nextgroup=muttrcIndexFormatStr 197syntax match muttrcVarEqualsMixFmt contained skipwhite "=" nextgroup=muttrcMixFormatStr 198syntax match muttrcVarEqualsPGPCmdFmt contained skipwhite "=" nextgroup=muttrcPGPCmdFormatStr 199syntax match muttrcVarEqualsPGPFmt contained skipwhite "=" nextgroup=muttrcPGPFormatStr 200syntax match muttrcVarEqualsPGPGetKeysFmt contained skipwhite "=" nextgroup=muttrcPGPGetKeysFormatStr 201syntax match muttrcVarEqualsQueryFmt contained skipwhite "=" nextgroup=muttrcQueryFormatStr 202syntax match muttrcVarEqualsSdbFmt contained skipwhite "=" nextgroup=muttrcSidebarFormatStr 203syntax match muttrcVarEqualsSmimeFmt contained skipwhite "=" nextgroup=muttrcSmimeFormatStr 204syntax match muttrcVarEqualsStatusFmt contained skipwhite "=" nextgroup=muttrcStatusFormatStr 205syntax match muttrcVarEqualsStrftimeFmt contained skipwhite "=" nextgroup=muttrcStrftimeFormatStr 206 207syntax match muttrcVPrefix contained /[?&]/ nextgroup=muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 208 209" CHECKED 2019-11-02 210" List of the different screens in mutt (see Menus in keymap.c) 211syntax keyword muttrcMenu contained alias attach browser compose editor generic index key_select_pgp key_select_smime mix pager pgp postpone query smime 212syntax match muttrcMenuList "\S\+" contained contains=muttrcMenu 213syntax match muttrcMenuCommas /,/ contained 214 215" CHECKED 2019-11-02 216" List of hooks in Commands in init.h 217syntax keyword muttrcHooks contained skipwhite 218 \ account-hook append-hook close-hook crypt-hook fcc-hook fcc-save-hook 219 \ folder-hook iconv-hook index-format-hook mbox-hook message-hook open-hook pgp-hook 220 \ reply-hook save-hook send-hook send2-hook 221syntax keyword muttrcHooks skipwhite shutdown-hook startup-hook timeout-hook nextgroup=muttrcCommand 222 223syntax region muttrcSpamPattern contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcPattern nextgroup=muttrcString,muttrcStringNL 224syntax region muttrcSpamPattern contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcPattern nextgroup=muttrcString,muttrcStringNL 225 226syntax region muttrcNoSpamPattern contained skipwhite keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcPattern 227syntax region muttrcNoSpamPattern contained skipwhite keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcPattern 228 229syntax match muttrcAttachmentsMimeType contained "[*a-z0-9_-]\+/[*a-z0-9._-]\+\s*" skipwhite nextgroup=muttrcAttachmentsMimeType 230syntax match muttrcAttachmentsFlag contained "[+-]\%([AI]\|inline\|attachment\)\s\+" skipwhite nextgroup=muttrcAttachmentsMimeType 231syntax match muttrcAttachmentsLine "^\s*\%(un\)\?attachments\s\+" skipwhite nextgroup=muttrcAttachmentsFlag 232 233syntax match muttrcUnHighlightSpace contained "\%(\s\+\|\\$\)" 234 235syntax keyword muttrcAsterisk contained * 236 237syntax keyword muttrcListsKeyword lists skipwhite nextgroup=muttrcGroupDef,muttrcComment 238syntax keyword muttrcListsKeyword unlists skipwhite nextgroup=muttrcAsterisk,muttrcComment 239 240syntax keyword muttrcSubscribeKeyword subscribe skipwhite nextgroup=muttrcGroupDef,muttrcComment 241syntax keyword muttrcSubscribeKeyword unsubscribe skipwhite nextgroup=muttrcAsterisk,muttrcComment 242 243syntax keyword muttrcAlternateKeyword contained alternates unalternates 244syntax region muttrcAlternatesLine keepend start=+^\s*\%(un\)\?alternates\s+ skip=+\\$+ end=+$+ contains=muttrcAlternateKeyword,muttrcGroupDef,muttrcRXPat,muttrcUnHighlightSpace,muttrcComment 245 246" muttrcVariable includes a prefix because partial strings are considered valid. 247syntax match muttrcVariable contained "\\\@<![a-zA-Z_-]*\$[a-zA-Z_-]\+" contains=muttrcVariableInner 248syntax match muttrcVariableInner contained "\$[a-zA-Z_-]\+" 249syntax match muttrcEscapedVariable contained "\\\$[a-zA-Z_-]\+" 250 251syntax match muttrcBadAction contained "[^<>]\+" contains=muttrcEmail 252syntax match muttrcAction contained "<[^>]\{-}>" contains=muttrcBadAction,muttrcFunction,muttrcKeyName 253 254" First, functions that take regular expressions: 255syntax match muttrcRXHookNot contained /!\s*/ skipwhite nextgroup=muttrcRXHookString,muttrcRXHookStringNL 256syntax match muttrcRXHooks /\<\%(account\|append\|close\|crypt\|folder\|mbox\|open\|pgp\)-hook\>/ skipwhite nextgroup=muttrcRXHookNot,muttrcRXHookString,muttrcRXHookStringNL 257 258" Now, functions that take patterns 259syntax match muttrcPatHookNot contained /!\s*/ skipwhite nextgroup=muttrcPattern 260syntax match muttrcPatHooks /\<\%(charset\|iconv\)-hook\>/ skipwhite nextgroup=muttrcPatHookNot,muttrcPattern 261syntax match muttrcPatHooks /\<\%(message\|reply\|send\|send2\|save\|fcc\|fcc-save\)-hook\>/ skipwhite nextgroup=muttrcPatHookNot,muttrcOptPattern 262 263syntax match muttrcBindFunction contained /\S\+\>/ skipwhite contains=muttrcFunction 264syntax match muttrcBindFunctionNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcBindFunction,muttrcBindFunctionNL 265syntax match muttrcBindKey contained /\S\+/ skipwhite contains=muttrcKey nextgroup=muttrcBindFunction,muttrcBindFunctionNL 266syntax match muttrcBindKeyNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcBindKey,muttrcBindKeyNL 267syntax match muttrcBindMenuList contained /\S\+/ skipwhite contains=muttrcMenu,muttrcMenuCommas nextgroup=muttrcBindKey,muttrcBindKeyNL 268syntax match muttrcBindMenuListNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcBindMenuList,muttrcBindMenuListNL 269 270syntax region muttrcMacroDescr contained keepend skipwhite start=+\s*\S+ms=e skip=+\\ + end=+ \|$+me=s 271syntax region muttrcMacroDescr contained keepend skipwhite start=+'+ms=e skip=+\\'+ end=+'+me=s 272syntax region muttrcMacroDescr contained keepend skipwhite start=+"+ms=e skip=+\\"+ end=+"+me=s 273syntax match muttrcMacroDescrNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcMacroDescr,muttrcMacroDescrNL 274syntax region muttrcMacroBody contained skipwhite start="\S" skip='\\ \|\\$' end=' \|$' contains=muttrcEscape,muttrcSet,muttrcUnset,muttrcReset,muttrcToggle,muttrcCommand,muttrcAction nextgroup=muttrcMacroDescr,muttrcMacroDescrNL 275syntax region muttrcMacroBody matchgroup=Type contained skipwhite start=+'+ms=e skip=+\\'+ end=+'\|\%(\%(\\\\\)\@<!$\)+me=s contains=muttrcEscape,muttrcSet,muttrcUnset,muttrcReset,muttrcToggle,muttrcSpam,muttrcNoSpam,muttrcCommand,muttrcAction,muttrcVariable nextgroup=muttrcMacroDescr,muttrcMacroDescrNL 276syntax region muttrcMacroBody matchgroup=Type contained skipwhite start=+"+ms=e skip=+\\"+ end=+"\|\%(\%(\\\\\)\@<!$\)+me=s contains=muttrcEscape,muttrcSet,muttrcUnset,muttrcReset,muttrcToggle,muttrcSpam,muttrcNoSpam,muttrcCommand,muttrcAction,muttrcVariable nextgroup=muttrcMacroDescr,muttrcMacroDescrNL 277syntax match muttrcMacroBodyNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcMacroBody,muttrcMacroBodyNL 278syntax match muttrcMacroKey contained /\S\+/ skipwhite contains=muttrcKey nextgroup=muttrcMacroBody,muttrcMacroBodyNL 279syntax match muttrcMacroKeyNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcMacroKey,muttrcMacroKeyNL 280syntax match muttrcMacroMenuList contained /\S\+/ skipwhite contains=muttrcMenu,muttrcMenuCommas nextgroup=muttrcMacroKey,muttrcMacroKeyNL 281syntax match muttrcMacroMenuListNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcMacroMenuList,muttrcMacroMenuListNL 282 283syntax match muttrcAddrContent contained "[a-zA-Z0-9._-]\+@[a-zA-Z0-9./-]\+\s*" skipwhite contains=muttrcEmail nextgroup=muttrcAddrContent 284syntax region muttrcAddrContent contained start=+'+ end=+'\s*+ skip=+\\'+ skipwhite contains=muttrcEmail nextgroup=muttrcAddrContent 285syntax region muttrcAddrContent contained start=+"+ end=+"\s*+ skip=+\\"+ skipwhite contains=muttrcEmail nextgroup=muttrcAddrContent 286syntax match muttrcAddrDef contained "-addr\s\+" skipwhite nextgroup=muttrcAddrContent 287 288syntax match muttrcGroupFlag contained "-group" 289syntax region muttrcGroupDef contained start="-group\s\+" skip="\\$" end="\s" skipwhite keepend contains=muttrcGroupFlag,muttrcUnHighlightSpace 290 291syntax keyword muttrcGroupKeyword contained group ungroup 292syntax region muttrcGroupLine keepend start=+^\s*\%(un\)\?group\s+ skip=+\\$+ end=+$+ contains=muttrcGroupKeyword,muttrcGroupDef,muttrcAddrDef,muttrcRXDef,muttrcUnHighlightSpace,muttrcComment 293 294syntax match muttrcAliasGroupName contained /\w\+/ skipwhite nextgroup=muttrcAliasGroupDef,muttrcAliasKey,muttrcAliasNL 295syntax match muttrcAliasGroupDefNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcAliasGroupName,muttrcAliasGroupDefNL 296syntax match muttrcAliasGroupDef contained /\s*-group/ skipwhite nextgroup=muttrcAliasGroupName,muttrcAliasGroupDefNL contains=muttrcGroupFlag 297syntax match muttrcAliasComma contained /,/ skipwhite nextgroup=muttrcAliasEmail,muttrcAliasEncEmail,muttrcAliasNameNoParens,muttrcAliasENNL 298syntax match muttrcAliasEmail contained /\S\+@\S\+/ contains=muttrcEmail nextgroup=muttrcAliasName,muttrcAliasNameNL skipwhite 299syntax match muttrcAliasEncEmail contained /<[^>]\+>/ contains=muttrcEmail nextgroup=muttrcAliasComma 300syntax match muttrcAliasEncEmailNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcAliasEncEmail,muttrcAliasEncEmailNL 301syntax match muttrcAliasNameNoParens contained /[^<(@]\+\s\+/ nextgroup=muttrcAliasEncEmail,muttrcAliasEncEmailNL 302syntax region muttrcAliasName contained matchgroup=Type start=/(/ end=/)/ skipwhite 303syntax match muttrcAliasNameNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcAliasName,muttrcAliasNameNL 304syntax match muttrcAliasENNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcAliasEmail,muttrcAliasEncEmail,muttrcAliasNameNoParens,muttrcAliasENNL 305syntax match muttrcAliasKey contained /\s*[^- \t]\S\+/ skipwhite nextgroup=muttrcAliasEmail,muttrcAliasEncEmail,muttrcAliasNameNoParens,muttrcAliasENNL 306syntax match muttrcAliasNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcAliasGroupDef,muttrcAliasKey,muttrcAliasNL 307 308syntax match muttrcUnAliasKey contained "\s*\w\+\s*" skipwhite nextgroup=muttrcUnAliasKey,muttrcUnAliasNL 309syntax match muttrcUnAliasNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcUnAliasKey,muttrcUnAliasNL 310 311syntax match muttrcSimplePat contained "!\?\^\?[~][ADEFgGklNOpPQRSTuUvV=$]" 312syntax match muttrcSimplePat contained "!\?\^\?[~][mnXz]\s*\%([<>-][0-9]\+[kM]\?\|[0-9]\+[kM]\?[-]\%([0-9]\+[kM]\?\)\?\)" 313syntax match muttrcSimplePat contained "!\?\^\?[~][dr]\s*\%(\%(-\?[0-9]\{1,2}\%(/[0-9]\{1,2}\%(/[0-9]\{2}\%([0-9]\{2}\)\?\)\?\)\?\%([+*-][0-9]\+[ymwd]\)*\)\|\%(\%([0-9]\{1,2}\%(/[0-9]\{1,2}\%(/[0-9]\{2}\%([0-9]\{2}\)\?\)\?\)\?\%([+*-][0-9]\+[ymwd]\)*\)-\%([0-9]\{1,2}\%(/[0-9]\{1,2}\%(/[0-9]\{2}\%([0-9]\{2}\)\?\)\?\)\?\%([+*-][0-9]\+[ymwd]\)\?\)\?\)\|\%([<>=][0-9]\+[ymwd]\)\|\%(`[^`]\+`\)\|\%(\$[a-zA-Z0-9_-]\+\)\)" contains=muttrcShellString,muttrcVariable 314syntax match muttrcSimplePat contained "!\?\^\?[~][bBcCefhHiLstxy]\s*" nextgroup=muttrcSimplePatRXContainer 315syntax match muttrcSimplePat contained "!\?\^\?[%][bBcCefhHiLstxy]\s*" nextgroup=muttrcSimplePatString 316syntax match muttrcSimplePat contained "!\?\^\?[=][bcCefhHiLstxy]\s*" nextgroup=muttrcSimplePatString 317syntax region muttrcSimplePat contained keepend start=+!\?\^\?[~](+ end=+)+ contains=muttrcSimplePat 318"syn match muttrcSimplePat contained /'[^~=%][^']*/ contains=muttrcRXString 319syntax region muttrcSimplePatString contained keepend start=+"+ end=+"+ skip=+\\"+ 320syntax region muttrcSimplePatString contained keepend start=+'+ end=+'+ skip=+\\'+ 321syntax region muttrcSimplePatString contained keepend start=+[^ "']+ skip=+\\ + end=+\s+re=e-1 322syntax region muttrcSimplePatRXContainer contained keepend start=+"+ end=+"+ skip=+\\"+ contains=muttrcRXString 323syntax region muttrcSimplePatRXContainer contained keepend start=+'+ end=+'+ skip=+\\'+ contains=muttrcRXString 324syntax region muttrcSimplePatRXContainer contained keepend start=+[^ "']+ skip=+\\ + end=+\s+re=e-1 contains=muttrcRXString 325syntax match muttrcSimplePatMetas contained /[(|)]/ 326 327syntax match muttrcOptSimplePat contained skipwhite /[~=%!(^].*/ contains=muttrcSimplePat,muttrcSimplePatMetas 328syntax match muttrcOptSimplePat contained skipwhite /[^~=%!(^].*/ contains=muttrcRXString 329syntax region muttrcOptPattern contained matchgroup=Type keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcOptSimplePat,muttrcUnHighlightSpace nextgroup=muttrcString,muttrcStringNL 330syntax region muttrcOptPattern contained matchgroup=Type keepend skipwhite start=+'+ skip=+\\'+ end=+'+ contains=muttrcOptSimplePat,muttrcUnHighlightSpace nextgroup=muttrcString,muttrcStringNL 331syntax region muttrcOptPattern contained keepend skipwhite start=+[~](+ end=+)+ skip=+\\)+ contains=muttrcSimplePat nextgroup=muttrcString,muttrcStringNL 332syntax match muttrcOptPattern contained skipwhite /[~][A-Za-z]/ contains=muttrcSimplePat nextgroup=muttrcString,muttrcStringNL 333syntax match muttrcOptPattern contained skipwhite /[.]/ nextgroup=muttrcString,muttrcStringNL 334" Keep muttrcPattern and muttrcOptPattern synchronized 335syntax region muttrcPattern contained matchgroup=Type keepend skipwhite start=+"+ skip=+\\"+ end=+"+ contains=muttrcSimplePat,muttrcUnHighlightSpace,muttrcSimplePatMetas 336syntax region muttrcPattern contained matchgroup=Type keepend skipwhite start=+'+ skip=+\\'+ end=+'+ contains=muttrcSimplePat,muttrcUnHighlightSpace,muttrcSimplePatMetas 337syntax region muttrcPattern contained keepend skipwhite start=+[~](+ end=+)+ skip=+\\)+ contains=muttrcSimplePat 338syntax match muttrcPattern contained skipwhite /[~][A-Za-z]/ contains=muttrcSimplePat 339syntax match muttrcPattern contained skipwhite /[.]/ 340syntax region muttrcPatternInner contained keepend start=+"[~=%!(^]+ms=s+1 skip=+\\"+ end=+"+me=e-1 contains=muttrcSimplePat,muttrcUnHighlightSpace,muttrcSimplePatMetas 341syntax region muttrcPatternInner contained keepend start=+'[~=%!(^]+ms=s+1 skip=+\\'+ end=+'+me=e-1 contains=muttrcSimplePat,muttrcUnHighlightSpace,muttrcSimplePatMetas 342 343" Colour definitions takes object, foreground and background arguments (regexps excluded). 344syntax match muttrcColorMatchCount contained "[0-9]\+" 345syntax match muttrcColorMatchCountNL contained skipwhite skipnl "\s*\\$" nextgroup=muttrcColorMatchCount,muttrcColorMatchCountNL 346syntax region muttrcColorRXPat contained start=+\s*'+ skip=+\\'+ end=+'\s*+ keepend skipwhite contains=muttrcRXString2 nextgroup=muttrcColorMatchCount,muttrcColorMatchCountNL 347syntax region muttrcColorRXPat contained start=+\s*"+ skip=+\\"+ end=+"\s*+ keepend skipwhite contains=muttrcRXString2 nextgroup=muttrcColorMatchCount,muttrcColorMatchCountNL 348syntax keyword muttrcColor contained black blue cyan default green magenta red white yellow 349syntax keyword muttrcColor contained brightblack brightblue brightcyan brightdefault brightgreen brightmagenta brightred brightwhite brightyellow 350syntax match muttrcColor contained "\<\%(bright\)\=color\d\{1,3}\>" 351" Now for the structure of the color line 352syntax match muttrcColorRXNL contained skipnl "\s*\\$" nextgroup=muttrcColorRXPat,muttrcColorRXNL 353syntax match muttrcColorBG contained /\s*[$]\?\w\+/ contains=muttrcColor,muttrcVariable,muttrcUnHighlightSpace nextgroup=muttrcColorRXPat,muttrcColorRXNL 354syntax match muttrcColorBGNL contained skipnl "\s*\\$" nextgroup=muttrcColorBG,muttrcColorBGNL 355syntax match muttrcColorFG contained /\s*[$]\?\w\+/ contains=muttrcColor,muttrcVariable,muttrcUnHighlightSpace nextgroup=muttrcColorBG,muttrcColorBGNL 356syntax match muttrcColorFGNL contained skipnl "\s*\\$" nextgroup=muttrcColorFG,muttrcColorFGNL 357syntax match muttrcColorContext contained /\s*[$]\?\w\+/ contains=muttrcColorField,muttrcVariable,muttrcUnHighlightSpace,muttrcColorCompose nextgroup=muttrcColorFG,muttrcColorFGNL 358syntax match muttrcColorNL contained skipnl "\s*\\$" nextgroup=muttrcColorContext,muttrcColorNL,muttrcColorCompose 359syntax match muttrcColorKeyword contained /^\s*color\s\+/ nextgroup=muttrcColorContext,muttrcColorNL,muttrcColorCompose 360" And now color's brother: 361syntax region muttrcUnColorPatterns contained skipwhite start=+\s*'+ end=+'+ skip=+\\'+ contains=muttrcPattern nextgroup=muttrcUnColorPatterns,muttrcUnColorPatNL 362syntax region muttrcUnColorPatterns contained skipwhite start=+\s*"+ end=+"+ skip=+\\"+ contains=muttrcPattern nextgroup=muttrcUnColorPatterns,muttrcUnColorPatNL 363syntax match muttrcUnColorPatterns contained skipwhite /\s*[^'"\s]\S\*/ contains=muttrcPattern nextgroup=muttrcUnColorPatterns,muttrcUnColorPatNL 364syntax match muttrcUnColorPatNL contained skipwhite skipnl /\s*\\$/ nextgroup=muttrcUnColorPatterns,muttrcUnColorPatNL 365syntax match muttrcUnColorAll contained skipwhite /[*]/ 366syntax match muttrcUnColorAPNL contained skipwhite skipnl /\s*\\$/ nextgroup=muttrcUnColorPatterns,muttrcUnColorAll,muttrcUnColorAPNL 367syntax match muttrcUnColorIndex contained skipwhite /\s*index\s\+/ nextgroup=muttrcUnColorPatterns,muttrcUnColorAll,muttrcUnColorAPNL 368syntax match muttrcUnColorIndexNL contained skipwhite skipnl /\s*\\$/ nextgroup=muttrcUnColorIndex,muttrcUnColorIndexNL 369syntax match muttrcUnColorKeyword contained skipwhite /^\s*uncolor\s\+/ nextgroup=muttrcUnColorIndex,muttrcUnColorIndexNL 370syntax region muttrcUnColorLine keepend start=+^\s*uncolor\s+ skip=+\\$+ end=+$+ contains=muttrcUnColorKeyword,muttrcComment,muttrcUnHighlightSpace 371 372syntax keyword muttrcMonoAttrib contained bold none normal reverse standout underline 373syntax keyword muttrcMono contained mono skipwhite nextgroup=muttrcColorField,muttrcColorCompose 374syntax match muttrcMonoLine "^\s*mono\s\+\S\+" skipwhite nextgroup=muttrcMonoAttrib contains=muttrcMono 375 376" CHECKED 2019-11-02 377" List of fields in Fields in color.c 378syntax keyword muttrcColorField skipwhite contained 379 \ attachment attach_headers body bold error hdrdefault header index 380 \ index_author index_collapsed index_date index_flags index_label 381 \ index_number index_size index_subject index_tag index_tags indicator 382 \ markers message normal options progress prompt quoted search sidebar_divider 383 \ sidebar_flagged sidebar_highlight sidebar_indicator sidebar_new 384 \ sidebar_ordinary sidebar_spoolfile sidebar_unread signature status tilde tree 385 \ underline warning nextgroup=muttrcColor 386syntax match muttrcColorField contained "\<quoted\d\=\>" 387 388syntax match muttrcColorCompose skipwhite contained /\s*compose\s*/ nextgroup=muttrcColorComposeField 389 390" CHECKED 2019-11-02 391" List of fields in ComposeFields in color.c 392syntax keyword muttrcColorComposeField skipwhite contained 393 \ header security_both security_encrypt security_none security_sign 394 \ nextgroup=muttrcColorFG,muttrcColorFGNL 395syntax region muttrcColorLine keepend start=/^\s*color\s\+/ skip=+\\$+ end=+$+ contains=muttrcColorKeyword,muttrcComment,muttrcUnHighlightSpace 396 397function! s:boolQuadGen(type, vars, deprecated) 398 let l:novars = copy(a:vars) 399 call map(l:novars, '"no" . v:val') 400 let l:invvars = copy(a:vars) 401 call map(l:invvars, '"inv" . v:val') 402 403 let l:orig_type = copy(a:type) 404 if a:deprecated 405 let l:type = 'Deprecated' . a:type 406 else 407 let l:type = a:type 408 endif 409 410 exec 'syntax keyword muttrcVar' . l:type . ' skipwhite contained ' . join(a:vars) . ' nextgroup=muttrcSet' . l:orig_type . 'Assignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr' 411 exec 'syntax keyword muttrcVar' . l:type . ' skipwhite contained ' . join(l:novars) . ' nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr' 412 exec 'syntax keyword muttrcVar' . l:type . ' skipwhite contained ' . join(l:invvars) . ' nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr' 413endfunction 414 415" CHECKED 2019-11-02 416" List of DT_BOOL in MuttVars in init.h 417call s:boolQuadGen('Bool', [ 418 \ 'allow_8bit', 'allow_ansi', 'arrow_cursor', 'ascii_chars', 'askbcc', 419 \ 'askcc', 'ask_follow_up', 'ask_x_comment_to', 'attach_split', 'autoedit', 420 \ 'auto_tag', 'beep', 'beep_new', 'bounce_delivered', 'braille_friendly', 421 \ 'change_folder_next', 'check_mbox_size', 'check_new', 'collapse_all', 422 \ 'collapse_flagged', 'collapse_unread', 'confirmappend', 'confirmcreate', 423 \ 'crypt_autoencrypt', 'crypt_autopgp', 'crypt_autosign', 'crypt_autosmime', 424 \ 'crypt_confirmhook', 'crypt_opportunistic_encrypt', 'crypt_replyencrypt', 425 \ 'crypt_replysign', 'crypt_replysignencrypted', 'crypt_timestamp', 426 \ 'crypt_use_gpgme', 'crypt_use_pka', 'delete_untag', 'digest_collapse', 427 \ 'duplicate_threads', 'edit_headers', 'encode_from', 'fast_reply', 428 \ 'fcc_clear', 'flag_safe', 'followup_to', 'force_name', 'forward_decode', 429 \ 'forward_decrypt', 'forward_quote', 'forward_references', 'hdrs', 430 \ 'header', 'header_cache_compress', 'header_color_partial', 'help', 431 \ 'hidden_host', 'hide_limited', 'hide_missing', 'hide_thread_subject', 432 \ 'hide_top_limited', 'hide_top_missing', 'history_remove_dups', 433 \ 'honor_disposition', 'idn_decode', 'idn_encode', 'ignore_list_reply_to', 434 \ 'imap_check_subscribed', 'imap_idle', 'imap_list_subscribed', 435 \ 'imap_passive', 'imap_peek', 'imap_servernoise', 'implicit_autoview', 436 \ 'include_onlyfirst', 'keep_flagged', 'mailcap_sanitize', 437 \ 'maildir_check_cur', 'maildir_header_cache_verify', 'maildir_trash', 438 \ 'mail_check_recent', 'mail_check_stats', 'markers', 'mark_old', 439 \ 'menu_move_off', 'menu_scroll', 'message_cache_clean', 'meta_key', 440 \ 'metoo', 'mh_purge', 'mime_forward_decode', 'mime_subject', 441 \ 'mime_type_query_first', 'narrow_tree', 'nm_record', 'nntp_listgroup', 442 \ 'nntp_load_description', 'pager_stop', 'pgp_autoinline', 443 \ 'pgp_auto_decode', 'pgp_check_exit', 'pgp_ignore_subkeys', 'pgp_long_ids', 444 \ 'pgp_replyinline', 'pgp_retainable_sigs', 'pgp_self_encrypt', 445 \ 'pgp_show_unusable', 'pgp_strict_enc', 'pgp_use_gpg_agent', 'pipe_decode', 446 \ 'pipe_split', 'pop_auth_try_all', 'pop_last', 'postpone_encrypt', 447 \ 'print_decode', 'print_split', 'prompt_after', 'read_only', 448 \ 'reflow_space_quotes', 'reflow_text', 'reply_self', 'reply_with_xorig', 449 \ 'resolve', 'resume_draft_files', 'resume_edited_draft_files', 450 \ 'reverse_alias', 'reverse_name', 'reverse_realname', 'rfc2047_parameters', 451 \ 'save_address', 'save_empty', 'save_name', 'save_unsubscribed', 'score', 452 \ 'show_new_news', 'show_only_unread', 'sidebar_folder_indent', 453 \ 'sidebar_new_mail_only', 'sidebar_next_new_wrap', 'sidebar_on_right', 454 \ 'sidebar_short_path', 'sidebar_visible', 'sig_dashes', 'sig_on_top', 455 \ 'smart_wrap', 'smime_ask_cert_label', 'smime_decrypt_use_default_key', 456 \ 'smime_is_default', 'smime_self_encrypt', 'sort_re', 'ssl_force_tls', 457 \ 'ssl_usesystemcerts', 'ssl_use_sslv2', 'ssl_use_sslv3', 'ssl_use_tlsv1', 458 \ 'ssl_use_tlsv1_1', 'ssl_use_tlsv1_2', 'ssl_verify_dates', 459 \ 'ssl_verify_host', 'ssl_verify_partial_chains', 'status_on_top', 460 \ 'strict_threads', 'suspend', 'text_flowed', 'thorough_search', 461 \ 'thread_received', 'tilde', 'ts_enabled', 'uncollapse_jump', 462 \ 'uncollapse_new', 'user_agent', 'use_8bitmime', 'use_domain', 463 \ 'use_envelope_from', 'use_from', 'use_ipv6', 'virtual_spoolfile', 464 \ 'wait_key', 'weed', 'wrap_search', 'write_bcc', 'x_comment_to', 465 \ 'attach_save_without_prompting', 'autocrypt', 'autocrypt_reply', 466 \ 'auto_subscribe', 'browser_abbreviate_mailboxes', 467 \ 'crypt_protected_headers_read', 'crypt_protected_headers_save', 468 \ 'crypt_protected_headers_write', 'fcc_before_send', 'imap_condstore', 469 \ 'imap_qresync', 'imap_rfc5161', 'include_encrypted', 470 \ 'pgp_check_gpg_decrypt_status_fd', 'sidebar_non_empty_mailbox_only', 471 \ 'size_show_bytes', 'size_show_fractions', 'size_show_mb', 472 \ 'size_units_on_left', 'ssl_use_tlsv1_3' 473 \ ], 0) 474 475" CHECKED 2019-11-02 476" Deprecated Bools 477" List of DT_SYNONYM synonyms of Bools in MuttVars in init.h 478call s:boolQuadGen('Bool', [ 479 \ 'edit_hdrs', 'envelope_from', 'forw_decode', 'forw_decrypt', 480 \ 'forw_quote', 'ignore_linear_white_space', 'pgp_autoencrypt', 481 \ 'pgp_autosign', 'pgp_auto_traditional', 'pgp_create_traditional', 482 \ 'pgp_replyencrypt', 'pgp_replysign', 'pgp_replysignencrypted', 483 \ 'xterm_set_titles' 484 \ ], 1) 485 486" CHECKED 2019-11-02 487" List of DT_QUAD in MuttVars in init.h 488call s:boolQuadGen('Quad', [ 489 \ 'abort_noattach', 'abort_nosubject', 'abort_unmodified', 'bounce', 490 \ 'catchup_newsgroup', 'copy', 'crypt_verify_sig', 'delete', 'fcc_attach', 491 \ 'followup_to_poster', 'forward_edit', 'honor_followup_to', 'include', 492 \ 'mime_forward', 'mime_forward_rest', 'move', 'pgp_mime_auto', 493 \ 'pop_delete', 'pop_reconnect', 'postpone', 'post_moderated', 'print', 494 \ 'quit', 'recall', 'reply_to', 'ssl_starttls', 'forward_attachments' 495 \ ], 0) 496 497" CHECKED 2019-11-02 498" Deprecated Quads 499" List of DT_SYNONYM synonyms of Quads in MuttVars in init.h 500call s:boolQuadGen('Quad', [ 501 \ 'mime_fwd', 'pgp_encrypt_self', 'pgp_verify_sig', 'smime_encrypt_self' 502 \ ], 1) 503 504" CHECKED 2019-11-02 505" List of DT_NUMBER or DT_LONG in MuttVars in init.h 506syntax keyword muttrcVarNum skipwhite contained 507 \ connect_timeout debug_level history imap_keepalive imap_pipeline_depth 508 \ imap_poll_timeout mail_check mail_check_stats_interval menu_context 509 \ net_inc nm_db_limit nm_open_timeout nm_query_window_current_position 510 \ nm_query_window_duration nntp_context nntp_poll pager_context 511 \ pager_index_lines pgp_timeout pop_checkinterval read_inc reflow_wrap 512 \ save_history score_threshold_delete score_threshold_flag 513 \ score_threshold_read search_context sendmail_wait sidebar_component_depth 514 \ sidebar_width skip_quoted_offset sleep_time smime_timeout 515 \ ssl_min_dh_prime_bits timeout time_inc wrap wrap_headers write_inc 516 \ header_cache_pagesize imap_fetch_chunk_size toggle_quoted_show_levels 517 \ nextgroup=muttrcSetNumAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 518syntax keyword muttrcVarDeprecatedNum contained skipwhite 519 \ wrapmargin 520 \ nextgroup=muttrcSetNumAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 521 522" CHECKED 2019-11-02 523" List of DT_STRING in MuttVars in init.h 524" Special cases first, and all the rest at the end 525" Formats themselves must be updated in their respective groups 526" See s:escapesConditionals 527syntax match muttrcVarStr contained skipwhite 'my_[a-zA-Z0-9_]\+' nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 528syntax keyword muttrcVarStr contained skipwhite alias_format nextgroup=muttrcVarEqualsAliasFmt 529syntax keyword muttrcVarStr contained skipwhite attach_format nextgroup=muttrcVarEqualsAttachFmt 530syntax keyword muttrcVarStr contained skipwhite compose_format nextgroup=muttrcVarEqualsComposeFmt 531syntax keyword muttrcVarStr contained skipwhite folder_format vfolder_format nextgroup=muttrcVarEqualsFolderFmt 532syntax keyword muttrcVarStr contained skipwhite attribution index_format message_format pager_format nextgroup=muttrcVarEqualsIdxFmt 533" Deprecated format 534syntax keyword muttrcVarDeprecatedStr contained skipwhite hdr_format msg_format nextgroup=muttrcVarEqualsIdxFmt 535syntax keyword muttrcVarStr contained skipwhite mix_entry_format nextgroup=muttrcVarEqualsMixFmt 536syntax keyword muttrcVarStr contained skipwhite 537 \ pgp_clearsign_command pgp_decode_command pgp_decrypt_command 538 \ pgp_encrypt_only_command pgp_encrypt_sign_command pgp_export_command 539 \ pgp_import_command pgp_list_pubring_command pgp_list_secring_command 540 \ pgp_sign_command pgp_verify_command pgp_verify_key_command 541 \ nextgroup=muttrcVarEqualsPGPCmdFmt 542syntax keyword muttrcVarStr contained skipwhite pgp_entry_format nextgroup=muttrcVarEqualsPGPFmt 543syntax keyword muttrcVarStr contained skipwhite pgp_getkeys_command nextgroup=muttrcVarEqualsPGPGetKeysFmt 544syntax keyword muttrcVarStr contained skipwhite query_format nextgroup=muttrcVarEqualsQueryFmt 545syntax keyword muttrcVarStr contained skipwhite 546 \ smime_decrypt_command smime_encrypt_command smime_get_cert_command 547 \ smime_get_cert_email_command smime_get_signer_cert_command 548 \ smime_import_cert_command smime_pk7out_command smime_sign_command 549 \ smime_verify_command smime_verify_opaque_command 550 \ nextgroup=muttrcVarEqualsSmimeFmt 551syntax keyword muttrcVarStr contained skipwhite ts_icon_format ts_status_format status_format nextgroup=muttrcVarEqualsStatusFmt 552" Deprecated format 553syntax keyword muttrcVarDeprecatedStr contained skipwhite xterm_icon xterm_title nextgroup=muttrcVarEqualsStatusFmt 554syntax keyword muttrcVarStr contained skipwhite date_format nextgroup=muttrcVarEqualsStrftimeFmt 555syntax keyword muttrcVarStr contained skipwhite group_index_format nextgroup=muttrcVarEqualsGrpIdxFmt 556syntax keyword muttrcVarStr contained skipwhite sidebar_format nextgroup=muttrcVarEqualsSdbFmt 557syntax keyword muttrcVarStr contained skipwhite 558 \ assumed_charset attach_charset attach_sep attribution_locale charset 559 \ config_charset content_type default_hook dsn_notify dsn_return 560 \ empty_subject escape forward_attribution_intro forward_attribution_trailer 561 \ forward_format hidden_tags hostname 562 \ imap_authenticators imap_delim_chars imap_headers imap_login imap_pass 563 \ imap_user indent_string mailcap_path mark_macro_prefix mh_seq_flagged 564 \ mh_seq_replied mh_seq_unseen newsgroups_charset 565 \ news_server nm_default_uri nm_exclude_tags nm_query_type 566 \ nm_query_window_current_search nm_query_window_timebase nm_record_tags 567 \ nm_unread_tag nntp_authenticators nntp_pass nntp_user pgp_default_key 568 \ pgp_sign_as pipe_sep pop_authenticators pop_host pop_pass pop_user 569 \ postpone_encrypt_as post_indent_string preconnect realname send_charset 570 \ show_multipart_alternative sidebar_delim_chars sidebar_divider_char 571 \ sidebar_indent_string simple_search smime_default_key smime_encrypt_with 572 \ smime_sign_as smime_sign_digest_alg smtp_authenticators smtp_pass smtp_url 573 \ spam_separator ssl_ciphers autocrypt_acct_format 574 \ crypt_protected_headers_subject header_cache_backend nm_flagged_tag 575 \ nm_replied_tag preferred_languages 576 \ nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 577" Deprecated strings 578syntax keyword muttrcVarDeprecatedStr contained skipwhite 579 \ forw_format indent_str pgp_self_encrypt_as post_indent_str 580 \ smime_self_encrypt_as 581 \ nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 582 583" CHECKED 2019-11-02 584" List of DT_ADDRESS 585syntax keyword muttrcVarStr contained skipwhite envelope_from_address from nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 586" List of DT_ENUM 587syntax keyword muttrcVarStr contained skipwhite mbox_type nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 588" List of DT_MBTABLE 589syntax keyword muttrcVarStr contained skipwhite crypt_chars flag_chars from_chars status_chars to_chars nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 590 591" CHECKED 2019-11-02 592" List of DT_PATH 593syntax keyword muttrcVarStr contained skipwhite 594 \ alias_file attach_save_dir autocrypt_dir certificate_file debug_file 595 \ entropy_file folder header_cache history_file mbox message_cachedir newsrc 596 \ news_cache_dir postponed record signature smime_ca_location 597 \ smime_certificates smime_keys spoolfile ssl_ca_certificates_file 598 \ ssl_client_cert tmpdir trash 599 \ nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 600" List of DT_COMMAND (excluding pgp_*_command and smime_*_command) 601syntax keyword muttrcVarStr contained skipwhite 602 \ display_filter editor inews ispell mixmaster new_mail_command pager 603 \ print_command query_command sendmail shell visual external_search_command 604 \ imap_oauth_refresh_command pop_oauth_refresh_command 605 \ mime_type_query_command smtp_oauth_refresh_command tunnel 606 \ nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 607 608" CHECKED 2019-11-02 609" List of DT_REGEX 610syntax keyword muttrcVarStr contained skipwhite 611 \ abort_noattach_regex gecos_mask mask pgp_decryption_okay pgp_good_sign 612 \ quote_regex reply_regex smileys 613 \ nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 614" List of deprecated DT_STRING|DT_COMMAND 615syntax keyword muttrcVarDeprecatedStr contained skipwhite print_cmd nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 616" List of deprecated DT_REGEX 617syntax keyword muttrcVarDeprecatedStr contained skipwhite abort_noattach_regexp attach_keyword quote_regexp reply_regexp nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 618" List of DT_SORT 619syntax keyword muttrcVarStr contained skipwhite 620 \ pgp_sort_keys sidebar_sort_method sort sort_alias sort_aux sort_browser 621 \ nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 622 623" CHECKED 2019-11-02 624" List of commands in Commands in init.h 625" Remember to remove hooks, they have already been dealt with 626syntax keyword muttrcCommand skipwhite charset-hook nextgroup=muttrcRXString 627syntax keyword muttrcCommand skipwhite unhook nextgroup=muttrcHooks 628syntax keyword muttrcCommand skipwhite spam nextgroup=muttrcSpamPattern 629syntax keyword muttrcCommand skipwhite nospam nextgroup=muttrcNoSpamPattern 630syntax keyword muttrcCommand skipwhite bind nextgroup=muttrcBindMenuList,muttrcBindMenuListNL 631syntax keyword muttrcCommand skipwhite macro nextgroup=muttrcMacroMenuList,muttrcMacroMenuListNL 632syntax keyword muttrcCommand skipwhite alias nextgroup=muttrcAliasGroupDef,muttrcAliasKey,muttrcAliasNL 633syntax keyword muttrcCommand skipwhite unalias nextgroup=muttrcUnAliasKey,muttrcUnAliasNL 634syntax keyword muttrcCommand skipwhite set unset reset toggle nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr,muttrcVarDeprecatedBool,muttrcVarDeprecatedQuad,muttrcVarDeprecatedStr 635syntax keyword muttrcCommand skipwhite exec nextgroup=muttrcFunction 636syntax keyword muttrcCommand skipwhite 637 \ alternative_order attachments auto_view finish hdr_order ifdef ifndef 638 \ ignore lua lua-source mailboxes mailto_allow mime_lookup my_hdr push score 639 \ setenv sidebar_whitelist source subjectrx subscribe-to tag-formats 640 \ tag-transforms unalternative_order unattachments unauto_view uncolor 641 \ unhdr_order unignore unmailboxes unmailto_allow unmime_lookup unmono 642 \ unmy_hdr unscore unsetenv unsidebar_whitelist unsubjectrx unsubscribe-from 643 \ unvirtual-mailboxes virtual-mailboxes named-mailboxes 644 \ echo unbind unmacro 645 646" CHECKED 2019-11-02 647" List of functions in functions.h 648syntax match muttrcFunction contained "\<accept\>" 649syntax match muttrcFunction contained "\<append\>" 650syntax match muttrcFunction contained "\<attach-file\>" 651syntax match muttrcFunction contained "\<attach-key\>" 652syntax match muttrcFunction contained "\<attach-message\>" 653syntax match muttrcFunction contained "\<attach-news-message\>" 654syntax match muttrcFunction contained "\<autocrypt-acct-menu\>" 655syntax match muttrcFunction contained "\<autocrypt-menu\>" 656syntax match muttrcFunction contained "\<backspace\>" 657syntax match muttrcFunction contained "\<backward-char\>" 658syntax match muttrcFunction contained "\<backward-word\>" 659syntax match muttrcFunction contained "\<bol\>" 660syntax match muttrcFunction contained "\<bottom-page\>" 661syntax match muttrcFunction contained "\<bottom\>" 662syntax match muttrcFunction contained "\<bounce-message\>" 663syntax match muttrcFunction contained "\<break-thread\>" 664syntax match muttrcFunction contained "\<buffy-cycle\>" 665syntax match muttrcFunction contained "\<buffy-list\>" 666syntax match muttrcFunction contained "\<capitalize-word\>" 667syntax match muttrcFunction contained "\<catchup\>" 668syntax match muttrcFunction contained "\<chain-next\>" 669syntax match muttrcFunction contained "\<chain-prev\>" 670syntax match muttrcFunction contained "\<change-dir\>" 671syntax match muttrcFunction contained "\<change-folder-readonly\>" 672syntax match muttrcFunction contained "\<change-folder\>" 673syntax match muttrcFunction contained "\<change-newsgroup-readonly\>" 674syntax match muttrcFunction contained "\<change-newsgroup\>" 675syntax match muttrcFunction contained "\<change-vfolder\>" 676syntax match muttrcFunction contained "\<check-new\>" 677syntax match muttrcFunction contained "\<check-stats\>" 678syntax match muttrcFunction contained "\<check-traditional-pgp\>" 679syntax match muttrcFunction contained "\<clear-flag\>" 680syntax match muttrcFunction contained "\<collapse-all\>" 681syntax match muttrcFunction contained "\<collapse-parts\>" 682syntax match muttrcFunction contained "\<collapse-thread\>" 683syntax match muttrcFunction contained "\<complete-query\>" 684syntax match muttrcFunction contained "\<complete\>" 685syntax match muttrcFunction contained "\<compose-to-sender\>" 686syntax match muttrcFunction contained "\<copy-file\>" 687syntax match muttrcFunction contained "\<copy-message\>" 688syntax match muttrcFunction contained "\<create-account\>" 689syntax match muttrcFunction contained "\<create-alias\>" 690syntax match muttrcFunction contained "\<create-mailbox\>" 691syntax match muttrcFunction contained "\<current-bottom\>" 692syntax match muttrcFunction contained "\<current-middle\>" 693syntax match muttrcFunction contained "\<current-top\>" 694syntax match muttrcFunction contained "\<decode-copy\>" 695syntax match muttrcFunction contained "\<decode-save\>" 696syntax match muttrcFunction contained "\<decrypt-copy\>" 697syntax match muttrcFunction contained "\<decrypt-save\>" 698syntax match muttrcFunction contained "\<delete-account\>" 699syntax match muttrcFunction contained "\<delete-char\>" 700syntax match muttrcFunction contained "\<delete-entry\>" 701syntax match muttrcFunction contained "\<delete-mailbox\>" 702syntax match muttrcFunction contained "\<delete-message\>" 703syntax match muttrcFunction contained "\<delete-pattern\>" 704syntax match muttrcFunction contained "\<delete-subthread\>" 705syntax match muttrcFunction contained "\<delete-thread\>" 706syntax match muttrcFunction contained "\<delete\>" 707syntax match muttrcFunction contained "\<descend-directory\>" 708syntax match muttrcFunction contained "\<detach-file\>" 709syntax match muttrcFunction contained "\<display-address\>" 710syntax match muttrcFunction contained "\<display-filename\>" 711syntax match muttrcFunction contained "\<display-message\>" 712syntax match muttrcFunction contained "\<display-toggle-weed\>" 713syntax match muttrcFunction contained "\<downcase-word\>" 714syntax match muttrcFunction contained "\<edit-bcc\>" 715syntax match muttrcFunction contained "\<edit-cc\>" 716syntax match muttrcFunction contained "\<edit-description\>" 717syntax match muttrcFunction contained "\<edit-encoding\>" 718syntax match muttrcFunction contained "\<edit-fcc\>" 719syntax match muttrcFunction contained "\<edit-file\>" 720syntax match muttrcFunction contained "\<edit-followup-to\>" 721syntax match muttrcFunction contained "\<edit-from\>" 722syntax match muttrcFunction contained "\<edit-headers\>" 723syntax match muttrcFunction contained "\<edit-label\>" 724syntax match muttrcFunction contained "\<edit-language\>" 725syntax match muttrcFunction contained "\<edit-message\>" 726syntax match muttrcFunction contained "\<edit-mime\>" 727syntax match muttrcFunction contained "\<edit-newsgroups\>" 728syntax match muttrcFunction contained "\<edit-or-view-raw-message\>" 729syntax match muttrcFunction contained "\<edit-raw-message\>" 730syntax match muttrcFunction contained "\<edit-reply-to\>" 731syntax match muttrcFunction contained "\<edit-subject\>" 732syntax match muttrcFunction contained "\<edit-to\>" 733syntax match muttrcFunction contained "\<edit-type\>" 734syntax match muttrcFunction contained "\<edit-x-comment-to\>" 735syntax match muttrcFunction contained "\<edit\>" 736syntax match muttrcFunction contained "\<end-cond\>" 737syntax match muttrcFunction contained "\<enter-command\>" 738syntax match muttrcFunction contained "\<enter-mask\>" 739syntax match muttrcFunction contained "\<entire-thread\>" 740syntax match muttrcFunction contained "\<eol\>" 741syntax match muttrcFunction contained "\<exit\>" 742syntax match muttrcFunction contained "\<extract-keys\>" 743syntax match muttrcFunction contained "\<fetch-mail\>" 744syntax match muttrcFunction contained "\<filter-entry\>" 745syntax match muttrcFunction contained "\<first-entry\>" 746syntax match muttrcFunction contained "\<flag-message\>" 747syntax match muttrcFunction contained "\<followup-message\>" 748syntax match muttrcFunction contained "\<forget-passphrase\>" 749syntax match muttrcFunction contained "\<forward-char\>" 750syntax match muttrcFunction contained "\<forward-message\>" 751syntax match muttrcFunction contained "\<forward-to-group\>" 752syntax match muttrcFunction contained "\<forward-word\>" 753syntax match muttrcFunction contained "\<get-attachment\>" 754syntax match muttrcFunction contained "\<get-children\>" 755syntax match muttrcFunction contained "\<get-message\>" 756syntax match muttrcFunction contained "\<get-parent\>" 757syntax match muttrcFunction contained "\<goto-folder\>" 758syntax match muttrcFunction contained "\<goto-parent\>" 759syntax match muttrcFunction contained "\<group-alternatives\>" 760syntax match muttrcFunction contained "\<group-chat-reply\>" 761syntax match muttrcFunction contained "\<group-multilingual\>" 762syntax match muttrcFunction contained "\<group-reply\>" 763syntax match muttrcFunction contained "\<half-down\>" 764syntax match muttrcFunction contained "\<half-up\>" 765syntax match muttrcFunction contained "\<help\>" 766syntax match muttrcFunction contained "\<history-down\>" 767syntax match muttrcFunction contained "\<history-search\>" 768syntax match muttrcFunction contained "\<history-up\>" 769syntax match muttrcFunction contained "\<imap-fetch-mail\>" 770syntax match muttrcFunction contained "\<imap-logout-all\>" 771syntax match muttrcFunction contained "\<insert\>" 772syntax match muttrcFunction contained "\<ispell\>" 773syntax match muttrcFunction contained "\<jump\>" 774syntax match muttrcFunction contained "\<kill-eol\>" 775syntax match muttrcFunction contained "\<kill-eow\>" 776syntax match muttrcFunction contained "\<kill-line\>" 777syntax match muttrcFunction contained "\<kill-word\>" 778syntax match muttrcFunction contained "\<last-entry\>" 779syntax match muttrcFunction contained "\<limit-current-thread\>" 780syntax match muttrcFunction contained "\<limit\>" 781syntax match muttrcFunction contained "\<link-threads\>" 782syntax match muttrcFunction contained "\<list-reply\>" 783syntax match muttrcFunction contained "\<mail-key\>" 784syntax match muttrcFunction contained "\<mailbox-cycle\>" 785syntax match muttrcFunction contained "\<mailbox-list\>" 786syntax match muttrcFunction contained "\<mail\>" 787syntax match muttrcFunction contained "\<mark-as-new\>" 788syntax match muttrcFunction contained "\<mark-message\>" 789syntax match muttrcFunction contained "\<middle-page\>" 790syntax match muttrcFunction contained "\<mix\>" 791syntax match muttrcFunction contained "\<modify-labels-then-hide\>" 792syntax match muttrcFunction contained "\<modify-labels\>" 793syntax match muttrcFunction contained "\<modify-tags-then-hide\>" 794syntax match muttrcFunction contained "\<modify-tags\>" 795syntax match muttrcFunction contained "\<move-down\>" 796syntax match muttrcFunction contained "\<move-up\>" 797syntax match muttrcFunction contained "\<new-mime\>" 798syntax match muttrcFunction contained "\<next-entry\>" 799syntax match muttrcFunction contained "\<next-line\>" 800syntax match muttrcFunction contained "\<next-new-then-unread\>" 801syntax match muttrcFunction contained "\<next-new\>" 802syntax match muttrcFunction contained "\<next-page\>" 803syntax match muttrcFunction contained "\<next-subthread\>" 804syntax match muttrcFunction contained "\<next-thread\>" 805syntax match muttrcFunction contained "\<next-undeleted\>" 806syntax match muttrcFunction contained "\<next-unread-mailbox\>" 807syntax match muttrcFunction contained "\<next-unread\>" 808syntax match muttrcFunction contained "\<noop\>" 809syntax match muttrcFunction contained "\<parent-message\>" 810syntax match muttrcFunction contained "\<pgp-menu\>" 811syntax match muttrcFunction contained "\<pipe-entry\>" 812syntax match muttrcFunction contained "\<pipe-message\>" 813syntax match muttrcFunction contained "\<post-message\>" 814syntax match muttrcFunction contained "\<postpone-message\>" 815syntax match muttrcFunction contained "\<previous-entry\>" 816syntax match muttrcFunction contained "\<previous-line\>" 817syntax match muttrcFunction contained "\<previous-new-then-unread\>" 818syntax match muttrcFunction contained "\<previous-new\>" 819syntax match muttrcFunction contained "\<previous-page\>" 820syntax match muttrcFunction contained "\<previous-subthread\>" 821syntax match muttrcFunction contained "\<previous-thread\>" 822syntax match muttrcFunction contained "\<previous-undeleted\>" 823syntax match muttrcFunction contained "\<previous-unread\>" 824syntax match muttrcFunction contained "\<print-entry\>" 825syntax match muttrcFunction contained "\<print-message\>" 826syntax match muttrcFunction contained "\<purge-message\>" 827syntax match muttrcFunction contained "\<purge-thread\>" 828syntax match muttrcFunction contained "\<quasi-delete\>" 829syntax match muttrcFunction contained "\<query-append\>" 830syntax match muttrcFunction contained "\<query\>" 831syntax match muttrcFunction contained "\<quit\>" 832syntax match muttrcFunction contained "\<quote-char\>" 833syntax match muttrcFunction contained "\<read-subthread\>" 834syntax match muttrcFunction contained "\<read-thread\>" 835syntax match muttrcFunction contained "\<recall-message\>" 836syntax match muttrcFunction contained "\<reconstruct-thread\>" 837syntax match muttrcFunction contained "\<redraw-screen\>" 838syntax match muttrcFunction contained "\<refresh\>" 839syntax match muttrcFunction contained "\<reload-active\>" 840syntax match muttrcFunction contained "\<rename-attachment\>" 841syntax match muttrcFunction contained "\<rename-file\>" 842syntax match muttrcFunction contained "\<rename-mailbox\>" 843syntax match muttrcFunction contained "\<reply\>" 844syntax match muttrcFunction contained "\<resend-message\>" 845syntax match muttrcFunction contained "\<root-message\>" 846syntax match muttrcFunction contained "\<save-entry\>" 847syntax match muttrcFunction contained "\<save-message\>" 848syntax match muttrcFunction contained "\<search-next\>" 849syntax match muttrcFunction contained "\<search-opposite\>" 850syntax match muttrcFunction contained "\<search-reverse\>" 851syntax match muttrcFunction contained "\<search-toggle\>" 852syntax match muttrcFunction contained "\<search\>" 853syntax match muttrcFunction contained "\<select-entry\>" 854syntax match muttrcFunction contained "\<select-new\>" 855syntax match muttrcFunction contained "\<send-message\>" 856syntax match muttrcFunction contained "\<set-flag\>" 857syntax match muttrcFunction contained "\<shell-escape\>" 858syntax match muttrcFunction contained "\<show-limit\>" 859syntax match muttrcFunction contained "\<show-log-messages\>" 860syntax match muttrcFunction contained "\<show-version\>" 861syntax match muttrcFunction contained "\<sidebar-next-new\>" 862syntax match muttrcFunction contained "\<sidebar-next\>" 863syntax match muttrcFunction contained "\<sidebar-open\>" 864syntax match muttrcFunction contained "\<sidebar-page-down\>" 865syntax match muttrcFunction contained "\<sidebar-page-up\>" 866syntax match muttrcFunction contained "\<sidebar-prev-new\>" 867syntax match muttrcFunction contained "\<sidebar-prev\>" 868syntax match muttrcFunction contained "\<sidebar-toggle-virtual\>" 869syntax match muttrcFunction contained "\<sidebar-toggle-visible\>" 870syntax match muttrcFunction contained "\<skip-quoted\>" 871syntax match muttrcFunction contained "\<smime-menu\>" 872syntax match muttrcFunction contained "\<sort-mailbox\>" 873syntax match muttrcFunction contained "\<sort-reverse\>" 874syntax match muttrcFunction contained "\<sort\>" 875syntax match muttrcFunction contained "\<subscribe-pattern\>" 876syntax match muttrcFunction contained "\<subscribe\>" 877syntax match muttrcFunction contained "\<sync-mailbox\>" 878syntax match muttrcFunction contained "\<tag-entry\>" 879syntax match muttrcFunction contained "\<tag-message\>" 880syntax match muttrcFunction contained "\<tag-pattern\>" 881syntax match muttrcFunction contained "\<tag-prefix-cond\>" 882syntax match muttrcFunction contained "\<tag-prefix\>" 883syntax match muttrcFunction contained "\<tag-subthread\>" 884syntax match muttrcFunction contained "\<tag-thread\>" 885syntax match muttrcFunction contained "\<toggle-active\>" 886syntax match muttrcFunction contained "\<toggle-disposition\>" 887syntax match muttrcFunction contained "\<toggle-mailboxes\>" 888syntax match muttrcFunction contained "\<toggle-new\>" 889syntax match muttrcFunction contained "\<toggle-prefer-encrypt\>" 890syntax match muttrcFunction contained "\<toggle-quoted\>" 891syntax match muttrcFunction contained "\<toggle-read\>" 892syntax match muttrcFunction contained "\<toggle-recode\>" 893syntax match muttrcFunction contained "\<toggle-subscribed\>" 894syntax match muttrcFunction contained "\<toggle-unlink\>" 895syntax match muttrcFunction contained "\<toggle-write\>" 896syntax match muttrcFunction contained "\<top-page\>" 897syntax match muttrcFunction contained "\<top\>" 898syntax match muttrcFunction contained "\<transpose-chars\>" 899syntax match muttrcFunction contained "\<uncatchup\>" 900syntax match muttrcFunction contained "\<undelete-entry\>" 901syntax match muttrcFunction contained "\<undelete-message\>" 902syntax match muttrcFunction contained "\<undelete-pattern\>" 903syntax match muttrcFunction contained "\<undelete-subthread\>" 904syntax match muttrcFunction contained "\<undelete-thread\>" 905syntax match muttrcFunction contained "\<unsubscribe-pattern\>" 906syntax match muttrcFunction contained "\<unsubscribe\>" 907syntax match muttrcFunction contained "\<untag-pattern\>" 908syntax match muttrcFunction contained "\<upcase-word\>" 909syntax match muttrcFunction contained "\<update-encoding\>" 910syntax match muttrcFunction contained "\<verify-key\>" 911syntax match muttrcFunction contained "\<vfolder-from-query-readonly\>" 912syntax match muttrcFunction contained "\<vfolder-from-query\>" 913syntax match muttrcFunction contained "\<vfolder-window-backward\>" 914syntax match muttrcFunction contained "\<vfolder-window-forward\>" 915syntax match muttrcFunction contained "\<view-attachments\>" 916syntax match muttrcFunction contained "\<view-attach\>" 917syntax match muttrcFunction contained "\<view-file\>" 918syntax match muttrcFunction contained "\<view-mailcap\>" 919syntax match muttrcFunction contained "\<view-name\>" 920syntax match muttrcFunction contained "\<view-raw-message\>" 921syntax match muttrcFunction contained "\<view-text\>" 922syntax match muttrcFunction contained "\<what-key\>" 923syntax match muttrcFunction contained "\<write-fcc\>" 924 925" Define the default highlighting. 926" Only when an item doesn't have highlighting yet 927 928highlight def link muttrcComment Comment 929highlight def link muttrcEscape SpecialChar 930highlight def link muttrcRXChars SpecialChar 931highlight def link muttrcString String 932highlight def link muttrcRXString String 933highlight def link muttrcRXString2 String 934highlight def link muttrcSpecial Special 935highlight def link muttrcHooks Type 936highlight def link muttrcGroupFlag Type 937highlight def link muttrcGroupDef Macro 938highlight def link muttrcAddrDef muttrcGroupFlag 939highlight def link muttrcRXDef muttrcGroupFlag 940highlight def link muttrcRXPat String 941highlight def link muttrcAliasGroupName Macro 942highlight def link muttrcAliasKey Identifier 943highlight def link muttrcUnAliasKey Identifier 944highlight def link muttrcAliasEncEmail Identifier 945highlight def link muttrcAliasParens Type 946highlight def link muttrcSetNumAssignment Number 947highlight def link muttrcSetBoolAssignment Boolean 948highlight def link muttrcSetQuadAssignment Boolean 949highlight def link muttrcSetStrAssignment String 950highlight def link muttrcEmail Special 951highlight def link muttrcVariableInner Special 952highlight def link muttrcEscapedVariable String 953highlight def link muttrcHeader Type 954highlight def link muttrcKeySpecial SpecialChar 955highlight def link muttrcKey Type 956highlight def link muttrcKeyName SpecialChar 957highlight def link muttrcVarBool Identifier 958highlight def link muttrcVarQuad Identifier 959highlight def link muttrcVarNum Identifier 960highlight def link muttrcVarStr Identifier 961highlight def link muttrcMenu Identifier 962highlight def link muttrcCommand Keyword 963highlight def link muttrcMacroDescr String 964highlight def link muttrcAction Macro 965highlight def link muttrcBadAction Error 966highlight def link muttrcBindFunction Error 967highlight def link muttrcBindMenuList Error 968highlight def link muttrcFunction Macro 969highlight def link muttrcGroupKeyword muttrcCommand 970highlight def link muttrcGroupLine Error 971highlight def link muttrcSubscribeKeyword muttrcCommand 972highlight def link muttrcSubscribeLine Error 973highlight def link muttrcListsKeyword muttrcCommand 974highlight def link muttrcListsLine Error 975highlight def link muttrcAlternateKeyword muttrcCommand 976highlight def link muttrcAlternatesLine Error 977highlight def link muttrcAttachmentsLine muttrcCommand 978highlight def link muttrcAttachmentsFlag Type 979highlight def link muttrcAttachmentsMimeType String 980highlight def link muttrcColorLine Error 981highlight def link muttrcColorContext Error 982highlight def link muttrcColorContextI Identifier 983highlight def link muttrcColorContextH Identifier 984highlight def link muttrcColorKeyword muttrcCommand 985highlight def link muttrcColorField Identifier 986highlight def link muttrcColorCompose Identifier 987highlight def link muttrcColorComposeField Identifier 988highlight def link muttrcColor Type 989highlight def link muttrcColorFG Error 990highlight def link muttrcColorFGI Error 991highlight def link muttrcColorFGH Error 992highlight def link muttrcColorBG Error 993highlight def link muttrcColorBGI Error 994highlight def link muttrcColorBGH Error 995highlight def link muttrcMonoAttrib muttrcColor 996highlight def link muttrcMono muttrcCommand 997highlight def link muttrcSimplePat Identifier 998highlight def link muttrcSimplePatString Macro 999highlight def link muttrcSimplePatMetas Special 1000highlight def link muttrcPattern Error 1001highlight def link muttrcUnColorLine Error 1002highlight def link muttrcUnColorKeyword muttrcCommand 1003highlight def link muttrcUnColorIndex Identifier 1004highlight def link muttrcShellString muttrcEscape 1005highlight def link muttrcRXHooks muttrcCommand 1006highlight def link muttrcRXHookNot Type 1007highlight def link muttrcPatHooks muttrcCommand 1008highlight def link muttrcPatHookNot Type 1009highlight def link muttrcFormatConditionals2 Type 1010highlight def link muttrcIndexFormatStr muttrcString 1011highlight def link muttrcIndexFormatEscapes muttrcEscape 1012highlight def link muttrcIndexFormatConditionals muttrcFormatConditionals2 1013highlight def link muttrcAliasFormatStr muttrcString 1014highlight def link muttrcAliasFormatEscapes muttrcEscape 1015highlight def link muttrcAttachFormatStr muttrcString 1016highlight def link muttrcAttachFormatEscapes muttrcEscape 1017highlight def link muttrcAttachFormatConditionals muttrcFormatConditionals2 1018highlight def link muttrcComposeFormatStr muttrcString 1019highlight def link muttrcComposeFormatEscapes muttrcEscape 1020highlight def link muttrcFolderFormatStr muttrcString 1021highlight def link muttrcFolderFormatEscapes muttrcEscape 1022highlight def link muttrcFolderFormatConditionals muttrcFormatConditionals2 1023highlight def link muttrcMixFormatStr muttrcString 1024highlight def link muttrcMixFormatEscapes muttrcEscape 1025highlight def link muttrcMixFormatConditionals muttrcFormatConditionals2 1026highlight def link muttrcPGPFormatStr muttrcString 1027highlight def link muttrcPGPFormatEscapes muttrcEscape 1028highlight def link muttrcPGPFormatConditionals muttrcFormatConditionals2 1029highlight def link muttrcPGPCmdFormatStr muttrcString 1030highlight def link muttrcPGPCmdFormatEscapes muttrcEscape 1031highlight def link muttrcPGPCmdFormatConditionals muttrcFormatConditionals2 1032highlight def link muttrcStatusFormatStr muttrcString 1033highlight def link muttrcStatusFormatEscapes muttrcEscape 1034highlight def link muttrcStatusFormatConditionals muttrcFormatConditionals2 1035highlight def link muttrcPGPGetKeysFormatStr muttrcString 1036highlight def link muttrcPGPGetKeysFormatEscapes muttrcEscape 1037highlight def link muttrcSmimeFormatStr muttrcString 1038highlight def link muttrcSmimeFormatEscapes muttrcEscape 1039highlight def link muttrcSmimeFormatConditionals muttrcFormatConditionals2 1040highlight def link muttrcTimeEscapes muttrcEscape 1041highlight def link muttrcPGPTimeEscapes muttrcEscape 1042highlight def link muttrcStrftimeEscapes Type 1043highlight def link muttrcStrftimeFormatStr muttrcString 1044highlight def link muttrcFormatErrors Error 1045 1046highlight def link muttrcBindFunctionNL SpecialChar 1047highlight def link muttrcBindKeyNL SpecialChar 1048highlight def link muttrcBindMenuListNL SpecialChar 1049highlight def link muttrcMacroDescrNL SpecialChar 1050highlight def link muttrcMacroBodyNL SpecialChar 1051highlight def link muttrcMacroKeyNL SpecialChar 1052highlight def link muttrcMacroMenuListNL SpecialChar 1053highlight def link muttrcColorMatchCountNL SpecialChar 1054highlight def link muttrcColorNL SpecialChar 1055highlight def link muttrcColorRXNL SpecialChar 1056highlight def link muttrcColorBGNL SpecialChar 1057highlight def link muttrcColorFGNL SpecialChar 1058highlight def link muttrcAliasNameNL SpecialChar 1059highlight def link muttrcAliasENNL SpecialChar 1060highlight def link muttrcAliasNL SpecialChar 1061highlight def link muttrcUnAliasNL SpecialChar 1062highlight def link muttrcAliasGroupDefNL SpecialChar 1063highlight def link muttrcAliasEncEmailNL SpecialChar 1064highlight def link muttrcPatternNL SpecialChar 1065highlight def link muttrcUnColorPatNL SpecialChar 1066highlight def link muttrcUnColorAPNL SpecialChar 1067highlight def link muttrcUnColorIndexNL SpecialChar 1068highlight def link muttrcStringNL SpecialChar 1069 1070highlight def link muttrcVarDeprecatedBool Error 1071highlight def link muttrcVarDeprecatedQuad Error 1072highlight def link muttrcVarDeprecatedStr Error 1073 1074let b:current_syntax = "neomuttrc" 1075 1076let &cpo = s:cpo_save 1077unlet s:cpo_save 1078 1079" vim: ts=8 noet tw=100 sw=8 sts=0 ft=vim isk+=- 1080