blob: 198a3143cca4dee2f1dc6567178aed1a22b2d4b1 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim syntax file
Bram Moolenaar42eeac32005-06-29 22:40:58 +00002" Language: fetchmail(1) RC File
3" Maintainer: Nikolai Weibull <nikolai+work.vim@bitwi.se>
4" Latest Revision: 2005-06-27
Bram Moolenaar071d4272004-06-13 20:20:40 +00005
Bram Moolenaar42eeac32005-06-29 22:40:58 +00006if exists("b:current_syntax")
Bram Moolenaar071d4272004-06-13 20:20:40 +00007 finish
8endif
9
Bram Moolenaar42eeac32005-06-29 22:40:58 +000010let s:cpo_save = &cpo
11set cpo&vim
Bram Moolenaar071d4272004-06-13 20:20:40 +000012
Bram Moolenaar42eeac32005-06-29 22:40:58 +000013syn keyword fetchmailTodo contained FIXME TODO XXX NOTE
Bram Moolenaar071d4272004-06-13 20:20:40 +000014
Bram Moolenaar42eeac32005-06-29 22:40:58 +000015syn region fetchmailComment start='#' end='$' contains=fetchmailTodo,@Spell
Bram Moolenaar071d4272004-06-13 20:20:40 +000016
Bram Moolenaar42eeac32005-06-29 22:40:58 +000017syn match fetchmailNumber display '\<\d\+\>'
Bram Moolenaar071d4272004-06-13 20:20:40 +000018
Bram Moolenaar42eeac32005-06-29 22:40:58 +000019syn region fetchmailString start=+"+ skip=+\\\\\|\\"+ end=+"+
20 \ contains=fetchmailStringEsc
21syn region fetchmailString start=+'+ skip=+\\\\\|\\'+ end=+'+
22 \ contains=fetchmailStringEsc
Bram Moolenaar071d4272004-06-13 20:20:40 +000023
Bram Moolenaar42eeac32005-06-29 22:40:58 +000024syn match fetchmailStringEsc contained '\\\([ntb]\|0\d*\|x\x\+\)'
Bram Moolenaar071d4272004-06-13 20:20:40 +000025
Bram Moolenaar42eeac32005-06-29 22:40:58 +000026syn region fetchmailKeyword transparent matchgroup=fetchmailKeyword
27 \ start='\<poll\|skip\|defaults\>'
28 \ end='\<poll\|skip\|defaults\>'
29 \ contains=ALLBUT,fetchmailOptions,fetchmailSet
Bram Moolenaar071d4272004-06-13 20:20:40 +000030
Bram Moolenaar42eeac32005-06-29 22:40:58 +000031syn 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\)'
Bram Moolenaar071d4272004-06-13 20:20:40 +000037
Bram Moolenaar42eeac32005-06-29 22:40:58 +000038syn 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\)'
Bram Moolenaar071d4272004-06-13 20:20:40 +000047
Bram Moolenaar42eeac32005-06-29 22:40:58 +000048syn keyword fetchmailSpecial contained here there
Bram Moolenaar071d4272004-06-13 20:20:40 +000049
Bram Moolenaar42eeac32005-06-29 22:40:58 +000050syn keyword fetchmailNoise and with has wants options
51syn match fetchmailNoise display '[:;,]'
Bram Moolenaar071d4272004-06-13 20:20:40 +000052
Bram Moolenaar42eeac32005-06-29 22:40:58 +000053syn keyword fetchmailSet nextgroup=fetchmailOptions skipwhite skipnl set
Bram Moolenaar071d4272004-06-13 20:20:40 +000054
Bram Moolenaar42eeac32005-06-29 22:40:58 +000055syn keyword fetchmailOptions daemon postmaster bouncemail spambounce logfile
56 \ idfile syslog nosyslog properties
57syn match fetchmailOptions '\<no\_s\+\(bouncemail\|spambounce\)'
Bram Moolenaar071d4272004-06-13 20:20:40 +000058
Bram Moolenaar42eeac32005-06-29 22:40:58 +000059hi 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
Bram Moolenaar071d4272004-06-13 20:20:40 +000070
71let b:current_syntax = "fetchmail"
72
Bram Moolenaar42eeac32005-06-29 22:40:58 +000073let &cpo = s:cpo_save
74unlet s:cpo_save