ultraviolet 0.10.2 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (178) hide show
  1. data/.gitmodules +3 -0
  2. data/Gemfile +10 -0
  3. data/Gemfile.lock +28 -0
  4. data/Rakefile +18 -47
  5. data/Readme.md +89 -0
  6. data/bin/theme2latexrender +0 -0
  7. data/bin/theme2xhtmlrender +0 -0
  8. data/bin/uv +0 -0
  9. data/lib/uv.rb +78 -75
  10. data/lib/uv/render_processor.rb +128 -119
  11. data/lib/uv/utility.rb +62 -62
  12. data/lib/uv/version.rb +3 -0
  13. data/spec/spec_helper.rb +2 -0
  14. data/spec/ultraviolet_spec.rb +13 -0
  15. data/ultraviolet.gemspec +15 -0
  16. metadata +123 -271
  17. data/History.txt +0 -25
  18. data/Manifest.txt +0 -233
  19. data/README.txt +0 -52
  20. data/syntax/actionscript.syntax +0 -97
  21. data/syntax/active4d.syntax +0 -276
  22. data/syntax/active4d_html.syntax +0 -311
  23. data/syntax/active4d_ini.syntax +0 -50
  24. data/syntax/active4d_library.syntax +0 -21
  25. data/syntax/ada.syntax +0 -33
  26. data/syntax/antlr.syntax +0 -151
  27. data/syntax/apache.syntax +0 -191
  28. data/syntax/applescript.syntax +0 -384
  29. data/syntax/asp.syntax +0 -70
  30. data/syntax/asp_vb.net.syntax +0 -129
  31. data/syntax/bibtex.syntax +0 -151
  32. data/syntax/blog_html.syntax +0 -41
  33. data/syntax/blog_markdown.syntax +0 -42
  34. data/syntax/blog_text.syntax +0 -27
  35. data/syntax/blog_textile.syntax +0 -27
  36. data/syntax/build.syntax +0 -53
  37. data/syntax/bulletin_board.syntax +0 -287
  38. data/syntax/c++.syntax +0 -109
  39. data/syntax/c.syntax +0 -326
  40. data/syntax/cake.syntax +0 -55
  41. data/syntax/camlp4.syntax +0 -36
  42. data/syntax/cm.syntax +0 -32
  43. data/syntax/coldfusion.syntax +0 -119
  44. data/syntax/context_free.syntax +0 -176
  45. data/syntax/cs.syntax +0 -59
  46. data/syntax/css.syntax +0 -195
  47. data/syntax/css_experimental.syntax +0 -1925
  48. data/syntax/csv.syntax +0 -68
  49. data/syntax/d.syntax +0 -142
  50. data/syntax/diff.syntax +0 -81
  51. data/syntax/dokuwiki.syntax +0 -204
  52. data/syntax/dot.syntax +0 -47
  53. data/syntax/doxygen.syntax +0 -43
  54. data/syntax/dylan.syntax +0 -62
  55. data/syntax/eiffel.syntax +0 -78
  56. data/syntax/erlang.syntax +0 -922
  57. data/syntax/f-script.syntax +0 -80
  58. data/syntax/fortran.syntax +0 -141
  59. data/syntax/fxscript.syntax +0 -142
  60. data/syntax/greasemonkey.syntax +0 -34
  61. data/syntax/gri.syntax +0 -83
  62. data/syntax/groovy.syntax +0 -191
  63. data/syntax/gtd.syntax +0 -22
  64. data/syntax/gtdalt.syntax +0 -143
  65. data/syntax/haml.syntax +0 -88
  66. data/syntax/haskell.syntax +0 -88
  67. data/syntax/html-asp.syntax +0 -27
  68. data/syntax/html.syntax +0 -362
  69. data/syntax/html_django.syntax +0 -36
  70. data/syntax/html_for_asp.net.syntax +0 -424
  71. data/syntax/html_mason.syntax +0 -119
  72. data/syntax/html_rails.syntax +0 -40
  73. data/syntax/html_tcl.syntax +0 -26
  74. data/syntax/icalendar.syntax +0 -32
  75. data/syntax/inform.syntax +0 -48
  76. data/syntax/ini.syntax +0 -55
  77. data/syntax/installer_distribution_script.syntax +0 -77
  78. data/syntax/io.syntax +0 -81
  79. data/syntax/java.syntax +0 -211
  80. data/syntax/javaproperties.syntax +0 -20
  81. data/syntax/javascript.syntax +0 -256
  82. data/syntax/javascript_+_prototype.syntax +0 -72
  83. data/syntax/javascript_+_prototype_bracketed.syntax +0 -140
  84. data/syntax/jquery_javascript.syntax +0 -114
  85. data/syntax/json.syntax +0 -136
  86. data/syntax/languagedefinition.syntax +0 -708
  87. data/syntax/latex.syntax +0 -566
  88. data/syntax/latex_beamer.syntax +0 -41
  89. data/syntax/latex_log.syntax +0 -50
  90. data/syntax/latex_memoir.syntax +0 -64
  91. data/syntax/lexflex.syntax +0 -219
  92. data/syntax/lighttpd.syntax +0 -54
  93. data/syntax/lilypond.syntax +0 -492
  94. data/syntax/lisp.syntax +0 -61
  95. data/syntax/literate_haskell.syntax +0 -24
  96. data/syntax/logo.syntax +0 -29
  97. data/syntax/logtalk.syntax +0 -152
  98. data/syntax/lua.syntax +0 -86
  99. data/syntax/m.syntax +0 -142
  100. data/syntax/macports_portfile.syntax +0 -163
  101. data/syntax/mail.syntax +0 -118
  102. data/syntax/makefile.syntax +0 -36
  103. data/syntax/man.syntax +0 -17
  104. data/syntax/markdown.syntax +0 -543
  105. data/syntax/mediawiki.syntax +0 -567
  106. data/syntax/mel.syntax +0 -92
  107. data/syntax/mips.syntax +0 -66
  108. data/syntax/mod_perl.syntax +0 -50
  109. data/syntax/modula-3.syntax +0 -47
  110. data/syntax/moinmoin.syntax +0 -189
  111. data/syntax/mootools.syntax +0 -572
  112. data/syntax/movable_type.syntax +0 -162
  113. data/syntax/multimarkdown.syntax +0 -39
  114. data/syntax/objective-c++.syntax +0 -18
  115. data/syntax/objective-c.syntax +0 -233
  116. data/syntax/ocaml.syntax +0 -764
  117. data/syntax/ocamllex.syntax +0 -167
  118. data/syntax/ocamlyacc.syntax +0 -184
  119. data/syntax/opengl.syntax +0 -14
  120. data/syntax/pascal.syntax +0 -77
  121. data/syntax/perl.syntax +0 -1115
  122. data/syntax/php.syntax +0 -1253
  123. data/syntax/plain_text.syntax +0 -32
  124. data/syntax/pmwiki.syntax +0 -113
  125. data/syntax/postscript.syntax +0 -114
  126. data/syntax/processing.syntax +0 -106
  127. data/syntax/prolog.syntax +0 -40
  128. data/syntax/property_list.syntax +0 -635
  129. data/syntax/python.syntax +0 -868
  130. data/syntax/python_django.syntax +0 -21
  131. data/syntax/qmake_project.syntax +0 -114
  132. data/syntax/qt_c++.syntax +0 -26
  133. data/syntax/quake3_config.syntax +0 -32
  134. data/syntax/r.syntax +0 -81
  135. data/syntax/r_console.syntax +0 -16
  136. data/syntax/ragel.syntax +0 -201
  137. data/syntax/rd_r_documentation.syntax +0 -91
  138. data/syntax/regexp.syntax +0 -50
  139. data/syntax/regular_expressions_oniguruma.syntax +0 -107
  140. data/syntax/regular_expressions_python.syntax +0 -109
  141. data/syntax/release_notes.syntax +0 -46
  142. data/syntax/remind.syntax +0 -253
  143. data/syntax/restructuredtext.syntax +0 -250
  144. data/syntax/rez.syntax +0 -80
  145. data/syntax/ruby.syntax +0 -1035
  146. data/syntax/ruby_experimental.syntax +0 -145
  147. data/syntax/ruby_on_rails.syntax +0 -88
  148. data/syntax/s5.syntax +0 -69
  149. data/syntax/scheme.syntax +0 -347
  150. data/syntax/scilab.syntax +0 -41
  151. data/syntax/setext.syntax +0 -147
  152. data/syntax/shell-unix-generic.syntax +0 -384
  153. data/syntax/slate.syntax +0 -149
  154. data/syntax/smarty.syntax +0 -63
  155. data/syntax/sql.syntax +0 -237
  156. data/syntax/sql_rails.syntax +0 -18
  157. data/syntax/ssh-config.syntax +0 -33
  158. data/syntax/standard_ml.syntax +0 -121
  159. data/syntax/strings_file.syntax +0 -39
  160. data/syntax/subversion_commit_message.syntax +0 -36
  161. data/syntax/sweave.syntax +0 -84
  162. data/syntax/swig.syntax +0 -57
  163. data/syntax/tcl.syntax +0 -152
  164. data/syntax/template_toolkit.syntax +0 -121
  165. data/syntax/tex.syntax +0 -86
  166. data/syntax/tex_math.syntax +0 -49
  167. data/syntax/textile.syntax +0 -215
  168. data/syntax/tsv.syntax +0 -50
  169. data/syntax/twiki.syntax +0 -241
  170. data/syntax/txt2tags.syntax +0 -79
  171. data/syntax/vectorscript.syntax +0 -57
  172. data/syntax/xhtml_1.0.syntax +0 -4027
  173. data/syntax/xml.syntax +0 -180
  174. data/syntax/xml_strict.syntax +0 -92
  175. data/syntax/xsl.syntax +0 -60
  176. data/syntax/yaml.syntax +0 -160
  177. data/syntax/yui_javascript.syntax +0 -176
  178. data/test/test_uv.rb +0 -0
