Merge branch '1396_with_search_engine'
[midnight-commander.git] / syntax / ebuild.syntax
blob3c3e312096a8d886eed746a836dbf8611401dfe8
1 # Author   : Sergei Trofimovich <slyfox@inbox.ru>
2 # Language : shell
3 # Mode     : ebuild
5 # sh.syntax is taken as base.
7 # Note     : keep in sync default and " " contexts
9 # 'sh.syntax' header:
10 #  #   Since I regulary update ths file, please send any comments
11 #  #   to:           Michelle Konzack <linux4michelle@freenet.de>
12 #  #   Last Update:  Thu, 01 Jun 2006 22:10:07 +0200
14 context default
15     #.ebuild specific commands/glo vars
16     # TODO: 1. split keywords by .eclass'es
17     #       2. grep all exports and place here
18     keyword whole CABAL_FEATURES brightcyan
19     keyword whole DEPEND brightcyan
20     keyword whole DESCRIPTION brightcyan
21     keyword whole EAPI brightcyan
22     keyword whole EDARCS_REPOSITORY brightcyan
23     keyword whole EDARCS_GET_CMD brightcyan
24     keyword whole EDARCS_LOCALREPO brightcyan
25     keyword whole EGIT_BRANCH brightcyan
26     keyword whole EGIT_REPO_URI brightcyan
27     keyword whole EGIT_TREE brightcyan
28     keyword whole ESVN_REPO_URI brightcyan
29     keyword whole EXPORT_FUNCTIONS brightcyan
30     keyword whole HOMEPAGE brightcyan
31     keyword whole IUSE brightcyan
32     keyword whole KEYWORDS brightcyan
33     keyword whole LICENSE brightcyan
34     keyword whole PATCHES brightcyan
35     keyword whole PDEPEND brightcyan
36     keyword whole PROVIDE brightcyan
37     keyword whole RDEPEND brightcyan
38     keyword whole RESTRICT brightcyan
39     keyword whole S brightcyan
40     keyword whole SITEFILE brightcyan
41     keyword whole SLOT brightcyan
42     keyword whole SRC_URI brightcyan
43     keyword whole WANT_AUTOCONF brightcyan
44     keyword whole WANT_AUTOMAKE brightcyan
45     keyword DOCS brightcyan
46     keyword LINGUAS brightcyan
48     keyword whole _elibtoolize yellow
49     keyword whole best_version yellow
50     keyword whole built_with_use yellow
51     keyword whole check_KV yellow
52     keyword whole die yellow
53     keyword whole diropts yellow
54     keyword whole dobin yellow
55     keyword whole docinto yellow
56     keyword whole doconfd yellow
57     keyword whole dodir yellow
58     keyword whole dodoc yellow
59     keyword whole doenvd yellow
60     keyword whole doexe yellow
61     keyword whole dohard yellow
62     keyword whole dohtml yellow
63     keyword whole doicon yellow
64     keyword whole doinfo yellow
65     keyword whole doinitd yellow
66     keyword whole doins yellow
67     keyword whole dolib yellow
68     keyword whole dolib.a yellow
69     keyword whole dolib.so yellow
70     keyword whole doman yellow
71     keyword whole domenu yellow
72     keyword whole dosbin yellow
73     keyword whole dosed yellow
74     keyword whole dosym yellow
75     keyword whole eaclocal yellow
76     keyword whole eautoconf yellow
77     keyword whole eautoreconf yellow
78     keyword whole eautomake yellow
79     keyword whole ebegin yellow
80     keyword whole econf yellow
81     keyword whole eend yellow
82     keyword whole eerror yellow
83     keyword whole einfo yellow
84     keyword whole einstall yellow
85     keyword whole elibtoolize yellow
86     keyword whole elog yellow
87     keyword whole emake yellow
88     keyword whole epatch yellow
89     keyword whole ewarn yellow
90     keyword whole exeinto yellow
91     keyword whole exeopts yellow
92     keyword whole enewgroup yellow
93     keyword whole enewuser yellow
94     keyword whole fowners yellow
95     keyword whole fperms yellow
96     keyword whole has yellow
97     keyword whole hasq yellow
98     keyword whole has_version yellow
99     keyword whole insinto yellow
100     keyword whole insopts yellow
101     keyword whole intltoolize yellow
102     keyword whole into yellow
103     keyword whole keepdir yellow
104     keyword whole libopts yellow
105     keyword whole local yellow
106     keyword whole newbin yellow
107     keyword whole newconfd yellow
108     keyword whole newdoc yellow
109     keyword whole newexe yellow
110     keyword whole newins yellow
111     keyword whole newman yellow
112     keyword whole newsbin yellow
113     keyword whole newinitd yellow
114     keyword whole prepall yellow
115     keyword whole prepalldocs yellow
116     keyword whole prepallinfo yellow
117     keyword whole prepallman yellow
118     keyword whole unpack yellow
119     keyword whole use yellow
120     keyword whole use_enable yellow
121     keyword whole use_with yellow
122     #base
123     keyword whole base_src_unpack yellow
124     #cvs
125     keyword whole cvs_src_unpack yellow
126     #darcs
127     keyword whole darcs_src_unpack yellow
128     #elisp-common
129     keyword whole elisp-compile yellow
130     keyword whole elisp-install yellow
131     keyword whole elisp-site-file-install yellow
132     keyword whole elisp-site-regen yellow
133     #flag-o-matic
134     keyword whole append-flags yellow
135     keyword whole filter-flags yellow
136     keyword whole replace-flags yellow
137     keyword whole strip-flags yellow
138     keyword whole strip-unsupported-flags yellow
139     #git
140     keyword whole git_src_unpack yellow
141     #java-ant-2
142     keyword whole EANT_BUILD_TARGET yellow
143     #mercurial
144     keyword whole mercurial_src_unpack yellow
145     #svn
146     keyword whole subversion_src_unpack yellow
148 ####################
149 # here starts original sh.syntax (with core commands only)
150 ####################
152     keyword ! brightred
153     keyword ;; brightred
154     keyword \\@ brightred
155     keyword \\$ brightred
156     keyword \\\\ brightred
157     keyword \\" brightred
158     keyword \\' brightred
159     keyword \\` brightred
160     keyword ` brightred
161     keyword ; brightcyan
162     keyword $(*) brightgreen
163     keyword ${*} brightgreen
164     keyword { brightcyan
165     keyword } brightcyan
167     keyword whole linestart #!\[\s\]*\n brightcyan black
169     keyword $\* brightred
170     keyword $@ brightred
171     keyword $# brightred
172     keyword $? brightred
173     keyword $- brightred
174     keyword $$ brightred
175     keyword $! brightred
176     keyword $_ brightred
178     keyword whole 2>&1 brightred
179     keyword whole 1>&2 brightred
180     keyword whole 2>   brightred
181     keyword whole 1>   brightred
183     keyword wholeright $\[0123456789\] brightred
185     keyword wholeright $+ brightgreen
187     keyword $ brightgreen
189     keyword wholeleft linestart function*() brightmagenta
190     keyword wholeleft linestart function\[\s\]+ brightmagenta
191     keyword wholeright +() brightmagenta
193 wholechars abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._
195     keyword whole break yellow
196     keyword whole case yellow
197     keyword whole clear         yellow
198     keyword whole continue yellow
199     keyword whole declare       yellow
200     keyword whole done yellow
201     keyword whole do yellow
202     keyword whole elif yellow
203     keyword whole else yellow
204     keyword whole esac yellow
205     keyword whole exit yellow
206     keyword whole export yellow
207     keyword whole fi yellow
208     keyword whole for yellow
209     keyword whole getopts       yellow
210     keyword whole if yellow
211     keyword whole in yellow
212     keyword whole read yellow
213     keyword whole return yellow
214     keyword whole select yellow
215     keyword whole shift yellow
216     keyword whole source        yellow
217     keyword whole then yellow
218     keyword whole trap yellow
219     keyword whole until yellow
220     keyword whole unset yellow
221     keyword whole wait yellow
222     keyword whole while yellow
224 # here goes usable subset for .ebuild commands
225     keyword whole awk        cyan
226     keyword whole cd         cyan
227     keyword whole chown      cyan
228     keyword whole chmod      cyan
229     keyword whole cmake      cyan
230     keyword whole cp         cyan
231     keyword whole echo       cyan
232     keyword whole egrep      cyan
233     keyword whole fgrep      cyan
234     keyword whole find       cyan
235     keyword whole grep       cyan
236     keyword whole ln         cyan
237     keyword whole make       cyan
238     keyword whole mkdir      cyan
239     keyword whole mknod      cyan
240     keyword whole mv         cyan
241     keyword whole perl       cyan
242     keyword whole pod2man    cyan
243     keyword whole rm         cyan
244     keyword whole sed        cyan
245     keyword whole sh         cyan
246     keyword whole touch      cyan
247     keyword whole xmkmf      cyan
249 # some interesting files to copy
250     keyword whole ANNOUNCEMENT  white
251     keyword whole AUTHORS       white
252     keyword whole BUGS          white
253     keyword whole CHANGES       white
254     keyword whole COPYING       white
255     keyword whole COPYRIGHT     white
256     keyword whole CREDITS       white
257     keyword whole ChangeLog     white
258     keyword whole FAQ           white
259     keyword whole HACKING       white
260     keyword whole INSTALL       white
261     keyword whole LICENSE       white
262     keyword whole NEWS          white
263     keyword whole README        white
264     keyword whole THANKS        white
265     keyword whole TODO          white
266     keyword whole VERSION       white
268     keyword whole /dev/audio  brightblue
269     keyword whole /dev/dsp    brightblue
270     keyword whole /dev/null   brightblue
271     keyword whole /dev/mixed  brightblue
272     keyword whole /dev/stdin  brightblue
273     keyword whole /dev/stdout brightblue
274     keyword whole /dev/stderr brightblue
275     keyword whole /dev/zero   brightblue
277 wholechars abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_
279 context # \n brown
280     spellcheck
282 context exclusive whole <<\[\s\]\[-\]\[\s\]\[\\\]EOF EOF green
283 context exclusive whole <<\[\s\]\[-\]\[\s\]\[\\\]END END green
285 context ' ' green
287 context " " green
288     keyword \\* brightgreen
289     keyword \\@ brightgreen
290     keyword \\$ brightgreen
291     keyword \\\\ brightgreen
292     keyword \\` brightgreen
293     keyword \\" brightgreen
294     keyword $(*) brightgreen
295     keyword ${*} brightgreen
296     keyword $\* brightred
297     keyword $@ brightred
298     keyword $# brightred
299     keyword $? brightred
300     keyword $- brightred
301     keyword $$ brightred
302     keyword $! brightred
303     keyword $_ brightred
304     keyword wholeright $\[0123456789\] brightred
306     keyword wholeright $+ brightgreen
308     keyword $ brightgreen
310 context exclusive ` ` lightgray black
311     keyword '*' green
312     keyword " green
313     keyword \\` green
314     keyword ; brightcyan
315     keyword $(*) brightgreen
316     keyword ${*} brightgreen
317     keyword { brightcyan
318     keyword } brightcyan
320     keyword $\* brightred
321     keyword $@ brightred
322     keyword $# brightred
323     keyword $? brightred
324     keyword $- brightred
325     keyword $$ brightred
326     keyword $! brightred
327     keyword $_ brightred
329     keyword whole 2>&1 brightred
330     keyword whole 2>   brightred
331     keyword whole 1>   brightred
333     keyword wholeright $\[0123456789\] brightred
335     keyword wholeright $+ brightgreen
337     keyword $ brightgreen
339 wholechars abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._
341     keyword whole break yellow
342     keyword whole case yellow
343     keyword whole clear         yellow
344     keyword whole continue yellow
345     keyword whole declare       yellow
346     keyword whole done yellow
347     keyword whole do yellow
348     keyword whole elif yellow
349     keyword whole else yellow
350     keyword whole esac yellow
351     keyword whole exit yellow
352     keyword whole export yellow
353     keyword whole fi yellow
354     keyword whole for yellow
355     keyword whole getopts       yellow
356     keyword whole if yellow
357     keyword whole in yellow
358     keyword whole read yellow
359     keyword whole return yellow
360     keyword whole select yellow
361     keyword whole shift yellow
362     keyword whole source        yellow
363     keyword whole then yellow
364     keyword whole trap yellow
365     keyword whole until yellow
366     keyword whole unset yellow
367     keyword whole wait          yellow
368     keyword whole while yellow
370 # here goes usable subset for .ebuild commands
371     keyword whole awk        cyan
372     keyword whole sed        cyan
374     keyword whole /dev/audio  brightblue
375     keyword whole /dev/dsp    brightblue
376     keyword whole /dev/null   brightblue
377     keyword whole /dev/mixed  brightblue
378     keyword whole /dev/stdin  brightblue
379     keyword whole /dev/stdout brightblue
380     keyword whole /dev/stderr brightblue
381     keyword whole /dev/zero   brightblue
383 context inherit \n magenta
384     keyword whole inherit yellow