summaryrefslogtreecommitdiffstats
path: root/runtime/syntax/fetchmail.vim
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/syntax/fetchmail.vim')
-rw-r--r--runtime/syntax/fetchmail.vim75
1 files changed, 75 insertions, 0 deletions
diff --git a/runtime/syntax/fetchmail.vim b/runtime/syntax/fetchmail.vim
new file mode 100644
index 0000000..7a42105
--- /dev/null
+++ b/runtime/syntax/fetchmail.vim
@@ -0,0 +1,75 @@
+" Vim syntax file
+" Language: fetchmail(1) RC File
+" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
+" Latest Revision: 2006-04-19
+
+if exists("b:current_syntax")
+ finish
+endif
+
+let s:cpo_save = &cpo
+set cpo&vim
+
+syn keyword fetchmailTodo contained FIXME TODO XXX NOTE
+
+syn region fetchmailComment start='#' end='$' contains=fetchmailTodo,@Spell
+
+syn match fetchmailNumber display '\<\d\+\>'
+
+syn region fetchmailString start=+"+ skip=+\\\\\|\\"+ end=+"+
+ \ contains=fetchmailStringEsc
+syn region fetchmailString start=+'+ skip=+\\\\\|\\'+ end=+'+
+ \ contains=fetchmailStringEsc
+
+syn match fetchmailStringEsc contained '\\\([ntb]\|0\d*\|x\x\+\)'
+
+syn region fetchmailKeyword transparent matchgroup=fetchmailKeyword
+ \ start='\<poll\|skip\|defaults\>'
+ \ end='\<poll\|skip\|defaults\>'
+ \ contains=ALLBUT,fetchmailOptions,fetchmailSet
+
+syn keyword fetchmailServerOpts contained via proto[col] local[domains] port
+ \ auth[enticate] timeout envelope qvirtual aka
+ \ interface monitor plugin plugout dns
+ \ checkalias uidl interval netsec principal
+ \ esmtpname esmtppassword
+ \ sslcertck sslcertpath sslfingerprint
+syn match fetchmailServerOpts contained '\<no\_s\+\(envelope\|dns\|checkalias\|uidl\)'
+
+syn keyword fetchmailUserOpts contained user[name] is to pass[word] ssl
+ \ sslcert sslkey sslproto folder smtphost
+ \ fetchdomains smtpaddress smtpname antispam
+ \ mda bsmtp preconnect postconnect keep flush
+ \ fetchall rewrite stripcr forcecr pass8bits
+ \ dropstatus dropdelivered mimedecode idle
+ \ limit warnings batchlimit fetchlimit expunge
+ \ tracepolls properties
+syn match fetchmailUserOpts contained '\<no\_s\+\(keep\|flush\|fetchall\|rewrite\|stripcr\|forcecr\|pass8bits\|dropstatus\|dropdelivered\|mimedecode\|noidle\)'
+
+syn keyword fetchmailSpecial contained here there
+
+syn keyword fetchmailNoise and with has wants options
+syn match fetchmailNoise display '[:;,]'
+
+syn keyword fetchmailSet nextgroup=fetchmailOptions skipwhite skipnl set
+
+syn keyword fetchmailOptions daemon postmaster bouncemail spambounce logfile
+ \ idfile syslog nosyslog properties
+syn match fetchmailOptions '\<no\_s\+\(bouncemail\|spambounce\)'
+
+hi def link fetchmailComment Comment
+hi def link fetchmailTodo Todo
+hi def link fetchmailNumber Number
+hi def link fetchmailString String
+hi def link fetchmailStringEsc SpecialChar
+hi def link fetchmailKeyword Keyword
+hi def link fetchmailServerOpts Identifier
+hi def link fetchmailUserOpts Identifier
+hi def link fetchmailSpecial Special
+hi def link fetchmailSet Keyword
+hi def link fetchmailOptions Identifier
+
+let b:current_syntax = "fetchmail"
+
+let &cpo = s:cpo_save
+unlet s:cpo_save