mirror of
https://github.com/vim/vim
synced 2025-03-20 16:55:28 +01:00
88 lines
3.4 KiB
VimL
88 lines
3.4 KiB
VimL
" Vim syntax file
|
|
" Language: fetchmail(1) RC File
|
|
" Maintainer: Nikolai Weibull <source@pcppopper.org>
|
|
" URL: http://www.pcppopper.org/vim/syntax/pcp/fetchmail/
|
|
" Latest Revision: 2004-05-06
|
|
" arch-tag: 59d8adac-6e59-45f6-88cb-f9ba1e009c1f
|
|
|
|
if version < 600
|
|
syntax clear
|
|
elseif exists("b:current_syntax")
|
|
finish
|
|
endif
|
|
|
|
" todo
|
|
syn keyword fetchmailTodo contained FIXME TODO XXX NOTE
|
|
|
|
" comments
|
|
syn region fetchmailComment start="#" end="$" contains=fetchmailTodo
|
|
|
|
" numbers
|
|
syn match fetchmailNumber "\<\d\+\>"
|
|
|
|
" strings
|
|
syn region fetchmailString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=fetchmailStringEsc
|
|
syn region fetchmailString start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=fetchmailStringEsc
|
|
|
|
" escape characters in strings
|
|
syn match fetchmailStringEsc "\\\([ntb]\|0\d*\|x\x\+\)"
|
|
|
|
" server entries
|
|
syn region fetchmailKeyword transparent matchgroup=fetchmailKeyword start="\<poll\|skip\|defaults\>" end="\<poll\|skip\|defaults\>" contains=ALLBUT,fetchmailOptions,fetchmailSet
|
|
|
|
" server options
|
|
syn keyword fetchmailServerOpts contained via proto[col] local[domains] port auth[enticate]
|
|
syn keyword fetchmailServerOpts contained timeout envelope qvirtual aka interface monitor
|
|
syn keyword fetchmailServerOpts contained plugin plugout dns checkalias uidl interval netsec
|
|
syn keyword fetchmailServerOpts contained principal esmtpname esmtppassword
|
|
syn match fetchmailServerOpts contained "\<no\_s\+\(envelope\|dns\|checkalias\|uidl\)"
|
|
|
|
" user options
|
|
syn keyword fetchmailUserOpts contained user[name] is to pass[word] ssl sslcert sslkey sslproto folder
|
|
syn keyword fetchmailUserOpts contained smtphost fetchdomains smtpaddress smtpname antispam mda bsmtp
|
|
syn keyword fetchmailUserOpts contained preconnect postconnect keep flush fetchall rewrite stripcr
|
|
syn keyword fetchmailUserOpts contained forcecr pass8bits dropstatus dropdelivered mimedecode idle
|
|
syn keyword fetchmailUserOpts contained 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
|
|
|
|
|
|
" noise keywords
|
|
syn keyword fetchmailNoise and with has wants options
|
|
syn match fetchmailNoise "[:;,]"
|
|
|
|
" options
|
|
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\)"
|
|
|
|
" Define the default highlighting.
|
|
" For version 5.7 and earlier: only when not done already
|
|
" For version 5.8 and later: only when an item doesn't have highlighting yet
|
|
if version >= 508 || !exists("did_fetchmail_syn_inits")
|
|
if version < 508
|
|
let did_fetchmail_syn_inits = 1
|
|
command -nargs=+ HiLink hi link <args>
|
|
else
|
|
command -nargs=+ HiLink hi def link <args>
|
|
endif
|
|
|
|
HiLink fetchmailComment Comment
|
|
HiLink fetchmailTodo Todo
|
|
HiLink fetchmailNumber Number
|
|
HiLink fetchmailString String
|
|
HiLink fetchmailStringEsc SpecialChar
|
|
HiLink fetchmailKeyword Keyword
|
|
HiLink fetchmailServerOpts Identifier
|
|
HiLink fetchmailUserOpts Identifier
|
|
HiLink fetchmailSpecial Special
|
|
HiLink fetchmailSet Keyword
|
|
HiLink fetchmailOptions Identifier
|
|
delcommand HiLink
|
|
endif
|
|
|
|
let b:current_syntax = "fetchmail"
|
|
|
|
" vim: set sts=2 sw=2:
|