view runtime/syntax/sieve.vim @ 21689:10866fd07595 v8.2.1394

patch 8.2.1394: Vim9: compiling a function interferes with command modifiers Commit: https://github.com/vim/vim/commit/2dd0a2c39a3b3fbffc94d0676e472c78d02ebdbd Author: Bram Moolenaar <Bram@vim.org> Date: Sat Aug 8 15:10:27 2020 +0200 patch 8.2.1394: Vim9: compiling a function interferes with command modifiers Problem: Vim9: compiling a function interferes with command modifiers. Solution: Save and restore command modifiers. (closes https://github.com/vim/vim/issues/6658)
author Bram Moolenaar <Bram@vim.org>
date Sat, 08 Aug 2020 15:15:04 +0200
parents 1218c5353e2b
children
line wrap: on
line source

" Vim syntax file
" Language:             Sieve filtering language input file
" Previous Maintainer:  Nikolai Weibull <now@bitwi.se>
" Latest Revision:      2007-10-25

if exists("b:current_syntax")
  finish
endif

let s:cpo_save = &cpo
set cpo&vim

syn keyword sieveTodo         contained TODO FIXME XXX NOTE

syn region  sieveComment      start='/\*' end='\*/' contains=sieveTodo,@Spell
syn region  sieveComment      display oneline start='#' end='$'
                              \ contains=sieveTodo,@Spell

syn case ignore

syn match   sieveTag          display ':\h\w*'

syn match   sieveNumber       display '\<\d\+[KMG]\=\>'

syn match   sieveSpecial      display '\\["\\]'

syn region  sieveString       start=+"+ skip=+\\\\\|\\"+ end=+"+
                              \ contains=sieveSpecial
syn region  sieveString       start='text:' end='\n.\n'

syn keyword sieveConditional  if elsif else
syn keyword sieveTest         address allof anyof envelope exists false header
                              \ not size true
syn keyword sievePreProc      require stop
syn keyword sieveAction       reject fileinto redirect keep discard
syn keyword sieveKeyword      vacation

syn case match

hi def link sieveTodo        Todo
hi def link sieveComment     Comment
hi def link sieveTag         Type
hi def link sieveNumber      Number
hi def link sieveSpecial     Special
hi def link sieveString      String
hi def link sieveConditional Conditional
hi def link sieveTest        Keyword
hi def link sievePreProc     PreProc
hi def link sieveAction      Function
hi def link sieveKeyword     Keyword

let b:current_syntax = "sieve"

let &cpo = s:cpo_save
unlet s:cpo_save