view runtime/syntax/fetchmail.vim @ 20486:8ddcdb0d1074 v8.2.0797

patch 8.2.0797: MS-Windows: compiler still can't handle C99 construct Commit: https://github.com/vim/vim/commit/904e48a22be7e227a73c70e520cf9d8bc50fc1b2 Author: Bram Moolenaar <Bram@vim.org> Date: Tue May 19 10:33:02 2020 +0200 patch 8.2.0797: MS-Windows: compiler still can't handle C99 construct Problem: MS-Windows: compiler still can't handle C99 construct. Solution: Change to C90 construct. (Dominique Pelle, closes https://github.com/vim/vim/issues/6106)
author Bram Moolenaar <Bram@vim.org>
date Tue, 19 May 2020 10:45:04 +0200
parents 1218c5353e2b
children 912224cab37f
line wrap: on
line source

" 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