code_rippa 0.0.7 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/Gemfile.lock +36 -0
- data/LICENSE +2 -2
- data/README.md +18 -1
- data/bin/code_rippa +15 -16
- data/code_rippa.gemspec +12 -10
- data/lib/code_rippa.rb +69 -51
- data/lib/code_rippa/syntax/actionscript.syntax +52 -52
- data/lib/code_rippa/syntax/active4d.syntax +226 -180
- data/lib/code_rippa/syntax/active4d_html.syntax +163 -173
- data/lib/code_rippa/syntax/active4d_ini.syntax +34 -27
- data/lib/code_rippa/syntax/active4d_library.syntax +8 -15
- data/lib/code_rippa/syntax/ada.syntax +19 -18
- data/lib/code_rippa/syntax/antlr.syntax +85 -85
- data/lib/code_rippa/syntax/apache.syntax +103 -109
- data/lib/code_rippa/syntax/applescript.syntax +244 -229
- data/lib/code_rippa/syntax/asp.syntax +41 -36
- data/lib/code_rippa/syntax/asp_vb.net.syntax +77 -72
- data/lib/code_rippa/syntax/bibtex.syntax +88 -90
- data/lib/code_rippa/syntax/blog_html.syntax +17 -29
- data/lib/code_rippa/syntax/blog_markdown.syntax +17 -27
- data/lib/code_rippa/syntax/blog_text.syntax +15 -15
- data/lib/code_rippa/syntax/blog_textile.syntax +15 -15
- data/lib/code_rippa/syntax/build.syntax +27 -27
- data/lib/code_rippa/syntax/bulletin_board.syntax +159 -172
- data/lib/code_rippa/syntax/c.syntax +31 -34
- data/lib/code_rippa/syntax/cake.syntax +27 -27
- data/lib/code_rippa/syntax/camlp4.syntax +23 -23
- data/lib/code_rippa/syntax/cm.syntax +19 -18
- data/lib/code_rippa/syntax/coffeescript.syntax +134 -181
- data/lib/code_rippa/syntax/coldfusion.syntax +51 -60
- data/lib/code_rippa/syntax/context_free.syntax +106 -106
- data/lib/code_rippa/syntax/cs.syntax +31 -34
- data/lib/code_rippa/syntax/css.syntax +112 -112
- data/lib/code_rippa/syntax/css_experimental.syntax +1006 -1004
- data/lib/code_rippa/syntax/csv.syntax +40 -44
- data/lib/code_rippa/syntax/d.syntax +80 -84
- data/lib/code_rippa/syntax/diff.syntax +46 -45
- data/lib/code_rippa/syntax/dokuwiki.syntax +118 -119
- data/lib/code_rippa/syntax/dot.syntax +26 -26
- data/lib/code_rippa/syntax/doxygen.syntax +26 -26
- data/lib/code_rippa/syntax/dylan.syntax +35 -35
- data/lib/code_rippa/syntax/eiffel.syntax +39 -42
- data/lib/code_rippa/syntax/erlang.syntax +514 -511
- data/lib/code_rippa/syntax/f-script.syntax +44 -44
- data/lib/code_rippa/syntax/fortran.syntax +80 -76
- data/lib/code_rippa/syntax/fxscript.syntax +78 -77
- data/lib/code_rippa/syntax/greasemonkey.syntax +20 -20
- data/lib/code_rippa/syntax/gri.syntax +47 -47
- data/lib/code_rippa/syntax/groovy.syntax +105 -114
- data/lib/code_rippa/syntax/gtd.syntax +10 -10
- data/lib/code_rippa/syntax/gtdalt.syntax +83 -83
- data/lib/code_rippa/syntax/haml.syntax +50 -50
- data/lib/code_rippa/syntax/haskell.syntax +47 -47
- data/lib/code_rippa/syntax/html-asp.syntax +15 -15
- data/lib/code_rippa/syntax/html_django.syntax +15 -14
- data/lib/code_rippa/syntax/html_for_asp.net.syntax +232 -245
- data/lib/code_rippa/syntax/html_mason.syntax +75 -74
- data/lib/code_rippa/syntax/html_rails.syntax +17 -27
- data/lib/code_rippa/syntax/html_tcl.syntax +13 -13
- data/lib/code_rippa/syntax/icalendar.syntax +15 -15
- data/lib/code_rippa/syntax/inform.syntax +26 -26
- data/lib/code_rippa/syntax/ini.syntax +30 -30
- data/lib/code_rippa/syntax/installer_distribution_script.syntax +49 -49
- data/lib/code_rippa/syntax/io.syntax +49 -46
- data/lib/code_rippa/syntax/java.syntax +117 -126
- data/lib/code_rippa/syntax/javaproperties.syntax +13 -12
- data/lib/code_rippa/syntax/javascript.syntax +141 -141
- data/lib/code_rippa/syntax/javascript_+_prototype.syntax +42 -41
- data/lib/code_rippa/syntax/javascript_+_prototype_bracketed.syntax +92 -91
- data/lib/code_rippa/syntax/jquery_javascript.syntax +64 -64
- data/lib/code_rippa/syntax/json.syntax +39 -39
- data/lib/code_rippa/syntax/languagedefinition.syntax +373 -453
- data/lib/code_rippa/syntax/lexflex.syntax +136 -136
- data/lib/code_rippa/syntax/lighttpd.syntax +31 -31
- data/lib/code_rippa/syntax/lilypond.syntax +246 -337
- data/lib/code_rippa/syntax/lisp.syntax +32 -32
- data/lib/code_rippa/syntax/literate_haskell.syntax +12 -12
- data/lib/code_rippa/syntax/logo.syntax +13 -14
- data/lib/code_rippa/syntax/logtalk.syntax +81 -81
- data/lib/code_rippa/syntax/lua.syntax +50 -48
- data/lib/code_rippa/syntax/m.syntax +78 -78
- data/lib/code_rippa/syntax/macports_portfile.syntax +98 -97
- data/lib/code_rippa/syntax/makefile.syntax +19 -19
- data/lib/code_rippa/syntax/man.syntax +9 -9
- data/lib/code_rippa/syntax/mediawiki.syntax +311 -401
- data/lib/code_rippa/syntax/mips.syntax +34 -34
- data/lib/code_rippa/syntax/mod_perl.syntax +25 -31
- data/lib/code_rippa/syntax/modula-3.syntax +24 -24
- data/lib/code_rippa/syntax/moinmoin.syntax +102 -102
- data/lib/code_rippa/syntax/mootools.syntax +283 -300
- data/lib/code_rippa/syntax/movable_type.syntax +91 -90
- data/lib/code_rippa/syntax/multimarkdown.syntax +19 -30
- data/lib/code_rippa/syntax/objective-c++.syntax +6 -10
- data/lib/code_rippa/syntax/objective-c.syntax +134 -138
- data/lib/code_rippa/syntax/ocaml.syntax +455 -453
- data/lib/code_rippa/syntax/ocamllex.syntax +94 -93
- data/lib/code_rippa/syntax/ocamlyacc.syntax +98 -98
- data/lib/code_rippa/syntax/opengl.syntax +6 -6
- data/lib/code_rippa/syntax/pascal.syntax +43 -42
- data/lib/code_rippa/syntax/perl.syntax +612 -615
- data/lib/code_rippa/syntax/plain_text.syntax +17 -20
- data/lib/code_rippa/syntax/postscript.syntax +71 -69
- data/lib/code_rippa/syntax/processing.syntax +60 -60
- data/lib/code_rippa/syntax/prolog.syntax +17 -20
- data/lib/code_rippa/syntax/property_list.syntax +338 -359
- data/lib/code_rippa/syntax/python.syntax +487 -509
- data/lib/code_rippa/syntax/python_django.syntax +9 -10
- data/lib/code_rippa/syntax/qmake_project.syntax +67 -67
- data/lib/code_rippa/syntax/qt_c++.syntax +12 -15
- data/lib/code_rippa/syntax/quake3_config.syntax +18 -17
- data/lib/code_rippa/syntax/r.syntax +42 -42
- data/lib/code_rippa/syntax/r_console.syntax +7 -8
- data/lib/code_rippa/syntax/ragel.syntax +109 -115
- data/lib/code_rippa/syntax/rd_r_documentation.syntax +53 -53
- data/lib/code_rippa/syntax/regexp.syntax +26 -26
- data/lib/code_rippa/syntax/release_notes.syntax +46 -26
- data/lib/code_rippa/syntax/remind.syntax +146 -146
- data/lib/code_rippa/syntax/restructuredtext.syntax +132 -131
- data/lib/code_rippa/syntax/rez.syntax +46 -45
- data/lib/code_rippa/syntax/ruby.syntax +533 -601
- data/lib/code_rippa/syntax/ruby_experimental.syntax +82 -100
- data/lib/code_rippa/syntax/ruby_on_rails.syntax +56 -68
- data/lib/code_rippa/syntax/s5.syntax +35 -51
- data/lib/code_rippa/syntax/scheme.syntax +162 -260
- data/lib/code_rippa/syntax/scilab.syntax +18 -18
- data/lib/code_rippa/syntax/setext.syntax +82 -82
- data/lib/code_rippa/syntax/shell-unix-generic.syntax +227 -226
- data/lib/code_rippa/syntax/slate.syntax +91 -91
- data/lib/code_rippa/syntax/sql.syntax +137 -139
- data/lib/code_rippa/syntax/sql_rails.syntax +8 -8
- data/lib/code_rippa/syntax/ssh-config.syntax +17 -17
- data/lib/code_rippa/syntax/standard_ml.syntax +67 -69
- data/lib/code_rippa/syntax/strings_file.syntax +20 -23
- data/lib/code_rippa/syntax/subversion_commit_message.syntax +20 -20
- data/lib/code_rippa/syntax/sweave.syntax +45 -45
- data/lib/code_rippa/syntax/swig.syntax +34 -33
- data/lib/code_rippa/syntax/tcl.syntax +87 -86
- data/lib/code_rippa/syntax/template_toolkit.syntax +67 -65
- data/lib/code_rippa/syntax/textile.syntax +111 -145
- data/lib/code_rippa/syntax/tsv.syntax +31 -33
- data/lib/code_rippa/syntax/twiki.syntax +141 -141
- data/lib/code_rippa/syntax/txt2tags.syntax +39 -38
- data/lib/code_rippa/syntax/vectorscript.syntax +31 -31
- data/lib/code_rippa/syntax/xhtml_1.0.syntax +2297 -2296
- data/lib/code_rippa/syntax/xml.syntax +95 -95
- data/lib/code_rippa/syntax/xml_strict.syntax +49 -50
- data/lib/code_rippa/syntax/xsl.syntax +31 -31
- data/lib/code_rippa/syntax/yaml.syntax +86 -86
- data/lib/code_rippa/syntax/yaml_converter.rb +37 -0
- data/lib/code_rippa/syntax/yui_javascript.syntax +88 -88
- data/lib/code_rippa/version.rb +2 -2
- data/test/fixtures/hello.rb +5 -3
- data/test/test_private_methods.rb +40 -40
- data/test/test_public_methods.rb +9 -18
- metadata +61 -63
@@ -1,219 +1,219 @@
|
|
1
|
-
---
|
1
|
+
---
|
2
2
|
name: Lex/Flex
|
3
|
-
fileTypes:
|
3
|
+
fileTypes:
|
4
4
|
- l
|
5
5
|
scopeName: source.lex
|
6
|
-
repository:
|
7
|
-
csource:
|
8
|
-
patterns:
|
6
|
+
repository:
|
7
|
+
csource:
|
8
|
+
patterns:
|
9
9
|
- name: support.function.c.lex
|
10
|
-
match:
|
10
|
+
match: "\\b(?:ECHO|BEGIN|REJECT|YY_FLUSH_BUFFER|YY_BREAK|yy(?:more|less|unput|input|terminate|text|leng|restart|_(?:push|pop|top)_state|_(?:create|switch_to|flush|delete)_buffer|_scan_(?:string|bytes|buffer)|_set_(?:bol|interactive))(?=\\(|$))\\b"
|
11
11
|
- include: source.c
|
12
|
-
subregexp:
|
13
|
-
patterns:
|
12
|
+
subregexp:
|
13
|
+
patterns:
|
14
14
|
- include: "#re_escape"
|
15
15
|
- name: constant.other.character-class.set.lex
|
16
|
-
endCaptures:
|
17
|
-
|
16
|
+
endCaptures:
|
17
|
+
'1':
|
18
18
|
name: punctuation.terminator.character-class.set.lex
|
19
|
-
begin: (
|
20
|
-
beginCaptures:
|
21
|
-
|
19
|
+
begin: "(\\[)(\\^)?-?"
|
20
|
+
beginCaptures:
|
21
|
+
'1':
|
22
22
|
name: punctuation.definition.character-class.set.lex
|
23
|
-
|
23
|
+
'2':
|
24
24
|
name: keyword.operator.negation.regexp.lex
|
25
|
-
end: -?(
|
26
|
-
patterns:
|
25
|
+
end: "-?(\\])"
|
26
|
+
patterns:
|
27
27
|
- include: "#re_escape"
|
28
28
|
- name: constant.other.character-class.set.lex
|
29
|
-
captures:
|
30
|
-
|
29
|
+
captures:
|
30
|
+
'1':
|
31
31
|
name: invalid.illegal.regexp.lex
|
32
|
-
match:
|
32
|
+
match: "\\[:(?:(?:alnum|alpha|blank|cntrl|x?digit|graph|lower|print|punct|space|upper)|(.*?)):\\]"
|
33
33
|
- name: variable.other.lex
|
34
|
-
match: (?i){[a-z_][a-z0-9_-]*}
|
34
|
+
match: "(?i){[a-z_][a-z0-9_-]*}"
|
35
35
|
- name: keyword.operator.quantifier.regexp.lex
|
36
|
-
begin:
|
37
|
-
end:
|
38
|
-
patterns:
|
39
|
-
- match: (
|
36
|
+
begin: "\\{"
|
37
|
+
end: "\\}"
|
38
|
+
patterns:
|
39
|
+
- match: "(?<=\\{)[0-9]*(?:,[0-9]*)?(?=\\})"
|
40
40
|
- name: invalid.illegal.regexp.lex
|
41
41
|
match: "[^}]"
|
42
42
|
comment: "{3} counts should only have digit[,digit]"
|
43
43
|
- name: string.quoted.double.regexp.lex
|
44
44
|
begin: "\""
|
45
45
|
end: "\""
|
46
|
-
patterns:
|
46
|
+
patterns:
|
47
47
|
- include: "#re_escape"
|
48
|
-
- begin: ([*+?])(?=[*+?])
|
49
|
-
beginCaptures:
|
50
|
-
|
48
|
+
- begin: "([*+?])(?=[*+?])"
|
49
|
+
beginCaptures:
|
50
|
+
'1':
|
51
51
|
name: keyword.operator.quantifier.regexp.lex
|
52
|
-
end: (?=[^*+?])
|
53
|
-
patterns:
|
52
|
+
end: "(?=[^*+?])"
|
53
|
+
patterns:
|
54
54
|
- name: invalid.illegal.regexp.lex
|
55
|
-
match: .
|
55
|
+
match: "."
|
56
56
|
comment: make ** or +? or other combinations illegal
|
57
57
|
- name: keyword.operator.quantifier.regexp.lex
|
58
58
|
match: "[*+?]"
|
59
59
|
- name: invalid.illegal.regexp.lex
|
60
|
-
match: <<EOF>>
|
61
|
-
comment: <<EOF>> is handled in the rule pattern
|
60
|
+
match: "<<EOF>>"
|
61
|
+
comment: "<<EOF>> is handled in the rule pattern"
|
62
62
|
- name: meta.group.regexp.lex
|
63
|
-
endCaptures:
|
64
|
-
|
63
|
+
endCaptures:
|
64
|
+
'1':
|
65
65
|
name: punctuation.terminator.group.regexp.lex
|
66
|
-
begin: (
|
67
|
-
beginCaptures:
|
68
|
-
|
66
|
+
begin: "(\\()"
|
67
|
+
beginCaptures:
|
68
|
+
'1':
|
69
69
|
name: punctuation.definition.group.regexp.lex
|
70
|
-
end: (
|
71
|
-
patterns:
|
70
|
+
end: "(\\))|(?=\\s)|$(?#end on whitespace because regex does)"
|
71
|
+
patterns:
|
72
72
|
- name: invalid.illegal.regexp.lex
|
73
|
-
match: /
|
73
|
+
match: "/"
|
74
74
|
- include: "#subregexp"
|
75
|
-
- begin: (/)
|
76
|
-
beginCaptures:
|
77
|
-
|
75
|
+
- begin: "(/)"
|
76
|
+
beginCaptures:
|
77
|
+
'1':
|
78
78
|
name: keyword.operator.trailing-match.regexp.lex
|
79
|
-
end: (
|
80
|
-
patterns:
|
79
|
+
end: "(?=\\s)|$"
|
80
|
+
patterns:
|
81
81
|
- name: invalid.illegal.regexp.lex
|
82
|
-
match:
|
82
|
+
match: "/|\\$(?!\\S)"
|
83
83
|
- include: "#subregexp"
|
84
84
|
comment: detection of multiple trailing contexts
|
85
|
-
regexp:
|
85
|
+
regexp:
|
86
86
|
name: string.regexp.lex
|
87
|
-
captures:
|
88
|
-
|
87
|
+
captures:
|
88
|
+
'1':
|
89
89
|
name: keyword.control.anchor.regexp.lex
|
90
|
-
begin:
|
91
|
-
end: (
|
92
|
-
patterns:
|
90
|
+
begin: "\\G(?=\\S)(\\^)?"
|
91
|
+
end: "(\\$)?(?:(?=\\s)|$)"
|
92
|
+
patterns:
|
93
93
|
- include: "#subregexp"
|
94
|
-
re_escape:
|
94
|
+
re_escape:
|
95
95
|
name: constant.character.escape.lex
|
96
|
-
match:
|
97
|
-
includes:
|
98
|
-
patterns:
|
96
|
+
match: "\\\\(?i:[0-9]{1,3}|x[0-9a-f]{1,2}|.)"
|
97
|
+
includes:
|
98
|
+
patterns:
|
99
99
|
- name: meta.embedded.source.c.lex
|
100
|
-
begin:
|
101
|
-
end:
|
102
|
-
patterns:
|
100
|
+
begin: "^%\\{$"
|
101
|
+
end: "^%\\}$"
|
102
|
+
patterns:
|
103
103
|
- include: source.c
|
104
|
-
comment:
|
104
|
+
comment: 'TODO: $} should override the embedded scopes'
|
105
105
|
- name: meta.embedded.source.c.lex
|
106
|
-
begin: ^[
|
107
|
-
end: $
|
108
|
-
patterns:
|
106
|
+
begin: "^[ \\t]+"
|
107
|
+
end: "$"
|
108
|
+
patterns:
|
109
109
|
- include: source.c
|
110
|
-
comment:
|
111
|
-
rec_csource:
|
112
|
-
begin:
|
113
|
-
end:
|
114
|
-
patterns:
|
110
|
+
comment: 'TODO: eol should override the embedded scopes'
|
111
|
+
rec_csource:
|
112
|
+
begin: "\\{"
|
113
|
+
end: "\\}"
|
114
|
+
patterns:
|
115
115
|
- include: source.c
|
116
116
|
- include: "#csource"
|
117
117
|
uuid: 92E842A0-9DE6-4D31-A6AC-1CDE0F9547C5
|
118
|
-
foldingStartMarker:
|
119
|
-
patterns:
|
118
|
+
foldingStartMarker: "/\\*\\*|\\{\\s*$"
|
119
|
+
patterns:
|
120
120
|
- name: meta.section.definitions.lex
|
121
|
-
begin:
|
122
|
-
end: ^(?=%%$)
|
123
|
-
patterns:
|
121
|
+
begin: "\\A(?!%%$)"
|
122
|
+
end: "^(?=%%$)"
|
123
|
+
patterns:
|
124
124
|
- include: "#includes"
|
125
125
|
- name: comment.block.c.lex
|
126
|
-
begin:
|
127
|
-
end:
|
126
|
+
begin: "/\\*"
|
127
|
+
end: "\\*/|$"
|
128
128
|
- name: meta.definition.lex
|
129
|
-
begin: ^(?i)([a-z_][a-z0-9_-]*)(
|
130
|
-
beginCaptures:
|
131
|
-
|
129
|
+
begin: "^(?i)([a-z_][a-z0-9_-]*)(?=\\s|$)"
|
130
|
+
beginCaptures:
|
131
|
+
'1':
|
132
132
|
name: entity.name.function.lex
|
133
|
-
end: $
|
134
|
-
patterns:
|
133
|
+
end: "$"
|
134
|
+
patterns:
|
135
135
|
- include: "#regexp"
|
136
136
|
- name: meta.start-condition.lex
|
137
|
-
begin: ^(%[sx])(
|
138
|
-
beginCaptures:
|
139
|
-
|
137
|
+
begin: "^(%[sx])(?=\\s|$)"
|
138
|
+
beginCaptures:
|
139
|
+
'1':
|
140
140
|
name: punctuation.definition.start-condition.lex
|
141
|
-
end: $
|
142
|
-
patterns:
|
143
|
-
- match: (?i)[a-z_][a-z0-9_-]*
|
141
|
+
end: "$"
|
142
|
+
patterns:
|
143
|
+
- match: "(?i)[a-z_][a-z0-9_-]*"
|
144
144
|
- name: invalid.illegal.lex
|
145
|
-
match:
|
145
|
+
match: "\\S"
|
146
146
|
- name: meta.options.lex
|
147
|
-
begin: ^(%option)
|
148
|
-
beginCaptures:
|
149
|
-
|
147
|
+
begin: "^(%option)\\s(?=\\S)"
|
148
|
+
beginCaptures:
|
149
|
+
'1':
|
150
150
|
name: keyword.other.option.lex
|
151
|
-
end: $
|
152
|
-
patterns:
|
151
|
+
end: "$"
|
152
|
+
patterns:
|
153
153
|
- name: support.other.option.lex
|
154
|
-
match:
|
154
|
+
match: "\\b(?:(?:no)?(?:[78]bit|align|backup|batch|c\\+\\+|debug|default|ecs|fast|full|interactive|lex-compat|meta-ecs|perf-report|read|stdout|verbose|warn|array|pointer|input|unput|yy_(?:(?:push|pop|top)_state|scan_(?:buffer|bytes|string))|main|stack|stdinit|yylineno|yywrap)|(?:case(?:ful|less)|case-(?:in)?sensitive|(?:always|never)-interactive))\\b"
|
155
155
|
- name: keyword.other.option.lex
|
156
|
-
begin: ^%(?:array|pointer)
|
157
|
-
end: $
|
158
|
-
patterns:
|
156
|
+
begin: "^%(?:array|pointer)"
|
157
|
+
end: "$"
|
158
|
+
patterns:
|
159
159
|
- name: invalid.illegal.lex
|
160
|
-
match:
|
160
|
+
match: "\\S"
|
161
161
|
comment: first section of the file - definitions
|
162
|
-
- begin: ^(%%)$
|
163
|
-
beginCaptures:
|
164
|
-
|
162
|
+
- begin: "^(%%)$"
|
163
|
+
beginCaptures:
|
164
|
+
'1':
|
165
165
|
name: punctuation.separator.sections.lex
|
166
|
-
end:
|
167
|
-
patterns:
|
166
|
+
end: "\\Z.\\A(?# never end)"
|
167
|
+
patterns:
|
168
168
|
- name: meta.section.rules.lex
|
169
|
-
begin: ^(?!%%$)
|
170
|
-
end: ^(?=%%$)
|
171
|
-
patterns:
|
169
|
+
begin: "^(?!%%$)"
|
170
|
+
end: "^(?=%%$)"
|
171
|
+
patterns:
|
172
172
|
- name: meta.rule.lex
|
173
|
-
begin: ^(?!$)
|
174
|
-
end: $
|
175
|
-
patterns:
|
173
|
+
begin: "^(?!$)"
|
174
|
+
end: "$"
|
175
|
+
patterns:
|
176
176
|
- include: "#includes"
|
177
|
-
- begin: (?i)^(<(?:(?:[a-z_][a-z0-9_-]*,)*[a-z_][a-z0-9_-]
|
178
|
-
beginCaptures:
|
179
|
-
|
177
|
+
- begin: "(?i)^(<(?:(?:[a-z_][a-z0-9_-]*,)*[a-z_][a-z0-9_-]|\\*)>)?(?:(<<EOF>>)(\\s*))?(?=\\S)"
|
178
|
+
beginCaptures:
|
179
|
+
'1':
|
180
180
|
name: keyword.other.start-condition.lex
|
181
|
-
|
181
|
+
'2':
|
182
182
|
name: keyword.operator.eof.lex
|
183
|
-
|
183
|
+
'3':
|
184
184
|
name: invalid.illegal.regexp.lex
|
185
|
-
end: (
|
186
|
-
patterns:
|
185
|
+
end: "(?=\\s)|$"
|
186
|
+
patterns:
|
187
187
|
- include: "#regexp"
|
188
188
|
comment: rule pattern
|
189
|
-
- endCaptures:
|
190
|
-
|
189
|
+
- endCaptures:
|
190
|
+
'1':
|
191
191
|
name: punctuation.terminator.code.lex
|
192
|
-
|
192
|
+
'2':
|
193
193
|
name: invalid.illegal.ignored.lex
|
194
|
-
begin: (
|
195
|
-
beginCaptures:
|
196
|
-
|
194
|
+
begin: "(%\\{)"
|
195
|
+
beginCaptures:
|
196
|
+
'1':
|
197
197
|
name: punctuation.definition.code.lex
|
198
|
-
end: (
|
199
|
-
patterns:
|
198
|
+
end: "(%\\})(.*)"
|
199
|
+
patterns:
|
200
200
|
- include: "#csource"
|
201
|
-
comment:
|
201
|
+
comment: 'TODO: %} should override embedded scopes'
|
202
202
|
- name: meta.rule.action.lex
|
203
|
-
begin: (
|
204
|
-
end: $
|
205
|
-
patterns:
|
203
|
+
begin: "(?=\\S)"
|
204
|
+
end: "$"
|
205
|
+
patterns:
|
206
206
|
- include: "#csource"
|
207
|
-
comment:
|
207
|
+
comment: 'TODO: eol should override embedded scopes'
|
208
208
|
comment: second section of the file - rules
|
209
|
-
- begin: ^(%%)$
|
209
|
+
- begin: "^(%%)$"
|
210
210
|
contentName: meta.section.user-code.lex
|
211
|
-
beginCaptures:
|
212
|
-
|
211
|
+
beginCaptures:
|
212
|
+
'1':
|
213
213
|
name: punctuation.separator.sections.lex
|
214
|
-
end:
|
215
|
-
patterns:
|
214
|
+
end: "\\Z.\\A(?# never end)"
|
215
|
+
patterns:
|
216
216
|
- include: "#csource"
|
217
217
|
comment: third section of the file - user code
|
218
|
-
foldingStopMarker:
|
219
|
-
keyEquivalent: ^~L
|
218
|
+
foldingStopMarker: "\\*\\*/|^\\s*\\}"
|
219
|
+
keyEquivalent: "^~L"
|
@@ -1,54 +1,54 @@
|
|
1
|
-
---
|
1
|
+
---
|
2
2
|
name: Lighttpd
|
3
3
|
scopeName: source.lighttpd-config
|
4
4
|
uuid: C244BFF4-2C1A-490F-831E-8EF7DF4E0C9B
|
5
|
-
foldingStartMarker: (
|
6
|
-
patterns:
|
5
|
+
foldingStartMarker: "(\\{|\\()\\s*$"
|
6
|
+
patterns:
|
7
7
|
- name: comment.line.number-sign.lighttpd-config
|
8
|
-
captures:
|
9
|
-
|
8
|
+
captures:
|
9
|
+
'1':
|
10
10
|
name: punctuation.definition.comment.lighttpd-config
|
11
|
-
match: (#)
|
12
|
-
- captures:
|
13
|
-
|
11
|
+
match: "(#).*$\\n?"
|
12
|
+
- captures:
|
13
|
+
'1':
|
14
14
|
name: punctuation.separator.key-value.lighttpd-config
|
15
|
-
|
15
|
+
'2':
|
16
16
|
name: string.regexp.lighttpd-config
|
17
|
-
|
17
|
+
'3':
|
18
18
|
name: punctuation.definition.string.begin.lighttpd-config
|
19
|
-
|
19
|
+
'4':
|
20
20
|
name: punctuation.definition.string.end.lighttpd-config
|
21
|
-
match: (=~|!~)
|
22
|
-
- captures:
|
23
|
-
|
21
|
+
match: "(=~|!~)\\s*((\").*(\"))"
|
22
|
+
- captures:
|
23
|
+
'1':
|
24
24
|
name: punctuation.separator.key-value.lighttpd-config
|
25
|
-
|
25
|
+
'2':
|
26
26
|
name: constant.numeric.lighttpd-config
|
27
|
-
match: (=>?)
|
27
|
+
match: "(=>?)\\s*([0-9]+)"
|
28
28
|
- name: punctuation.separator.key-value.lighttpd-config
|
29
|
-
match:
|
29
|
+
match: "=|\\+=|==|!=|=~|!~|=>"
|
30
30
|
- name: string.quoted.double.lighttpd-config
|
31
|
-
endCaptures:
|
32
|
-
|
31
|
+
endCaptures:
|
32
|
+
'0':
|
33
33
|
name: punctuation.definition.string.end.lighttpd-config
|
34
34
|
begin: "\""
|
35
|
-
beginCaptures:
|
36
|
-
|
35
|
+
beginCaptures:
|
36
|
+
'0':
|
37
37
|
name: punctuation.definition.string.begin.lighttpd-config
|
38
38
|
end: "\""
|
39
|
-
patterns:
|
39
|
+
patterns:
|
40
40
|
- name: constant.character.escape.quote.lighttpd-config
|
41
41
|
match: "\"\""
|
42
42
|
- name: variable.language.lighttpd-config
|
43
|
-
captures:
|
44
|
-
|
43
|
+
captures:
|
44
|
+
'1':
|
45
45
|
name: punctuation.definition.variable.lighttpd-config
|
46
|
-
match: (
|
46
|
+
match: "(\\$)[a-zA-Z][0-9a-zA-Z]*"
|
47
47
|
- name: support.constant.name.lighttpd-config
|
48
|
-
match:
|
49
|
-
- captures:
|
50
|
-
|
48
|
+
match: "^\\s*[a-zA-Z][0-9a-zA-Z.-]*"
|
49
|
+
- captures:
|
50
|
+
'1':
|
51
51
|
name: invalid.illegal.semicolon-at-end-of-line.lighttpd-config
|
52
|
-
match: (;)
|
53
|
-
foldingStopMarker:
|
54
|
-
keyEquivalent: ^~L
|
52
|
+
match: "(;)\\s*$"
|
53
|
+
foldingStopMarker: "^\\s*(\\}|\\))"
|
54
|
+
keyEquivalent: "^~L"
|
@@ -1,429 +1,348 @@
|
|
1
|
-
---
|
1
|
+
---
|
2
2
|
name: Lilypond
|
3
|
-
fileTypes:
|
3
|
+
fileTypes:
|
4
4
|
- ly
|
5
5
|
- ily
|
6
6
|
scopeName: source.lilypond
|
7
|
-
repository:
|
8
|
-
g_markup:
|
7
|
+
repository:
|
8
|
+
g_markup:
|
9
9
|
name: meta.element.markup.lilypond
|
10
|
-
begin: "(?x)\n\
|
11
|
-
|
12
|
-
|
13
|
-
\t\t\t"
|
14
|
-
beginCaptures:
|
15
|
-
"1":
|
10
|
+
begin: "(?x)\n\t\t\t\t((\\\\) markup) \\s+ # backslash + \"markup\" + spaces\n\t\t\t\t(?={)\n\t\t\t"
|
11
|
+
beginCaptures:
|
12
|
+
'1':
|
16
13
|
name: support.function.element.markup.lilypond
|
17
|
-
|
14
|
+
'2':
|
18
15
|
name: punctuation.definition.function.markup
|
19
|
-
end: (?<=})
|
20
|
-
patterns:
|
16
|
+
end: "(?<=})"
|
17
|
+
patterns:
|
21
18
|
- include: "#g_m_group"
|
22
|
-
comments:
|
23
|
-
patterns:
|
19
|
+
comments:
|
20
|
+
patterns:
|
24
21
|
- name: comment.block.lilypond
|
25
|
-
captures:
|
26
|
-
|
22
|
+
captures:
|
23
|
+
'0':
|
27
24
|
name: punctuation.definition.comment.lilypond
|
28
25
|
begin: "%{"
|
29
26
|
end: "%}"
|
30
27
|
- name: comment.line.lilypond
|
31
28
|
begin: "%"
|
32
|
-
beginCaptures:
|
33
|
-
|
29
|
+
beginCaptures:
|
30
|
+
'0':
|
34
31
|
name: punctuation.definition.comment.lilypond
|
35
|
-
end:
|
36
|
-
g_times:
|
37
|
-
begin: ((
|
38
|
-
beginCaptures:
|
39
|
-
|
32
|
+
end: "$\\n?"
|
33
|
+
g_times:
|
34
|
+
begin: "((\\\\)times)\\s*(?:([1-9][0-9]*/[1-9][0-9])\\s*)(?={)"
|
35
|
+
beginCaptures:
|
36
|
+
'1':
|
40
37
|
name: support.function.section.lilypond
|
41
|
-
|
38
|
+
'2':
|
42
39
|
name: punctuation.definition.function.lilypond
|
43
|
-
|
40
|
+
'3':
|
44
41
|
name: constant.numeric.fraction.lilypond
|
45
|
-
end: (?<=})
|
46
|
-
patterns:
|
42
|
+
end: "(?<=})"
|
43
|
+
patterns:
|
47
44
|
- include: "#group"
|
48
|
-
f_keywords:
|
45
|
+
f_keywords:
|
49
46
|
name: keyword.control.lilypond
|
50
|
-
captures:
|
51
|
-
|
47
|
+
captures:
|
48
|
+
'1':
|
52
49
|
name: punctuation.definition.function.lilypond
|
53
|
-
match: "(?x)\n\
|
54
|
-
|
55
|
-
\t\t\t\t (?: set | new | override | revert)\n\
|
56
|
-
\t\t\t\t)\n\
|
57
|
-
\t\t\t"
|
58
|
-
f_clef:
|
50
|
+
match: "(?x)\n\t\t\t\t(?: (\\\\)\n\t\t\t\t (?: set | new | override | revert)\n\t\t\t\t)\n\t\t\t"
|
51
|
+
f_clef:
|
59
52
|
name: meta.element.clef.lilypond
|
60
|
-
captures:
|
61
|
-
|
53
|
+
captures:
|
54
|
+
'6':
|
62
55
|
name: meta.fixme.unknown-clef-name.lilypond
|
63
|
-
|
56
|
+
'7':
|
64
57
|
name: constant.other.modifier.clef.lilypond
|
65
|
-
|
58
|
+
'8':
|
66
59
|
name: punctuation.definition.string.lilypond
|
67
|
-
|
60
|
+
'1':
|
68
61
|
name: support.function.element.lilypond
|
69
|
-
|
62
|
+
'2':
|
70
63
|
name: punctuation.definition.function.lilypond
|
71
|
-
|
64
|
+
'3':
|
72
65
|
name: punctuation.definition.string.lilypond
|
73
|
-
|
66
|
+
'4':
|
74
67
|
name: constant.language.clef-name.lilypond
|
75
|
-
|
68
|
+
'5':
|
76
69
|
name: constant.other.modifier.clef.lilypond
|
77
|
-
match: "(?x)\n\
|
78
|
-
\t\t\t\t((
|
79
|
-
\t\t\t\t
|
80
|
-
\
|
81
|
-
\t\t\t\t
|
82
|
-
\
|
83
|
-
\
|
84
|
-
\t\t\t\t (?:
|
85
|
-
\t\t\t\t
|
86
|
-
\t\t\t
|
87
|
-
\t\t\t\t
|
88
|
-
\t\t\t\t
|
89
|
-
|
90
|
-
\
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
\t\t\t\t)?\n\
|
96
|
-
\t\t\t"
|
97
|
-
comment: "\n\
|
98
|
-
\t\t\t\tThis looks something like: \\clef mezzosoprano_8\n\
|
99
|
-
\t\t\t\tOr maybe: \\clef neomensural-c3^15\n\
|
100
|
-
\t\t\t"
|
101
|
-
g_relative:
|
102
|
-
begin: ((\\)relative)\s*(?:([a-h][',]*)\s*)?(?={)
|
103
|
-
beginCaptures:
|
104
|
-
"1":
|
70
|
+
match: "(?x)\n\t\t\t\t((\\\\) clef) \\s+ # backslash + \"clef\" + spaces (groups
|
71
|
+
1-2)\n\t\t\t\t(?:\n\t\t\t\t (\"?)\t# beginning quotes (group 3)\n\t\t\t\t (
|
72
|
+
(?: # group 4\n\t\t\t\t\t treble | violin | G | french | #
|
73
|
+
G clefs\n\t\t\t\t alto | C | tenor | (?:mezzo)?soprano | baritone | # C
|
74
|
+
clefs\n\t\t\t\t (?:sub)?bass | F | varbaritone | # F clefs\n\t\t\t\t
|
75
|
+
\ percussion | tab | # percussion / tablature clefs\n \n\t\t\t
|
76
|
+
\ (?:neo)?mensural-c[1-4] | mensural-[fg] | \t\t# Ancient clefs\n\t\t\t\t
|
77
|
+
\ petrucci-(?: [fg] | c[1-5] ) |\n\t\t\t\t (?: vaticana | medicaea
|
78
|
+
| hufnagel ) - (?: do[1-3] | fa[12] ) |\n\t\t\t\t hufnagel-do-fa\n\t\t\t\t
|
79
|
+
\ )\n\t\t\t\t ([_^](?:8|15)?)? # optionally shift 1-2 octaves ↑/↓ (group
|
80
|
+
5)\n\t\t\t\t ) |\n\t\t\t\t ( (?:\\w+) ([_^](?:8|15))? ) # unknown clef name
|
81
|
+
(groups 6-7)\n\t\t\t\t (\\3) # closing quotes (group 8)\n\t\t\t\t)?\n\t\t\t"
|
82
|
+
comment: "\n\t\t\t\tThis looks something like: \\clef mezzosoprano_8\n\t\t\t\tOr
|
83
|
+
maybe: \\clef neomensural-c3^15\n\t\t\t"
|
84
|
+
g_relative:
|
85
|
+
begin: "((\\\\)relative)\\s*(?:([a-h][',]*)\\s*)?(?={)"
|
86
|
+
beginCaptures:
|
87
|
+
'1':
|
105
88
|
name: support.function.section.lilypond
|
106
|
-
|
89
|
+
'2':
|
107
90
|
name: punctuation.definition.function.lilypond
|
108
|
-
|
91
|
+
'3':
|
109
92
|
name: storage.type.pitch.lilypond
|
110
|
-
end: (?<=})
|
111
|
-
patterns:
|
93
|
+
end: "(?<=})"
|
94
|
+
patterns:
|
112
95
|
- include: "#group"
|
113
|
-
scheme:
|
96
|
+
scheme:
|
114
97
|
begin: "#"
|
115
98
|
contentName: source.scheme.embedded.lilypond
|
116
|
-
beginCaptures:
|
117
|
-
|
99
|
+
beginCaptures:
|
100
|
+
'0':
|
118
101
|
name: punctuation.section.embedded.scheme.lilypond
|
119
|
-
end: (?=[
|
120
|
-
patterns:
|
102
|
+
end: "(?=[\\s%])|(?<=\\n)"
|
103
|
+
patterns:
|
121
104
|
- include: source.scheme
|
122
|
-
comment: "\n\
|
123
|
-
\t\t\t\
|
124
|
-
\t\t\t\
|
125
|
-
|
126
|
-
|
127
|
-
\t\t\t"
|
128
|
-
notes:
|
129
|
-
patterns:
|
105
|
+
comment: "\n\t\t\t\tLilypond source can embed scheme code to do things more\n\t\t\t\tflexibly
|
106
|
+
than allowed by the basic language.\n\n\t\t\t\tWe need to make sure to match
|
107
|
+
after a \\n, as included\n\t\t\t\tby some s-expressions in the scheme grammar.\n\t\t\t"
|
108
|
+
notes:
|
109
|
+
patterns:
|
130
110
|
- name: meta.element.note.lilypond
|
131
|
-
begin: "(?x)\\b\n\
|
132
|
-
\
|
133
|
-
\t\t\t\t\t\t
|
134
|
-
\
|
135
|
-
\
|
136
|
-
\t\t\t\t\t\t
|
137
|
-
\t\t\t\t\t
|
138
|
-
\t\t\t\t\t
|
139
|
-
\t\t\t\t\t\t )
|
140
|
-
\
|
141
|
-
|
142
|
-
|
143
|
-
\t\t\t\t\t\t (\\.)? # Augmentation dot (group 10)\n\
|
144
|
-
\t\t\t\t\t\t\t((\\*)(\\d+(?:/\\d+)?))? # Scaling duration (groups 11-13)\n\
|
145
|
-
\t\t\t\t\t\t )?\n\
|
146
|
-
\t\t\t\t\t\t)(?![a-z])\t# do not follow a note with a letter\n\
|
147
|
-
\t\t\t\t\t"
|
148
|
-
beginCaptures:
|
149
|
-
"6":
|
111
|
+
begin: "(?x)\\b\n\t\t\t\t\t (\t\t\t\t\t\t # (group 1)\n\t\t\t\t\t\t ( [a-h]
|
112
|
+
\ # Pitch (group 2)\n\t\t\t\t\t\t ( (?:i[sh]){1,2} | #
|
113
|
+
\ - sharp (group 3)\n\t\t\t\t\t\t (?:e[sh]|s){1,2} # - flat\n\t\t\t\t\t\t
|
114
|
+
\ )?\n\t\t\t\t\t ([!?])? # Cautionary accidental (group
|
115
|
+
4)\n\t\t\t\t\t ('+|,+)? # Octave (group 5)\n\t\t\t\t\t\t
|
116
|
+
\ )\n\t\t\t\t\t\t ( ( ((\\\\)breve)| # Duration (groups 6-9)\n\t\t\t\t\t\t
|
117
|
+
\ 64|32|16|8|4|2|1\n\t\t\t\t\t\t )\n\t\t\t\t\t\t (\\.)? #
|
118
|
+
Augmentation dot (group 10)\n\t\t\t\t\t\t\t((\\*)(\\d+(?:/\\d+)?))? # Scaling
|
119
|
+
duration (groups 11-13)\n\t\t\t\t\t\t )?\n\t\t\t\t\t\t)(?![a-z])\t# do not
|
120
|
+
follow a note with a letter\n\t\t\t\t\t"
|
121
|
+
beginCaptures:
|
122
|
+
'6':
|
150
123
|
name: storage.type.duration.lilypond
|
151
|
-
|
124
|
+
'12':
|
152
125
|
name: keyword.operator.duration-scale.lilypond
|
153
|
-
|
126
|
+
'13':
|
154
127
|
name: constant.numeric.fraction.lilypond
|
155
|
-
|
128
|
+
'9':
|
156
129
|
name: punctuation.definition.function.lilypond
|
157
|
-
|
130
|
+
'2':
|
158
131
|
name: storage.type.pitch.lilypond
|
159
|
-
|
132
|
+
'4':
|
160
133
|
name: meta.note-modifier.cautionary-accidental.lilypond
|
161
|
-
|
134
|
+
'5':
|
162
135
|
name: meta.note-modifier.octave.lilypond
|
163
|
-
end: "(?x)\n\
|
164
|
-
|
165
|
-
\t\t\t\t\t"
|
166
|
-
patterns:
|
136
|
+
end: "(?x)\n\t\t\t\t\t\t(?= [ }~a-z] ) # End when we encounter a space or }\n\t\t\t\t\t"
|
137
|
+
patterns:
|
167
138
|
- include: "#n_articulations"
|
168
|
-
comment: "\n\
|
169
|
-
\t\t\t\t\t\
|
170
|
-
\t\t\t\t\t\
|
171
|
-
\t\t\t\t\t\
|
172
|
-
\t\t\t\t\t\t\n\
|
173
|
-
\t\t\t\t\t\
|
174
|
-
\t\t\t\t\t\
|
175
|
-
\t\t\t\t\t\
|
176
|
-
\t\t\t\t\t\t\n\
|
177
|
-
\t\t\t\t\t\t(?x)\n\
|
178
|
-
\t\t\t\t\t\t\t\\b( # Basic Pitches\n\
|
179
|
-
\t\t\t\t\t\t\t [a-h] # Dutch/English/etc. \n\
|
180
|
-
\t\t\t\t\t\t\t (?: (iss?|s|sharp|x)(iss?|s|sharp|x|ih) | # sharp / flat\n\
|
181
|
-
\t\t\t\t\t\t\t\t (ess?|s|flat|f)(ess?|s|flat|f|eh)\n\
|
182
|
-
\t\t\t\t\t\t\t )? |\n\
|
183
|
-
\t\t\t\t\t\t\t (?: do|re|mi|fa|sol|la|si) # Italian/Spanish\n\
|
184
|
-
\t\t\t\t\t\t\t (?: ss?|dd?bb?) # sharp/flat\n\
|
185
|
-
\t\t\t\t\t\t\t)\n\
|
186
|
-
\t\t\t\t\t\t...\n\
|
187
|
-
\t\t\t\t\t"
|
139
|
+
comment: "\n\t\t\t\t\t\tThis rule handles notes, including the pitch, the\n\t\t\t\t\t\tduration,
|
140
|
+
and any articulations drawn along with\n\t\t\t\t\t\tthe note.\n\t\t\t\t\t\t\n\t\t\t\t\t\tThis
|
141
|
+
rule gets a whole lot uglier if we want to\n\t\t\t\t\t\tsupport multilingual
|
142
|
+
note names. If so, the rule\n\t\t\t\t\t\tgoes something like:\n\t\t\t\t\t\t\n\t\t\t\t\t\t(?x)\n\t\t\t\t\t\t\t\\b(
|
143
|
+
# Basic Pitches\n\t\t\t\t\t\t\t [a-h] # Dutch/English/etc. \n\t\t\t\t\t\t\t
|
144
|
+
\ (?: (iss?|s|sharp|x)(iss?|s|sharp|x|ih) | # sharp / flat\n\t\t\t\t\t\t\t\t
|
145
|
+
\ (ess?|s|flat|f)(ess?|s|flat|f|eh)\n\t\t\t\t\t\t\t )? |\n\t\t\t\t\t\t\t
|
146
|
+
\ (?: do|re|mi|fa|sol|la|si) # Italian/Spanish\n\t\t\t\t\t\t\t (?: ss?|dd?bb?)
|
147
|
+
# sharp/flat\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t...\n\t\t\t\t\t"
|
188
148
|
- name: meta.element.pause.rest.lilypond
|
189
|
-
begin: "(?x)\\b\n\
|
190
|
-
\t\t\t\t\t\t
|
191
|
-
\t\t\t\t\t\t(
|
192
|
-
\t\t\t\t\t\t
|
193
|
-
\
|
194
|
-
|
195
|
-
|
196
|
-
\t\t\t\t\t\t\n\
|
197
|
-
\t\t\t\t\t\t)?\n\
|
198
|
-
\t\t\t\t\t\t(?![a-z])\t# do not follow a note with a letter\n\
|
199
|
-
\t\t\t\t\t"
|
200
|
-
beginCaptures:
|
201
|
-
"6":
|
149
|
+
begin: "(?x)\\b\n\t\t\t\t\t\t(r) # (group 1)\n\t\t\t\t\t\t( ( (\\\\)breve| #
|
150
|
+
Duration (groups 2-4)\n\t\t\t\t\t\t 64|32|16|8|4|2|1\n\t\t\t\t\t\t )\n\t\t\t\t\t\t
|
151
|
+
\ (\\.)? # Augmentation dot (group 5)\n\t\t\t\t\t\t ((\\*)(\\d+(?:/\\d+)?))?
|
152
|
+
# Scaling duration (groups 6-8)\n\t\t\t\t\t\t\n\t\t\t\t\t\t)?\n\t\t\t\t\t\t(?![a-z])\t#
|
153
|
+
do not follow a note with a letter\n\t\t\t\t\t"
|
154
|
+
beginCaptures:
|
155
|
+
'6':
|
202
156
|
name: keyword.operator.duration-scale.lilypond
|
203
|
-
|
157
|
+
'8':
|
204
158
|
name: constant.numeric.fraction.lilypond
|
205
|
-
|
159
|
+
'1':
|
206
160
|
name: storage.type.pause.rest.lilypond
|
207
|
-
|
161
|
+
'2':
|
208
162
|
name: storage.type.duration.lilypond
|
209
|
-
|
163
|
+
'4':
|
210
164
|
name: punctuation.definition.function.lilypond
|
211
|
-
end: (?=[ }~a-z])
|
212
|
-
patterns:
|
165
|
+
end: "(?=[ }~a-z])"
|
166
|
+
patterns:
|
213
167
|
- include: "#n_articulations"
|
214
168
|
- name: meta.element.pause.skip.lilypond
|
215
|
-
begin: "(?x)\\b\n\
|
216
|
-
\t\t\t\t\t\t
|
217
|
-
\t\t\t\t\t\t(
|
218
|
-
\t\t\t\t\t\t
|
219
|
-
\
|
220
|
-
|
221
|
-
|
222
|
-
\t\t\t\t\t\t\n\
|
223
|
-
\t\t\t\t\t\t)?\n\
|
224
|
-
\t\t\t\t\t\t(?![a-z])\t# do not follow a note with a letter\n\
|
225
|
-
\t\t\t\t\t"
|
226
|
-
beginCaptures:
|
227
|
-
"6":
|
169
|
+
begin: "(?x)\\b\n\t\t\t\t\t\t(s) # (group 1)\n\t\t\t\t\t\t( ( (\\\\)breve| #
|
170
|
+
Duration (groups 2-4)\n\t\t\t\t\t\t 64|32|16|8|4|2|1\n\t\t\t\t\t\t )\n\t\t\t\t\t\t
|
171
|
+
\ (\\.)? # Augmentation dot (group 5)\n\t\t\t\t\t\t ((\\*)(\\d+(?:/\\d+)?))?
|
172
|
+
# Scaling duration (groups 6-8)\n\t\t\t\t\t\t\n\t\t\t\t\t\t)?\n\t\t\t\t\t\t(?![a-z])\t#
|
173
|
+
do not follow a note with a letter\n\t\t\t\t\t"
|
174
|
+
beginCaptures:
|
175
|
+
'6':
|
228
176
|
name: keyword.operator.duration-scale.lilypond
|
229
|
-
|
177
|
+
'8':
|
230
178
|
name: constant.numeric.fraction.lilypond
|
231
|
-
|
179
|
+
'1':
|
232
180
|
name: storage.type.pause.skip.lilypond
|
233
|
-
|
181
|
+
'2':
|
234
182
|
name: storage.type.duration.lilypond
|
235
|
-
|
183
|
+
'4':
|
236
184
|
name: punctuation.definition.function.lilypond
|
237
|
-
end: (?=[ }~a-z])
|
238
|
-
patterns:
|
185
|
+
end: "(?=[ }~a-z])"
|
186
|
+
patterns:
|
239
187
|
- include: "#n_articulations"
|
240
188
|
- name: meta.element.pause.skip.lilypond
|
241
|
-
captures:
|
242
|
-
|
189
|
+
captures:
|
190
|
+
'1':
|
243
191
|
name: storage.type.pause.skip.lilypond
|
244
|
-
|
192
|
+
'2':
|
245
193
|
name: punctuation.definition.function.lilypond
|
246
|
-
|
194
|
+
'3':
|
247
195
|
name: storage.type.duration.lilypond
|
248
|
-
match: ((
|
196
|
+
match: "((\\\\)skip)\\s+(64|32|16|8|4|2|1)"
|
249
197
|
- name: meta.element.chord.lilypond
|
250
|
-
endCaptures:
|
251
|
-
|
198
|
+
endCaptures:
|
199
|
+
'1':
|
252
200
|
name: punctuation.definition.chord.lilypond
|
253
|
-
|
201
|
+
'2':
|
254
202
|
name: storage.type.duration.lilypond
|
255
|
-
|
203
|
+
'4':
|
256
204
|
name: punctuation.definition.function.lilypond
|
257
|
-
begin: <
|
258
|
-
beginCaptures:
|
259
|
-
|
205
|
+
begin: "<"
|
206
|
+
beginCaptures:
|
207
|
+
'0':
|
260
208
|
name: punctuation.definition.chord.lilypond
|
261
|
-
end: "(?x)\n\
|
262
|
-
\t\t\t\t\t\t
|
263
|
-
\t\t\t\t\t\t
|
264
|
-
|
265
|
-
|
266
|
-
|
267
|
-
\t\t\t\t\t\t)?\n\
|
268
|
-
\t\t\t\t\t"
|
269
|
-
patterns:
|
270
|
-
- captures:
|
271
|
-
"1":
|
209
|
+
end: "(?x)\n\t\t\t\t\t\t(>)\n\t\t\t\t\t\t( ( ((\\\\)breve)| # Duration
|
210
|
+
(groups 2-4)\n\t\t\t\t\t\t 64|32|16|8|4|2|1\n\t\t\t\t\t\t )\n\t\t\t\t\t\t
|
211
|
+
\ (\\.)? # Augmentation dot (group 5)\n\t\t\t\t\t\t)?\n\t\t\t\t\t"
|
212
|
+
patterns:
|
213
|
+
- captures:
|
214
|
+
'1':
|
272
215
|
name: storage.type.pitch.lilypond
|
273
|
-
|
216
|
+
'3':
|
274
217
|
name: meta.note-modifier.cautionary-accidental.lilypond
|
275
|
-
|
218
|
+
'4':
|
276
219
|
name: meta.note-modifier.octave.lilypond
|
277
|
-
match: "(?x)\\b\n\
|
278
|
-
\t\t\t\t\t\t\t\t
|
279
|
-
\
|
280
|
-
\
|
281
|
-
\t\t\t\t\t\t\t\t
|
282
|
-
|
283
|
-
\t\t\t\t\t\t\t ('+|,+)? # Octave (group 4)\n\
|
284
|
-
\t\t\t\t\t\t\t\t )\n\
|
285
|
-
\t\t\t\t\t\t\t"
|
286
|
-
comment: "\n\
|
287
|
-
\t\t\t\t\t\tLilypond chords look like: < a b c >\n\
|
288
|
-
\t\t\t\t\t"
|
220
|
+
match: "(?x)\\b\n\t\t\t\t\t\t\t\t ( [a-h] # Pitch (group
|
221
|
+
1)\n\t\t\t\t\t\t\t\t ( (?:i[sh]){1,2} | # - sharp (group 2)\n\t\t\t\t\t\t\t\t
|
222
|
+
\ (?:e[sh]|s){1,2} # - flat\n\t\t\t\t\t\t\t\t )?\n\t\t\t\t\t\t\t
|
223
|
+
\ ([!?])? # Cautionary accidental (group 3)\n\t\t\t\t\t\t\t
|
224
|
+
\ ('+|,+)? # Octave (group 4)\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t"
|
225
|
+
comment: "\n\t\t\t\t\t\tLilypond chords look like: < a b c >\n\t\t\t\t\t"
|
289
226
|
- name: meta.element.chord.lilypond
|
290
|
-
begin: (?<=>)(?<!->)(
|
291
|
-
end: (?=[ }~a-z])(?<![^-]>)
|
292
|
-
patterns:
|
227
|
+
begin: "(?<=>)(?<!->)(?!\\s)"
|
228
|
+
end: "(?=[ }~a-z])(?<![^-]>)"
|
229
|
+
patterns:
|
293
230
|
- include: "#n_articulations"
|
294
|
-
comment: "\n\
|
295
|
-
\t\t\t\t\t\
|
296
|
-
\t\t\t\t\t\t\n\
|
297
|
-
\t\t\t\t\t\tTherefore it begins after the > which ends a chord,\n\
|
298
|
-
\t\t\t\t\t\tand does not end after a > which ends a chord.\n\
|
299
|
-
\t\t\t\t\t\t(to avoid infinite loops)\n\
|
300
|
-
\t\t\t\t\t"
|
231
|
+
comment: "\n\t\t\t\t\t\tThis rule attaches stuff to the end of a chord\n\t\t\t\t\t\t\n\t\t\t\t\t\tTherefore
|
232
|
+
it begins after the > which ends a chord,\n\t\t\t\t\t\tand does not end after
|
233
|
+
a > which ends a chord.\n\t\t\t\t\t\t(to avoid infinite loops)\n\t\t\t\t\t"
|
301
234
|
- name: storage.type.tie.lilypond
|
302
235
|
match: "~"
|
303
236
|
- name: storage.type.breath-mark.lilypond
|
304
|
-
captures:
|
305
|
-
|
237
|
+
captures:
|
238
|
+
'1':
|
306
239
|
name: punctuation.definition.function.lilypond
|
307
|
-
match: (
|
308
|
-
comment: "\n\
|
309
|
-
|
310
|
-
|
311
|
-
n_articulations:
|
312
|
-
patterns:
|
240
|
+
match: "(\\\\)breathe"
|
241
|
+
comment: "\n\t\t\t\tThis section includes the rules for notes, rests, and chords\n\t\t\t"
|
242
|
+
n_articulations:
|
243
|
+
patterns:
|
313
244
|
- name: storage.modifier.articulation.accent.lilypond
|
314
|
-
match: "(?x)\n\
|
315
|
-
\t\t\t\t\t\t([_^-])\n\
|
316
|
-
\t\t\t\t\t\t(?:[.>^+_-])\n\
|
317
|
-
\t\t\t\t\t"
|
245
|
+
match: "(?x)\n\t\t\t\t\t\t([_^-])\n\t\t\t\t\t\t(?:[.>^+_-])\n\t\t\t\t\t"
|
318
246
|
- name: storage.modifier.articulation.named.lilypond
|
319
|
-
captures:
|
320
|
-
|
247
|
+
captures:
|
248
|
+
'1':
|
321
249
|
name: punctuation.definition.function.lilypond
|
322
|
-
match: "(?x)\n\
|
323
|
-
\t\t\t\t\t\t
|
324
|
-
\t\t\t\t\t\t(?:
|
325
|
-
\t\t\t\t\t\t\
|
326
|
-
\t\t\t\t\t\t\t(?:up
|
327
|
-
\t\t\t\t\t\t\t
|
328
|
-
\t\t\t\t\t\t\
|
329
|
-
|
330
|
-
\
|
331
|
-
\t\t\t\t\t\t\t(?: up | down )? mordent | # mordents\n\
|
332
|
-
\t\t\t\t\t\t\tsignumcongruentiae |\n\
|
333
|
-
\t\t\t\t\t\t\t(?: (?:very)? long | short)?fermata(Markup)? | # fermatas\n\
|
334
|
-
\t\t\t\t\t\t\tsegno | (?:var)?coda \n\
|
335
|
-
\t\t\t\t\t\t)\n\
|
336
|
-
\t\t\t\t\t"
|
250
|
+
match: "(?x)\n\t\t\t\t\t\t(\\\\)\n\t\t\t\t\t\t(?: accent | markato | staccatissimo
|
251
|
+
|\t\t # basic accents\n\t\t\t\t\t\t\tespressivo | staccato | tenuto
|
252
|
+
| portato | \n\t\t\t\t\t\t\t(?:up|down)bow | flageolet | thumb |\n\t\t\t\t\t\t\t[lr](?:heel|toe)
|
253
|
+
| open | stopped |\n\t\t\t\t\t\t\t(?:reverse)?turn | trill |\n\t\t\t\t\t\t\tprall(?:
|
254
|
+
prall | mordent | down | up)? | # pralls\n\t\t\t\t\t\t\t(?: up | down
|
255
|
+
| line ) prall | # and\n\t\t\t\t\t\t\t(?: up | down )? mordent
|
256
|
+
| # mordents\n\t\t\t\t\t\t\tsignumcongruentiae |\n\t\t\t\t\t\t\t(?:
|
257
|
+
(?:very)? long | short)?fermata(Markup)? | # fermatas\n\t\t\t\t\t\t\tsegno
|
258
|
+
| (?:var)?coda \n\t\t\t\t\t\t)\n\t\t\t\t\t"
|
337
259
|
- name: storage.modifier.articulation.dynamics.lilypond
|
338
|
-
match: "(?x)\n\
|
339
|
-
\t\t\t\t\t\
|
340
|
-
|
341
|
-
\t\t\t\t\t\tsff? | spp? | [sr]fz | \n\
|
342
|
-
\t\t\t\t\t\t< | > | ! | espressivo # (de)crescendo\n\
|
343
|
-
\t\t\t\t\t"
|
260
|
+
match: "(?x)\n\t\t\t\t\t\t(\\\\) # backslash\n\t\t\t\t\t\tp{1,5} | m[pf] | f{1,4}
|
261
|
+
| fp | # forte, piano, etc.\n\t\t\t\t\t\tsff? | spp? | [sr]fz | \n\t\t\t\t\t\t<
|
262
|
+
| > | ! | espressivo # (de)crescendo\n\t\t\t\t\t"
|
344
263
|
- name: storage.modifier.beam.lilypond
|
345
|
-
match:
|
264
|
+
match: "\\[|\\]"
|
346
265
|
- name: storage.modifier.slur.lilypond
|
347
|
-
match:
|
348
|
-
functions:
|
349
|
-
patterns:
|
266
|
+
match: "\\(|\\)"
|
267
|
+
functions:
|
268
|
+
patterns:
|
350
269
|
- include: "#f_clef"
|
351
270
|
- include: "#f_time-signature"
|
352
271
|
- include: "#f_key-signature"
|
353
272
|
- include: "#f_keywords"
|
354
273
|
- include: "#f_generic"
|
355
|
-
strings:
|
274
|
+
strings:
|
356
275
|
name: string.quoted.double.lilypond
|
357
|
-
captures:
|
358
|
-
|
276
|
+
captures:
|
277
|
+
'0':
|
359
278
|
name: punctuation.definition.string.lilypond
|
360
279
|
begin: "\""
|
361
280
|
end: "\""
|
362
|
-
patterns:
|
281
|
+
patterns:
|
363
282
|
- name: constant.character.escape.lilypond
|
364
|
-
match:
|
365
|
-
f_key-signature:
|
283
|
+
match: "\\\\."
|
284
|
+
f_key-signature:
|
366
285
|
name: meta.element.key-signature.lilypond
|
367
286
|
comment: FIXME
|
368
|
-
music-expr:
|
369
|
-
patterns:
|
287
|
+
music-expr:
|
288
|
+
patterns:
|
370
289
|
- include: "#comments"
|
371
290
|
- include: "#groupings"
|
372
291
|
- include: "#strings"
|
373
292
|
- include: "#functions"
|
374
293
|
- include: "#scheme"
|
375
294
|
- include: "#notes"
|
376
|
-
g_system:
|
295
|
+
g_system:
|
377
296
|
name: meta.system.lilypond
|
378
|
-
endCaptures:
|
379
|
-
|
297
|
+
endCaptures:
|
298
|
+
'0':
|
380
299
|
name: punctuation.section.system.end.lilypond
|
381
300
|
begin: "<<"
|
382
|
-
beginCaptures:
|
383
|
-
|
301
|
+
beginCaptures:
|
302
|
+
'0':
|
384
303
|
name: punctuation.section.system.begin.lilypond
|
385
304
|
end: ">>"
|
386
|
-
patterns:
|
387
|
-
- include: $self
|
388
|
-
f_generic:
|
305
|
+
patterns:
|
306
|
+
- include: "$self"
|
307
|
+
f_generic:
|
389
308
|
name: support.function.general.lilypond
|
390
|
-
captures:
|
391
|
-
|
309
|
+
captures:
|
310
|
+
'1':
|
392
311
|
name: punctuation.definition.function.lilypond
|
393
|
-
match: (
|
394
|
-
groupings:
|
395
|
-
patterns:
|
312
|
+
match: "(\\\\)[a-zA-Z-]+\\b"
|
313
|
+
groupings:
|
314
|
+
patterns:
|
396
315
|
- include: "#g_system"
|
397
316
|
- include: "#g_relative"
|
398
317
|
- include: "#g_times"
|
399
318
|
- include: "#group"
|
400
|
-
group:
|
319
|
+
group:
|
401
320
|
name: meta.music-expression.lilypond
|
402
|
-
endCaptures:
|
403
|
-
|
321
|
+
endCaptures:
|
322
|
+
'0':
|
404
323
|
name: punctuation.section.group.end.lilypond
|
405
324
|
begin: "{"
|
406
|
-
beginCaptures:
|
407
|
-
|
325
|
+
beginCaptures:
|
326
|
+
'0':
|
408
327
|
name: punctuation.section.group.begin.lilypond
|
409
328
|
end: "}"
|
410
|
-
patterns:
|
329
|
+
patterns:
|
411
330
|
- include: "#music-expr"
|
412
|
-
g_header:
|
331
|
+
g_header:
|
413
332
|
name: meta.header.lilypond
|
414
|
-
endCaptures:
|
415
|
-
|
333
|
+
endCaptures:
|
334
|
+
'0':
|
416
335
|
name: punctuation.section.group.end.lilypond
|
417
|
-
begin: ((
|
418
|
-
beginCaptures:
|
419
|
-
|
336
|
+
begin: "((\\\\)header)\\s*({)"
|
337
|
+
beginCaptures:
|
338
|
+
'1':
|
420
339
|
name: support.function.section.header.lilypond
|
421
|
-
|
340
|
+
'2':
|
422
341
|
name: punctuation.definition.function.lilypond
|
423
|
-
|
342
|
+
'3':
|
424
343
|
name: punctuation.section.group.begin.lilypond
|
425
344
|
end: "}"
|
426
|
-
patterns:
|
345
|
+
patterns:
|
427
346
|
- include: "#comments"
|
428
347
|
- include: "#strings"
|
429
348
|
- include: "#scheme"
|
@@ -431,62 +350,52 @@ repository:
|
|
431
350
|
- name: punctuation.separator.key-value.lilypond
|
432
351
|
match: "="
|
433
352
|
- name: support.constant.header.lilypond
|
434
|
-
match: "(?x)\n\
|
435
|
-
\t\t\t\t\t\
|
436
|
-
|
437
|
-
\t\t\t\t\t\tpiece | breakbefore | copyright | tagline | enteredby\n\
|
438
|
-
\t\t\t\t\t"
|
353
|
+
match: "(?x)\n\t\t\t\t\t\tdedication | title | subtitle | subsubtitle | poet
|
354
|
+
|\n\t\t\t\t\t\tcomposer | meter | opus | arranger | instrument |\n\t\t\t\t\t\tpiece
|
355
|
+
| breakbefore | copyright | tagline | enteredby\n\t\t\t\t\t"
|
439
356
|
- name: support.constant.header.mutopia.lilypond
|
440
|
-
match: "(?x)\n\
|
441
|
-
\t\t\t\t\t\
|
442
|
-
\t\t\t\t\t\
|
443
|
-
|
444
|
-
\t\t\t\t\t\tmaintainerWeb | lastupdated\n\
|
445
|
-
\t\t\t\t\t"
|
446
|
-
g_m_group:
|
357
|
+
match: "(?x)\n\t\t\t\t\t\tmutopiatitle | mutopiacomposer | mutopiapoet |\n\t\t\t\t\t\tmutopiaopus
|
358
|
+
| mutopiainstrument | date | source |\n\t\t\t\t\t\tstyle | maintainer | maintainerEmail
|
359
|
+
|\n\t\t\t\t\t\tmaintainerWeb | lastupdated\n\t\t\t\t\t"
|
360
|
+
g_m_group:
|
447
361
|
name: meta.group.lilypond
|
448
|
-
endCaptures:
|
449
|
-
|
362
|
+
endCaptures:
|
363
|
+
'0':
|
450
364
|
name: punctuation.section.group.end.lilypond
|
451
365
|
begin: "{"
|
452
|
-
beginCaptures:
|
453
|
-
|
366
|
+
beginCaptures:
|
367
|
+
'0':
|
454
368
|
name: punctuation.section.group.begin.lilypond
|
455
369
|
end: "}"
|
456
|
-
patterns:
|
370
|
+
patterns:
|
457
371
|
- include: "#f_generic"
|
458
372
|
- include: "#strings"
|
459
373
|
- include: "#comments"
|
460
374
|
- include: "#scheme"
|
461
375
|
- include: "#g_m_group"
|
462
|
-
f_time-signature:
|
376
|
+
f_time-signature:
|
463
377
|
name: meta.element.time-signature.lilypond
|
464
|
-
captures:
|
465
|
-
|
378
|
+
captures:
|
379
|
+
'1':
|
466
380
|
name: support.function.element.lilypond
|
467
|
-
|
381
|
+
'2':
|
468
382
|
name: punctuation.definition.function.lilypond
|
469
|
-
|
383
|
+
'3':
|
470
384
|
name: constant.numeric.time-signature.lilypond
|
471
|
-
match: "(?x)\n\
|
472
|
-
\t\t\t\t(
|
473
|
-
\t\t\t\t([1-9][0-9]*/[1-9][0-9]*)?\n\
|
474
|
-
\t\t\t"
|
385
|
+
match: "(?x)\n\t\t\t\t((\\\\) time) \\s+ # backslash + \"time\" + spaces (groups
|
386
|
+
1-2)\n\t\t\t\t([1-9][0-9]*/[1-9][0-9]*)?\n\t\t\t"
|
475
387
|
uuid: F25B30BE-0526-4D92-806C-F0D678DDF669
|
476
|
-
foldingStartMarker: (
|
477
|
-
patterns:
|
388
|
+
foldingStartMarker: "(\\{|<<)\\s*$"
|
389
|
+
patterns:
|
478
390
|
- include: "#comments"
|
479
391
|
- include: "#g_header"
|
480
392
|
- include: "#groupings"
|
481
393
|
- include: "#strings"
|
482
394
|
- include: "#scheme"
|
483
395
|
- include: "#functions"
|
484
|
-
foldingStopMarker: (
|
485
|
-
keyEquivalent: ^~L
|
486
|
-
comment: "\n\
|
487
|
-
|
488
|
-
|
489
|
-
\t\
|
490
|
-
\t\tsnippets, and pretty much no interesting functionality at\n\
|
491
|
-
\t\tall, other than a \"Run\" menu option. :)\n\
|
492
|
-
\t"
|
396
|
+
foldingStopMarker: "(\\}|>>)"
|
397
|
+
keyEquivalent: "^~L"
|
398
|
+
comment: "\n\t\tThis bundle is, as can easily be seen, far from complete,\n\t\tbut
|
399
|
+
it should still be as useful as the Lilypond.app pyobjc\n\t\tapplication, which
|
400
|
+
has no syntax coloring, no way to do\n\t\tsnippets, and pretty much no interesting
|
401
|
+
functionality at\n\t\tall, other than a \"Run\" menu option. :)\n\t"
|