Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 1 | " Vim syntax file |
| 2 | " Language: Mutt setup files |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 3 | " Original: Preben 'Peppe' Guldberg <peppe-vim@wielders.org> |
| 4 | " Maintainer: Kyle Wheeler <kyle-muttrc.vim@memoryhole.net> |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 5 | " Last Change: 15 Aug 2007 |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 6 | |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 7 | " This file covers mutt version 1.5.16 (and most of CVS HEAD) |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 8 | " Included are also a few features from 1.4.2.1 |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 9 | |
| 10 | " For version 5.x: Clear all syntax items |
| 11 | " For version 6.x: Quit when a syntax file was already loaded |
| 12 | if version < 600 |
| 13 | syntax clear |
| 14 | elseif exists("b:current_syntax") |
| 15 | finish |
| 16 | endif |
| 17 | |
| 18 | " Set the keyword characters |
| 19 | if version < 600 |
| 20 | set isk=@,48-57,_,- |
| 21 | else |
| 22 | setlocal isk=@,48-57,_,- |
| 23 | endif |
| 24 | |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 25 | syn match muttrcComment "^# .*$" contains=@Spell |
| 26 | syn match muttrcComment "^#[^ ].*$" |
| 27 | syn match muttrcComment "^#$" |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 28 | syn match muttrcComment "[^\\]#.*$"lc=1 |
| 29 | |
| 30 | " Escape sequences (back-tick and pipe goes here too) |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 31 | syn match muttrcEscape +\\[#tnr"'Cc ]+ |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 32 | syn match muttrcEscape +[`|]+ |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 33 | syn match muttrcEscape +\\$+ |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 34 | |
| 35 | " The variables takes the following arguments |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 36 | syn match muttrcString "=\s*[^ #"'`]\+"lc=1 contains=muttrcEscape |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 37 | syn region muttrcString start=+"+ms=e skip=+\\"+ end=+"+ contains=muttrcEscape,muttrcSet,muttrcUnset,muttrcReset,muttrcToggle,muttrcCommand,muttrcAction,muttrcShellString |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 38 | syn region muttrcString start=+'+ms=e skip=+\\'+ end=+'+ contains=muttrcEscape,muttrcSet,muttrcUnset,muttrcReset,muttrcToggle,muttrcCommand,muttrcAction |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 39 | |
| 40 | syn region muttrcShellString matchgroup=muttrcEscape keepend start=+`+ skip=+\\`+ end=+`+ contains=muttrcVarStr,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcCommand,muttrcSet |
| 41 | |
| 42 | syn match muttrcRXChars contained /[^\\][][.*?+]\+/hs=s+1 |
| 43 | syn match muttrcRXChars contained /[][|()][.*?+]*/ |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 44 | syn match muttrcRXChars contained /['"]^/ms=s+1 |
| 45 | syn match muttrcRXChars contained /$['"]/me=e-1 |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 46 | syn match muttrcRXChars contained /\\/ |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 47 | " Why does muttrcRXString2 work with one \ when muttrcRXString requires two? |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 48 | syn region muttrcRXString contained start=+'+ skip=+\\'+ end=+'+ contains=muttrcRXChars |
| 49 | syn region muttrcRXString contained start=+"+ skip=+\\"+ end=+"+ contains=muttrcRXChars |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 50 | syn region muttrcRXString2 contained start=+'+ skip=+\'+ end=+'+ contains=muttrcRXChars |
| 51 | syn region muttrcRXString2 contained start=+"+ skip=+\"+ end=+"+ contains=muttrcRXChars |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 52 | |
| 53 | syn region muttrcRXPat contained start=+'+ skip=+\\'+ end=+'\s*+ keepend skipwhite contains=muttrcRXString nextgroup=muttrcRXPat |
| 54 | syn region muttrcRXPat contained start=+"+ skip=+\\"+ end=+"\s*+ keepend skipwhite contains=muttrcRXString nextgroup=muttrcRXPat |
| 55 | syn match muttrcRXPat contained /[^-'"#!]\S\+\%(\s\|$\)/ skipwhite contains=muttrcRXChars nextgroup=muttrcRXPat |
| 56 | syn match muttrcRXDef contained "-rx\s\+" skipwhite nextgroup=muttrcRXPat |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 57 | |
| 58 | syn match muttrcSpecial +\(['"]\)!\1+ |
| 59 | |
| 60 | " Numbers and Quadoptions may be surrounded by " or ' |
| 61 | syn match muttrcNumber /=\s*\d\+/lc=1 |
| 62 | syn match muttrcNumber /=\s*"\d\+"/lc=1 |
| 63 | syn match muttrcNumber /=\s*'\d\+'/lc=1 |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 64 | syn match muttrcQuadopt +=\s*\%(ask-\)\=\%(yes\|no\)+lc=1 |
| 65 | syn match muttrcQuadopt +=\s*"\%(ask-\)\=\%(yes\|no\)"+lc=1 |
| 66 | syn match muttrcQuadopt +=\s*'\%(ask-\)\=\%(yes\|no\)'+lc=1 |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 67 | |
| 68 | " Now catch some email addresses and headers (purified version from mail.vim) |
| 69 | syn match muttrcEmail "[a-zA-Z0-9._-]\+@[a-zA-Z0-9./-]\+" |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 70 | syn match muttrcHeader "\<\%(From\|To\|C[Cc]\|B[Cc][Cc]\|Reply-To\|Subject\|Return-Path\|Received\|Date\|Replied\|Attach\)\>:\=" |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 71 | |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 72 | syn match muttrcKeySpecial contained +\%(\\[Cc'"]\|\^\|\\[01]\d\{2}\)+ |
| 73 | syn match muttrcKey contained "\S\+" contains=muttrcKeySpecial,muttrcKeyName |
| 74 | syn region muttrcKey contained start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=muttrcKeySpecial,muttrcKeyName |
| 75 | syn region muttrcKey contained start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=muttrcKeySpecial,muttrcKeyName |
| 76 | syn match muttrcKeyName contained "\<f\%(\d\|10\)\>" |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 77 | syn match muttrcKeyName contained "\\[trne]" |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 78 | syn match muttrcKeyName contained "\c<\%(BackSpace\|Delete\|Down\|End\|Enter\|Esc\|Home\|Insert\|Left\|PageDown\|PageUp\|Return\|Right\|Space\|Tab\|Up\)>" |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 79 | |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 80 | syn keyword muttrcVarBool contained allow_8bit allow_ansi arrow_cursor ascii_chars askbcc |
| 81 | syn keyword muttrcVarBool contained askcc attach_split auto_tag autoedit beep beep_new |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 82 | syn keyword muttrcVarBool contained bounce_delivered braille_friendly check_new check_mbox_size collapse_unread |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 83 | syn keyword muttrcVarBool contained confirmappend confirmcreate crypt_autoencrypt crypt_autopgp |
| 84 | syn keyword muttrcVarBool contained crypt_autosign crypt_autosmime crypt_replyencrypt |
| 85 | syn keyword muttrcVarBool contained crypt_replysign crypt_replysignencrypted crypt_timestamp |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 86 | syn keyword muttrcVarBool contained crypt_use_gpgme crypt_use_pka delete_untag digest_collapse duplicate_threads |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 87 | syn keyword muttrcVarBool contained edit_hdrs edit_headers encode_from envelope_from fast_reply |
| 88 | syn keyword muttrcVarBool contained fcc_attach fcc_clear followup_to force_name forw_decode |
| 89 | syn keyword muttrcVarBool contained forw_decrypt forw_quote forward_decode forward_decrypt |
| 90 | syn keyword muttrcVarBool contained forward_quote hdrs header help hidden_host hide_limited |
| 91 | syn keyword muttrcVarBool contained hide_missing hide_thread_subject hide_top_limited |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 92 | syn keyword muttrcVarBool contained hide_top_missing ignore_linear_white_space ignore_list_reply_to imap_check_subscribed |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 93 | syn keyword muttrcVarBool contained imap_list_subscribed imap_passive imap_peek imap_servernoise |
| 94 | syn keyword muttrcVarBool contained implicit_autoview include_onlyfirst keep_flagged |
| 95 | syn keyword muttrcVarBool contained mailcap_sanitize maildir_header_cache_verify maildir_trash |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 96 | syn keyword muttrcVarBool contained mark_old markers menu_move_off menu_scroll message_cache_clean meta_key |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 97 | syn keyword muttrcVarBool contained metoo mh_purge mime_forward_decode narrow_tree pager_stop |
| 98 | syn keyword muttrcVarBool contained pgp_auto_decode pgp_auto_traditional pgp_autoencrypt |
| 99 | syn keyword muttrcVarBool contained pgp_autoinline pgp_autosign pgp_check_exit |
| 100 | syn keyword muttrcVarBool contained pgp_create_traditional pgp_ignore_subkeys pgp_long_ids |
| 101 | syn keyword muttrcVarBool contained pgp_replyencrypt pgp_replyinline pgp_replysign |
| 102 | syn keyword muttrcVarBool contained pgp_replysignencrypted pgp_retainable_sigs pgp_show_unusable |
| 103 | syn keyword muttrcVarBool contained pgp_strict_enc pgp_use_gpg_agent pipe_decode pipe_split |
| 104 | syn keyword muttrcVarBool contained pop_auth_try_all pop_last print_decode print_split |
| 105 | syn keyword muttrcVarBool contained prompt_after read_only reply_self resolve reverse_alias |
| 106 | syn keyword muttrcVarBool contained reverse_name reverse_realname rfc2047_parameters save_address |
| 107 | syn keyword muttrcVarBool contained save_empty save_name score sig_dashes sig_on_top |
| 108 | syn keyword muttrcVarBool contained smart_wrap smime_ask_cert_label smime_decrypt_use_default_key |
| 109 | syn keyword muttrcVarBool contained smime_is_default sort_re ssl_force_tls ssl_use_sslv2 |
| 110 | syn keyword muttrcVarBool contained ssl_use_sslv3 ssl_use_tlsv1 ssl_usesystemcerts status_on_top |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 111 | syn keyword muttrcVarBool contained strict_mime strict_threads suspend text_flowed thorough_search |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 112 | syn keyword muttrcVarBool contained thread_received tilde uncollapse_jump use_8bitmime |
| 113 | syn keyword muttrcVarBool contained use_domain use_envelope_from use_from use_idn use_ipv6 |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 114 | syn keyword muttrcVarBool contained user_agent wait_key weed wrap_search write_bcc |
| 115 | |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 116 | syn keyword muttrcVarBool contained noallow_8bit noallow_ansi noarrow_cursor noascii_chars noaskbcc |
| 117 | syn keyword muttrcVarBool contained noaskcc noattach_split noauto_tag noautoedit nobeep nobeep_new |
| 118 | syn keyword muttrcVarBool contained nobounce_delivered nobraille_friendly nocheck_new nocollapse_unread |
| 119 | syn keyword muttrcVarBool contained noconfirmappend noconfirmcreate nocrypt_autoencrypt nocrypt_autopgp |
| 120 | syn keyword muttrcVarBool contained nocrypt_autosign nocrypt_autosmime nocrypt_replyencrypt |
| 121 | syn keyword muttrcVarBool contained nocrypt_replysign nocrypt_replysignencrypted nocrypt_timestamp |
| 122 | syn keyword muttrcVarBool contained nocrypt_use_gpgme nodelete_untag nodigest_collapse noduplicate_threads |
| 123 | syn keyword muttrcVarBool contained noedit_hdrs noedit_headers noencode_from noenvelope_from nofast_reply |
| 124 | syn keyword muttrcVarBool contained nofcc_attach nofcc_clear nofollowup_to noforce_name noforw_decode |
| 125 | syn keyword muttrcVarBool contained noforw_decrypt noforw_quote noforward_decode noforward_decrypt |
| 126 | syn keyword muttrcVarBool contained noforward_quote nohdrs noheader nohelp nohidden_host nohide_limited |
| 127 | syn keyword muttrcVarBool contained nohide_missing nohide_thread_subject nohide_top_limited |
| 128 | syn keyword muttrcVarBool contained nohide_top_missing noignore_list_reply_to noimap_check_subscribed |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 129 | syn keyword muttrcVarBool contained noimap_list_subscribed noimap_passive noimap_peek noimap_servernoise |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 130 | syn keyword muttrcVarBool contained noimplicit_autoview noinclude_onlyfirst nokeep_flagged |
| 131 | syn keyword muttrcVarBool contained nomailcap_sanitize nomaildir_header_cache_verify nomaildir_trash |
| 132 | syn keyword muttrcVarBool contained nomark_old nomarkers nomenu_move_off nomenu_scroll nometa_key |
| 133 | syn keyword muttrcVarBool contained nometoo nomh_purge nomime_forward_decode nonarrow_tree nopager_stop |
| 134 | syn keyword muttrcVarBool contained nopgp_auto_decode nopgp_auto_traditional nopgp_autoencrypt |
| 135 | syn keyword muttrcVarBool contained nopgp_autoinline nopgp_autosign nopgp_check_exit |
| 136 | syn keyword muttrcVarBool contained nopgp_create_traditional nopgp_ignore_subkeys nopgp_long_ids |
| 137 | syn keyword muttrcVarBool contained nopgp_replyencrypt nopgp_replyinline nopgp_replysign |
| 138 | syn keyword muttrcVarBool contained nopgp_replysignencrypted nopgp_retainable_sigs nopgp_show_unusable |
| 139 | syn keyword muttrcVarBool contained nopgp_strict_enc nopgp_use_gpg_agent nopipe_decode nopipe_split |
| 140 | syn keyword muttrcVarBool contained nopop_auth_try_all nopop_last noprint_decode noprint_split |
| 141 | syn keyword muttrcVarBool contained noprompt_after noread_only noreply_self noresolve noreverse_alias |
| 142 | syn keyword muttrcVarBool contained noreverse_name noreverse_realname norfc2047_parameters nosave_address |
| 143 | syn keyword muttrcVarBool contained nosave_empty nosave_name noscore nosig_dashes nosig_on_top |
| 144 | syn keyword muttrcVarBool contained nosmart_wrap nosmime_ask_cert_label nosmime_decrypt_use_default_key |
| 145 | syn keyword muttrcVarBool contained nosmime_is_default nosort_re nossl_force_tls nossl_use_sslv2 |
| 146 | syn keyword muttrcVarBool contained nossl_use_sslv3 nossl_use_tlsv1 nossl_usesystemcerts nostatus_on_top |
| 147 | syn keyword muttrcVarBool contained nostrict_threads nosuspend notext_flowed nothorough_search |
| 148 | syn keyword muttrcVarBool contained nothread_received notilde nouncollapse_jump nouse_8bitmime |
| 149 | syn keyword muttrcVarBool contained nouse_domain nouse_envelope_from nouse_from nouse_idn nouse_ipv6 |
| 150 | syn keyword muttrcVarBool contained nouser_agent nowait_key noweed nowrap_search nowrite_bcc |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 151 | |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 152 | syn keyword muttrcVarBool contained invallow_8bit invallow_ansi invarrow_cursor invascii_chars invaskbcc |
| 153 | syn keyword muttrcVarBool contained invaskcc invattach_split invauto_tag invautoedit invbeep invbeep_new |
| 154 | syn keyword muttrcVarBool contained invbounce_delivered invbraille_friendly invcheck_new invcollapse_unread |
| 155 | syn keyword muttrcVarBool contained invconfirmappend invconfirmcreate invcrypt_autoencrypt invcrypt_autopgp |
| 156 | syn keyword muttrcVarBool contained invcrypt_autosign invcrypt_autosmime invcrypt_replyencrypt |
| 157 | syn keyword muttrcVarBool contained invcrypt_replysign invcrypt_replysignencrypted invcrypt_timestamp |
| 158 | syn keyword muttrcVarBool contained invcrypt_use_gpgme invdelete_untag invdigest_collapse invduplicate_threads |
| 159 | syn keyword muttrcVarBool contained invedit_hdrs invedit_headers invencode_from invenvelope_from invfast_reply |
| 160 | syn keyword muttrcVarBool contained invfcc_attach invfcc_clear invfollowup_to invforce_name invforw_decode |
| 161 | syn keyword muttrcVarBool contained invforw_decrypt invforw_quote invforward_decode invforward_decrypt |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 162 | syn keyword muttrcVarBool contained invforward_quote invhdrs invheader invhelp invhidden_host invhide_limited |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 163 | syn keyword muttrcVarBool contained invhide_missing invhide_thread_subject invhide_top_limited |
| 164 | syn keyword muttrcVarBool contained invhide_top_missing invignore_list_reply_to invimap_check_subscribed |
| 165 | syn keyword muttrcVarBool contained invimap_list_subscribed invimap_passive invimap_peek invimap_servernoise |
| 166 | syn keyword muttrcVarBool contained invimplicit_autoview invinclude_onlyfirst invkeep_flagged |
| 167 | syn keyword muttrcVarBool contained invmailcap_sanitize invmaildir_header_cache_verify invmaildir_trash |
| 168 | syn keyword muttrcVarBool contained invmark_old invmarkers invmenu_move_off invmenu_scroll invmeta_key |
| 169 | syn keyword muttrcVarBool contained invmetoo invmh_purge invmime_forward_decode invnarrow_tree invpager_stop |
| 170 | syn keyword muttrcVarBool contained invpgp_auto_decode invpgp_auto_traditional invpgp_autoencrypt |
| 171 | syn keyword muttrcVarBool contained invpgp_autoinline invpgp_autosign invpgp_check_exit |
| 172 | syn keyword muttrcVarBool contained invpgp_create_traditional invpgp_ignore_subkeys invpgp_long_ids |
| 173 | syn keyword muttrcVarBool contained invpgp_replyencrypt invpgp_replyinline invpgp_replysign |
| 174 | syn keyword muttrcVarBool contained invpgp_replysignencrypted invpgp_retainable_sigs invpgp_show_unusable |
| 175 | syn keyword muttrcVarBool contained invpgp_strict_enc invpgp_use_gpg_agent invpipe_decode invpipe_split |
| 176 | syn keyword muttrcVarBool contained invpop_auth_try_all invpop_last invprint_decode invprint_split |
| 177 | syn keyword muttrcVarBool contained invprompt_after invread_only invreply_self invresolve invreverse_alias |
| 178 | syn keyword muttrcVarBool contained invreverse_name invreverse_realname invrfc2047_parameters invsave_address |
| 179 | syn keyword muttrcVarBool contained invsave_empty invsave_name invscore invsig_dashes invsig_on_top |
| 180 | syn keyword muttrcVarBool contained invsmart_wrap invsmime_ask_cert_label invsmime_decrypt_use_default_key |
| 181 | syn keyword muttrcVarBool contained invsmime_is_default invsort_re invssl_force_tls invssl_use_sslv2 |
| 182 | syn keyword muttrcVarBool contained invssl_use_sslv3 invssl_use_tlsv1 invssl_usesystemcerts invstatus_on_top |
| 183 | syn keyword muttrcVarBool contained invstrict_threads invsuspend invtext_flowed invthorough_search |
| 184 | syn keyword muttrcVarBool contained invthread_received invtilde invuncollapse_jump invuse_8bitmime |
| 185 | syn keyword muttrcVarBool contained invuse_domain invuse_envelope_from invuse_from invuse_idn invuse_ipv6 |
| 186 | syn keyword muttrcVarBool contained invuser_agent invwait_key invweed invwrap_search invwrite_bcc |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 187 | |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 188 | syn keyword muttrcVarQuad contained abort_nosubject abort_unmodified bounce copy |
| 189 | syn keyword muttrcVarQuad contained crypt_verify_sig delete forward_edit honor_followup_to |
| 190 | syn keyword muttrcVarQuad contained include mime_forward mime_forward_rest mime_fwd move |
| 191 | syn keyword muttrcVarQuad contained pgp_mime_auto pgp_verify_sig pop_delete pop_reconnect |
| 192 | syn keyword muttrcVarQuad contained postpone print quit recall reply_to ssl_starttls |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 193 | |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 194 | syn keyword muttrcVarQuad contained noabort_nosubject noabort_unmodified nobounce nocopy |
| 195 | syn keyword muttrcVarQuad contained nocrypt_verify_sig nodelete noforward_edit nohonor_followup_to |
| 196 | syn keyword muttrcVarQuad contained noinclude nomime_forward nomime_forward_rest nomime_fwd nomove |
| 197 | syn keyword muttrcVarQuad contained nopgp_mime_auto nopgp_verify_sig nopop_delete nopop_reconnect |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 198 | syn keyword muttrcVarQuad contained nopostpone noprint noquit norecall noreply_to nossl_starttls |
| 199 | |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 200 | syn keyword muttrcVarQuad contained invabort_nosubject invabort_unmodified invbounce invcopy |
| 201 | syn keyword muttrcVarQuad contained invcrypt_verify_sig invdelete invforward_edit invhonor_followup_to |
| 202 | syn keyword muttrcVarQuad contained invinclude invmime_forward invmime_forward_rest invmime_fwd invmove |
| 203 | syn keyword muttrcVarQuad contained invpgp_mime_auto invpgp_verify_sig invpop_delete invpop_reconnect |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 204 | syn keyword muttrcVarQuad contained invpostpone invprint invquit invrecall invreply_to invssl_starttls |
| 205 | |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 206 | syn keyword muttrcVarNum contained connect_timeout history imap_keepalive mail_check menu_context net_inc |
| 207 | syn keyword muttrcVarNum contained pager_context pager_index_lines pgp_timeout pop_checkinterval read_inc |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 208 | syn keyword muttrcVarNum contained save_history score_threshold_delete score_threshold_flag |
| 209 | syn keyword muttrcVarNum contained score_threshold_read sendmail_wait sleep_time smime_timeout |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 210 | syn keyword muttrcVarNum contained ssl_min_dh_prime_bits timeout time_inc wrap wrapmargin write_inc |
| 211 | |
| 212 | syn match muttrcStrftimeEscapes contained /%[AaBbCcDdeFGgHhIjklMmnpRrSsTtUuVvWwXxYyZz+%]/ |
| 213 | syn match muttrcStrftimeEscapes contained /%E[cCxXyY]/ |
| 214 | syn match muttrcStrftimeEscapes contained /%O[BdeHImMSuUVwWy]/ |
| 215 | |
| 216 | syn match muttrcFormatErrors contained /%./ |
| 217 | |
| 218 | syn region muttrcIndexFormatStr contained keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcIndexFormatEscapes,muttrcIndexFormatConditionals,muttrcFormatErrors,muttrcTimeEscapes |
| 219 | syn region muttrcIndexFormatStr contained keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcIndexFormatEscapes,muttrcIndexFormatConditionals,muttrcFormatErrors,muttrcTimeEscapes |
| 220 | syn region muttrcAliasFormatStr contained keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcAliasFormatEscapes,muttrcFormatErrors |
| 221 | syn region muttrcAliasFormatStr contained keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcAliasFormatEscapes,muttrcFormatErrors |
| 222 | syn region muttrcAttachFormatStr contained keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcAttachFormatEscapes,muttrcAttachFormatConditionals,muttrcFormatErrors |
| 223 | syn region muttrcAttachFormatStr contained keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcAttachFormatEscapes,muttrcAttachFormatConditionals,muttrcFormatErrors |
| 224 | syn region muttrcComposeFormatStr contained keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcComposeFormatEscapes,muttrcFormatErrors |
| 225 | syn region muttrcComposeFormatStr contained keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcComposeFormatEscapes,muttrcFormatErrors |
| 226 | syn region muttrcFolderFormatStr contained keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcFolderFormatEscapes,muttrcFolderFormatConditionals,muttrcFormatErrors |
| 227 | syn region muttrcFolderFormatStr contained keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcFolderFormatEscapes,muttrcFolderFormatConditionals,muttrcFormatErrors |
| 228 | syn region muttrcMixFormatStr contained keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcMixFormatEscapes,muttrcMixFormatConditionals,muttrcFormatErrors |
| 229 | syn region muttrcMixFormatStr contained keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcMixFormatEscapes,muttrcMixFormatConditionals,muttrcFormatErrors |
| 230 | syn region muttrcPGPFormatStr contained keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcPGPFormatEscapes,muttrcPGPFormatConditionals,muttrcFormatErrors,muttrcPGPTimeEscapes |
| 231 | syn region muttrcPGPFormatStr contained keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcPGPFormatEscapes,muttrcPGPFormatConditionals,muttrcFormatErrors,muttrcPGPTimeEscapes |
| 232 | syn region muttrcPGPCmdFormatStr contained keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcPGPCmdFormatEscapes,muttrcPGPCmdFormatConditionals,muttrcVariable,muttrcFormatErrors |
| 233 | syn region muttrcPGPCmdFormatStr contained keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcPGPCmdFormatEscapes,muttrcPGPCmdFormatConditionals,muttrcVariable,muttrcFormatErrors |
| 234 | syn region muttrcStatusFormatStr contained keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcStatusFormatEscapes,muttrcStatusFormatConditionals,muttrcFormatErrors |
| 235 | syn region muttrcStatusFormatStr contained keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcStatusFormatEscapes,muttrcStatusFormatConditionals,muttrcFormatErrors |
| 236 | syn region muttrcPGPGetKeysFormatStr contained keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcPGPGetKeysFormatEscapes,muttrcFormatErrors |
| 237 | syn region muttrcPGPGetKeysFormatStr contained keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcPGPGetKeysFormatEscapes,muttrcFormatErrors |
| 238 | syn region muttrcSmimeFormatStr contained keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcSmimeFormatEscapes,muttrcSmimeFormatConditionals,muttrcVariable,muttrcFormatErrors |
| 239 | syn region muttrcSmimeFormatStr contained keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcSmimeFormatEscapes,muttrcSmimeFormatConditionals,muttrcVariable,muttrcFormatErrors |
| 240 | |
| 241 | " The following info was pulled from hdr_format_str in hdrline.c |
| 242 | syn match muttrcIndexFormatEscapes contained /%\%(\%(-\?[0-9]\+\)\?\%(\.[0-9]\+\)\?\)\?[:_]\?[aAbBcCdDeEfFHilLmMnNOPsStTuvXyYZ%]/ |
| 243 | syn match muttrcIndexFormatConditionals contained /%?[EFHlLMNOXyY]?/ nextgroup=muttrcFormatConditionals2 |
| 244 | " The following info was pulled from alias_format_str in addrbook.c |
| 245 | syn match muttrcAliasFormatEscapes contained /%\%(\%(-\?[0-9]\+\)\?\%(\.[0-9]\+\)\?\)\?[:_]\?[afnrt%]/ |
| 246 | " The following info was pulled from mutt_attach_fmt in recvattach.c |
| 247 | syn match muttrcAttachFormatEscapes contained /%\%(\%(-\?[0-9]\+\)\?\%(\.[0-9]\+\)\?\)\?[:_]\?[CcDdefImMnQstTuX%]/ |
| 248 | syn match muttrcAttachFormatEscapes contained /%[>|*]./ |
| 249 | syn match muttrcAttachFormatConditionals contained /%?[CcdDefInmMQstTuX]?/ nextgroup=muttrcFormatConditionals2 |
| 250 | syn match muttrcFormatConditionals2 contained /[^?]*?/ |
| 251 | " The following info was pulled from compose_format_str in compose.c |
| 252 | syn match muttrcComposeFormatEscapes contained /%\%(\%(-\?[0-9]\+\)\?\%(\.[0-9]\+\)\?\)\?[:_]\?[ahlv%]/ |
| 253 | syn match muttrcComposeFormatEscapes contained /%[>|*]./ |
| 254 | " The following info was pulled from folder_format_str in browser.c |
| 255 | syn match muttrcFolderFormatEscapes contained /%\%(\%(-\?[0-9]\+\)\?\%(\.[0-9]\+\)\?\)\?[:_]\?[CdfFglNstu%]/ |
| 256 | syn match muttrcFolderFormatEscapes contained /%[>|*]./ |
| 257 | syn match muttrcFolderFormatConditionals contained /%?[N]?/ |
| 258 | " The following info was pulled from mix_entry_fmt in remailer.c |
| 259 | syn match muttrcMixFormatEscapes contained /%\%(\%(-\?[0-9]\+\)\?\%(\.[0-9]\+\)\?\)\?[:_]\?[ncsa%]/ |
| 260 | syn match muttrcMixFormatConditionals contained /%?[ncsa]?/ |
| 261 | " The following info was pulled from crypt_entry_fmt in crypt-gpgme.c |
| 262 | " and pgp_entry_fmt in pgpkey.c (note that crypt_entry_fmt supports |
| 263 | " 'p', but pgp_entry_fmt does not). |
| 264 | syn match muttrcPGPFormatEscapes contained /%\%(\%(-\?[0-9]\+\)\?\%(\.[0-9]\+\)\?\)\?[:_]\?[nkualfctp%]/ |
| 265 | syn match muttrcPGPFormatConditionals contained /%?[nkualfct]?/ |
| 266 | " The following info was pulled from _mutt_fmt_pgp_command in |
| 267 | " pgpinvoke.c |
| 268 | syn match muttrcPGPCmdFormatEscapes contained /%\%(\%(-\?[0-9]\+\)\?\%(\.[0-9]\+\)\?\)\?[:_]\?[pfsar%]/ |
| 269 | syn match muttrcPGPCmdFormatConditionals contained /%?[pfsar]?/ nextgroup=muttrcFormatConditionals2 |
| 270 | " The following info was pulled from status_format_str in status.c |
| 271 | syn match muttrcStatusFormatEscapes contained /%\%(\%(-\?[0-9]\+\)\?\%(\.[0-9]\+\)\?\)\?[:_]\?[bdfFhlLmMnopPrsStuvV%]/ |
| 272 | syn match muttrcStatusFormatEscapes contained /%[>|*]./ |
| 273 | syn match muttrcStatusFormatConditionals contained /%?[bdFlLmMnoptuV]?/ nextgroup=muttrcFormatConditionals2 |
| 274 | " This matches the documentation, but directly contradicts the code |
| 275 | " (according to the code, this should be identical to the |
| 276 | " muttrcPGPCmdFormatEscapes |
| 277 | syn match muttrcPGPGetKeysFormatEscapes contained /%\%(\%(-\?[0-9]\+\)\?\%(\.[0-9]\+\)\?\)\?[:_]\?[r%]/ |
| 278 | " The following info was pulled from _mutt_fmt_smime_command in |
| 279 | " smime.c |
| 280 | syn match muttrcSmimeFormatEscapes contained /%\%(\%(-\?[0-9]\+\)\?\%(\.[0-9]\+\)\?\)\?[:_]\?[Cciskaf%]/ |
| 281 | syn match muttrcSmimeFormatConditionals contained /%?[Cciskaf]?/ nextgroup=muttrcFormatConditionals2 |
| 282 | |
| 283 | syn region muttrcTimeEscapes contained start=+%{+ end=+}+ contains=muttrcStrftimeEscapes |
| 284 | syn region muttrcTimeEscapes contained start=+%\[+ end=+\]+ contains=muttrcStrftimeEscapes |
| 285 | syn region muttrcTimeEscapes contained start=+%(+ end=+)+ contains=muttrcStrftimeEscapes |
| 286 | syn region muttrcTimeEscapes contained start=+%<+ end=+>+ contains=muttrcStrftimeEscapes |
| 287 | syn region muttrcPGPTimeEscapes contained start=+%\[+ end=+\]+ contains=muttrcStrftimeEscapes |
| 288 | |
| 289 | syn keyword muttrcVarStr contained attribution index_format message_format pager_format nextgroup=muttrcVarEqualsIdxFmt |
| 290 | syn match muttrcVarEqualsIdxFmt contained "=" nextgroup=muttrcIndexFormatStr |
| 291 | syn keyword muttrcVarStr contained alias_format nextgroup=muttrcVarEqualsAliasFmt |
| 292 | syn match muttrcVarEqualsAliasFmt contained "=" nextgroup=muttrcAliasFormatStr |
| 293 | syn keyword muttrcVarStr contained attach_format nextgroup=muttrcVarEqualsAttachFmt |
| 294 | syn match muttrcVarEqualsAttachFmt contained "=" nextgroup=muttrcAttachFormatStr |
| 295 | syn keyword muttrcVarStr contained compose_format nextgroup=muttrcVarEqualsComposeFmt |
| 296 | syn match muttrcVarEqualsComposeFmt contained "=" nextgroup=muttrcComposeFormatStr |
| 297 | syn keyword muttrcVarStr contained folder_format nextgroup=muttrcVarEqualsFolderFmt |
| 298 | syn match muttrcVarEqualsFolderFmt contained "=" nextgroup=muttrcFolderFormatStr |
| 299 | syn keyword muttrcVarStr contained mix_entry_format nextgroup=muttrcVarEqualsMixFmt |
| 300 | syn match muttrcVarEqualsMixFmt contained "=" nextgroup=muttrcMixFormatStr |
| 301 | syn keyword muttrcVarStr contained pgp_entry_format nextgroup=muttrcVarEqualsPGPFmt |
| 302 | syn match muttrcVarEqualsPGPFmt contained "=" nextgroup=muttrcPGPFormatStr |
| 303 | syn keyword muttrcVarStr contained pgp_decode_command pgp_verify_command pgp_decrypt_command pgp_clearsign_command pgp_sign_command pgp_encrypt_sign_command pgp_encrypt_only_command pgp_import_command pgp_export_command pgp_verify_key_command pgp_list_secring_command pgp_list_pubring_command nextgroup=muttrcVarEqualsPGPCmdFmt |
| 304 | syn match muttrcVarEqualsPGPCmdFmt contained "=" nextgroup=muttrcPGPCmdFormatStr |
| 305 | syn keyword muttrcVarStr contained status_format nextgroup=muttrcVarEqualsStatusFmt |
| 306 | syn match muttrcVarEqualsStatusFmt contained "=" nextgroup=muttrcStatusFormatStr |
| 307 | syn keyword muttrcVarStr contained pgp_getkeys_command nextgroup=muttrcVarEqualsPGPGetKeysFmt |
| 308 | syn match muttrcVarEqualsPGPGetKeysFmt contained "=" nextgroup=muttrcPGPGetKeysFormatStr |
| 309 | syn keyword muttrcVarStr contained smime_decrypt_command smime_verify_command smime_verify_opaque_command smime_sign_command smime_sign_opaque_command smime_encrypt_command smime_pk7out_command smime_get_cert_command smime_get_signer_cert_command smime_import_cert_command smime_get_cert_email_command nextgroup=muttrcVarEqualsSmimeFmt |
| 310 | syn match muttrcVarEqualsSmimeFmt contained "=" nextgroup=muttrcSmimeFormatStr |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 311 | |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 312 | syn match muttrcVarStr contained 'my_[a-zA-Z0-9_]\+' |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 313 | syn keyword muttrcVarStr contained alias_file assumed_charset attach_charset attach_sep |
| 314 | syn keyword muttrcVarStr contained certificate_file charset config_charset content_type |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 315 | syn keyword muttrcVarStr contained date_format default_hook display_filter dotlock_program dsn_notify |
| 316 | syn keyword muttrcVarStr contained dsn_return editor entropy_file envelope_from_address escape folder |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 317 | syn keyword muttrcVarStr contained forw_format forward_format from gecos_mask hdr_format |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 318 | syn keyword muttrcVarStr contained header_cache header_cache_pagesize history_file hostname imap_authenticators |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 319 | syn keyword muttrcVarStr contained imap_delim_chars imap_headers imap_idle imap_login imap_pass |
| 320 | syn keyword muttrcVarStr contained imap_user indent_str indent_string ispell locale mailcap_path |
| 321 | syn keyword muttrcVarStr contained mask mbox mbox_type message_cachedir mh_seq_flagged mh_seq_replied |
| 322 | syn keyword muttrcVarStr contained mh_seq_unseen mixmaster msg_format pager |
| 323 | syn keyword muttrcVarStr contained pgp_good_sign |
| 324 | syn keyword muttrcVarStr contained pgp_mime_signature_filename |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 325 | syn keyword muttrcVarStr contained pgp_mime_signature_description pgp_sign_as |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 326 | syn keyword muttrcVarStr contained pgp_sort_keys |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 327 | syn keyword muttrcVarStr contained pipe_sep pop_authenticators pop_host pop_pass pop_user post_indent_str |
| 328 | syn keyword muttrcVarStr contained post_indent_string postponed preconnect print_cmd print_command |
| 329 | syn keyword muttrcVarStr contained query_command quote_regexp realname record reply_regexp send_charset |
| 330 | syn keyword muttrcVarStr contained sendmail shell signature simple_search smileys smime_ca_location |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 331 | syn keyword muttrcVarStr contained smime_certificates smime_default_key |
| 332 | syn keyword muttrcVarStr contained smime_encrypt_with |
| 333 | syn keyword muttrcVarStr contained smime_keys smime_sign_as |
| 334 | syn keyword muttrcVarStr contained smtp_url smtp_authenticators smtp_pass sort sort_alias sort_aux |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 335 | syn keyword muttrcVarStr contained sort_browser spam_separator spoolfile ssl_ca_certificates_file ssl_client_cert |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 336 | syn keyword muttrcVarStr contained status_chars tmpdir to_chars tunnel visual |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 337 | |
| 338 | " Present in 1.4.2.1 (pgp_create_traditional was a bool then) |
| 339 | syn keyword muttrcVarBool contained imap_force_ssl imap_force_ssl noinvimap_force_ssl |
| 340 | "syn keyword muttrcVarQuad contained pgp_create_traditional nopgp_create_traditional invpgp_create_traditional |
| 341 | syn keyword muttrcVarStr contained alternates |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 342 | |
| 343 | syn keyword muttrcMenu contained alias attach browser compose editor index pager postpone pgp mix query generic |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 344 | syn match muttrcMenuList "\S\+" contained contains=muttrcMenu |
| 345 | syn match muttrcMenuCommas /,/ contained |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 346 | |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 347 | syn keyword muttrcCommand auto_view alternative_order charset-hook exec unalternative_order |
| 348 | syn keyword muttrcCommand hdr_order iconv-hook ignore mailboxes my_hdr unmailboxes |
| 349 | syn keyword muttrcCommand pgp-hook push score source unauto_view unhdr_order |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 350 | syn keyword muttrcCommand unignore unmono unmy_hdr unscore |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 351 | syn keyword muttrcCommand mime_lookup unmime_lookup spam ungroup |
| 352 | syn keyword muttrcCommand nospam unalternative_order |
| 353 | |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 354 | syn keyword muttrcHooks contained account-hook charset-hook iconv-hook message-hook folder-hook mbox-hook save-hook fcc-hook fcc-save-hook send-hook send2-hook reply-hook crypt-hook |
| 355 | syn keyword muttrcUnhook contained unhook |
| 356 | syn region muttrcUnhookLine keepend start=+^\s*unhook\s+ skip=+\\$+ end=+$+ contains=muttrcUnhook,muttrcHooks,muttrcUnHighlightSpace,muttrcComment |
| 357 | |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 358 | syn match muttrcAttachmentsMimeType contained "[*a-z0-9_-]\+/[*a-z0-9._-]\+\s*" skipwhite nextgroup=muttrcAttachmentsMimeType |
| 359 | syn match muttrcAttachmentsFlag contained "[+-]\%([AI]\|inline\|attachment\)\s\+" skipwhite nextgroup=muttrcAttachmentsMimeType |
| 360 | syn match muttrcAttachmentsLine "^\s*\%(un\)\?attachments\s\+" skipwhite nextgroup=muttrcAttachmentsFlag |
| 361 | |
| 362 | syn match muttrcUnHighlightSpace contained "\%(\s\+\|\\$\)" |
| 363 | |
| 364 | syn keyword muttrcListsKeyword contained lists unlists |
| 365 | syn region muttrcListsLine keepend start=+^\s*\%(un\)\?lists\s+ skip=+\\$+ end=+$+ contains=muttrcListsKeyword,muttrcRXPat,muttrcGroupDef,muttrcUnHighlightSpace,muttrcComment |
| 366 | |
| 367 | syn keyword muttrcSubscribeKeyword contained subscribe unsubscribe |
| 368 | syn region muttrcSubscribeLine keepend start=+^\s*\%(un\)\?subscribe\s+ skip=+\\$+ end=+$+ contains=muttrcSubscribeKeyword,muttrcRXPat,muttrcGroupDef,muttrcUnHighlightSpace,muttrcComment |
| 369 | |
| 370 | syn keyword muttrcAlternateKeyword contained alternates unalternates |
| 371 | syn region muttrcAlternatesLine keepend start=+^\s*\%(un\)\?alternates\s+ skip=+\\$+ end=+$+ contains=muttrcAlternateKeyword,muttrcGroupDef,muttrcRXPat,muttrcUnHighlightSpace,muttrcComment |
| 372 | |
| 373 | syn match muttrcVariable "\$[a-zA-Z_-]\+" |
| 374 | |
| 375 | syn match muttrcBadAction contained "[^<>]\+" contains=muttrcEmail |
| 376 | syn match muttrcFunction contained "\<\%(attach\|bounce\|copy\|delete\|display\|flag\|forward\|parent\|pipe\|postpone\|print\|recall\|resent\|save\|send\|tag\|undelete\)-message\>" |
| 377 | syn match muttrcFunction contained "\<\%(delete\|next\|previous\|read\|tag\|undelete\)-thread\>" |
| 378 | syn match muttrcFunction contained "\<\%(backward\|capitalize\|downcase\|forward\|kill\|upcase\)-word\>" |
| 379 | syn match muttrcFunction contained "\<\%(delete\|filter\|first\|last\|next\|pipe\|previous\|print\|save\|select\|tag\|undelete\)-entry\>" |
| 380 | syn match muttrcFunction contained "\<attach-\%(file\|key\)\>" |
| 381 | syn match muttrcFunction contained "\<change-\%(dir\|folder\|folder-readonly\)\>" |
| 382 | syn match muttrcFunction contained "\<check-\%(new\|traditional-pgp\)\>" |
| 383 | syn match muttrcFunction contained "\<current-\%(bottom\|middle\|top\)\>" |
| 384 | syn match muttrcFunction contained "\<decode-\%(copy\|save\)\>" |
| 385 | syn match muttrcFunction contained "\<delete-\%(char\|pattern\|subthread\)\>" |
| 386 | syn match muttrcFunction contained "\<display-\%(address\|toggle-weed\)\>" |
| 387 | syn match muttrcFunction contained "\<edit\%(-\%(bcc\|cc\|description\|encoding\|fcc\|file\|from\|headers\|mime\|reply-to\|subject\|to\|type\)\)\?\>" |
| 388 | syn match muttrcFunction contained "\<enter-\%(command\|mask\)\>" |
| 389 | syn match muttrcFunction contained "\<half-\%(up\|down\)\>" |
| 390 | syn match muttrcFunction contained "\<history-\%(up\|down\)\>" |
| 391 | syn match muttrcFunction contained "\<kill-\%(eol\|eow\|line\)\>" |
| 392 | syn match muttrcFunction contained "\<next-\%(line\|new\|page\|subthread\|undeleted\|unread\)\>" |
| 393 | syn match muttrcFunction contained "\<previous-\%(line\|new\|page\|subthread\|undeleted\|unread\)\>" |
| 394 | syn match muttrcFunction contained "\<search\%(-\%(next\|opposite\|reverse\|toggle\)\)\?\>" |
| 395 | syn match muttrcFunction contained "\<show-\%(limit\|version\)\>" |
| 396 | syn match muttrcFunction contained "\<sort-\%(mailbox\|reverse\)\>" |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 397 | syn match muttrcFunction contained "\<tag-\%(pattern\|prefix\%(-cond\)\?\)\>" |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 398 | syn match muttrcFunction contained "\<toggle-\%(mailboxes\|new\|quoted\|subscribed\|unlink\|write\)\>" |
| 399 | syn match muttrcFunction contained "\<undelete-\%(pattern\|subthread\)\>" |
| 400 | syn match muttrcFunction contained "\<collapse-\%(parts\|thread\|all\)\>" |
| 401 | syn match muttrcFunction contained "\<view-\%(attach\|attachments\|file\|mailcap\|name\|text\)\>" |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 402 | syn match muttrcFunction contained "\<\%(backspace\|backward-char\|bol\|bottom\|bottom-page\|buffy-cycle\|clear-flag\|complete\%(-query\)\?\|copy-file\|create-alias\|detach-file\|eol\|exit\|extract-keys\|\%(imap-\)\?fetch-mail\|forget-passphrase\|forward-char\|group-reply\|help\|ispell\|jump\|limit\|list-reply\|mail\|mail-key\|mark-as-new\|middle-page\|new-mime\|noop\|pgp-menu\|query\|query-append\|quit\|quote-char\|read-subthread\|redraw-screen\|refresh\|rename-file\|reply\|select-new\|set-flag\|shell-escape\|skip-quoted\|sort\|subscribe\|sync-mailbox\|top\|top-page\|transpose-chars\|unsubscribe\|untag-pattern\|verify-key\|what-key\|write-fcc\)\>" |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 403 | syn match muttrcAction contained "<[^>]\{-}>" contains=muttrcBadAction,muttrcFunction,muttrcKeyName |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 404 | |
| 405 | syn keyword muttrcSet set skipwhite nextgroup=muttrcVar.* |
| 406 | syn keyword muttrcUnset unset skipwhite nextgroup=muttrcVar.* |
| 407 | syn keyword muttrcReset reset skipwhite nextgroup=muttrcVar.* |
| 408 | syn keyword muttrcToggle toggle skipwhite nextgroup=muttrcVar.* |
| 409 | |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 410 | " First, functions that take regular expressions: |
| 411 | syn match muttrcRXHookNot contained /!\s*/ skipwhite nextgroup=muttrcRXString |
| 412 | syn match muttrcRXHooks /^\s*\%(account\|folder\)-hook\s\+/ skipwhite nextgroup=muttrcRXHookNot,muttrcRXString |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 413 | |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 414 | " Now, functions that take patterns |
| 415 | syn match muttrcPatHookNot contained /!\s*/ skipwhite nextgroup=muttrcPattern |
| 416 | syn match muttrcPatHooks /^\s*\%(message\|mbox\|save\|fcc\%(-save\)\?\|send2\?\|reply\|crypt\)-hook\s\+/ nextgroup=muttrcPatHookNot,muttrcPattern |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 417 | |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 418 | syn match muttrcBindFunction contained /\S\+\%(\s\|$\)/ skipwhite contains=muttrcFunction |
| 419 | syn match muttrcBindFunctionNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcBindFunction,muttrcBindFunctionNL |
| 420 | syn match muttrcBindKey contained /\S\+/ skipwhite contains=muttrcKey nextgroup=muttrcBindFunction,muttrcBindFunctionNL |
| 421 | syn match muttrcBindKeyNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcBindKey,muttrcBindKeyNL |
| 422 | syn match muttrcBindMenuList contained /\S\+/ skipwhite contains=muttrcMenu,muttrcMenuCommas nextgroup=muttrcBindKey,muttrcBindKeyNL |
| 423 | syn match muttrcBindMenuListNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcBindMenuList,muttrcBindMenuListNL |
| 424 | syn match muttrcBind /^\s*bind\s\?/ skipwhite nextgroup=muttrcBindMenuList,muttrcBindMenuListNL |
| 425 | |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 426 | syn region muttrcMacroDescr contained keepend skipwhite start=+\s*\S+ms=e skip=+\\ + end=+ \|$+me=s |
| 427 | syn region muttrcMacroDescr contained keepend skipwhite start=+'+ms=e skip=+\\'+ end=+'+me=s |
| 428 | syn region muttrcMacroDescr contained keepend skipwhite start=+"+ms=e skip=+\\"+ end=+"+me=s |
| 429 | syn match muttrcMacroDescrNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcMacroDescr,muttrcMacroDescrNL |
| 430 | syn region muttrcMacroBody contained skipwhite start="\S" skip='\\ \|\\$' end=' \|$' contains=muttrcEscape,muttrcSet,muttrcUnset,muttrcReset,muttrcToggle,muttrcCommand,muttrcAction nextgroup=muttrcMacroDescr,muttrcMacroDescrNL |
| 431 | syn region muttrcMacroBody matchgroup=Type contained skipwhite start=+'+ms=e skip=+\\'+ end=+'+me=s contains=muttrcEscape,muttrcSet,muttrcUnset,muttrcReset,muttrcToggle,muttrcCommand,muttrcAction nextgroup=muttrcMacroDescr,muttrcMacroDescrNL |
| 432 | syn region muttrcMacroBody matchgroup=Type contained skipwhite start=+"+ms=e skip=+\\"+ end=+"+me=s contains=muttrcEscape,muttrcSet,muttrcUnset,muttrcReset,muttrcToggle,muttrcCommand,muttrcAction nextgroup=muttrcMacroDescr,muttrcMacroDescrNL |
| 433 | syn match muttrcMacroBodyNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcMacroBody,muttrcMacroBodyNL |
| 434 | syn match muttrcMacroKey contained /\S\+/ skipwhite contains=muttrcKey nextgroup=muttrcMacroBody,muttrcMacroBodyNL |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 435 | syn match muttrcMacroKeyNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcMacroKey,muttrcMacroKeyNL |
| 436 | syn match muttrcMacroMenuList contained /\S\+/ skipwhite contains=muttrcMenu,muttrcMenuCommas nextgroup=muttrcMacroKey,muttrcMacroKeyNL |
| 437 | syn match muttrcMacroMenuListNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcMacroMenuList,muttrcMacroMenuListNL |
| 438 | syn match muttrcMacro /^\s*macro\s\?/ skipwhite nextgroup=muttrcMacroMenuList,muttrcMacroMenuListNL |
| 439 | |
| 440 | syn match muttrcAddrContent contained "[a-zA-Z0-9._-]\+@[a-zA-Z0-9./-]\+\s*" skipwhite contains=muttrcEmail nextgroup=muttrcAddrContent |
| 441 | syn region muttrcAddrContent contained start=+'+ end=+'\s*+ skip=+\\'+ skipwhite contains=muttrcEmail nextgroup=muttrcAddrContent |
| 442 | syn region muttrcAddrContent contained start=+"+ end=+"\s*+ skip=+\\"+ skipwhite contains=muttrcEmail nextgroup=muttrcAddrContent |
| 443 | syn match muttrcAddrDef contained "-addr\s\+" skipwhite nextgroup=muttrcAddrContent |
| 444 | |
| 445 | syn match muttrcGroupFlag contained "-group" |
| 446 | syn region muttrcGroupDef contained start="-group\s\+" skip="\\$" end="\s" skipwhite keepend contains=muttrcGroupFlag,muttrcUnHighlightSpace |
| 447 | |
| 448 | syn keyword muttrcGroupKeyword contained group ungroup |
| 449 | syn region muttrcGroupLine keepend start=+^\s*\%(un\)\?group\s+ skip=+\\$+ end=+$+ contains=muttrcGroupKeyword,muttrcGroupDef,muttrcAddrDef,muttrcRXDef,muttrcUnHighlightSpace,muttrcComment |
| 450 | |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 451 | syn match muttrcAliasGroupName contained /\w\+/ skipwhite nextgroup=muttrcAliasGroupDef,muttrcAliasKey,muttrcAliasNL |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 452 | syn match muttrcAliasGroupDefNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcAliasGroupName,muttrcAliasGroupDefNL |
| 453 | syn match muttrcAliasGroupDef contained /\s*-group/ skipwhite nextgroup=muttrcAliasGroupName,muttrcAliasGroupDefNL contains=muttrcGroupFlag |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 454 | syn match muttrcAliasComma contained /,/ skipwhite nextgroup=muttrcAliasEmail,muttrcAliasEncEmail,muttrcAliasNameNoParens,muttrcAliasENNL |
| 455 | syn match muttrcAliasEmail contained /\S\+@\S\+/ contains=muttrcEmail nextgroup=muttrcAliasName,muttrcAliasNameNL skipwhite |
| 456 | syn match muttrcAliasEncEmail contained /<[^>]\+>/ contains=muttrcEmail nextgroup=muttrcAliasComma |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 457 | syn match muttrcAliasEncEmailNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcAliasEncEmail,muttrcAliasEncEmailNL |
| 458 | syn match muttrcAliasNameNoParens contained /[^<(@]\+\s\+/ nextgroup=muttrcAliasEncEmail,muttrcAliasEncEmailNL |
| 459 | syn region muttrcAliasName contained matchgroup=Type start=/(/ end=/)/ skipwhite |
| 460 | syn match muttrcAliasNameNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcAliasName,muttrcAliasNameNL |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 461 | syn match muttrcAliasENNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcAliasEmail,muttrcAliasEncEmail,muttrcAliasNameNoParens,muttrcAliasENNL |
| 462 | syn match muttrcAliasKey contained /\s*[^- \t]\S\+/ skipwhite nextgroup=muttrcAliasEmail,muttrcAliasEncEmail,muttrcAliasNameNoParens,muttrcAliasENNL |
| 463 | syn match muttrcAliasNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcAliasGroupDef,muttrcAliasKey,muttrcAliasNL |
| 464 | syn match muttrcAlias /^\s*alias\s/ skipwhite nextgroup=muttrcAliasGroupDef,muttrcAliasKey,muttrcAliasNL |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 465 | |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 466 | syn match muttrcUnAliasKey contained "\s*\w\+\s*" skipwhite nextgroup=muttrcUnAliasKey,muttrcUnAliasNL |
| 467 | syn match muttrcUnAliasNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcUnAliasKey,muttrcUnAliasNL |
| 468 | syn match muttrcUnAlias /^\s*unalias\s\?/ nextgroup=muttrcUnAliasKey,muttrcUnAliasNL |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 469 | |
| 470 | syn match muttrcSimplePat contained "!\?\^\?[~][ADEFgGklNOpPQRSTuUvV=$]" |
| 471 | syn match muttrcSimplePat contained "!\?\^\?[~][mnXz]\s\+\%([<>-][0-9]\+\|[0-9]\+[-][0-9]*\)" |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 472 | syn 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 |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 473 | syn match muttrcSimplePat contained "!\?\^\?[~][bBcCefhHiLstxy]\s\+" nextgroup=muttrcSimplePatRXContainer |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 474 | syn match muttrcSimplePat contained "!\?\^\?[%][bBcCefhHiLstxy]\s\+" nextgroup=muttrcSimplePatString |
| 475 | syn match muttrcSimplePat contained "!\?\^\?[=][bh]\s\+" nextgroup=muttrcSimplePatString |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 476 | syn region muttrcSimplePat contained keepend start=+!\?\^\?[~](+ end=+)+ contains=muttrcSimplePat |
| 477 | "syn match muttrcSimplePat contained /'[^~=%][^']*/ |
| 478 | "contains=muttrcRXPat |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 479 | syn match muttrcSimplePatString contained /[a-zA-Z0-9]\+/ |
| 480 | syn region muttrcSimplePatString contained keepend start=+"+ end=+"+ skip=+\\"+ |
| 481 | syn region muttrcSimplePatString contained keepend start=+'+ end=+'+ skip=+\\'+ |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 482 | syn region muttrcSimplePatRXContainer contained keepend start=+"+ end=+"+ skip=+\\"+ contains=muttrcRXPat |
| 483 | syn region muttrcSimplePatRXContainer contained keepend start=+'+ end=+'+ skip=+\\'+ contains=muttrcRXPat |
| 484 | syn match muttrcSimplePatRXContainer contained /\S\+/ contains=muttrcRXPat |
| 485 | syn match muttrcSimplePatMetas contained /[(|)]/ |
| 486 | |
| 487 | syn region muttrcPattern contained keepend start=+"+ skip=+\\"+ end=+"+ contains=muttrcPatternInner |
| 488 | syn region muttrcPattern contained keepend start=+'+ skip=+\\'+ end=+'+ contains=muttrcPatternInner |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 489 | syn match muttrcPattern contained "[~]\([A-Za-z]\|([^)]\+)\)" contains=muttrcSimplePat |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 490 | syn region muttrcPatternInner contained keepend start=+"[~=%!(^]+ms=s+1 skip=+\\"+ end=+"+me=e-1 contains=muttrcSimplePat,muttrcUnHighlightSpace,muttrcSimplePatMetas |
| 491 | syn region muttrcPatternInner contained keepend start=+'[~=%!(^]+ms=s+1 skip=+\\'+ end=+'+me=e-1 contains=muttrcSimplePat,muttrcUnHighlightSpace,muttrcSimplePatMetas |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 492 | |
| 493 | " Colour definitions takes object, foreground and background arguments (regexps excluded). |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 494 | syn match muttrcColorMatchCount contained "[0-9]\+" |
| 495 | syn match muttrcColorMatchCountNL contained skipwhite skipnl "\s*\\$" nextgroup=muttrcColorMatchCount,muttrcColorMatchCountNL |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 496 | syn region muttrcColorRXPat contained start=+\s*'+ skip=+\\'+ end=+'\s*+ keepend skipwhite contains=muttrcRXString2 nextgroup=muttrcColorMatchCount,muttrcColorMatchCountNL |
| 497 | syn region muttrcColorRXPat contained start=+\s*"+ skip=+\\"+ end=+"\s*+ keepend skipwhite contains=muttrcRXString2 nextgroup=muttrcColorMatchCount,muttrcColorMatchCountNL |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 498 | syn keyword muttrcColorField contained attachment body bold error hdrdefault header index indicator markers message normal quoted search signature status tilde tree underline |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 499 | syn match muttrcColorField contained "\<quoted\d\=\>" |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 500 | syn keyword muttrcColor contained black blue cyan default green magenta red white yellow |
| 501 | syn keyword muttrcColor contained brightblack brightblue brightcyan brightdefault brightgreen brightmagenta brightred brightwhite brightyellow |
| 502 | syn match muttrcColor contained "\<\%(bright\)\=color\d\{1,2}\>" |
| 503 | " Now for the structure of the color line |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 504 | syn match muttrcColorRXNL contained skipnl "\s*\\$" nextgroup=muttrcColorRXPat,muttrcColorRXNL |
| 505 | syn match muttrcColorBG contained /\s*[$]\?\w\+/ contains=muttrcColor,muttrcVariable,muttrcUnHighlightSpace nextgroup=muttrcColorRXPat,muttrcColorRXNL |
| 506 | syn match muttrcColorBGNL contained skipnl "\s*\\$" nextgroup=muttrcColorBG,muttrcColorBGNL |
| 507 | syn match muttrcColorFG contained /\s*[$]\?\w\+/ contains=muttrcColor,muttrcVariable,muttrcUnHighlightSpace nextgroup=muttrcColorBG,muttrcColorBGNL |
| 508 | syn match muttrcColorFGNL contained skipnl "\s*\\$" nextgroup=muttrcColorFG,muttrcColorFGNL |
| 509 | syn match muttrcColorContext contained /\s*[$]\?\w\+/ contains=muttrcColorField,muttrcVariable,muttrcUnHighlightSpace nextgroup=muttrcColorFG,muttrcColorFGNL |
| 510 | syn match muttrcColorNL contained skipnl "\s*\\$" nextgroup=muttrcColorContext,muttrcColorNL |
| 511 | syn match muttrcColorKeyword contained /^\s*color\s\+/ nextgroup=muttrcColorContext,muttrcColorNL |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 512 | syn region muttrcColorLine keepend start=/^\s*color\s\+\%(index\)\@!/ skip=+\\$+ end=+$+ contains=muttrcColorKeyword,muttrcComment,muttrcUnHighlightSpace |
| 513 | " Now for the structure of the color index line |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 514 | syn match muttrcPatternNL contained skipnl "\s*\\$" nextgroup=muttrcPattern,muttrcPatternNL |
| 515 | syn match muttrcColorBGI contained /\s*[$]\?\w\+\s*/ contains=muttrcColor,muttrcVariable,muttrcUnHighlightSpace nextgroup=muttrcPattern,muttrcPatternNL |
| 516 | syn match muttrcColorBGNLI contained skipnl "\s*\\$" nextgroup=muttrcColorBGI,muttrcColorBGNLI |
| 517 | syn match muttrcColorFGI contained /\s*[$]\?\w\+/ contains=muttrcColor,muttrcVariable,muttrcUnHighlightSpace nextgroup=muttrcColorBGI,muttrcColorBGNLI |
| 518 | syn match muttrcColorFGNLI contained skipnl "\s*\\$" nextgroup=muttrcColorFGI,muttrcColorFGNLI |
| 519 | syn match muttrcColorContextI contained /\s*index/ contains=muttrcUnHighlightSpace nextgroup=muttrcColorFGI,muttrcColorFGNLI |
| 520 | syn match muttrcColorNLI contained skipnl "\s*\\$" nextgroup=muttrcColorContextI,muttrcColorNLI |
| 521 | syn match muttrcColorKeywordI contained /^\s*color\s\+/ nextgroup=muttrcColorContextI,muttrcColorNLI |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 522 | syn region muttrcColorLine keepend start=/^\s*color\s\+index/ skip=+\\$+ end=+$+ contains=muttrcColorKeywordI,muttrcComment,muttrcUnHighlightSpace |
| 523 | " And now color's brother: |
| 524 | syn region muttrcUnColorPatterns contained skipwhite start=+\s*'+ end=+'+ skip=+\\'+ contains=muttrcPattern nextgroup=muttrcUnColorPatterns,muttrcUnColorPatNL |
| 525 | syn region muttrcUnColorPatterns contained skipwhite start=+\s*"+ end=+"+ skip=+\\"+ contains=muttrcPattern nextgroup=muttrcUnColorPatterns,muttrcUnColorPatNL |
| 526 | syn match muttrcUnColorPatterns contained skipwhite /\s*[^'"\s]\S\*/ contains=muttrcPattern nextgroup=muttrcUnColorPatterns,muttrcUnColorPatNL |
| 527 | syn match muttrcUnColorPatNL contained skipwhite skipnl /\s*\\$/ nextgroup=muttrcUnColorPatterns,muttrcUnColorPatNL |
| 528 | syn match muttrcUnColorAll contained skipwhite /[*]/ |
| 529 | syn match muttrcUnColorAPNL contained skipwhite skipnl /\s*\\$/ nextgroup=muttrcUnColorPatterns,muttrcUnColorAll,muttrcUnColorAPNL |
| 530 | syn match muttrcUnColorIndex contained skipwhite /\s*index\s\+/ nextgroup=muttrcUnColorPatterns,muttrcUnColorAll,muttrcUnColorAPNL |
| 531 | syn match muttrcUnColorIndexNL contained skipwhite skipnl /\s*\\$/ nextgroup=muttrcUnColorIndex,muttrcUnColorIndexNL |
| 532 | syn match muttrcUnColorKeyword contained skipwhite /^\s*uncolor\s\+/ nextgroup=muttrcUnColorIndex,muttrcUnColorIndexNL |
| 533 | syn region muttrcUnColorLine keepend start=+^\s*uncolor\s+ skip=+\\$+ end=+$+ contains=muttrcUnColorKeyword,muttrcComment,muttrcUnHighlightSpace |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 534 | |
| 535 | " Mono are almost like color (ojects inherited from color) |
| 536 | syn keyword muttrcMonoAttrib contained bold none normal reverse standout underline |
| 537 | syn keyword muttrcMono contained mono skipwhite nextgroup=muttrcColorField |
| 538 | syn match muttrcMonoLine "^\s*mono\s\+\S\+" skipwhite nextgroup=muttrcMonoAttrib contains=muttrcMono |
| 539 | |
| 540 | " Define the default highlighting. |
| 541 | " For version 5.7 and earlier: only when not done already |
| 542 | " For version 5.8 and later: only when an item doesn't have highlighting yet |
| 543 | if version >= 508 || !exists("did_muttrc_syntax_inits") |
| 544 | if version < 508 |
| 545 | let did_muttrc_syntax_inits = 1 |
| 546 | command -nargs=+ HiLink hi link <args> |
| 547 | else |
| 548 | command -nargs=+ HiLink hi def link <args> |
| 549 | endif |
| 550 | |
| 551 | HiLink muttrcComment Comment |
| 552 | HiLink muttrcEscape SpecialChar |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 553 | HiLink muttrcRXChars SpecialChar |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 554 | HiLink muttrcString String |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 555 | HiLink muttrcRXString String |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 556 | HiLink muttrcRXString2 String |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 557 | HiLink muttrcSpecial Special |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 558 | HiLink muttrcHooks Type |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 559 | HiLink muttrcGroupFlag Type |
| 560 | HiLink muttrcGroupDef Macro |
| 561 | HiLink muttrcAddrDef muttrcGroupFlag |
| 562 | HiLink muttrcRXDef muttrcGroupFlag |
| 563 | HiLink muttrcRXPat String |
| 564 | HiLink muttrcAliasGroupName Macro |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 565 | HiLink muttrcAliasKey Identifier |
| 566 | HiLink muttrcUnAliasKey Identifier |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 567 | HiLink muttrcAliasEncEmail Identifier |
| 568 | HiLink muttrcAliasParens Type |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 569 | HiLink muttrcNumber Number |
| 570 | HiLink muttrcQuadopt Boolean |
| 571 | HiLink muttrcEmail Special |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 572 | HiLink muttrcVariable Special |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 573 | HiLink muttrcHeader Type |
| 574 | HiLink muttrcKeySpecial SpecialChar |
| 575 | HiLink muttrcKey Type |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 576 | HiLink muttrcKeyName SpecialChar |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 577 | HiLink muttrcVarBool Identifier |
| 578 | HiLink muttrcVarQuad Identifier |
| 579 | HiLink muttrcVarNum Identifier |
| 580 | HiLink muttrcVarStr Identifier |
| 581 | HiLink muttrcMenu Identifier |
| 582 | HiLink muttrcCommand Keyword |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 583 | HiLink muttrcSet Keyword |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 584 | HiLink muttrcUnset muttrcCommand |
| 585 | HiLink muttrcReset muttrcCommand |
| 586 | HiLink muttrcToggle muttrcCommand |
| 587 | HiLink muttrcBind muttrcCommand |
| 588 | HiLink muttrcMacro muttrcCommand |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 589 | HiLink muttrcMacroDescr String |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 590 | HiLink muttrcAlias muttrcCommand |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 591 | HiLink muttrcUnAlias muttrcCommand |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 592 | HiLink muttrcUnhook muttrcCommand |
| 593 | HiLink muttrcUnhookLine Error |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 594 | HiLink muttrcAction Macro |
| 595 | HiLink muttrcBadAction Error |
| 596 | HiLink muttrcBindFunction Error |
| 597 | HiLink muttrcBindMenuList Error |
| 598 | HiLink muttrcFunction Macro |
| 599 | HiLink muttrcGroupKeyword muttrcCommand |
| 600 | HiLink muttrcGroupLine Error |
| 601 | HiLink muttrcSubscribeKeyword muttrcCommand |
| 602 | HiLink muttrcSubscribeLine Error |
| 603 | HiLink muttrcListsKeyword muttrcCommand |
| 604 | HiLink muttrcListsLine Error |
| 605 | HiLink muttrcAlternateKeyword muttrcCommand |
| 606 | HiLink muttrcAlternatesLine Error |
| 607 | HiLink muttrcAttachmentsLine muttrcCommand |
| 608 | HiLink muttrcAttachmentsFlag Type |
| 609 | HiLink muttrcAttachmentsMimeType String |
| 610 | HiLink muttrcColorLine Error |
| 611 | HiLink muttrcColorContext Error |
| 612 | HiLink muttrcColorContextI Identifier |
| 613 | HiLink muttrcColorKeyword muttrcCommand |
| 614 | HiLink muttrcColorKeywordI muttrcColorKeyword |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 615 | HiLink muttrcColorField Identifier |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 616 | HiLink muttrcColor Type |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 617 | HiLink muttrcColorFG Error |
| 618 | HiLink muttrcColorFGI Error |
| 619 | HiLink muttrcColorBG Error |
| 620 | HiLink muttrcColorBGI Error |
| 621 | HiLink muttrcMonoAttrib muttrcColor |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 622 | HiLink muttrcMono muttrcCommand |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 623 | HiLink muttrcSimplePat Identifier |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 624 | HiLink muttrcSimplePatString Macro |
Bram Moolenaar | f9393ef | 2006-04-24 19:47:27 +0000 | [diff] [blame] | 625 | HiLink muttrcSimplePatMetas Special |
| 626 | HiLink muttrcPattern Type |
| 627 | HiLink muttrcPatternInner Error |
| 628 | HiLink muttrcUnColorLine Error |
| 629 | HiLink muttrcUnColorKeyword muttrcCommand |
| 630 | HiLink muttrcUnColorIndex Identifier |
| 631 | HiLink muttrcShellString muttrcEscape |
| 632 | HiLink muttrcRXHooks muttrcCommand |
| 633 | HiLink muttrcRXHookNot Type |
| 634 | HiLink muttrcPatHooks muttrcCommand |
| 635 | HiLink muttrcPatHookNot Type |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 636 | HiLink muttrcFormatConditionals2 Type |
| 637 | HiLink muttrcIndexFormatStr muttrcString |
| 638 | HiLink muttrcIndexFormatEscapes muttrcEscape |
| 639 | HiLink muttrcIndexFormatConditionals muttrcFormatConditionals2 |
| 640 | HiLink muttrcAliasFormatStr muttrcString |
| 641 | HiLink muttrcAliasFormatEscapes muttrcEscape |
| 642 | HiLink muttrcAttachFormatStr muttrcString |
| 643 | HiLink muttrcAttachFormatEscapes muttrcEscape |
| 644 | HiLink muttrcAttachFormatConditionals muttrcFormatConditionals2 |
| 645 | HiLink muttrcComposeFormatStr muttrcString |
| 646 | HiLink muttrcComposeFormatEscapes muttrcEscape |
| 647 | HiLink muttrcFolderFormatStr muttrcString |
| 648 | HiLink muttrcFolderFormatEscapes muttrcEscape |
| 649 | HiLink muttrcFolderFormatConditionals muttrcFormatConditionals2 |
| 650 | HiLink muttrcMixFormatStr muttrcString |
| 651 | HiLink muttrcMixFormatEscapes muttrcEscape |
| 652 | HiLink muttrcMixFormatConditionals muttrcFormatConditionals2 |
| 653 | HiLink muttrcPGPFormatStr muttrcString |
| 654 | HiLink muttrcPGPFormatEscapes muttrcEscape |
| 655 | HiLink muttrcPGPFormatConditionals muttrcFormatConditionals2 |
| 656 | HiLink muttrcPGPCmdFormatStr muttrcString |
| 657 | HiLink muttrcPGPCmdFormatEscapes muttrcEscape |
| 658 | HiLink muttrcPGPCmdFormatConditionals muttrcFormatConditionals2 |
| 659 | HiLink muttrcStatusFormatStr muttrcString |
| 660 | HiLink muttrcStatusFormatEscapes muttrcEscape |
| 661 | HiLink muttrcStatusFormatConditionals muttrcFormatConditionals2 |
| 662 | HiLink muttrcPGPGetKeysFormatStr muttrcString |
| 663 | HiLink muttrcPGPGetKeysFormatEscapes muttrcEscape |
| 664 | HiLink muttrcSmimeFormatStr muttrcString |
| 665 | HiLink muttrcSmimeFormatEscapes muttrcEscape |
| 666 | HiLink muttrcSmimeFormatConditionals muttrcFormatConditionals2 |
| 667 | HiLink muttrcTimeEscapes muttrcEscape |
| 668 | HiLink muttrcPGPTimeEscapes muttrcEscape |
| 669 | HiLink muttrcStrftimeEscapes Type |
| 670 | HiLink muttrcFormatErrors Error |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 671 | |
Bram Moolenaar | 9964e46 | 2007-05-05 17:54:07 +0000 | [diff] [blame] | 672 | HiLink muttrcBindFunctionNL SpecialChar |
| 673 | HiLink muttrcBindKeyNL SpecialChar |
| 674 | HiLink muttrcBindMenuListNL SpecialChar |
| 675 | HiLink muttrcMacroDescrNL SpecialChar |
| 676 | HiLink muttrcMacroBodyNL SpecialChar |
| 677 | HiLink muttrcMacroKeyNL SpecialChar |
| 678 | HiLink muttrcMacroMenuListNL SpecialChar |
| 679 | HiLink muttrcColorMatchCountNL SpecialChar |
| 680 | HiLink muttrcColorNL SpecialChar |
| 681 | HiLink muttrcColorRXNL SpecialChar |
| 682 | HiLink muttrcColorBGNL SpecialChar |
| 683 | HiLink muttrcColorFGNL SpecialChar |
| 684 | HiLink muttrcAliasNameNL SpecialChar |
| 685 | HiLink muttrcAliasENNL SpecialChar |
| 686 | HiLink muttrcAliasNL SpecialChar |
| 687 | HiLink muttrcUnAliasNL SpecialChar |
| 688 | HiLink muttrcAliasGroupDefNL SpecialChar |
| 689 | HiLink muttrcAliasEncEmailNL SpecialChar |
| 690 | HiLink muttrcPatternNL SpecialChar |
| 691 | HiLink muttrcUnColorPatNL SpecialChar |
| 692 | HiLink muttrcUnColorAPNL SpecialChar |
| 693 | HiLink muttrcUnColorIndexNL SpecialChar |
| 694 | |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 695 | delcommand HiLink |
| 696 | endif |
| 697 | |
| 698 | let b:current_syntax = "muttrc" |
| 699 | |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 700 | "EOF vim: ts=8 noet tw=100 sw=8 sts=0 ft=vim |