Add built local::lib
[catagits/Gitalist.git] / local-lib5 / lib / perl5 / Syntax / Highlight / Engine / Kate / LilyPond.pm
1 # Copyright (c) 2005 - 2006 Hans Jeuken. All rights reserved.
2 # This program is free software; you can redistribute it and/or
3 # modify it under the same terms as Perl itself.
4
5 # This file was generated from the 'lilypond.xml' file of the syntax highlight
6 # engine of the kate text editor (http://www.kate-editor.org
7
8 #kate xml version 1.01
9 #kate version 2.3
10 #kate author Andrea Primiani (primiani@dag.it)
11 #generated: Sun Feb  3 22:02:05 2008, localtime
12
13 package Syntax::Highlight::Engine::Kate::LilyPond;
14
15 our $VERSION = '0.06';
16
17 use strict;
18 use warnings;
19 use base('Syntax::Highlight::Engine::Kate::Template');
20
21 sub new {
22    my $proto = shift;
23    my $class = ref($proto) || $proto;
24    my $self = $class->SUPER::new(@_);
25    $self->attributes({
26       'Bar' => 'Char',
27       'Chord' => 'BaseN',
28       'Comment' => 'Comment',
29       'Context' => 'DataType',
30       'Decoration' => 'Reserved',
31       'Drums' => 'RegionMarker',
32       'Dynamics' => 'BString',
33       'Header' => 'Float',
34       'Keyword' => 'Keyword',
35       'Lyrics' => 'DecVal',
36       'Normal Text' => 'Normal',
37       'Preprocessor' => 'IString',
38       'Repeat' => 'Operator',
39       'Sharp' => 'Others',
40       'Slur' => 'Variable',
41       'String' => 'String',
42       'Tuplet' => 'Float',
43    });
44    $self->listAdd('commands',
45       '\\\\clef',
46       '\\\\key',
47       '\\\\tempo',
48       '\\\\time',
49    );
50    $self->listAdd('repeats',
51       '"percent"',
52       '"tremolo"',
53       '\\\\alternative',
54       '\\\\repeat',
55       'unfold',
56       'volta',
57    );
58    $self->contextdata({
59       'Command' => {
60          callback => \&parseCommand,
61          attribute => 'Header',
62       },
63       'Comment' => {
64          callback => \&parseComment,
65          attribute => 'Comment',
66          lineending => '#pop',
67       },
68       'Context' => {
69          callback => \&parseContext,
70          attribute => 'Normal Text',
71       },
72       'Header' => {
73          callback => \&parseHeader,
74          attribute => 'Header',
75       },
76       'Keyword' => {
77          callback => \&parseKeyword,
78          attribute => 'Keyword',
79          lineending => '#pop',
80       },
81       'Lyrics' => {
82          callback => \&parseLyrics,
83          attribute => 'Lyrics',
84       },
85       'Normal' => {
86          callback => \&parseNormal,
87          attribute => 'Normal Text',
88       },
89       'Preprocessor' => {
90          callback => \&parsePreprocessor,
91          attribute => 'Preprocessor',
92          lineending => '#pop',
93       },
94       'Repeat' => {
95          callback => \&parseRepeat,
96          attribute => 'Normal Text',
97       },
98       'Slur' => {
99          callback => \&parseSlur,
100          attribute => 'Normal',
101       },
102    });
103    $self->deliminators('\\s||\\.|\\(|\\)|:|\\!|\\+|,|-|<|=|>|\\%|\\&|\\*|\\/|;|\\?|\\[|\\]|\\^|\\{|\\||\\}|\\~|\\\\');
104    $self->basecontext('Normal');
105    $self->keywordscase(1);
106    $self->initialize;
107    bless ($self, $class);
108    return $self;
109 }
110
111 sub language {
112    return 'LilyPond';
113 }
114
115 sub parseCommand {
116    my ($self, $text) = @_;
117    # attribute => 'Header'
118    # char => '('
119    # context => 'Command'
120    # type => 'DetectChar'
121    if ($self->testDetectChar($text, '(', 0, 0, 0, undef, 0, 'Command', 'Header')) {
122       return 1
123    }
124    # attribute => 'Header'
125    # char => ')'
126    # context => '#pop'
127    # endRegion => 'command'
128    # type => 'DetectChar'
129    if ($self->testDetectChar($text, ')', 0, 0, 0, undef, 0, '#pop', 'Header')) {
130       return 1
131    }
132    return 0;
133 };
134
135 sub parseComment {
136    my ($self, $text) = @_;
137    return 0;
138 };
139
140 sub parseContext {
141    my ($self, $text) = @_;
142    # attribute => 'Context'
143    # char => '>'
144    # char1 => '>'
145    # context => '#pop'
146    # endRegion => 'context'
147    # type => 'Detect2Chars'
148    if ($self->testDetect2Chars($text, '>', '>', 0, 0, 0, undef, 0, '#pop', 'Context')) {
149       return 1
150    }
151    return 0;
152 };
153
154 sub parseHeader {
155    my ($self, $text) = @_;
156    # attribute => 'Keyword'
157    # char => '}'
158    # context => '#pop'
159    # endRegion => 'header'
160    # type => 'DetectChar'
161    if ($self->testDetectChar($text, '}', 0, 0, 0, undef, 0, '#pop', 'Keyword')) {
162       return 1
163    }
164    return 0;
165 };
166
167 sub parseKeyword {
168    my ($self, $text) = @_;
169    return 0;
170 };
171
172 sub parseLyrics {
173    my ($self, $text) = @_;
174    # attribute => 'Comment'
175    # char => '%'
176    # context => 'Comment'
177    # type => 'DetectChar'
178    if ($self->testDetectChar($text, '%', 0, 0, 0, undef, 0, 'Comment', 'Comment')) {
179       return 1
180    }
181    # attribute => 'Lyrics'
182    # char => '}'
183    # context => '#pop'
184    # endRegion => 'lyrics'
185    # type => 'DetectChar'
186    if ($self->testDetectChar($text, '}', 0, 0, 0, undef, 0, '#pop', 'Lyrics')) {
187       return 1
188    }
189    return 0;
190 };
191
192 sub parseNormal {
193    my ($self, $text) = @_;
194    # String => 'repeats'
195    # attribute => 'Repeat'
196    # context => '#stay'
197    # type => 'keyword'
198    if ($self->testKeyword($text, 'repeats', 0, undef, 0, '#stay', 'Repeat')) {
199       return 1
200    }
201    # String => 'commands'
202    # attribute => 'Keyword'
203    # context => 'Keyword'
204    # type => 'keyword'
205    if ($self->testKeyword($text, 'commands', 0, undef, 0, 'Keyword', 'Keyword')) {
206       return 1
207    }
208    # String => '\addquote'
209    # attribute => 'Keyword'
210    # context => '#stay'
211    # type => 'StringDetect'
212    if ($self->testStringDetect($text, '\\addquote', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
213       return 1
214    }
215    # String => '\aeolian'
216    # attribute => 'Keyword'
217    # context => '#stay'
218    # type => 'StringDetect'
219    if ($self->testStringDetect($text, '\\aeolian', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
220       return 1
221    }
222    # String => '\applymusic'
223    # attribute => 'Keyword'
224    # context => '#stay'
225    # type => 'StringDetect'
226    if ($self->testStringDetect($text, '\\applymusic', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
227       return 1
228    }
229    # String => '\applyoutput'
230    # attribute => 'Keyword'
231    # context => '#stay'
232    # type => 'StringDetect'
233    if ($self->testStringDetect($text, '\\applyoutput', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
234       return 1
235    }
236    # String => '\autochange'
237    # attribute => 'Keyword'
238    # context => '#stay'
239    # type => 'StringDetect'
240    if ($self->testStringDetect($text, '\\autochange', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
241       return 1
242    }
243    # String => '\bar'
244    # attribute => 'Keyword'
245    # context => '#stay'
246    # type => 'StringDetect'
247    if ($self->testStringDetect($text, '\\bar', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
248       return 1
249    }
250    # String => '\bold'
251    # attribute => 'Keyword'
252    # context => '#stay'
253    # type => 'StringDetect'
254    if ($self->testStringDetect($text, '\\bold', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
255       return 1
256    }
257    # String => '\bookpaper'
258    # attribute => 'Keyword'
259    # context => '#stay'
260    # type => 'StringDetect'
261    if ($self->testStringDetect($text, '\\bookpaper', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
262       return 1
263    }
264    # String => '\book'
265    # attribute => 'Keyword'
266    # context => '#stay'
267    # type => 'StringDetect'
268    if ($self->testStringDetect($text, '\\book', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
269       return 1
270    }
271    # String => '\breathe'
272    # attribute => 'Keyword'
273    # context => '#stay'
274    # type => 'StringDetect'
275    if ($self->testStringDetect($text, '\\breathe', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
276       return 1
277    }
278    # String => '\breve '
279    # attribute => 'Keyword'
280    # context => '#stay'
281    # type => 'StringDetect'
282    if ($self->testStringDetect($text, '\\breve ', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
283       return 1
284    }
285    # String => '\cadenzaOff'
286    # attribute => 'Keyword'
287    # context => '#stay'
288    # type => 'StringDetect'
289    if ($self->testStringDetect($text, '\\cadenzaOff', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
290       return 1
291    }
292    # String => '\cadenzaOn'
293    # attribute => 'Keyword'
294    # context => '#stay'
295    # type => 'StringDetect'
296    if ($self->testStringDetect($text, '\\cadenzaOn', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
297       return 1
298    }
299    # String => '\change'
300    # attribute => 'Keyword'
301    # context => '#stay'
302    # type => 'StringDetect'
303    if ($self->testStringDetect($text, '\\change', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
304       return 1
305    }
306    # String => '\chords'
307    # attribute => 'Keyword'
308    # context => '#stay'
309    # type => 'StringDetect'
310    if ($self->testStringDetect($text, '\\chords', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
311       return 1
312    }
313    # String => '\column'
314    # attribute => 'Keyword'
315    # context => '#stay'
316    # type => 'StringDetect'
317    if ($self->testStringDetect($text, '\\column', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
318       return 1
319    }
320    # String => '\consists'
321    # attribute => 'Keyword'
322    # context => '#stay'
323    # type => 'StringDetect'
324    if ($self->testStringDetect($text, '\\consists', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
325       return 1
326    }
327    # String => '\context'
328    # attribute => 'Keyword'
329    # context => '#stay'
330    # type => 'StringDetect'
331    if ($self->testStringDetect($text, '\\context', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
332       return 1
333    }
334    # String => '\default'
335    # attribute => 'Keyword'
336    # context => '#stay'
337    # type => 'StringDetect'
338    if ($self->testStringDetect($text, '\\default', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
339       return 1
340    }
341    # String => '\dorian'
342    # attribute => 'Keyword'
343    # context => '#stay'
344    # type => 'StringDetect'
345    if ($self->testStringDetect($text, '\\dorian', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
346       return 1
347    }
348    # String => '\dotsBoth'
349    # attribute => 'Keyword'
350    # context => '#stay'
351    # type => 'StringDetect'
352    if ($self->testStringDetect($text, '\\dotsBoth', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
353       return 1
354    }
355    # String => '\dotsDown'
356    # attribute => 'Keyword'
357    # context => '#stay'
358    # type => 'StringDetect'
359    if ($self->testStringDetect($text, '\\dotsDown', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
360       return 1
361    }
362    # String => '\dotsUp'
363    # attribute => 'Keyword'
364    # context => '#stay'
365    # type => 'StringDetect'
366    if ($self->testStringDetect($text, '\\dotsUp', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
367       return 1
368    }
369    # String => '\drums'
370    # attribute => 'Keyword'
371    # context => '#stay'
372    # type => 'StringDetect'
373    if ($self->testStringDetect($text, '\\drums', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
374       return 1
375    }
376    # String => '\dynamicBoth'
377    # attribute => 'Keyword'
378    # context => '#stay'
379    # type => 'StringDetect'
380    if ($self->testStringDetect($text, '\\dynamicBoth', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
381       return 1
382    }
383    # String => '\dynamicDown'
384    # attribute => 'Keyword'
385    # context => '#stay'
386    # type => 'StringDetect'
387    if ($self->testStringDetect($text, '\\dynamicDown', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
388       return 1
389    }
390    # String => '\dynamicUp'
391    # attribute => 'Keyword'
392    # context => '#stay'
393    # type => 'StringDetect'
394    if ($self->testStringDetect($text, '\\dynamicUp', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
395       return 1
396    }
397    # String => '\emptyText'
398    # attribute => 'Keyword'
399    # context => '#stay'
400    # type => 'StringDetect'
401    if ($self->testStringDetect($text, '\\emptyText', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
402       return 1
403    }
404    # String => '\fatText'
405    # attribute => 'Keyword'
406    # context => '#stay'
407    # type => 'StringDetect'
408    if ($self->testStringDetect($text, '\\fatText', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
409       return 1
410    }
411    # String => '\figures'
412    # attribute => 'Keyword'
413    # context => '#stay'
414    # type => 'StringDetect'
415    if ($self->testStringDetect($text, '\\figures', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
416       return 1
417    }
418    # String => '\finger'
419    # attribute => 'Keyword'
420    # context => '#stay'
421    # type => 'StringDetect'
422    if ($self->testStringDetect($text, '\\finger', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
423       return 1
424    }
425    # String => '\flat'
426    # attribute => 'Keyword'
427    # context => '#stay'
428    # type => 'StringDetect'
429    if ($self->testStringDetect($text, '\\flat', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
430       return 1
431    }
432    # String => '\germanChords'
433    # attribute => 'Keyword'
434    # context => '#stay'
435    # type => 'StringDetect'
436    if ($self->testStringDetect($text, '\\germanChords', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
437       return 1
438    }
439    # String => '\include'
440    # attribute => 'Keyword'
441    # context => '#stay'
442    # type => 'StringDetect'
443    if ($self->testStringDetect($text, '\\include', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
444       return 1
445    }
446    # String => '\input'
447    # attribute => 'Keyword'
448    # context => '#stay'
449    # type => 'StringDetect'
450    if ($self->testStringDetect($text, '\\input', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
451       return 1
452    }
453    # String => '\italic'
454    # attribute => 'Keyword'
455    # context => '#stay'
456    # type => 'StringDetect'
457    if ($self->testStringDetect($text, '\\italic', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
458       return 1
459    }
460    # String => '\ionian'
461    # attribute => 'Keyword'
462    # context => '#stay'
463    # type => 'StringDetect'
464    if ($self->testStringDetect($text, '\\ionian', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
465       return 1
466    }
467    # String => '\locrian'
468    # attribute => 'Keyword'
469    # context => '#stay'
470    # type => 'StringDetect'
471    if ($self->testStringDetect($text, '\\locrian', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
472       return 1
473    }
474    # String => '\longa'
475    # attribute => 'Keyword'
476    # context => '#stay'
477    # type => 'StringDetect'
478    if ($self->testStringDetect($text, '\\longa', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
479       return 1
480    }
481    # String => '\lydian'
482    # attribute => 'Keyword'
483    # context => '#stay'
484    # type => 'StringDetect'
485    if ($self->testStringDetect($text, '\\lydian', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
486       return 1
487    }
488    # String => '\lyricsto'
489    # attribute => 'Keyword'
490    # context => '#stay'
491    # type => 'StringDetect'
492    if ($self->testStringDetect($text, '\\lyricsto', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
493       return 1
494    }
495    # String => '\major'
496    # attribute => 'Keyword'
497    # context => '#stay'
498    # type => 'StringDetect'
499    if ($self->testStringDetect($text, '\\major', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
500       return 1
501    }
502    # String => '\mark'
503    # attribute => 'Keyword'
504    # context => '#stay'
505    # type => 'StringDetect'
506    if ($self->testStringDetect($text, '\\mark', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
507       return 1
508    }
509    # String => '\markup'
510    # attribute => 'Keyword'
511    # context => '#stay'
512    # type => 'StringDetect'
513    if ($self->testStringDetect($text, '\\markup', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
514       return 1
515    }
516    # String => '\midi'
517    # attribute => 'Keyword'
518    # context => '#stay'
519    # type => 'StringDetect'
520    if ($self->testStringDetect($text, '\\midi', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
521       return 1
522    }
523    # String => '\minor'
524    # attribute => 'Keyword'
525    # context => '#stay'
526    # type => 'StringDetect'
527    if ($self->testStringDetect($text, '\\minor', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
528       return 1
529    }
530    # String => '\mixolydian'
531    # attribute => 'Keyword'
532    # context => '#stay'
533    # type => 'StringDetect'
534    if ($self->testStringDetect($text, '\\mixolydian', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
535       return 1
536    }
537    # String => '\musicglyph'
538    # attribute => 'Keyword'
539    # context => '#stay'
540    # type => 'StringDetect'
541    if ($self->testStringDetect($text, '\\musicglyph', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
542       return 1
543    }
544    # String => '\newlyrics'
545    # attribute => 'Keyword'
546    # context => '#stay'
547    # type => 'StringDetect'
548    if ($self->testStringDetect($text, '\\newlyrics', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
549       return 1
550    }
551    # String => '\new'
552    # attribute => 'Keyword'
553    # context => '#stay'
554    # type => 'StringDetect'
555    if ($self->testStringDetect($text, '\\new', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
556       return 1
557    }
558    # String => '\noBeam'
559    # attribute => 'Keyword'
560    # context => '#stay'
561    # type => 'StringDetect'
562    if ($self->testStringDetect($text, '\\noBeam', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
563       return 1
564    }
565    # String => '\notes'
566    # attribute => 'Keyword'
567    # context => '#stay'
568    # type => 'StringDetect'
569    if ($self->testStringDetect($text, '\\notes', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
570       return 1
571    }
572    # String => '\octave'
573    # attribute => 'Keyword'
574    # context => '#stay'
575    # type => 'StringDetect'
576    if ($self->testStringDetect($text, '\\octave', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
577       return 1
578    }
579    # String => '\once'
580    # attribute => 'Keyword'
581    # context => '#stay'
582    # type => 'StringDetect'
583    if ($self->testStringDetect($text, '\\once', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
584       return 1
585    }
586    # String => '\oneVoice'
587    # attribute => 'Keyword'
588    # context => '#stay'
589    # type => 'StringDetect'
590    if ($self->testStringDetect($text, '\\oneVoice', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
591       return 1
592    }
593    # String => '\override'
594    # attribute => 'Keyword'
595    # context => '#stay'
596    # type => 'StringDetect'
597    if ($self->testStringDetect($text, '\\override', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
598       return 1
599    }
600    # String => '\pageBreak'
601    # attribute => 'Keyword'
602    # context => '#stay'
603    # type => 'StringDetect'
604    if ($self->testStringDetect($text, '\\pageBreak', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
605       return 1
606    }
607    # String => '\paper'
608    # attribute => 'Keyword'
609    # context => '#stay'
610    # type => 'StringDetect'
611    if ($self->testStringDetect($text, '\\paper', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
612       return 1
613    }
614    # String => '\partcombine'
615    # attribute => 'Keyword'
616    # context => '#stay'
617    # type => 'StringDetect'
618    if ($self->testStringDetect($text, '\\partcombine', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
619       return 1
620    }
621    # String => '\partial'
622    # attribute => 'Keyword'
623    # context => '#stay'
624    # type => 'StringDetect'
625    if ($self->testStringDetect($text, '\\partial', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
626       return 1
627    }
628    # String => '\phrasingSlurBoth'
629    # attribute => 'Keyword'
630    # context => '#stay'
631    # type => 'StringDetect'
632    if ($self->testStringDetect($text, '\\phrasingSlurBoth', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
633       return 1
634    }
635    # String => '\phrasingSlurDown'
636    # attribute => 'Keyword'
637    # context => '#stay'
638    # type => 'StringDetect'
639    if ($self->testStringDetect($text, '\\phrasingSlurDown', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
640       return 1
641    }
642    # String => '\phrasingSlurUp'
643    # attribute => 'Keyword'
644    # context => '#stay'
645    # type => 'StringDetect'
646    if ($self->testStringDetect($text, '\\phrasingSlurUp', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
647       return 1
648    }
649    # String => '\phrigian'
650    # attribute => 'Keyword'
651    # context => '#stay'
652    # type => 'StringDetect'
653    if ($self->testStringDetect($text, '\\phrigian', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
654       return 1
655    }
656    # String => '\property'
657    # attribute => 'Keyword'
658    # context => '#stay'
659    # type => 'StringDetect'
660    if ($self->testStringDetect($text, '\\property', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
661       return 1
662    }
663    # String => '\quote'
664    # attribute => 'Keyword'
665    # context => '#stay'
666    # type => 'StringDetect'
667    if ($self->testStringDetect($text, '\\quote', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
668       return 1
669    }
670    # String => '\raise'
671    # attribute => 'Keyword'
672    # context => '#stay'
673    # type => 'StringDetect'
674    if ($self->testStringDetect($text, '\\raise', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
675       return 1
676    }
677    # String => '\relative'
678    # attribute => 'Keyword'
679    # context => '#stay'
680    # type => 'StringDetect'
681    if ($self->testStringDetect($text, '\\relative', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
682       return 1
683    }
684    # String => '\remove'
685    # attribute => 'Keyword'
686    # context => '#stay'
687    # type => 'StringDetect'
688    if ($self->testStringDetect($text, '\\remove', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
689       return 1
690    }
691    # String => '\renameinput'
692    # attribute => 'Keyword'
693    # context => '#stay'
694    # type => 'StringDetect'
695    if ($self->testStringDetect($text, '\\renameinput', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
696       return 1
697    }
698    # String => '\rest'
699    # attribute => 'Keyword'
700    # context => '#stay'
701    # type => 'StringDetect'
702    if ($self->testStringDetect($text, '\\rest', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
703       return 1
704    }
705    # String => '\revert'
706    # attribute => 'Keyword'
707    # context => '#stay'
708    # type => 'StringDetect'
709    if ($self->testStringDetect($text, '\\revert', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
710       return 1
711    }
712    # String => '\score'
713    # attribute => 'Keyword'
714    # context => '#stay'
715    # type => 'StringDetect'
716    if ($self->testStringDetect($text, '\\score', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
717       return 1
718    }
719    # String => '\scriptBoth'
720    # attribute => 'Keyword'
721    # context => '#stay'
722    # type => 'StringDetect'
723    if ($self->testStringDetect($text, '\\scriptBoth', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
724       return 1
725    }
726    # String => '\scriptDown'
727    # attribute => 'Keyword'
728    # context => '#stay'
729    # type => 'StringDetect'
730    if ($self->testStringDetect($text, '\\scriptDown', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
731       return 1
732    }
733    # String => '\scriptUp'
734    # attribute => 'Keyword'
735    # context => '#stay'
736    # type => 'StringDetect'
737    if ($self->testStringDetect($text, '\\scriptUp', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
738       return 1
739    }
740    # String => '\semiGermanChords'
741    # attribute => 'Keyword'
742    # context => '#stay'
743    # type => 'StringDetect'
744    if ($self->testStringDetect($text, '\\semiGermanChords', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
745       return 1
746    }
747    # String => '\setEasyHeads'
748    # attribute => 'Keyword'
749    # context => '#stay'
750    # type => 'StringDetect'
751    if ($self->testStringDetect($text, '\\setEasyHeads', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
752       return 1
753    }
754    # String => '\setHairpinCresc'
755    # attribute => 'Keyword'
756    # context => '#stay'
757    # type => 'StringDetect'
758    if ($self->testStringDetect($text, '\\setHairpinCresc', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
759       return 1
760    }
761    # String => '\setTextCresc'
762    # attribute => 'Keyword'
763    # context => '#stay'
764    # type => 'StringDetect'
765    if ($self->testStringDetect($text, '\\setTextCresc', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
766       return 1
767    }
768    # String => '\set'
769    # attribute => 'Keyword'
770    # context => '#stay'
771    # type => 'StringDetect'
772    if ($self->testStringDetect($text, '\\set', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
773       return 1
774    }
775    # String => '\shiftOff'
776    # attribute => 'Keyword'
777    # context => '#stay'
778    # type => 'StringDetect'
779    if ($self->testStringDetect($text, '\\shiftOff', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
780       return 1
781    }
782    # String => '\shiftOnnn'
783    # attribute => 'Keyword'
784    # context => '#stay'
785    # type => 'StringDetect'
786    if ($self->testStringDetect($text, '\\shiftOnnn', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
787       return 1
788    }
789    # String => '\shiftOnn'
790    # attribute => 'Keyword'
791    # context => '#stay'
792    # type => 'StringDetect'
793    if ($self->testStringDetect($text, '\\shiftOnn', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
794       return 1
795    }
796    # String => '\shiftOn'
797    # attribute => 'Keyword'
798    # context => '#stay'
799    # type => 'StringDetect'
800    if ($self->testStringDetect($text, '\\shiftOn', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
801       return 1
802    }
803    # String => '\simultaneous'
804    # attribute => 'Keyword'
805    # context => '#stay'
806    # type => 'StringDetect'
807    if ($self->testStringDetect($text, '\\simultaneous', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
808       return 1
809    }
810    # String => '\skip '
811    # attribute => 'Keyword'
812    # context => '#stay'
813    # type => 'StringDetect'
814    if ($self->testStringDetect($text, '\\skip ', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
815       return 1
816    }
817    # String => '\slurBoth'
818    # attribute => 'Keyword'
819    # context => '#stay'
820    # type => 'StringDetect'
821    if ($self->testStringDetect($text, '\\slurBoth', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
822       return 1
823    }
824    # String => '\slurDotted'
825    # attribute => 'Keyword'
826    # context => '#stay'
827    # type => 'StringDetect'
828    if ($self->testStringDetect($text, '\\slurDotted', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
829       return 1
830    }
831    # String => '\slurDown'
832    # attribute => 'Keyword'
833    # context => '#stay'
834    # type => 'StringDetect'
835    if ($self->testStringDetect($text, '\\slurDown', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
836       return 1
837    }
838    # String => '\slurSolid'
839    # attribute => 'Keyword'
840    # context => '#stay'
841    # type => 'StringDetect'
842    if ($self->testStringDetect($text, '\\slurSolid', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
843       return 1
844    }
845    # String => '\slurUp'
846    # attribute => 'Keyword'
847    # context => '#stay'
848    # type => 'StringDetect'
849    if ($self->testStringDetect($text, '\\slurUp', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
850       return 1
851    }
852    # String => '\smaller'
853    # attribute => 'Keyword'
854    # context => '#stay'
855    # type => 'StringDetect'
856    if ($self->testStringDetect($text, '\\smaller', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
857       return 1
858    }
859    # String => '\startGroup'
860    # attribute => 'Keyword'
861    # context => '#stay'
862    # type => 'StringDetect'
863    if ($self->testStringDetect($text, '\\startGroup', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
864       return 1
865    }
866    # String => '\startTextSpan'
867    # attribute => 'Keyword'
868    # context => '#stay'
869    # type => 'StringDetect'
870    if ($self->testStringDetect($text, '\\startTextSpan', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
871       return 1
872    }
873    # String => '\stemBoth'
874    # attribute => 'Keyword'
875    # context => '#stay'
876    # type => 'StringDetect'
877    if ($self->testStringDetect($text, '\\stemBoth', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
878       return 1
879    }
880    # String => '\stemDown'
881    # attribute => 'Keyword'
882    # context => '#stay'
883    # type => 'StringDetect'
884    if ($self->testStringDetect($text, '\\stemDown', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
885       return 1
886    }
887    # String => '\stemUp'
888    # attribute => 'Keyword'
889    # context => '#stay'
890    # type => 'StringDetect'
891    if ($self->testStringDetect($text, '\\stemUp', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
892       return 1
893    }
894    # String => '\stopGroup'
895    # attribute => 'Keyword'
896    # context => '#stay'
897    # type => 'StringDetect'
898    if ($self->testStringDetect($text, '\\stopGroup', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
899       return 1
900    }
901    # String => '\stopTextSpan'
902    # attribute => 'Keyword'
903    # context => '#stay'
904    # type => 'StringDetect'
905    if ($self->testStringDetect($text, '\\stopTextSpan', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
906       return 1
907    }
908    # String => '\tag'
909    # attribute => 'Keyword'
910    # context => '#stay'
911    # type => 'StringDetect'
912    if ($self->testStringDetect($text, '\\tag', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
913       return 1
914    }
915    # String => '\tempo'
916    # attribute => 'Keyword'
917    # context => '#stay'
918    # type => 'StringDetect'
919    if ($self->testStringDetect($text, '\\tempo', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
920       return 1
921    }
922    # String => '\thumb'
923    # attribute => 'Keyword'
924    # context => '#stay'
925    # type => 'StringDetect'
926    if ($self->testStringDetect($text, '\\thumb', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
927       return 1
928    }
929    # String => '\tieBoth'
930    # attribute => 'Keyword'
931    # context => '#stay'
932    # type => 'StringDetect'
933    if ($self->testStringDetect($text, '\\tieBoth', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
934       return 1
935    }
936    # String => '\tieDotted'
937    # attribute => 'Keyword'
938    # context => '#stay'
939    # type => 'StringDetect'
940    if ($self->testStringDetect($text, '\\tieDotted', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
941       return 1
942    }
943    # String => '\tieDown'
944    # attribute => 'Keyword'
945    # context => '#stay'
946    # type => 'StringDetect'
947    if ($self->testStringDetect($text, '\\tieDown', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
948       return 1
949    }
950    # String => '\tieSolid'
951    # attribute => 'Keyword'
952    # context => '#stay'
953    # type => 'StringDetect'
954    if ($self->testStringDetect($text, '\\tieSolid', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
955       return 1
956    }
957    # String => '\tieUp'
958    # attribute => 'Keyword'
959    # context => '#stay'
960    # type => 'StringDetect'
961    if ($self->testStringDetect($text, '\\tieUp', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
962       return 1
963    }
964    # String => '\transpose'
965    # attribute => 'Keyword'
966    # context => '#stay'
967    # type => 'StringDetect'
968    if ($self->testStringDetect($text, '\\transpose', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
969       return 1
970    }
971    # String => '\transposition'
972    # attribute => 'Keyword'
973    # context => '#stay'
974    # type => 'StringDetect'
975    if ($self->testStringDetect($text, '\\transposition', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
976       return 1
977    }
978    # String => '\tupletBoth'
979    # attribute => 'Keyword'
980    # context => '#stay'
981    # type => 'StringDetect'
982    if ($self->testStringDetect($text, '\\tupletBoth', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
983       return 1
984    }
985    # String => '\tupletDown'
986    # attribute => 'Keyword'
987    # context => '#stay'
988    # type => 'StringDetect'
989    if ($self->testStringDetect($text, '\\tupletDown', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
990       return 1
991    }
992    # String => '\tupletUp'
993    # attribute => 'Keyword'
994    # context => '#stay'
995    # type => 'StringDetect'
996    if ($self->testStringDetect($text, '\\tupletUp', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
997       return 1
998    }
999    # String => '\typewriter'
1000    # attribute => 'Keyword'
1001    # context => '#stay'
1002    # type => 'StringDetect'
1003    if ($self->testStringDetect($text, '\\typewriter', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
1004       return 1
1005    }
1006    # String => '\voiceFour'
1007    # attribute => 'Keyword'
1008    # context => '#stay'
1009    # type => 'StringDetect'
1010    if ($self->testStringDetect($text, '\\voiceFour', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
1011       return 1
1012    }
1013    # String => '\unset'
1014    # attribute => 'Keyword'
1015    # context => '#stay'
1016    # type => 'StringDetect'
1017    if ($self->testStringDetect($text, '\\unset', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
1018       return 1
1019    }
1020    # String => '\voiceOne'
1021    # attribute => 'Keyword'
1022    # context => '#stay'
1023    # type => 'StringDetect'
1024    if ($self->testStringDetect($text, '\\voiceOne', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
1025       return 1
1026    }
1027    # String => '\voiceThree'
1028    # attribute => 'Keyword'
1029    # context => '#stay'
1030    # type => 'StringDetect'
1031    if ($self->testStringDetect($text, '\\voiceThree', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
1032       return 1
1033    }
1034    # String => '\voiceTwo'
1035    # attribute => 'Keyword'
1036    # context => '#stay'
1037    # type => 'StringDetect'
1038    if ($self->testStringDetect($text, '\\voiceTwo', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
1039       return 1
1040    }
1041    # String => '\with'
1042    # attribute => 'Keyword'
1043    # context => '#stay'
1044    # type => 'StringDetect'
1045    if ($self->testStringDetect($text, '\\with', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
1046       return 1
1047    }
1048    # String => '\accento'
1049    # attribute => 'Decoration'
1050    # context => '#stay'
1051    # type => 'StringDetect'
1052    if ($self->testStringDetect($text, '\\accento', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1053       return 1
1054    }
1055    # String => '\acciaccatura'
1056    # attribute => 'Decoration'
1057    # context => '#stay'
1058    # type => 'StringDetect'
1059    if ($self->testStringDetect($text, '\\acciaccatura', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1060       return 1
1061    }
1062    # String => '\appoggiatura'
1063    # attribute => 'Decoration'
1064    # context => '#stay'
1065    # type => 'StringDetect'
1066    if ($self->testStringDetect($text, '\\appoggiatura', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1067       return 1
1068    }
1069    # String => '\arpeggioBoth'
1070    # attribute => 'Decoration'
1071    # context => '#stay'
1072    # type => 'StringDetect'
1073    if ($self->testStringDetect($text, '\\arpeggioBoth', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1074       return 1
1075    }
1076    # String => '\arpeggioBracket'
1077    # attribute => 'Decoration'
1078    # context => '#stay'
1079    # type => 'StringDetect'
1080    if ($self->testStringDetect($text, '\\arpeggioBracket', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1081       return 1
1082    }
1083    # String => '\arpeggioDown'
1084    # attribute => 'Decoration'
1085    # context => '#stay'
1086    # type => 'StringDetect'
1087    if ($self->testStringDetect($text, '\\arpeggioDown', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1088       return 1
1089    }
1090    # String => '\arpeggioUp'
1091    # attribute => 'Decoration'
1092    # context => '#stay'
1093    # type => 'StringDetect'
1094    if ($self->testStringDetect($text, '\\arpeggioUp', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1095       return 1
1096    }
1097    # String => '\arpeggio'
1098    # attribute => 'Decoration'
1099    # context => '#stay'
1100    # type => 'StringDetect'
1101    if ($self->testStringDetect($text, '\\arpeggio', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1102       return 1
1103    }
1104    # String => '\coda'
1105    # attribute => 'Decoration'
1106    # context => '#stay'
1107    # type => 'StringDetect'
1108    if ($self->testStringDetect($text, '\\coda', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1109       return 1
1110    }
1111    # String => '\downbow'
1112    # attribute => 'Decoration'
1113    # context => '#stay'
1114    # type => 'StringDetect'
1115    if ($self->testStringDetect($text, '\\downbow', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1116       return 1
1117    }
1118    # String => '\downmordent'
1119    # attribute => 'Decoration'
1120    # context => '#stay'
1121    # type => 'StringDetect'
1122    if ($self->testStringDetect($text, '\\downmordent', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1123       return 1
1124    }
1125    # String => '\downprall'
1126    # attribute => 'Decoration'
1127    # context => '#stay'
1128    # type => 'StringDetect'
1129    if ($self->testStringDetect($text, '\\downprall', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1130       return 1
1131    }
1132    # String => '\fermataMarkup'
1133    # attribute => 'Decoration'
1134    # context => '#stay'
1135    # type => 'StringDetect'
1136    if ($self->testStringDetect($text, '\\fermataMarkup', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1137       return 1
1138    }
1139    # String => '\fermata'
1140    # attribute => 'Decoration'
1141    # context => '#stay'
1142    # type => 'StringDetect'
1143    if ($self->testStringDetect($text, '\\fermata', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1144       return 1
1145    }
1146    # String => '\flageolet'
1147    # attribute => 'Decoration'
1148    # context => '#stay'
1149    # type => 'StringDetect'
1150    if ($self->testStringDetect($text, '\\flageolet', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1151       return 1
1152    }
1153    # String => '\glissando'
1154    # attribute => 'Decoration'
1155    # context => '#stay'
1156    # type => 'StringDetect'
1157    if ($self->testStringDetect($text, '\\glissando', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1158       return 1
1159    }
1160    # String => '\grace'
1161    # attribute => 'Decoration'
1162    # context => '#stay'
1163    # type => 'StringDetect'
1164    if ($self->testStringDetect($text, '\\grace', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1165       return 1
1166    }
1167    # String => '\harmonic'
1168    # attribute => 'Decoration'
1169    # context => '#stay'
1170    # type => 'StringDetect'
1171    if ($self->testStringDetect($text, '\\harmonic', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1172       return 1
1173    }
1174    # String => '\lheel'
1175    # attribute => 'Decoration'
1176    # context => '#stay'
1177    # type => 'StringDetect'
1178    if ($self->testStringDetect($text, '\\lheel', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1179       return 1
1180    }
1181    # String => '\lineprall'
1182    # attribute => 'Decoration'
1183    # context => '#stay'
1184    # type => 'StringDetect'
1185    if ($self->testStringDetect($text, '\\lineprall', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1186       return 1
1187    }
1188    # String => '\longfermata'
1189    # attribute => 'Decoration'
1190    # context => '#stay'
1191    # type => 'StringDetect'
1192    if ($self->testStringDetect($text, '\\longfermata', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1193       return 1
1194    }
1195    # String => '\ltoe'
1196    # attribute => 'Decoration'
1197    # context => '#stay'
1198    # type => 'StringDetect'
1199    if ($self->testStringDetect($text, '\\ltoe', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1200       return 1
1201    }
1202    # String => '\melismaEnd'
1203    # attribute => 'Decoration'
1204    # context => '#stay'
1205    # type => 'StringDetect'
1206    if ($self->testStringDetect($text, '\\melismaEnd', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1207       return 1
1208    }
1209    # String => '\melisma'
1210    # attribute => 'Decoration'
1211    # context => '#stay'
1212    # type => 'StringDetect'
1213    if ($self->testStringDetect($text, '\\melisma', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1214       return 1
1215    }
1216    # String => '\mordent'
1217    # attribute => 'Decoration'
1218    # context => '#stay'
1219    # type => 'StringDetect'
1220    if ($self->testStringDetect($text, '\\mordent', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1221       return 1
1222    }
1223    # String => '\open'
1224    # attribute => 'Decoration'
1225    # context => '#stay'
1226    # type => 'StringDetect'
1227    if ($self->testStringDetect($text, '\\open', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1228       return 1
1229    }
1230    # String => '\portato'
1231    # attribute => 'Decoration'
1232    # context => '#stay'
1233    # type => 'StringDetect'
1234    if ($self->testStringDetect($text, '\\portato', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1235       return 1
1236    }
1237    # String => '\prall'
1238    # attribute => 'Decoration'
1239    # context => '#stay'
1240    # type => 'StringDetect'
1241    if ($self->testStringDetect($text, '\\prall', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1242       return 1
1243    }
1244    # String => '\pralldown'
1245    # attribute => 'Decoration'
1246    # context => '#stay'
1247    # type => 'StringDetect'
1248    if ($self->testStringDetect($text, '\\pralldown', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1249       return 1
1250    }
1251    # String => '\prallmordent'
1252    # attribute => 'Decoration'
1253    # context => '#stay'
1254    # type => 'StringDetect'
1255    if ($self->testStringDetect($text, '\\prallmordent', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1256       return 1
1257    }
1258    # String => '\prallprall'
1259    # attribute => 'Decoration'
1260    # context => '#stay'
1261    # type => 'StringDetect'
1262    if ($self->testStringDetect($text, '\\prallprall', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1263       return 1
1264    }
1265    # String => '\prallup'
1266    # attribute => 'Decoration'
1267    # context => '#stay'
1268    # type => 'StringDetect'
1269    if ($self->testStringDetect($text, '\\prallup', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1270       return 1
1271    }
1272    # String => '\reverseturn'
1273    # attribute => 'Decoration'
1274    # context => '#stay'
1275    # type => 'StringDetect'
1276    if ($self->testStringDetect($text, '\\reverseturn', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1277       return 1
1278    }
1279    # String => '\rheel'
1280    # attribute => 'Decoration'
1281    # context => '#stay'
1282    # type => 'StringDetect'
1283    if ($self->testStringDetect($text, '\\rheel', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1284       return 1
1285    }
1286    # String => '\rtoe'
1287    # attribute => 'Decoration'
1288    # context => '#stay'
1289    # type => 'StringDetect'
1290    if ($self->testStringDetect($text, '\\rtoe', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1291       return 1
1292    }
1293    # String => '\segno'
1294    # attribute => 'Decoration'
1295    # context => '#stay'
1296    # type => 'StringDetect'
1297    if ($self->testStringDetect($text, '\\segno', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1298       return 1
1299    }
1300    # String => '\shortfermata'
1301    # attribute => 'Decoration'
1302    # context => '#stay'
1303    # type => 'StringDetect'
1304    if ($self->testStringDetect($text, '\\shortfermata', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1305       return 1
1306    }
1307    # String => '\signumcongruentiae'
1308    # attribute => 'Decoration'
1309    # context => '#stay'
1310    # type => 'StringDetect'
1311    if ($self->testStringDetect($text, '\\signumcongruentiae', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1312       return 1
1313    }
1314    # String => '\sostenutoDown'
1315    # attribute => 'Decoration'
1316    # context => '#stay'
1317    # type => 'StringDetect'
1318    if ($self->testStringDetect($text, '\\sostenutoDown', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1319       return 1
1320    }
1321    # String => '\sostenutoUp'
1322    # attribute => 'Decoration'
1323    # context => '#stay'
1324    # type => 'StringDetect'
1325    if ($self->testStringDetect($text, '\\sostenutoUp', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1326       return 1
1327    }
1328    # String => '\staccatissimo'
1329    # attribute => 'Decoration'
1330    # context => '#stay'
1331    # type => 'StringDetect'
1332    if ($self->testStringDetect($text, '\\staccatissimo', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1333       return 1
1334    }
1335    # String => '\staccato'
1336    # attribute => 'Decoration'
1337    # context => '#stay'
1338    # type => 'StringDetect'
1339    if ($self->testStringDetect($text, '\\staccato', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1340       return 1
1341    }
1342    # String => '\stopped'
1343    # attribute => 'Decoration'
1344    # context => '#stay'
1345    # type => 'StringDetect'
1346    if ($self->testStringDetect($text, '\\stopped', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1347       return 1
1348    }
1349    # String => '\sustainDown'
1350    # attribute => 'Decoration'
1351    # context => '#stay'
1352    # type => 'StringDetect'
1353    if ($self->testStringDetect($text, '\\sustainDown', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1354       return 1
1355    }
1356    # String => '\sustainUp'
1357    # attribute => 'Decoration'
1358    # context => '#stay'
1359    # type => 'StringDetect'
1360    if ($self->testStringDetect($text, '\\sustainUp', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1361       return 1
1362    }
1363    # String => '\tenuto'
1364    # attribute => 'Decoration'
1365    # context => '#stay'
1366    # type => 'StringDetect'
1367    if ($self->testStringDetect($text, '\\tenuto', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1368       return 1
1369    }
1370    # String => '\thumb'
1371    # attribute => 'Decoration'
1372    # context => '#stay'
1373    # type => 'StringDetect'
1374    if ($self->testStringDetect($text, '\\thumb', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1375       return 1
1376    }
1377    # String => '\trill'
1378    # attribute => 'Decoration'
1379    # context => '#stay'
1380    # type => 'StringDetect'
1381    if ($self->testStringDetect($text, '\\trill', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1382       return 1
1383    }
1384    # String => '\turn'
1385    # attribute => 'Decoration'
1386    # context => '#stay'
1387    # type => 'StringDetect'
1388    if ($self->testStringDetect($text, '\\turn', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1389       return 1
1390    }
1391    # String => '\upbow'
1392    # attribute => 'Decoration'
1393    # context => '#stay'
1394    # type => 'StringDetect'
1395    if ($self->testStringDetect($text, '\\upbow', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1396       return 1
1397    }
1398    # String => '\upmordent'
1399    # attribute => 'Decoration'
1400    # context => '#stay'
1401    # type => 'StringDetect'
1402    if ($self->testStringDetect($text, '\\upmordent', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1403       return 1
1404    }
1405    # String => '\upprall'
1406    # attribute => 'Decoration'
1407    # context => '#stay'
1408    # type => 'StringDetect'
1409    if ($self->testStringDetect($text, '\\upprall', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1410       return 1
1411    }
1412    # String => '\varcoda'
1413    # attribute => 'Decoration'
1414    # context => '#stay'
1415    # type => 'StringDetect'
1416    if ($self->testStringDetect($text, '\\varcoda', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1417       return 1
1418    }
1419    # String => '\verylongfermata'
1420    # attribute => 'Decoration'
1421    # context => '#stay'
1422    # type => 'StringDetect'
1423    if ($self->testStringDetect($text, '\\verylongfermata', 0, 0, 0, undef, 0, '#stay', 'Decoration')) {
1424       return 1
1425    }
1426    # String => ' hihat'
1427    # attribute => 'Drums'
1428    # context => '#stay'
1429    # type => 'StringDetect'
1430    if ($self->testStringDetect($text, ' hihat', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1431       return 1
1432    }
1433    # String => ' snaredrum'
1434    # attribute => 'Drums'
1435    # context => '#stay'
1436    # type => 'StringDetect'
1437    if ($self->testStringDetect($text, ' snaredrum', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1438       return 1
1439    }
1440    # String => ' crashcymbal'
1441    # attribute => 'Drums'
1442    # context => '#stay'
1443    # type => 'StringDetect'
1444    if ($self->testStringDetect($text, ' crashcymbal', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1445       return 1
1446    }
1447    # String => ' openhihat'
1448    # attribute => 'Drums'
1449    # context => '#stay'
1450    # type => 'StringDetect'
1451    if ($self->testStringDetect($text, ' openhihat', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1452       return 1
1453    }
1454    # String => ' halfopenhihat'
1455    # attribute => 'Drums'
1456    # context => '#stay'
1457    # type => 'StringDetect'
1458    if ($self->testStringDetect($text, ' halfopenhihat', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1459       return 1
1460    }
1461    # String => ' closedhihat'
1462    # attribute => 'Drums'
1463    # context => '#stay'
1464    # type => 'StringDetect'
1465    if ($self->testStringDetect($text, ' closedhihat', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1466       return 1
1467    }
1468    # String => ' bassdrum'
1469    # attribute => 'Drums'
1470    # context => '#stay'
1471    # type => 'StringDetect'
1472    if ($self->testStringDetect($text, ' bassdrum', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1473       return 1
1474    }
1475    # String => ' snare'
1476    # attribute => 'Drums'
1477    # context => '#stay'
1478    # type => 'StringDetect'
1479    if ($self->testStringDetect($text, ' snare', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1480       return 1
1481    }
1482    # String => ' bd'
1483    # attribute => 'Drums'
1484    # context => '#stay'
1485    # type => 'StringDetect'
1486    if ($self->testStringDetect($text, ' bd', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1487       return 1
1488    }
1489    # String => ' sn'
1490    # attribute => 'Drums'
1491    # context => '#stay'
1492    # type => 'StringDetect'
1493    if ($self->testStringDetect($text, ' sn', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1494       return 1
1495    }
1496    # String => ' cymc'
1497    # attribute => 'Drums'
1498    # context => '#stay'
1499    # type => 'StringDetect'
1500    if ($self->testStringDetect($text, ' cymc', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1501       return 1
1502    }
1503    # String => ' cyms'
1504    # attribute => 'Drums'
1505    # context => '#stay'
1506    # type => 'StringDetect'
1507    if ($self->testStringDetect($text, ' cyms', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1508       return 1
1509    }
1510    # String => ' cymr'
1511    # attribute => 'Drums'
1512    # context => '#stay'
1513    # type => 'StringDetect'
1514    if ($self->testStringDetect($text, ' cymr', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1515       return 1
1516    }
1517    # String => ' hhho'
1518    # attribute => 'Drums'
1519    # context => '#stay'
1520    # type => 'StringDetect'
1521    if ($self->testStringDetect($text, ' hhho', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1522       return 1
1523    }
1524    # String => ' hhc'
1525    # attribute => 'Drums'
1526    # context => '#stay'
1527    # type => 'StringDetect'
1528    if ($self->testStringDetect($text, ' hhc', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1529       return 1
1530    }
1531    # String => ' hho'
1532    # attribute => 'Drums'
1533    # context => '#stay'
1534    # type => 'StringDetect'
1535    if ($self->testStringDetect($text, ' hho', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1536       return 1
1537    }
1538    # String => ' hhp'
1539    # attribute => 'Drums'
1540    # context => '#stay'
1541    # type => 'StringDetect'
1542    if ($self->testStringDetect($text, ' hhp', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1543       return 1
1544    }
1545    # String => ' hh'
1546    # attribute => 'Drums'
1547    # context => '#stay'
1548    # type => 'StringDetect'
1549    if ($self->testStringDetect($text, ' hh', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1550       return 1
1551    }
1552    # String => ' cb'
1553    # attribute => 'Drums'
1554    # context => '#stay'
1555    # type => 'StringDetect'
1556    if ($self->testStringDetect($text, ' cb', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1557       return 1
1558    }
1559    # String => ' hc'
1560    # attribute => 'Drums'
1561    # context => '#stay'
1562    # type => 'StringDetect'
1563    if ($self->testStringDetect($text, ' hc', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1564       return 1
1565    }
1566    # String => ' ssl'
1567    # attribute => 'Drums'
1568    # context => '#stay'
1569    # type => 'StringDetect'
1570    if ($self->testStringDetect($text, ' ssl', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1571       return 1
1572    }
1573    # String => ' ssh'
1574    # attribute => 'Drums'
1575    # context => '#stay'
1576    # type => 'StringDetect'
1577    if ($self->testStringDetect($text, ' ssh', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1578       return 1
1579    }
1580    # String => ' ss'
1581    # attribute => 'Drums'
1582    # context => '#stay'
1583    # type => 'StringDetect'
1584    if ($self->testStringDetect($text, ' ss', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1585       return 1
1586    }
1587    # String => ' tommmh'
1588    # attribute => 'Drums'
1589    # context => '#stay'
1590    # type => 'StringDetect'
1591    if ($self->testStringDetect($text, ' tommmh', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1592       return 1
1593    }
1594    # String => ' tommh'
1595    # attribute => 'Drums'
1596    # context => '#stay'
1597    # type => 'StringDetect'
1598    if ($self->testStringDetect($text, ' tommh', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1599       return 1
1600    }
1601    # String => ' tomh'
1602    # attribute => 'Drums'
1603    # context => '#stay'
1604    # type => 'StringDetect'
1605    if ($self->testStringDetect($text, ' tomh', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1606       return 1
1607    }
1608    # String => ' toml'
1609    # attribute => 'Drums'
1610    # context => '#stay'
1611    # type => 'StringDetect'
1612    if ($self->testStringDetect($text, ' toml', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1613       return 1
1614    }
1615    # String => ' tomfh'
1616    # attribute => 'Drums'
1617    # context => '#stay'
1618    # type => 'StringDetect'
1619    if ($self->testStringDetect($text, ' tomfh', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1620       return 1
1621    }
1622    # String => ' tomfl'
1623    # attribute => 'Drums'
1624    # context => '#stay'
1625    # type => 'StringDetect'
1626    if ($self->testStringDetect($text, ' tomfl', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1627       return 1
1628    }
1629    # String => ' timh'
1630    # attribute => 'Drums'
1631    # context => '#stay'
1632    # type => 'StringDetect'
1633    if ($self->testStringDetect($text, ' timh', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1634       return 1
1635    }
1636    # String => ' timl'
1637    # attribute => 'Drums'
1638    # context => '#stay'
1639    # type => 'StringDetect'
1640    if ($self->testStringDetect($text, ' timl', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1641       return 1
1642    }
1643    # String => ' cgho'
1644    # attribute => 'Drums'
1645    # context => '#stay'
1646    # type => 'StringDetect'
1647    if ($self->testStringDetect($text, ' cgho', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1648       return 1
1649    }
1650    # String => ' cghm'
1651    # attribute => 'Drums'
1652    # context => '#stay'
1653    # type => 'StringDetect'
1654    if ($self->testStringDetect($text, ' cghm', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1655       return 1
1656    }
1657    # String => ' cgh'
1658    # attribute => 'Drums'
1659    # context => '#stay'
1660    # type => 'StringDetect'
1661    if ($self->testStringDetect($text, ' cgh', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1662       return 1
1663    }
1664    # String => ' cglo'
1665    # attribute => 'Drums'
1666    # context => '#stay'
1667    # type => 'StringDetect'
1668    if ($self->testStringDetect($text, ' cglo', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1669       return 1
1670    }
1671    # String => ' cglm'
1672    # attribute => 'Drums'
1673    # context => '#stay'
1674    # type => 'StringDetect'
1675    if ($self->testStringDetect($text, ' cglm', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1676       return 1
1677    }
1678    # String => ' cgl'
1679    # attribute => 'Drums'
1680    # context => '#stay'
1681    # type => 'StringDetect'
1682    if ($self->testStringDetect($text, ' cgl', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1683       return 1
1684    }
1685    # String => ' boho'
1686    # attribute => 'Drums'
1687    # context => '#stay'
1688    # type => 'StringDetect'
1689    if ($self->testStringDetect($text, ' boho', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1690       return 1
1691    }
1692    # String => ' bohm'
1693    # attribute => 'Drums'
1694    # context => '#stay'
1695    # type => 'StringDetect'
1696    if ($self->testStringDetect($text, ' bohm', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1697       return 1
1698    }
1699    # String => ' boh'
1700    # attribute => 'Drums'
1701    # context => '#stay'
1702    # type => 'StringDetect'
1703    if ($self->testStringDetect($text, ' boh', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1704       return 1
1705    }
1706    # String => ' bolo'
1707    # attribute => 'Drums'
1708    # context => '#stay'
1709    # type => 'StringDetect'
1710    if ($self->testStringDetect($text, ' bolo', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1711       return 1
1712    }
1713    # String => ' bolm'
1714    # attribute => 'Drums'
1715    # context => '#stay'
1716    # type => 'StringDetect'
1717    if ($self->testStringDetect($text, ' bolm', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1718       return 1
1719    }
1720    # String => ' bol'
1721    # attribute => 'Drums'
1722    # context => '#stay'
1723    # type => 'StringDetect'
1724    if ($self->testStringDetect($text, ' bol', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1725       return 1
1726    }
1727    # String => ' trio'
1728    # attribute => 'Drums'
1729    # context => '#stay'
1730    # type => 'StringDetect'
1731    if ($self->testStringDetect($text, ' trio', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1732       return 1
1733    }
1734    # String => ' trim'
1735    # attribute => 'Drums'
1736    # context => '#stay'
1737    # type => 'StringDetect'
1738    if ($self->testStringDetect($text, ' trim', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1739       return 1
1740    }
1741    # String => ' tri'
1742    # attribute => 'Drums'
1743    # context => '#stay'
1744    # type => 'StringDetect'
1745    if ($self->testStringDetect($text, ' tri', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1746       return 1
1747    }
1748    # String => ' guis'
1749    # attribute => 'Drums'
1750    # context => '#stay'
1751    # type => 'StringDetect'
1752    if ($self->testStringDetect($text, ' guis', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1753       return 1
1754    }
1755    # String => ' guil'
1756    # attribute => 'Drums'
1757    # context => '#stay'
1758    # type => 'StringDetect'
1759    if ($self->testStringDetect($text, ' guil', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1760       return 1
1761    }
1762    # String => ' gui'
1763    # attribute => 'Drums'
1764    # context => '#stay'
1765    # type => 'StringDetect'
1766    if ($self->testStringDetect($text, ' gui', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1767       return 1
1768    }
1769    # String => ' cl'
1770    # attribute => 'Drums'
1771    # context => '#stay'
1772    # type => 'StringDetect'
1773    if ($self->testStringDetect($text, ' cl', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1774       return 1
1775    }
1776    # String => ' tamb'
1777    # attribute => 'Drums'
1778    # context => '#stay'
1779    # type => 'StringDetect'
1780    if ($self->testStringDetect($text, ' tamb', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1781       return 1
1782    }
1783    # String => ' cab'
1784    # attribute => 'Drums'
1785    # context => '#stay'
1786    # type => 'StringDetect'
1787    if ($self->testStringDetect($text, ' cab', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1788       return 1
1789    }
1790    # String => ' mar'
1791    # attribute => 'Drums'
1792    # context => '#stay'
1793    # type => 'StringDetect'
1794    if ($self->testStringDetect($text, ' mar', 0, 0, 0, undef, 0, '#stay', 'Drums')) {
1795       return 1
1796    }
1797    # String => '\\times [1-9]?/[1-9]?'
1798    # attribute => 'Tuplet'
1799    # context => '#pop'
1800    # type => 'RegExpr'
1801    if ($self->testRegExpr($text, '\\\\times [1-9]?/[1-9]?', 0, 0, 0, undef, 0, '#pop', 'Tuplet')) {
1802       return 1
1803    }
1804    # String => '\lyrics {'
1805    # attribute => 'Lyrics'
1806    # beginRegion => 'lyrics'
1807    # context => 'Lyrics'
1808    # type => 'StringDetect'
1809    if ($self->testStringDetect($text, '\\lyrics {', 0, 0, 0, undef, 0, 'Lyrics', 'Lyrics')) {
1810       return 1
1811    }
1812    # String => '\newlyrics {'
1813    # attribute => 'Lyrics'
1814    # beginRegion => 'lyrics'
1815    # context => 'Lyrics'
1816    # type => 'StringDetect'
1817    if ($self->testStringDetect($text, '\\newlyrics {', 0, 0, 0, undef, 0, 'Lyrics', 'Lyrics')) {
1818       return 1
1819    }
1820    # String => '\\header\s*{'
1821    # attribute => 'Keyword'
1822    # beginRegion => 'header'
1823    # context => 'Header'
1824    # type => 'RegExpr'
1825    if ($self->testRegExpr($text, '\\\\header\\s*{', 0, 0, 0, undef, 0, 'Header', 'Keyword')) {
1826       return 1
1827    }
1828    # attribute => 'String'
1829    # char => '"'
1830    # char1 => '"'
1831    # context => '#stay'
1832    # type => 'RangeDetect'
1833    if ($self->testRangeDetect($text, '"', '"', 0, 0, undef, 0, '#stay', 'String')) {
1834       return 1
1835    }
1836    # attribute => 'Chord'
1837    # char => '{'
1838    # context => '#stay'
1839    # type => 'DetectChar'
1840    if ($self->testDetectChar($text, '{', 0, 0, 0, undef, 0, '#stay', 'Chord')) {
1841       return 1
1842    }
1843    # attribute => 'Chord'
1844    # char => '}'
1845    # context => '#stay'
1846    # type => 'DetectChar'
1847    if ($self->testDetectChar($text, '}', 0, 0, 0, undef, 0, '#stay', 'Chord')) {
1848       return 1
1849    }
1850    # attribute => 'Chord'
1851    # char => '['
1852    # context => '#stay'
1853    # type => 'DetectChar'
1854    if ($self->testDetectChar($text, '[', 0, 0, 0, undef, 0, '#stay', 'Chord')) {
1855       return 1
1856    }
1857    # attribute => 'Chord'
1858    # char => ']'
1859    # context => '#stay'
1860    # type => 'DetectChar'
1861    if ($self->testDetectChar($text, ']', 0, 0, 0, undef, 0, '#stay', 'Chord')) {
1862       return 1
1863    }
1864    # attribute => 'Chord'
1865    # char => '<'
1866    # context => '#stay'
1867    # type => 'DetectChar'
1868    if ($self->testDetectChar($text, '<', 0, 0, 0, undef, 0, '#stay', 'Chord')) {
1869       return 1
1870    }
1871    # attribute => 'Chord'
1872    # char => '>'
1873    # context => '#stay'
1874    # type => 'DetectChar'
1875    if ($self->testDetectChar($text, '>', 0, 0, 0, undef, 0, '#stay', 'Chord')) {
1876       return 1
1877    }
1878    # attribute => 'Header'
1879    # beginRegion => 'command'
1880    # char => '#'
1881    # char1 => '('
1882    # context => 'Command'
1883    # type => 'Detect2Chars'
1884    if ($self->testDetect2Chars($text, '#', '(', 0, 0, 0, undef, 0, 'Command', 'Header')) {
1885       return 1
1886    }
1887    # attribute => 'Context'
1888    # beginRegion => 'context'
1889    # char => '<'
1890    # char1 => '<'
1891    # context => '#stay'
1892    # type => 'Detect2Chars'
1893    if ($self->testDetect2Chars($text, '<', '<', 0, 0, 0, undef, 0, '#stay', 'Context')) {
1894       return 1
1895    }
1896    # attribute => 'Context'
1897    # char => '>'
1898    # char1 => '>'
1899    # context => '#stay'
1900    # endRegion => 'context'
1901    # type => 'Detect2Chars'
1902    if ($self->testDetect2Chars($text, '>', '>', 0, 0, 0, undef, 0, '#stay', 'Context')) {
1903       return 1
1904    }
1905    # attribute => 'Chord'
1906    # char => '~'
1907    # context => '#stay'
1908    # type => 'DetectChar'
1909    if ($self->testDetectChar($text, '~', 0, 0, 0, undef, 0, '#stay', 'Chord')) {
1910       return 1
1911    }
1912    # attribute => 'Bar'
1913    # char => '|'
1914    # context => '#stay'
1915    # type => 'DetectChar'
1916    if ($self->testDetectChar($text, '|', 0, 0, 0, undef, 0, '#stay', 'Bar')) {
1917       return 1
1918    }
1919    # String => '[1-9]+:[1-9]+\b'
1920    # attribute => 'Repeat'
1921    # context => '#stay'
1922    # type => 'RegExpr'
1923    if ($self->testRegExpr($text, '[1-9]+:[1-9]+\\b', 0, 0, 0, undef, 0, '#stay', 'Repeat')) {
1924       return 1
1925    }
1926    # String => '\\?\('
1927    # attribute => 'Slur'
1928    # context => '#stay'
1929    # type => 'RegExpr'
1930    if ($self->testRegExpr($text, '\\\\?\\(', 0, 0, 0, undef, 0, '#stay', 'Slur')) {
1931       return 1
1932    }
1933    # String => '\\?\)'
1934    # attribute => 'Slur'
1935    # context => '#stay'
1936    # type => 'RegExpr'
1937    if ($self->testRegExpr($text, '\\\\?\\)', 0, 0, 0, undef, 0, '#stay', 'Slur')) {
1938       return 1
1939    }
1940    # String => '\\fff\b'
1941    # attribute => 'Dynamics'
1942    # context => '#stay'
1943    # type => 'RegExpr'
1944    if ($self->testRegExpr($text, '\\\\fff\\b', 0, 0, 0, undef, 0, '#stay', 'Dynamics')) {
1945       return 1
1946    }
1947    # String => '\\ff\b'
1948    # attribute => 'Dynamics'
1949    # context => '#stay'
1950    # type => 'RegExpr'
1951    if ($self->testRegExpr($text, '\\\\ff\\b', 0, 0, 0, undef, 0, '#stay', 'Dynamics')) {
1952       return 1
1953    }
1954    # String => '\\ppp\b'
1955    # attribute => 'Dynamics'
1956    # context => '#stay'
1957    # type => 'RegExpr'
1958    if ($self->testRegExpr($text, '\\\\ppp\\b', 0, 0, 0, undef, 0, '#stay', 'Dynamics')) {
1959       return 1
1960    }
1961    # String => '\\pp\b'
1962    # attribute => 'Dynamics'
1963    # context => '#stay'
1964    # type => 'RegExpr'
1965    if ($self->testRegExpr($text, '\\\\pp\\b', 0, 0, 0, undef, 0, '#stay', 'Dynamics')) {
1966       return 1
1967    }
1968    # String => '\\m?[f|p]\b'
1969    # attribute => 'Dynamics'
1970    # context => '#stay'
1971    # type => 'RegExpr'
1972    if ($self->testRegExpr($text, '\\\\m?[f|p]\\b', 0, 0, 0, undef, 0, '#stay', 'Dynamics')) {
1973       return 1
1974    }
1975    # String => '\\[s|r]fz?\b'
1976    # attribute => 'Dynamics'
1977    # context => '#stay'
1978    # type => 'RegExpr'
1979    if ($self->testRegExpr($text, '\\\\[s|r]fz?\\b', 0, 0, 0, undef, 0, '#stay', 'Dynamics')) {
1980       return 1
1981    }
1982    # String => '_[_.\|+>^-]\b?'
1983    # attribute => 'Dynamics'
1984    # context => '#stay'
1985    # type => 'RegExpr'
1986    if ($self->testRegExpr($text, '_[_.\\|+>^-]\\b?', 0, 0, 0, undef, 0, '#stay', 'Dynamics')) {
1987       return 1
1988    }
1989    # String => '\^[_.\|+>^-]\b?'
1990    # attribute => 'Dynamics'
1991    # context => '#stay'
1992    # type => 'RegExpr'
1993    if ($self->testRegExpr($text, '\\^[_.\\|+>^-]\\b?', 0, 0, 0, undef, 0, '#stay', 'Dynamics')) {
1994       return 1
1995    }
1996    # String => '-[_.\|+>^-]\b?'
1997    # attribute => 'Dynamics'
1998    # context => '#stay'
1999    # type => 'RegExpr'
2000    if ($self->testRegExpr($text, '-[_.\\|+>^-]\\b?', 0, 0, 0, undef, 0, '#stay', 'Dynamics')) {
2001       return 1
2002    }
2003    # attribute => 'Dynamics'
2004    # char => '\'
2005    # char1 => '<'
2006    # context => '#stay'
2007    # type => 'Detect2Chars'
2008    if ($self->testDetect2Chars($text, '\\', '<', 0, 0, 0, undef, 0, '#stay', 'Dynamics')) {
2009       return 1
2010    }
2011    # attribute => 'Dynamics'
2012    # char => '\'
2013    # char1 => '>'
2014    # context => '#stay'
2015    # type => 'Detect2Chars'
2016    if ($self->testDetect2Chars($text, '\\', '>', 0, 0, 0, undef, 0, '#stay', 'Dynamics')) {
2017       return 1
2018    }
2019    # attribute => 'Dynamics'
2020    # char => '\'
2021    # char1 => '!'
2022    # context => '#stay'
2023    # type => 'Detect2Chars'
2024    if ($self->testDetect2Chars($text, '\\', '!', 0, 0, 0, undef, 0, '#stay', 'Dynamics')) {
2025       return 1
2026    }
2027    # String => '-[0-5]\b'
2028    # attribute => 'Dynamics'
2029    # context => '#stay'
2030    # type => 'RegExpr'
2031    if ($self->testRegExpr($text, '-[0-5]\\b', 0, 0, 0, undef, 0, '#stay', 'Dynamics')) {
2032       return 1
2033    }
2034    # attribute => 'Comment'
2035    # char => '%'
2036    # context => 'Comment'
2037    # type => 'DetectChar'
2038    if ($self->testDetectChar($text, '%', 0, 0, 0, undef, 0, 'Comment', 'Comment')) {
2039       return 1
2040    }
2041    return 0;
2042 };
2043
2044 sub parsePreprocessor {
2045    my ($self, $text) = @_;
2046    return 0;
2047 };
2048
2049 sub parseRepeat {
2050    my ($self, $text) = @_;
2051    # attribute => 'Normal Text'
2052    # char => '}'
2053    # context => '#pop'
2054    # type => 'DetectChar'
2055    if ($self->testDetectChar($text, '}', 0, 0, 0, undef, 0, '#pop', 'Normal Text')) {
2056       return 1
2057    }
2058    # String => '"tremolo"'
2059    # attribute => 'Repeat'
2060    # context => '#pop'
2061    # type => 'StringDetect'
2062    if ($self->testStringDetect($text, '"tremolo"', 0, 0, 0, undef, 0, '#pop', 'Repeat')) {
2063       return 1
2064    }
2065    # String => '"percent"'
2066    # attribute => 'Repeat'
2067    # context => '#pop'
2068    # type => 'StringDetect'
2069    if ($self->testStringDetect($text, '"percent"', 0, 0, 0, undef, 0, '#pop', 'Repeat')) {
2070       return 1
2071    }
2072    # String => 'volta\b[1-9]\b'
2073    # attribute => 'Repeat'
2074    # context => '#pop'
2075    # type => 'RegExpr'
2076    if ($self->testRegExpr($text, 'volta\\b[1-9]\\b', 0, 0, 0, undef, 0, '#pop', 'Repeat')) {
2077       return 1
2078    }
2079    return 0;
2080 };
2081
2082 sub parseSlur {
2083    my ($self, $text) = @_;
2084    # String => '\\?\('
2085    # attribute => 'Slur'
2086    # context => 'Slur'
2087    # type => 'RegExpr'
2088    if ($self->testRegExpr($text, '\\\\?\\(', 0, 0, 0, undef, 0, 'Slur', 'Slur')) {
2089       return 1
2090    }
2091    # String => '\\?\)'
2092    # attribute => 'Slur'
2093    # context => '#pop'
2094    # type => 'RegExpr'
2095    if ($self->testRegExpr($text, '\\\\?\\)', 0, 0, 0, undef, 0, '#pop', 'Slur')) {
2096       return 1
2097    }
2098    return 0;
2099 };
2100
2101
2102 1;
2103
2104 __END__
2105
2106 =head1 NAME
2107
2108 Syntax::Highlight::Engine::Kate::LilyPond - a Plugin for LilyPond syntax highlighting
2109
2110 =head1 SYNOPSIS
2111
2112  require Syntax::Highlight::Engine::Kate::LilyPond;
2113  my $sh = new Syntax::Highlight::Engine::Kate::LilyPond([
2114  ]);
2115
2116 =head1 DESCRIPTION
2117
2118 Syntax::Highlight::Engine::Kate::LilyPond is a  plugin module that provides syntax highlighting
2119 for LilyPond to the Syntax::Haghlight::Engine::Kate highlighting engine.
2120
2121 This code is generated from the syntax definition files used
2122 by the Kate project.
2123 It works quite fine, but can use refinement and optimization.
2124
2125 It inherits Syntax::Higlight::Engine::Kate::Template. See also there.
2126
2127 =cut
2128
2129 =head1 AUTHOR
2130
2131 Hans Jeuken (haje <at> toneel <dot> demon <dot> nl)
2132
2133 =cut
2134
2135 =head1 BUGS
2136
2137 Unknown. If you find any, please contact the author
2138
2139 =cut
2140