2 " Language: Makeindex style file, *.ist
3 " Maintainer: Peter Meszaros <pmeszaros@effice.hu>
4 " Last Change: May 4, 2001
6 " For version 5.x: Clear all syntax items
7 " For version 6.x: Quit when a syntax file was already loaded
10 elseif exists("b:current_syntax")
15 setlocal iskeyword=$,@,48-57,_
17 set iskeyword=$,@,48-57,_
21 syn keyword IstInpSpec actual arg_close arg_open encap escape
22 syn keyword IstInpSpec keyword level quote range_close range_open
23 syn keyword IstInpSpec page_compositor
25 syn keyword IstOutSpec preamble postamble setpage_prefix setpage_suffix group_skip
26 syn keyword IstOutSpec headings_flag heading_prefix heading_suffix
27 syn keyword IstOutSpec lethead_flag lethead_prefix lethead_suffix
28 syn keyword IstOutSpec symhead_positive symhead_negative numhead_positive numhead_negative
29 syn keyword IstOutSpec item_0 item_1 item_2 item_01
30 syn keyword IstOutSpec item_x1 item_12 item_x2
31 syn keyword IstOutSpec delim_0 delim_1 delim_2
32 syn keyword IstOutSpec delim_n delim_r delim_t
33 syn keyword IstOutSpec encap_prefix encap_infix encap_suffix
34 syn keyword IstOutSpec line_max indent_space indent_length
35 syn keyword IstOutSpec suffix_2p suffix_3p suffix_mp
37 syn region IstString matchgroup=IstDoubleQuote start=+"+ skip=+\\"+ end=+"+ contains=IstSpecial
38 syn match IstCharacter "'.'"
39 syn match IstNumber "\d\+"
40 syn match IstComment "^[\t ]*%.*$" contains=IstTodo
41 syn match IstSpecial "\\\\\|{\|}\|#\|\\n" contained
42 syn match IstTodo "DEBUG\|TODO" contained
44 " Define the default highlighting.
45 " For version 5.7 and earlier: only when not done already
46 " For version 5.8 and later: only when an item doesn't have highlighting yet
47 if version >= 508 || !exists("did_dummy_syn_inits")
49 let did_dummy_syn_inits = 1
50 command -nargs=+ HiLink hi link <args>
52 command -nargs=+ HiLink hi def link <args>
55 HiLink IstInpSpec Type
56 HiLink IstOutSpec Identifier
57 HiLink IstString String
58 HiLink IstNumber Number
59 HiLink IstComment Comment
61 HiLink IstSpecial Special
62 HiLink IstDoubleQuote Label
63 HiLink IstCharacter Label
68 let b:current_syntax = "ist"