xref: /vim-8.2.3635/runtime/syntax/fetchmail.vim (revision e344bead)
1" Vim syntax file
2" Language:         fetchmail(1) RC File
3" Maintainer:       Nikolai Weibull <[email protected]>
4" Latest Revision:  2005-06-27
5
6if exists("b:current_syntax")
7  finish
8endif
9
10let s:cpo_save = &cpo
11set cpo&vim
12
13syn keyword fetchmailTodo       contained FIXME TODO XXX NOTE
14
15syn region  fetchmailComment    start='#' end='$' contains=fetchmailTodo,@Spell
16
17syn match   fetchmailNumber     display '\<\d\+\>'
18
19syn region  fetchmailString     start=+"+ skip=+\\\\\|\\"+ end=+"+
20                                \ contains=fetchmailStringEsc
21syn region  fetchmailString     start=+'+ skip=+\\\\\|\\'+ end=+'+
22                                \ contains=fetchmailStringEsc
23
24syn match   fetchmailStringEsc  contained '\\\([ntb]\|0\d*\|x\x\+\)'
25
26syn region  fetchmailKeyword    transparent matchgroup=fetchmailKeyword
27                                \ start='\<poll\|skip\|defaults\>'
28                                \ end='\<poll\|skip\|defaults\>'
29                                \ contains=ALLBUT,fetchmailOptions,fetchmailSet
30
31syn keyword fetchmailServerOpts contained via proto[col] local[domains] port
32                                \ auth[enticate] timeout envelope qvirtual aka
33                                \ interface monitor plugin plugout dns
34                                \ checkalias uidl interval netsec principal
35                                \ esmtpname esmtppassword
36syn match   fetchmailServerOpts contained '\<no\_s\+\(envelope\|dns\|checkalias\|uidl\)'
37
38syn keyword fetchmailUserOpts   contained user[name] is to pass[word] ssl
39                                \ sslcert sslkey sslproto folder smtphost
40                                \ fetchdomains smtpaddress smtpname antispam
41                                \ mda bsmtp preconnect postconnect keep flush
42                                \ fetchall rewrite stripcr forcecr pass8bits
43                                \ dropstatus dropdelivered mimedecode idle
44                                \ limit warnings batchlimit fetchlimit expunge
45                                \ tracepolls properties
46syn match   fetchmailUserOpts   contained '\<no\_s\+\(keep\|flush\|fetchall\|rewrite\|stripcr\|forcecr\|pass8bits\|dropstatus\|dropdelivered\|mimedecode\|noidle\)'
47
48syn keyword fetchmailSpecial    contained here there
49
50syn keyword fetchmailNoise      and with has wants options
51syn match   fetchmailNoise      display '[:;,]'
52
53syn keyword fetchmailSet        nextgroup=fetchmailOptions skipwhite skipnl set
54
55syn keyword fetchmailOptions    daemon postmaster bouncemail spambounce logfile
56                                \ idfile syslog nosyslog properties
57syn match   fetchmailOptions    '\<no\_s\+\(bouncemail\|spambounce\)'
58
59hi def link fetchmailComment    Comment
60hi def link fetchmailTodo       Todo
61hi def link fetchmailNumber     Number
62hi def link fetchmailString     String
63hi def link fetchmailStringEsc  SpecialChar
64hi def link fetchmailKeyword    Keyword
65hi def link fetchmailServerOpts Identifier
66hi def link fetchmailUserOpts   Identifier
67hi def link fetchmailSpecial    Special
68hi def link fetchmailSet        Keyword
69hi def link fetchmailOptions    Identifier
70
71let b:current_syntax = "fetchmail"
72
73let &cpo = s:cpo_save
74unlet s:cpo_save
75