procmail.vim 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. " Vim syntax file
  2. " Language: Procmail definition file
  3. " Maintainer: Melchior FRANZ <mfranz@aon.at>
  4. " Last Change: 2003 Aug 14
  5. " Author: Sonia Heimann
  6. " quit when a syntax file was already loaded
  7. if exists("b:current_syntax")
  8. finish
  9. endif
  10. syn match procmailComment "#.*$" contains=procmailTodo
  11. syn keyword procmailTodo contained Todo TBD
  12. syn region procmailString start=+"+ skip=+\\"+ end=+"+
  13. syn region procmailString start=+'+ skip=+\\'+ end=+'+
  14. syn region procmailVarDeclRegion start="^\s*[a-zA-Z0-9_]\+\s*="hs=e-1 skip=+\\$+ end=+$+ contains=procmailVar,procmailVarDecl,procmailString
  15. syn match procmailVarDecl contained "^\s*[a-zA-Z0-9_]\+"
  16. syn match procmailVar "$[a-zA-Z0-9_]\+"
  17. syn match procmailCondition contained "^\s*\*.*"
  18. syn match procmailActionFolder contained "^\s*[-_a-zA-Z0-9/]\+"
  19. syn match procmailActionVariable contained "^\s*$[a-zA-Z_]\+"
  20. syn region procmailActionForward start=+^\s*!+ skip=+\\$+ end=+$+
  21. syn region procmailActionPipe start=+^\s*|+ skip=+\\$+ end=+$+
  22. syn region procmailActionNested start=+^\s*{+ end=+^\s*}+ contains=procmailRecipe,procmailComment,procmailVarDeclRegion
  23. syn region procmailRecipe start=+^\s*:.*$+ end=+^\s*\($\|}\)+me=e-1 contains=procmailComment,procmailCondition,procmailActionFolder,procmailActionVariable,procmailActionForward,procmailActionPipe,procmailActionNested,procmailVarDeclRegion
  24. " Define the default highlighting.
  25. " Only when an item doesn't have highlighting yet
  26. hi def link procmailComment Comment
  27. hi def link procmailTodo Todo
  28. hi def link procmailRecipe Statement
  29. "hi def link procmailCondition Statement
  30. hi def link procmailActionFolder procmailAction
  31. hi def link procmailActionVariable procmailAction
  32. hi def link procmailActionForward procmailAction
  33. hi def link procmailActionPipe procmailAction
  34. hi def link procmailAction Function
  35. hi def link procmailVar Identifier
  36. hi def link procmailVarDecl Identifier
  37. hi def link procmailString String
  38. let b:current_syntax = "procmail"
  39. " vim: ts=8