comparison runtime/syntax/racc.vim @ 375:f14cbd913415 v7.0097

updated for version 7.0097
author vimboss
date Wed, 29 Jun 2005 22:40:58 +0000
parents
children 4fe8e1a7758e
comparison
equal deleted inserted replaced
374:575dacb554d8 375:f14cbd913415
1 " Vim default file
2 " Language: Racc input file
3 " Maintainer: Nikolai Weibull <nikolai+work.vim@bitwi.se>
4 " Latest Revision: 2005-06-29
5
6 if exists("b:current_syntax")
7 finish
8 endif
9
10 let s:cpo_save = &cpo
11 set cpo&vim
12
13 syn keyword raccTodo contained TODO FIXME XXX NOTE
14
15 syn region raccComment matchgroup=raccComment start='/\*' end='\*/'
16 \ contains=raccTodo,@Spell
17 syn region raccComment matchgroup=raccComment start='#' end='$'
18 \ contains=raccTodo,@Spell
19
20 syn region raccClass transparent matchgroup=raccKeyword
21 \ start='\<class\>' end='\<rule\>'he=e-4
22 \ contains=raccComment,raccPrecedence,
23 \ raccTokenDecl,raccExpect,raccOptions,raccConvert,
24 \ raccStart,
25
26 syn region raccPrecedence transparent matchgroup=raccKeyword
27 \ start='\<prechigh\>' end='\<preclow\>'
28 \ contains=raccComment,raccPrecSpec
29
30 syn keyword raccPrecSpec contained nonassoc left right
31 \ nextgroup=raccPrecToken,raccPrecString skipwhite
32 \ skipnl
33
34 syn match raccPrecToken contained '\<\u[A-Z0-9]*\>'
35 \ nextgroup=raccPrecToken,raccPrecString skipwhite
36 \ skipnl
37
38 syn region raccPrecString matchgroup=raccPrecString start=+"+
39 \ skip=+\\\\\|\\"+ end=+"+
40 \ contains=raccSpecial
41 \ nextgroup=raccPrecToken,raccPrecString skipwhite
42 \ skipnl
43 syn region raccPrecString matchgroup=raccPrecString start=+'+
44 \ skip=+\\\\\|\\'+ end=+'+ contains=raccSpecial
45 \ nextgroup=raccPrecToken,raccPrecString skipwhite
46 \ skipnl
47
48 syn keyword raccTokenDecl contained token
49 \ nextgroup=raccTokenR skipwhite skipnl
50
51 syn match raccTokenR contained '\<\u[A-Z0-9]*\>'
52 \ nextgroup=raccTokenR skipwhite skipnl
53
54 syn keyword raccExpect contained expect
55 \ nextgroup=raccNumber skipwhite skipnl
56
57 syn match raccNumber contained '\<\d\+\>'
58
59 syn keyword raccOptions contained options
60 \ nextgroup=raccOptionsR skipwhite skipnl
61
62 syn keyword raccOptionsR contained omit_action_call result_var
63 \ nextgroup=raccOptionsR skipwhite skipnl
64
65 syn region raccConvert transparent contained matchgroup=raccKeyword
66 \ start='\<convert\>' end='\<end\>'
67 \ contains=raccComment,raccConvToken skipwhite
68 \ skipnl
69
70 syn match raccConvToken contained '\<\u[A-Z0-9]*\>'
71 \ nextgroup=raccString skipwhite skipnl
72
73 syn keyword raccStart contained start
74 \ nextgroup=raccTargetS skipwhite skipnl
75
76 syn match raccTargetS contained '\<\l[a-z0-9]*\>'
77
78 syn match raccSpecial contained '\\["'\\]'
79
80 syn region raccString matchgroup=raccString start=+"+ skip=+\\\\\|\\"+
81 \ end=+"+ contains=raccSpecial
82 syn region raccString matchgroup=raccString start=+'+ skip=+\\\\\|\\'+
83 \ end=+'+ contains=raccSpecial
84
85 syn region raccRules transparent matchgroup=raccKeyword start='\<rule\>'
86 \ end='\<end\>' contains=raccComment,raccString,
87 \ raccNumber,raccToken,raccTarget,raccDelimiter,
88 \ raccAction
89
90 syn match raccTarget contained '\<\l[a-z0-9]*\>'
91
92 syn match raccDelimiter contained '[:|]'
93
94 syn match raccToken contained '\<\u[A-Z0-9]*\>'
95
96 syn include @raccRuby syntax/ruby.vim
97
98 syn region raccAction transparent matchgroup=raccDelimiter
99 \ start='{' end='}' contains=@raccRuby
100
101 syn region raccHeader transparent matchgroup=raccPreProc
102 \ start='^---- header.*' end='^----'he=e-4
103 \ contains=@raccRuby
104
105 syn region raccInner transparent matchgroup=raccPreProc
106 \ start='^---- inner.*' end='^----'he=e-4
107 \ contains=@raccRuby
108
109 syn region raccFooter transparent matchgroup=raccPreProc
110 \ start='^---- footer.*' end='^----'he=e-4
111 \ contains=@raccRuby
112
113 hi def link raccTodo Todo
114 hi def link raccComment Comment
115 hi def link raccPrecSpec Type
116 hi def link raccPrecToken raccToken
117 hi def link raccPrecString raccString
118 hi def link raccTokenDecl Keyword
119 hi def link raccToken Identifier
120 hi def link raccTokenR raccToken
121 hi def link raccExpect Keyword
122 hi def link raccNumber Number
123 hi def link raccOptions Keyword
124 hi def link raccOptionsR Identifier
125 hi def link raccConvToken raccToken
126 hi def link raccStart Keyword
127 hi def link raccTargetS Type
128 hi def link raccSpecial special
129 hi def link raccString String
130 hi def link raccTarget Type
131 hi def link raccDelimiter Delimiter
132 hi def link raccPreProc PreProc
133 hi def link raccKeyword Keyword
134
135 let b:current_syntax = "racc"
136
137 let &cpo = s:cpo_save
138 unlet s:cpo_save