Merge branch 'vim-with-runtime' into feat/quickfix-title
[vim_extended.git] / runtime / syntax / sieve.vim
blob4bb4417f39abb7fbc6f4fed73336ed8741339787
1 " Vim syntax file
2 " Language:         Sieve filtering language input file
3 " Maintainer:       Nikolai Weibull <now@bitwi.se>
4 " Latest Revision:  2007-10-25
6 if exists("b:current_syntax")
7   finish
8 endif
10 let s:cpo_save = &cpo
11 set cpo&vim
13 syn keyword sieveTodo         contained TODO FIXME XXX NOTE
15 syn region  sieveComment      start='/\*' end='\*/' contains=sieveTodo,@Spell
16 syn region  sieveComment      display oneline start='#' end='$'
17                               \ contains=sieveTodo,@Spell
19 syn case ignore
21 syn match   sieveTag          display ':\h\w*'
23 syn match   sieveNumber       display '\<\d\+[KMG]\=\>'
25 syn match   sieveSpecial      display '\\["\\]'
27 syn region  sieveString       start=+"+ skip=+\\\\\|\\"+ end=+"+
28                               \ contains=sieveSpecial
29 syn region  sieveString       start='text:' end='\n.\n'
31 syn keyword sieveConditional  if elsif else
32 syn keyword sieveTest         address allof anyof envelope exists false header
33                               \ not size true
34 syn keyword sievePreProc      require stop
35 syn keyword sieveAction       reject fileinto redirect keep discard
36 syn keyword sieveKeyword      vacation
38 syn case match
40 hi def link sieveTodo        Todo
41 hi def link sieveComment     Comment
42 hi def link sieveTag         Type
43 hi def link sieveNumber      Number
44 hi def link sieveSpecial     Special
45 hi def link sieveString      String
46 hi def link sieveConditional Conditional
47 hi def link sieveTest        Keyword
48 hi def link sievePreProc     PreProc
49 hi def link sieveAction      Function
50 hi def link sieveKeyword     Keyword
52 let b:current_syntax = "sieve"
54 let &cpo = s:cpo_save
55 unlet s:cpo_save