@@ -1,27 +0,0 @@
1
- ---
2
- name: "Blog \xE2\x80\x94 Textile"
3
- fileTypes:
4
- - blog.textile
5
- firstLineMatch: "^Type: Blog Post \\(Textile\\)"
6
- scopeName: text.blog.textile
7
- uuid: 32E65853-CDBD-401A-ADBE-F94F195249BE
8
- patterns:
9
- - name: meta.header.blog
10
- captures:
11
- "1":
12
- name: keyword.other.blog
13
- "2":
14
- name: punctuation.separator.key-value.blog
15
- "3":
16
- name: string.unquoted.blog
17
- match: ^([Tt]itle|[Dd]ate|[Bb]asename|[Kk]eywords|[Bb]log|[Tt]ype|[Ll]ink|[Pp]ost|[Tt]ags|[Cc]omments|[Pp]ings?|[Cc]ategory|[Ss]tatus|[Ff]ormat)(:)\s*(.*)$\n?
18
- - name: invalid.illegal.meta.header.blog
19
- match: ^([A-Za-z0-9]+):\s*(.*)$\n?
20
- - name: text.html.textile
21
- begin: ^(?![A-Za-z0-9]+:)
22
- end: ^(?=not)possible$
23
- patterns:
24
- - name: meta.separator.blog
25
- match: "^\xE2\x9C\x82-[\xE2\x9C\x82-]+$\\n"
26
- - include: text.html.textile
27
- keyEquivalent: ^~B
@@ -1,53 +0,0 @@
1
- ---
2
- name: NAnt Build File
3
- fileTypes:
4
- - build
5
- scopeName: source.nant-build
6
- uuid: 1BA72668-707C-11D9-A928-000D93589AF6
7
- foldingStartMarker: <[^!?/>]+|<!--
8
- patterns:
9
- - name: comment.block.nant
10
- captures:
11
- "0":
12
- name: punctuation.definition.comment.nant
13
- begin: <!--
14
- end: -->
15
- - name: meta.tag.nant
16
- captures:
17
- "1":
18
- name: punctuation.definition.tag.nant
19
- "2":
20
- name: entity.name.tag.nant
21
- begin: (</?)([-_a-zA-Z0-9:]+)
22
- end: (/?>)
23
- patterns:
24
- - name: entity.other.attribute-name.nant
25
- match: " ([a-zA-Z-]+)"
26
- - name: string.quoted.double.nant
27
- endCaptures:
28
- "0":
29
- name: punctuation.definition.string.end.nant
30
- begin: "\""
31
- beginCaptures:
32
- "0":
33
- name: punctuation.definition.string.begin.nant
34
- end: "\""
35
- - name: string.quoted.single.nant
36
- endCaptures:
37
- "0":
38
- name: punctuation.definition.string.end.nant
39
- begin: "'"
40
- beginCaptures:
41
- "0":
42
- name: punctuation.definition.string.begin.nant
43
- end: "'"
44
- - name: constant.character.entity.nant
45
- captures:
46
- "1":
47
- name: punctuation.definition.constant.nant
48
- "3":
49
- name: punctuation.definition.constant.nant
50
- match: (&)([a-zA-Z]+|#[0-9]+|#x[0-9a-fA-F]+)(;)
51
- - name: invalid.illegal.bad-ampersand.nant
52
- match: "&"
53
- foldingStopMarker: />|</[^?>]+|-->
@@ -1,287 +0,0 @@
1
- ---
2
- name: Bulletin Board
3
- fileTypes:
4
- - bbcode
5
- scopeName: text.bbcode
6
- uuid: AC4E0E7E-CC15-4394-A858-6C7E3C09C414
7
- foldingStartMarker: |-
8
- (?x)
9
- (\[(?i:quote|code|list)\b.*?\]
10
- |<!--(?!.*-->)
11
- |\{\s*($|\?>\s*$|//|/\*(.*\*/\s*$|(?!.*?\*/)))
12
- )
13
- patterns:
14
- - captures:
15
- "0":
16
- name: meta.tag.bbcode
17
- "1":
18
- name: punctuation.definition.tag.bbcode
19
- "2":
20
- name: punctuation.definition.tag.bbcode
21
- begin: (\[)(?i:list)(\])
22
- end: (\[/)(?i:list)(\])
23
- patterns:
24
- - captures:
25
- "0":
26
- name: meta.tag.bbcode
27
- "1":
28
- name: punctuation.definition.tag.bbcode
29
- begin: (\[\*\])
30
- contentName: markup.list.unnumbered.bbcode
31
- end: (?=\[\*\]|\[/(?i:list)\])
32
- patterns:
33
- - include: $self
34
- - endCaptures:
35
- "0":
36
- name: meta.tag.bbcode
37
- "1":
38
- name: punctuation.definition.tag.bbcode
39
- "2":
40
- name: punctuation.definition.tag.bbcode
41
- begin: (\[)(?i:list)=(1|a)(\])
42
- beginCaptures:
43
- "0":
44
- name: meta.tag.bbcode
45
- "1":
46
- name: punctuation.definition.tag.bbcode
47
- "2":
48
- name: constant.other.list-type.bbcode
49
- "3":
50
- name: punctuation.definition.tag.bbcode
51
- end: (\[/)(?i:list)(\])
52
- patterns:
53
- - captures:
54
- "0":
55
- name: meta.tag.bbcode
56
- "1":
57
- name: punctuation.definition.tag.bbcode
58
- begin: (\[\*\])
59
- contentName: markup.list.numbered.bbcode
60
- end: (?=\[\*\]|\[/(?i:list)\])
61
- patterns:
62
- - include: $self
63
- - captures:
64
- "0":
65
- name: meta.tag.bbcode
66
- "1":
67
- name: punctuation.definition.tag.bbcode
68
- "2":
69
- name: punctuation.definition.tag.bbcode
70
- begin: (\[)(?i:quote)(?:=[^\]]+)?(\])
71
- contentName: markup.quote.bbcode
72
- end: (\[/)(?i:quote)(\])
73
- patterns:
74
- - include: $self
75
- - captures:
76
- "0":
77
- name: meta.tag.bbcode
78
- "1":
79
- name: punctuation.definition.tag.bbcode
80
- "2":
81
- name: punctuation.definition.tag.bbcode
82
- begin: (\[)(?i:code)(\])
83
- contentName: markup.raw.block.bbcode
84
- end: (\[/)(?i:code)(\])
85
- - captures:
86
- "0":
87
- name: meta.tag.bbcode
88
- "1":
89
- name: punctuation.definition.tag.bbcode
90
- "2":
91
- name: punctuation.definition.tag.bbcode
92
- begin: (\[)(?i:i)(\])
93
- contentName: markup.italic.bbcode
94
- end: (\[/)(?i:i)(\])
95
- patterns:
96
- - include: $self
97
- - captures:
98
- "0":
99
- name: meta.tag.bbcode
100
- "1":
101
- name: punctuation.definition.tag.bbcode
102
- "2":
103
- name: punctuation.definition.tag.bbcode
104
- begin: (\[)(?i:b)(\])
105
- contentName: markup.bold.bbcode
106
- end: (\[/)(?i:b)(\])
107
- patterns:
108
- - include: $self
109
- - captures:
110
- "0":
111
- name: meta.tag.bbcode
112
- "1":
113
- name: punctuation.definition.tag.bbcode
114
- "2":
115
- name: punctuation.definition.tag.bbcode
116
- begin: (\[)(?i:u)(\])
117
- contentName: markup.underline.bbcode
118
- end: (\[/)(?i:u)(\])
119
- patterns:
120
- - include: $self
121
- - captures:
122
- "0":
123
- name: meta.tag.bbcode
124
- "1":
125
- name: punctuation.definition.tag.bbcode
126
- "2":
127
- name: punctuation.definition.tag.bbcode
128
- begin: (\[)(?i:strike)(\])
129
- contentName: markup.other.strikethrough.bbcode
130
- end: (\[/)(?i:strike)(\])
131
- patterns:
132
- - include: $self
133
- - endCaptures:
134
- "0":
135
- name: meta.tag.bbcode
136
- "1":
137
- name: punctuation.definition.tag.bbcode
138
- "2":
139
- name: punctuation.definition.tag.bbcode
140
- begin: |-
141
- (?x)(\[)(?i:color)=(
142
- (?i:(red|green|blue|yellow
143
- |white|black|pink
144
- |purple|brown|grey))
145
- |(\#([0-9a-fA-F]{6}))
146
- |([^\]]+))
147
- (\])
148
- contentName: markup.other.colored.bbcode
149
- beginCaptures:
150
- "6":
151
- name: invalid.illegal.expected-a-color.bbcode
152
- "7":
153
- name: punctuation.definition.tag.bbcode
154
- "0":
155
- name: meta.tag.bbcode
156
- "1":
157
- name: punctuation.definition.tag.bbcode
158
- "2":
159
- name: constant.other.named-color.bbcode
160
- "3":
161
- name: constant.other.rgb-value.bbcode
162
- end: (\[/)(?i:color)(\])
163
- patterns:
164
- - include: $self
165
- - endCaptures:
166
- "0":
167
- name: meta.tag.bbcode
168
- "1":
169
- name: punctuation.definition.tag.bbcode
170
- "2":
171
- name: punctuation.definition.tag.bbcode
172
- begin: |-
173
- (?x)(\[)(?i:size)=
174
- (?i:([0-9]{1,3})\b
175
- |([^\]]+))
176
- (\])
177
- contentName: markup.other.resized.bbcode
178
- beginCaptures:
179
- "0":
180
- name: meta.tag.bbcode
181
- "1":
182
- name: punctuation.definition.tag.bbcode
183
- "2":
184
- name: constant.numeric.size.bbcode
185
- "3":
186
- name: invalid.illegal.expected-a-size.bbcode
187
- "4":
188
- name: punctuation.definition.tag.bbcode
189
- end: (\[/)(?i:size)(\])
190
- patterns:
191
- - include: $self
192
- - name: meta.link.inline.bbcode
193
- endCaptures:
194
- "0":
195
- name: meta.tag.bbcode
196
- "1":
197
- name: punctuation.definition.tag.bbcode
198
- "2":
199
- name: punctuation.definition.tag.bbcode
200
- begin: (\[)(?i:url)=([^\]]+)(\])
201
- contentName: string.other.link.title.bbcode
202
- beginCaptures:
203
- "0":
204
- name: meta.tag.bbcode
205
- "1":
206
- name: punctuation.definition.tag.bbcode
207
- "2":
208
- name: markup.underline.link.bbcode
209
- "3":
210
- name: punctuation.definition.tag.bbcode
211
- end: (\[/)(?i:url)(\])
212
- patterns:
213
- - include: $self
214
- - name: meta.link.inline.bbcode
215
- captures:
216
- "0":
217
- name: meta.tag.bbcode
218
- "1":
219
- name: punctuation.definition.tag.bbcode
220
- "2":
221
- name: punctuation.definition.tag.bbcode
222
- begin: (\[)(?i:url)(\])
223
- contentName: markup.underline.link.bbcode
224
- end: (\[/)(?i:url)(\])
225
- patterns:
226
- - match: "[\\[]]+"
227
- - name: meta.link.inline.bbcode
228
- captures:
229
- "0":
230
- name: meta.tag.bbcode
231
- "1":
232
- name: punctuation.definition.tag.bbcode
233
- "2":
234
- name: punctuation.definition.tag.bbcode
235
- begin: (\[)(?i:email)(\])
236
- contentName: markup.underline.link.email.bbcode
237
- end: (\[/)(?i:email)(\])
238
- patterns:
239
- - match: "[\\[]]+"
240
- - name: meta.link.image.bbcode
241
- endCaptures:
242
- "0":
243
- name: meta.tag.bbcode
244
- "1":
245
- name: punctuation.definition.tag.bbcode
246
- "2":
247
- name: punctuation.definition.tag.bbcode
248
- begin: (\[)(?i:img)(:((?i:right|left|top))|([^\]]+))?(\])
249
- contentName: markup.underline.link.image.bbcode
250
- beginCaptures:
251
- "0":
252
- name: meta.tag.bbcode
253
- "1":
254
- name: punctuation.definition.tag.bbcode
255
- "3":
256
- name: constant.other.alignment.bbcode
257
- "4":
258
- name: invalid.illegal.expected-an-alignment.bbcode
259
- "5":
260
- name: punctuation.definition.tag.bbcode
261
- end: (\[/)(?i:img)(\])
262
- patterns:
263
- - match: "[\\[]]+?"
264
- - name: constant.other.smiley.bbcode
265
- captures:
266
- "3":
267
- name: punctuation.definition.constant.bbcode
268
- "5":
269
- name: punctuation.definition.constant.bbcode
270
- match: |-
271
- (?x)
272
- (
273
- (
274
- (:)
275
- (mad|rolleyes|cool|eek|confused|devious|
276
- judge|scared|eyebrow|bigdumbgrin)
277
- (:)
278
- )
279
- | (?::\)|;\)|:D|:\(|:p|:o)
280
- )
281
- foldingStopMarker: |-
282
- (?x)
283
- (\[/(?i:quote|code|list)\b.*?\]
284
- |^\s*-->
285
- |(^|\s)\}
286
- )
287
- keyEquivalent: ^~B
@@ -1,109 +0,0 @@
1
- ---
2
- name: C++
3
- fileTypes:
4
- - cc
5
- - cpp
6
- - cp
7
- - cxx
8
- - c++
9
- - C
10
- - h
11
- - hh
12
- - hpp
13
- - h++
14
- firstLineMatch: -\*- C\+\+ -\*-
15
- scopeName: source.c++
16
- uuid: 26251B18-6B1D-11D9-AFDB-000D93589AF6
17
- foldingStartMarker: "(?x)\n\
18
- \t\t /\\*\\*(?!\\*)\n\
19
- \t\t|^(?![^{]*?//|[^{]*?/\\*(?!.*?\\*/.*?\\{)).*?\\{\\s*($|//|/\\*(?!.*?\\*/.*\\S))\n\
20
- \t"
21
- patterns:
22
- - include: source.c
23
- - name: storage.modifier.c++
24
- match: \b(friend|explicit|private|protected|public|virtual)\b
25
- - name: keyword.control.c++
26
- match: \b(catch|namespace|operator|try|throw|using)\b
27
- - name: keyword.control.c++
28
- match: \bdelete\b(\s*\[\])?|\bnew\b(?!])
29
- - name: variable.other.readwrite.member.c++
30
- match: \b(f|m)[A-Z]\w*\b
31
- comment: common C++ instance var naming idiom -- fMemberName
32
- - name: variable.language.c++
33
- match: \b(this)\b
34
- - name: storage.type.template.c++
35
- match: \btemplate\b\s*
36
- - name: keyword.operator.cast.c++
37
- match: \b(const_cast|dynamic_cast|reinterpret_cast|static_cast)\b\s*
38
- - name: keyword.operator.c++
39
- match: \b(and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq)\b
40
- - name: storage.type.c++
41
- match: \b(class|wchar_t)\b
42
- - name: storage.modifier.c++
43
- match: \b(export|mutable|typename)\b
44
- - name: meta.function.destructor.c++
45
- endCaptures:
46
- "0":
47
- name: punctuation.definition.parameters.c
48
- begin: "(?x)\n\
49
- \t\t\t\t(?: ^ # begin-of-line\n\
50
- \t\t\t\t | (?: (?<!else|new|=) ) # or word + space before name\n\
51
- \t\t\t\t)\n\
52
- \t\t\t\t((?:[A-Za-z_][A-Za-z0-9_]*::)*+~[A-Za-z_][A-Za-z0-9_]*) # actual name\n\
53
- \t\t\t\t \\s*(\\() (?=[^)]*\\) # match \"(\" and use look-ahead for \")\"\n\
54
- \t\t\t\t (\\s*=\\s*0)?\\s* # optional pure modifier\n\
55
- \t\t\t\t (\\{|\\n)) # start bracket or end-of-line\n\
56
- \t\t\t"
57
- beginCaptures:
58
- "1":
59
- name: entity.name.function.c
60
- "2":
61
- name: punctuation.definition.parameters.c
62
- end: \)
63
- patterns:
64
- - include: $base
65
- - name: meta.function.destructor.prototype.c++
66
- endCaptures:
67
- "0":
68
- name: punctuation.definition.parameters.c
69
- begin: "(?x)\n\
70
- \t\t\t\t(?: ^ # begin-of-line\n\
71
- \t\t\t\t | (?: (?<!else|new|=) ) # or word + space before name\n\
72
- \t\t\t\t)\n\
73
- \t\t\t\t((?:[A-Za-z_][A-Za-z0-9_]*::)*+~[A-Za-z_][A-Za-z0-9_]*) # actual name\n\
74
- \t\t\t\t \\s*(\\() (?=[^)]*\\) # match \"(\" and use look-ahead for \")\"\n\
75
- \t\t\t\t (\\s*=\\s*0)?\\s* # optional pure modifier\n\
76
- \t\t\t\t ;) # terminating semi-colon\n\
77
- \t\t\t"
78
- beginCaptures:
79
- "1":
80
- name: entity.name.function.c
81
- "2":
82
- name: punctuation.definition.parameters.c
83
- end: \)
84
- patterns:
85
- - include: $base
86
- - name: meta.function.constructor.c++
87
- endCaptures:
88
- "0":
89
- name: punctuation.definition.parameters.c
90
- begin: "(?x)\n\
91
- \t\t\t\t(?: ^\\s*) # begin-of-line\n\
92
- \t\t\t\t((?!while|for|do|if|else|switch|catch|enumerate|r?iterate)[A-Za-z_][A-Za-z0-9_:]*) # actual name\n\
93
- \t\t\t\t \\s*(\\() (?= # match \"(\"\n\
94
- \t\t\t\t (?<arg> [^()]++ | \\( \\g<arg>*+ \\) )*+ # function arguments\n\
95
- \t\t\t\t \\) # match \")\"\n\
96
- \t\t\t\t (\\s* : (?<base> \\s* [A-Za-z_][A-Za-z0-9_]* \\( \\g<arg>*+ \\) ) (, \\g<base>)* (, (?=\\s*\\n))? )? \\s* # optional base constructors\n\
97
- \t\t\t\t (\\{|\\n)) # start bracket or end-of-line\n\
98
- \t\t\t"
99
- beginCaptures:
100
- "1":
101
- name: entity.name.function.c
102
- "2":
103
- name: punctuation.definition.parameters.c
104
- end: \)
105
- patterns:
106
- - include: $base
107
- foldingStopMarker: (?<!\*)\*\*/|^\s*\}
108
- keyEquivalent: ^~C
109
- comment: I don't think anyone uses .hp. .cp tends to be paired with .h. (I could be wrong. :) -- chris