blob: 547db73624cbca09cc8db4244d03e9eb0e0b6b19 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim syntax file
2" Language: Mailcap configuration file
Bram Moolenaar293ee4d2004-12-09 21:34:53 +00003" Maintainer: Doug Kearns <djkea2@gus.gscit.monash.edu.au>
4" Last Change: 2004 Nov 27
5" URL: http://gus.gscit.monash.edu.au/~djkea2/vim/syntax/mailcap.vim
Bram Moolenaar071d4272004-06-13 20:20:40 +00006
7" For version 5.x: Clear all syntax items
8" For version 6.x: Quit when a syntax file was already loaded
9if version < 600
10 syntax clear
11elseif exists("b:current_syntax")
12 finish
13endif
14
15syn match mailcapComment "^#.*"
16
17syn region mailcapString start=+"+ end=+"+ contains=mailcapSpecial oneline
18
19syn match mailcapDelimiter "\\\@<!;"
20
21syn match mailcapSpecial "\\\@<!%[nstF]"
22syn match mailcapSpecial "\\\@<!%{[^}]*}"
23
24syn case ignore
25syn match mailcapFlag "\(=\s*\)\@<!\<\(needsterminal\|copiousoutput\|x-\w\+\)\>"
26syn match mailcapFieldname "\<\(compose\|composetyped\|print\|edit\|test\|x11-bitmap\|nametemplate\|textualnewlines\|description\|x-\w+\)\>\ze\s*="
27syn match mailcapTypeField "^\(text\|image\|audio\|video\|application\|message\|multipart\|model\|x-[[:graph:]]\+\)\(/\(\*\|[[:graph:]]\+\)\)\=\ze\s*;"
28syn case match
29
30" Define the default highlighting.
31" For version 5.7 and earlier: only when not done already
32" For version 5.8 and later: only when an item doesn't have highlighting yet
33if version >= 508 || !exists("did_mailcap_syntax_inits")
34 if version < 508
35 let did_mailcap_syntax_inits = 1
36 command -nargs=+ HiLink hi link <args>
37 else
38 command -nargs=+ HiLink hi def link <args>
39 endif
40
41 HiLink mailcapComment Comment
42 HiLink mailcapDelimiter Delimiter
43 HiLink mailcapFlag Statement
44 HiLink mailcapFieldname Statement
45 HiLink mailcapSpecial Identifier
46 HiLink mailcapTypeField Type
47 HiLink mailcapString String
48
49 delcommand HiLink
50endif
51
52let b:current_syntax = "mailcap"
53
54" vim: tabstop=8