xref: /vim-8.2.3635/runtime/syntax/procmail.vim (revision f37506f6)
1071d4279SBram Moolenaar" Vim syntax file
2071d4279SBram Moolenaar" Language:	Procmail definition file
3071d4279SBram Moolenaar" Maintainer:	Melchior FRANZ <[email protected]>
4071d4279SBram Moolenaar" Last Change:	2003 Aug 14
5071d4279SBram Moolenaar" Author:	Sonia Heimann
6071d4279SBram Moolenaar
789bcfda6SBram Moolenaar" quit when a syntax file was already loaded
889bcfda6SBram Moolenaarif exists("b:current_syntax")
9071d4279SBram Moolenaar  finish
10071d4279SBram Moolenaarendif
11071d4279SBram Moolenaar
12071d4279SBram Moolenaarsyn match   procmailComment      "#.*$" contains=procmailTodo
13071d4279SBram Moolenaarsyn keyword   procmailTodo      contained Todo TBD
14071d4279SBram Moolenaar
15071d4279SBram Moolenaarsyn region  procmailString       start=+"+  skip=+\\"+  end=+"+
16071d4279SBram Moolenaarsyn region  procmailString       start=+'+  skip=+\\'+  end=+'+
17071d4279SBram Moolenaar
18071d4279SBram Moolenaarsyn region procmailVarDeclRegion start="^\s*[a-zA-Z0-9_]\+\s*="hs=e-1 skip=+\\$+ end=+$+ contains=procmailVar,procmailVarDecl,procmailString
19071d4279SBram Moolenaarsyn match procmailVarDecl contained "^\s*[a-zA-Z0-9_]\+"
20071d4279SBram Moolenaarsyn match procmailVar "$[a-zA-Z0-9_]\+"
21071d4279SBram Moolenaar
22071d4279SBram Moolenaarsyn match procmailCondition contained "^\s*\*.*"
23071d4279SBram Moolenaar
24071d4279SBram Moolenaarsyn match procmailActionFolder contained "^\s*[-_a-zA-Z0-9/]\+"
25071d4279SBram Moolenaarsyn match procmailActionVariable contained "^\s*$[a-zA-Z_]\+"
26071d4279SBram Moolenaarsyn region procmailActionForward start=+^\s*!+ skip=+\\$+ end=+$+
27071d4279SBram Moolenaarsyn region procmailActionPipe start=+^\s*|+ skip=+\\$+ end=+$+
28071d4279SBram Moolenaarsyn region procmailActionNested start=+^\s*{+ end=+^\s*}+ contains=procmailRecipe,procmailComment,procmailVarDeclRegion
29071d4279SBram Moolenaar
30071d4279SBram Moolenaarsyn region procmailRecipe start=+^\s*:.*$+ end=+^\s*\($\|}\)+me=e-1 contains=procmailComment,procmailCondition,procmailActionFolder,procmailActionVariable,procmailActionForward,procmailActionPipe,procmailActionNested,procmailVarDeclRegion
31071d4279SBram Moolenaar
32071d4279SBram Moolenaar" Define the default highlighting.
3389bcfda6SBram Moolenaar" Only when an item doesn't have highlighting yet
34071d4279SBram Moolenaar
35*f37506f6SBram Moolenaarhi def link procmailComment Comment
36*f37506f6SBram Moolenaarhi def link procmailTodo    Todo
37071d4279SBram Moolenaar
38*f37506f6SBram Moolenaarhi def link procmailRecipe   Statement
39*f37506f6SBram Moolenaar"hi def link procmailCondition   Statement
40071d4279SBram Moolenaar
41*f37506f6SBram Moolenaarhi def link procmailActionFolder	procmailAction
42*f37506f6SBram Moolenaarhi def link procmailActionVariable procmailAction
43*f37506f6SBram Moolenaarhi def link procmailActionForward	procmailAction
44*f37506f6SBram Moolenaarhi def link procmailActionPipe	procmailAction
45*f37506f6SBram Moolenaarhi def link procmailAction		Function
46*f37506f6SBram Moolenaarhi def link procmailVar		Identifier
47*f37506f6SBram Moolenaarhi def link procmailVarDecl	Identifier
48071d4279SBram Moolenaar
49*f37506f6SBram Moolenaarhi def link procmailString String
50071d4279SBram Moolenaar
51071d4279SBram Moolenaar
52071d4279SBram Moolenaarlet b:current_syntax = "procmail"
53071d4279SBram Moolenaar
54071d4279SBram Moolenaar" vim: ts=8
55