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