view runtime/syntax/procmail.vim @ 5745:2f225a17c26b v7.4.217

updated for version 7.4.217 Problem: When src/auto/configure was updated, "make clean" would run configure pointlessly. Solution: Do not run configure for "make clean" and "make distclean" when the make program supports $MAKECMDGOALS. (Ken Takata)
author Bram Moolenaar <bram@vim.org>
date Tue, 25 Mar 2014 15:34:48 +0100
parents 3fc0f57ecb91
children 43efa4f5a8ea
line wrap: on
line source

" Vim syntax file
" Language:	Procmail definition file
" Maintainer:	Melchior FRANZ <mfranz@aon.at>
" Last Change:	2003 Aug 14
" Author:	Sonia Heimann

" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
if version < 600
  syntax clear
elseif exists("b:current_syntax")
  finish
endif

syn match   procmailComment      "#.*$" contains=procmailTodo
syn keyword   procmailTodo      contained Todo TBD

syn region  procmailString       start=+"+  skip=+\\"+  end=+"+
syn region  procmailString       start=+'+  skip=+\\'+  end=+'+

syn region procmailVarDeclRegion start="^\s*[a-zA-Z0-9_]\+\s*="hs=e-1 skip=+\\$+ end=+$+ contains=procmailVar,procmailVarDecl,procmailString
syn match procmailVarDecl contained "^\s*[a-zA-Z0-9_]\+"
syn match procmailVar "$[a-zA-Z0-9_]\+"

syn match procmailCondition contained "^\s*\*.*"

syn match procmailActionFolder contained "^\s*[-_a-zA-Z0-9/]\+"
syn match procmailActionVariable contained "^\s*$[a-zA-Z_]\+"
syn region procmailActionForward start=+^\s*!+ skip=+\\$+ end=+$+
syn region procmailActionPipe start=+^\s*|+ skip=+\\$+ end=+$+
syn region procmailActionNested start=+^\s*{+ end=+^\s*}+ contains=procmailRecipe,procmailComment,procmailVarDeclRegion

syn region procmailRecipe start=+^\s*:.*$+ end=+^\s*\($\|}\)+me=e-1 contains=procmailComment,procmailCondition,procmailActionFolder,procmailActionVariable,procmailActionForward,procmailActionPipe,procmailActionNested,procmailVarDeclRegion

" 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_procmail_syntax_inits")
  if version < 508
    let did_procmail_syntax_inits = 1
    command -nargs=+ HiLink hi link <args>
  else
    command -nargs=+ HiLink hi def link <args>
  endif

  HiLink procmailComment Comment
  HiLink procmailTodo    Todo

  HiLink procmailRecipe   Statement
  "HiLink procmailCondition   Statement

  HiLink procmailActionFolder	procmailAction
  HiLink procmailActionVariable procmailAction
  HiLink procmailActionForward	procmailAction
  HiLink procmailActionPipe	procmailAction
  HiLink procmailAction		Function
  HiLink procmailVar		Identifier
  HiLink procmailVarDecl	Identifier

  HiLink procmailString String

  delcommand HiLink
endif

let b:current_syntax = "procmail"

" vim: ts=8