code_rippa 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (181) hide show
  1. data/.gitignore +6 -0
  2. data/Gemfile +6 -0
  3. data/LICENSE +22 -0
  4. data/README.md +35 -0
  5. data/Rakefile +2 -0
  6. data/bin/code_rippa +78 -0
  7. data/code_rippa.gemspec +21 -0
  8. data/lib/code_rippa/render/latex/active4d.render +132 -0
  9. data/lib/code_rippa/render/latex/all_hallows_eve.render +96 -0
  10. data/lib/code_rippa/render/latex/amy.render +171 -0
  11. data/lib/code_rippa/render/latex/blackboard.render +111 -0
  12. data/lib/code_rippa/render/latex/brilliance_black.render +552 -0
  13. data/lib/code_rippa/render/latex/brilliance_dull.render +561 -0
  14. data/lib/code_rippa/render/latex/cobalt.render +162 -0
  15. data/lib/code_rippa/render/latex/dawn.render +126 -0
  16. data/lib/code_rippa/render/latex/eiffel.render +132 -0
  17. data/lib/code_rippa/render/latex/espresso_libre.render +123 -0
  18. data/lib/code_rippa/render/latex/idle.render +93 -0
  19. data/lib/code_rippa/render/latex/iplastic.render +99 -0
  20. data/lib/code_rippa/render/latex/lazy.render +96 -0
  21. data/lib/code_rippa/render/latex/mac_classic.render +135 -0
  22. data/lib/code_rippa/render/latex/magicwb_amiga.render +117 -0
  23. data/lib/code_rippa/render/latex/moc.render +186 -0
  24. data/lib/code_rippa/render/latex/pastels_on_dark.render +204 -0
  25. data/lib/code_rippa/render/latex/slush_poppies.render +123 -0
  26. data/lib/code_rippa/render/latex/spacecadet.render +81 -0
  27. data/lib/code_rippa/render/latex/sunburst.render +186 -0
  28. data/lib/code_rippa/render/latex/twilight.render +153 -0
  29. data/lib/code_rippa/render/latex/zenburnesque.render +126 -0
  30. data/lib/code_rippa/syntax/actionscript.syntax +97 -0
  31. data/lib/code_rippa/syntax/active4d.syntax +276 -0
  32. data/lib/code_rippa/syntax/active4d_html.syntax +311 -0
  33. data/lib/code_rippa/syntax/active4d_ini.syntax +50 -0
  34. data/lib/code_rippa/syntax/active4d_library.syntax +21 -0
  35. data/lib/code_rippa/syntax/ada.syntax +33 -0
  36. data/lib/code_rippa/syntax/antlr.syntax +151 -0
  37. data/lib/code_rippa/syntax/apache.syntax +191 -0
  38. data/lib/code_rippa/syntax/applescript.syntax +384 -0
  39. data/lib/code_rippa/syntax/asp.syntax +70 -0
  40. data/lib/code_rippa/syntax/asp_vb.net.syntax +129 -0
  41. data/lib/code_rippa/syntax/bibtex.syntax +151 -0
  42. data/lib/code_rippa/syntax/blog_html.syntax +41 -0
  43. data/lib/code_rippa/syntax/blog_markdown.syntax +42 -0
  44. data/lib/code_rippa/syntax/blog_text.syntax +27 -0
  45. data/lib/code_rippa/syntax/blog_textile.syntax +27 -0
  46. data/lib/code_rippa/syntax/build.syntax +53 -0
  47. data/lib/code_rippa/syntax/bulletin_board.syntax +287 -0
  48. data/lib/code_rippa/syntax/cake.syntax +55 -0
  49. data/lib/code_rippa/syntax/camlp4.syntax +36 -0
  50. data/lib/code_rippa/syntax/cm.syntax +32 -0
  51. data/lib/code_rippa/syntax/coldfusion.syntax +119 -0
  52. data/lib/code_rippa/syntax/context_free.syntax +176 -0
  53. data/lib/code_rippa/syntax/cs.syntax +59 -0
  54. data/lib/code_rippa/syntax/css.syntax +195 -0
  55. data/lib/code_rippa/syntax/css_experimental.syntax +1925 -0
  56. data/lib/code_rippa/syntax/csv.syntax +68 -0
  57. data/lib/code_rippa/syntax/d.syntax +142 -0
  58. data/lib/code_rippa/syntax/diff.syntax +81 -0
  59. data/lib/code_rippa/syntax/dokuwiki.syntax +204 -0
  60. data/lib/code_rippa/syntax/dot.syntax +47 -0
  61. data/lib/code_rippa/syntax/doxygen.syntax +43 -0
  62. data/lib/code_rippa/syntax/dylan.syntax +62 -0
  63. data/lib/code_rippa/syntax/eiffel.syntax +78 -0
  64. data/lib/code_rippa/syntax/erlang.syntax +922 -0
  65. data/lib/code_rippa/syntax/f-script.syntax +80 -0
  66. data/lib/code_rippa/syntax/fortran.syntax +141 -0
  67. data/lib/code_rippa/syntax/fxscript.syntax +142 -0
  68. data/lib/code_rippa/syntax/greasemonkey.syntax +34 -0
  69. data/lib/code_rippa/syntax/gri.syntax +83 -0
  70. data/lib/code_rippa/syntax/groovy.syntax +191 -0
  71. data/lib/code_rippa/syntax/gtd.syntax +22 -0
  72. data/lib/code_rippa/syntax/gtdalt.syntax +143 -0
  73. data/lib/code_rippa/syntax/haml.syntax +88 -0
  74. data/lib/code_rippa/syntax/haskell.syntax +88 -0
  75. data/lib/code_rippa/syntax/html-asp.syntax +27 -0
  76. data/lib/code_rippa/syntax/html.syntax +362 -0
  77. data/lib/code_rippa/syntax/html_django.syntax +36 -0
  78. data/lib/code_rippa/syntax/html_for_asp.net.syntax +424 -0
  79. data/lib/code_rippa/syntax/html_mason.syntax +119 -0
  80. data/lib/code_rippa/syntax/html_rails.syntax +40 -0
  81. data/lib/code_rippa/syntax/html_tcl.syntax +26 -0
  82. data/lib/code_rippa/syntax/icalendar.syntax +32 -0
  83. data/lib/code_rippa/syntax/inform.syntax +48 -0
  84. data/lib/code_rippa/syntax/ini.syntax +55 -0
  85. data/lib/code_rippa/syntax/installer_distribution_script.syntax +77 -0
  86. data/lib/code_rippa/syntax/io.syntax +81 -0
  87. data/lib/code_rippa/syntax/java.syntax +211 -0
  88. data/lib/code_rippa/syntax/javaproperties.syntax +20 -0
  89. data/lib/code_rippa/syntax/javascript.syntax +256 -0
  90. data/lib/code_rippa/syntax/javascript_+_prototype.syntax +72 -0
  91. data/lib/code_rippa/syntax/javascript_+_prototype_bracketed.syntax +140 -0
  92. data/lib/code_rippa/syntax/jquery_javascript.syntax +114 -0
  93. data/lib/code_rippa/syntax/json.syntax +136 -0
  94. data/lib/code_rippa/syntax/languagedefinition.syntax +708 -0
  95. data/lib/code_rippa/syntax/latex.syntax +566 -0
  96. data/lib/code_rippa/syntax/latex_beamer.syntax +41 -0
  97. data/lib/code_rippa/syntax/latex_log.syntax +50 -0
  98. data/lib/code_rippa/syntax/latex_memoir.syntax +64 -0
  99. data/lib/code_rippa/syntax/lexflex.syntax +219 -0
  100. data/lib/code_rippa/syntax/lighttpd.syntax +54 -0
  101. data/lib/code_rippa/syntax/lilypond.syntax +492 -0
  102. data/lib/code_rippa/syntax/lisp.syntax +61 -0
  103. data/lib/code_rippa/syntax/literate_haskell.syntax +24 -0
  104. data/lib/code_rippa/syntax/logo.syntax +29 -0
  105. data/lib/code_rippa/syntax/logtalk.syntax +152 -0
  106. data/lib/code_rippa/syntax/lua.syntax +86 -0
  107. data/lib/code_rippa/syntax/m.syntax +142 -0
  108. data/lib/code_rippa/syntax/macports_portfile.syntax +163 -0
  109. data/lib/code_rippa/syntax/makefile.syntax +36 -0
  110. data/lib/code_rippa/syntax/man.syntax +17 -0
  111. data/lib/code_rippa/syntax/mediawiki.syntax +567 -0
  112. data/lib/code_rippa/syntax/mips.syntax +66 -0
  113. data/lib/code_rippa/syntax/mod_perl.syntax +50 -0
  114. data/lib/code_rippa/syntax/modula-3.syntax +47 -0
  115. data/lib/code_rippa/syntax/moinmoin.syntax +189 -0
  116. data/lib/code_rippa/syntax/mootools.syntax +572 -0
  117. data/lib/code_rippa/syntax/movable_type.syntax +162 -0
  118. data/lib/code_rippa/syntax/multimarkdown.syntax +39 -0
  119. data/lib/code_rippa/syntax/objective-c++.syntax +18 -0
  120. data/lib/code_rippa/syntax/objective-c.syntax +233 -0
  121. data/lib/code_rippa/syntax/ocaml.syntax +764 -0
  122. data/lib/code_rippa/syntax/ocamllex.syntax +167 -0
  123. data/lib/code_rippa/syntax/ocamlyacc.syntax +184 -0
  124. data/lib/code_rippa/syntax/opengl.syntax +14 -0
  125. data/lib/code_rippa/syntax/pascal.syntax +77 -0
  126. data/lib/code_rippa/syntax/perl.syntax +1115 -0
  127. data/lib/code_rippa/syntax/plain_text.syntax +32 -0
  128. data/lib/code_rippa/syntax/postscript.syntax +114 -0
  129. data/lib/code_rippa/syntax/processing.syntax +106 -0
  130. data/lib/code_rippa/syntax/prolog.syntax +40 -0
  131. data/lib/code_rippa/syntax/property_list.syntax +635 -0
  132. data/lib/code_rippa/syntax/python.syntax +868 -0
  133. data/lib/code_rippa/syntax/python_django.syntax +21 -0
  134. data/lib/code_rippa/syntax/qmake_project.syntax +114 -0
  135. data/lib/code_rippa/syntax/qt_c++.syntax +26 -0
  136. data/lib/code_rippa/syntax/quake3_config.syntax +32 -0
  137. data/lib/code_rippa/syntax/r.syntax +81 -0
  138. data/lib/code_rippa/syntax/r_console.syntax +16 -0
  139. data/lib/code_rippa/syntax/ragel.syntax +201 -0
  140. data/lib/code_rippa/syntax/rd_r_documentation.syntax +91 -0
  141. data/lib/code_rippa/syntax/regexp.syntax +50 -0
  142. data/lib/code_rippa/syntax/release_notes.syntax +46 -0
  143. data/lib/code_rippa/syntax/remind.syntax +253 -0
  144. data/lib/code_rippa/syntax/restructuredtext.syntax +250 -0
  145. data/lib/code_rippa/syntax/rez.syntax +80 -0
  146. data/lib/code_rippa/syntax/ruby.syntax +1035 -0
  147. data/lib/code_rippa/syntax/ruby_experimental.syntax +145 -0
  148. data/lib/code_rippa/syntax/ruby_on_rails.syntax +88 -0
  149. data/lib/code_rippa/syntax/s5.syntax +69 -0
  150. data/lib/code_rippa/syntax/scheme.syntax +347 -0
  151. data/lib/code_rippa/syntax/scilab.syntax +41 -0
  152. data/lib/code_rippa/syntax/setext.syntax +147 -0
  153. data/lib/code_rippa/syntax/shell-unix-generic.syntax +384 -0
  154. data/lib/code_rippa/syntax/slate.syntax +149 -0
  155. data/lib/code_rippa/syntax/sql.syntax +237 -0
  156. data/lib/code_rippa/syntax/sql_rails.syntax +18 -0
  157. data/lib/code_rippa/syntax/ssh-config.syntax +33 -0
  158. data/lib/code_rippa/syntax/standard_ml.syntax +121 -0
  159. data/lib/code_rippa/syntax/strings_file.syntax +39 -0
  160. data/lib/code_rippa/syntax/subversion_commit_message.syntax +36 -0
  161. data/lib/code_rippa/syntax/sweave.syntax +84 -0
  162. data/lib/code_rippa/syntax/swig.syntax +57 -0
  163. data/lib/code_rippa/syntax/tcl.syntax +152 -0
  164. data/lib/code_rippa/syntax/template_toolkit.syntax +121 -0
  165. data/lib/code_rippa/syntax/tex.syntax +86 -0
  166. data/lib/code_rippa/syntax/tex_math.syntax +49 -0
  167. data/lib/code_rippa/syntax/textile.syntax +215 -0
  168. data/lib/code_rippa/syntax/tsv.syntax +50 -0
  169. data/lib/code_rippa/syntax/twiki.syntax +241 -0
  170. data/lib/code_rippa/syntax/txt2tags.syntax +79 -0
  171. data/lib/code_rippa/syntax/vectorscript.syntax +57 -0
  172. data/lib/code_rippa/syntax/xhtml_1.0.syntax +4027 -0
  173. data/lib/code_rippa/syntax/xml.syntax +180 -0
  174. data/lib/code_rippa/syntax/xml_strict.syntax +92 -0
  175. data/lib/code_rippa/syntax/xsl.syntax +60 -0
  176. data/lib/code_rippa/syntax/yaml.syntax +160 -0
  177. data/lib/code_rippa/syntax/yui_javascript.syntax +176 -0
  178. data/lib/code_rippa/uv_overrides.rb +49 -0
  179. data/lib/code_rippa/version.rb +3 -0
  180. data/lib/code_rippa.rb +204 -0
  181. metadata +245 -0
@@ -0,0 +1,635 @@
1
+ ---
2
+ name: Property List
3
+ fileTypes:
4
+ - plist
5
+ - dict
6
+ - tmCommand
7
+ - tmDelta
8
+ - tmDragCommand
9
+ - tmLanguage
10
+ - tmMacro
11
+ - tmPreferences
12
+ - tmSnippet
13
+ - tmTheme
14
+ - scriptSuite
15
+ - scriptTerminology
16
+ - savedSearch
17
+ scopeName: ""
18
+ repository:
19
+ openstep_comment:
20
+ patterns:
21
+ - name: comment.block.plist
22
+ captures:
23
+ "0":
24
+ name: punctuation.definition.comment.plist
25
+ begin: /\*
26
+ end: \*/
27
+ - name: comment.line.double-slash.plist
28
+ captures:
29
+ "1":
30
+ name: punctuation.definition.comment.plist
31
+ match: (//).*$\n?
32
+ openstep:
33
+ patterns:
34
+ - include: "#openstep_comment"
35
+ - include: "#openstep_dictionary"
36
+ - include: "#openstep_array"
37
+ - include: "#openstep_stray-char"
38
+ xml_tags:
39
+ patterns:
40
+ - captures:
41
+ "6":
42
+ name: meta.tag.dict.xml.plist
43
+ "11":
44
+ name: punctuation.definition.tag.xml.plist
45
+ "7":
46
+ name: punctuation.definition.tag.xml.plist
47
+ "8":
48
+ name: meta.scope.between-tag-pair.xml.plist
49
+ "9":
50
+ name: entity.name.tag.xml.plist
51
+ "1":
52
+ name: meta.tag.dict.xml.plist
53
+ "2":
54
+ name: punctuation.definition.tag.xml.plist
55
+ "3":
56
+ name: entity.name.tag.xml.plist
57
+ "4":
58
+ name: entity.name.tag.localname.xml.plist
59
+ "10":
60
+ name: entity.name.tag.localname.xml.plist
61
+ "5":
62
+ name: punctuation.definition.tag.xml.plist
63
+ match: ((<)((dict))(>))(((<)/)((dict))(>))
64
+ comment: "Empty tag: Dictionary"
65
+ - captures:
66
+ "6":
67
+ name: meta.tag.array.xml.plist
68
+ "11":
69
+ name: punctuation.definition.tag.xml.plist
70
+ "7":
71
+ name: punctuation.definition.tag.xml.plist
72
+ "8":
73
+ name: meta.scope.between-tag-pair.xml.plist
74
+ "9":
75
+ name: entity.name.tag.xml.plist
76
+ "1":
77
+ name: meta.tag.array.xml.plist
78
+ "2":
79
+ name: punctuation.definition.tag.xml.plist
80
+ "3":
81
+ name: entity.name.tag.xml.plist
82
+ "4":
83
+ name: entity.name.tag.localname.xml.plist
84
+ "10":
85
+ name: entity.name.tag.localname.xml.plist
86
+ "5":
87
+ name: punctuation.definition.tag.xml.plist
88
+ match: ((<)((array))(>))(((<)/)((array))(>))
89
+ comment: "Empty tag: Array"
90
+ - captures:
91
+ "6":
92
+ name: meta.tag.string.xml.plist
93
+ "11":
94
+ name: punctuation.definition.tag.xml.plist
95
+ "7":
96
+ name: punctuation.definition.tag.xml.plist
97
+ "8":
98
+ name: meta.scope.between-tag-pair.xml.plist
99
+ "9":
100
+ name: entity.name.tag.xml.plist
101
+ "1":
102
+ name: meta.tag.string.xml.plist
103
+ "2":
104
+ name: punctuation.definition.tag.xml.plist
105
+ "3":
106
+ name: entity.name.tag.xml.plist
107
+ "4":
108
+ name: entity.name.tag.localname.xml.plist
109
+ "10":
110
+ name: entity.name.tag.localname.xml.plist
111
+ "5":
112
+ name: punctuation.definition.tag.xml.plist
113
+ match: ((<)((string))(>))(((<)/)((string))(>))
114
+ comment: "Empty tag: String"
115
+ - captures:
116
+ "1":
117
+ name: meta.tag.key.xml.plist
118
+ "2":
119
+ name: punctuation.definition.tag.xml.plist
120
+ "3":
121
+ name: entity.name.tag.xml.plist
122
+ "4":
123
+ name: entity.name.tag.localname.xml.plist
124
+ "5":
125
+ name: punctuation.definition.tag.xml.plist
126
+ begin: ((<)((key))(>))
127
+ contentName: constant.other.name.xml.plist
128
+ end: ((</)((key))(>))
129
+ patterns:
130
+ - captures:
131
+ "0":
132
+ name: punctuation.definition.constant.xml
133
+ begin: <!\[CDATA\[
134
+ end: "]]>"
135
+ comment: the extra captures are required to duplicate the effect of the namespace parsing in the XML syntax
136
+ - captures:
137
+ "1":
138
+ name: meta.tag.dict.xml.plist
139
+ "2":
140
+ name: punctuation.definition.tag.xml.plist
141
+ "3":
142
+ name: entity.name.tag.xml.plist
143
+ "4":
144
+ name: entity.name.tag.localname.xml.plist
145
+ "5":
146
+ name: punctuation.definition.tag.xml.plist
147
+ match: ((<)((dict))\s*?/(>))
148
+ comment: Self-closing Dictionary
149
+ - captures:
150
+ "1":
151
+ name: meta.tag.array.xml.plist
152
+ "2":
153
+ name: punctuation.definition.tag.xml.plist
154
+ "3":
155
+ name: entity.name.tag.xml.plist
156
+ "4":
157
+ name: entity.name.tag.localname.xml.plist
158
+ "5":
159
+ name: punctuation.definition.tag.xml.plist
160
+ match: ((<)((array))\s*?/(>))
161
+ comment: Self-closing Array
162
+ - captures:
163
+ "1":
164
+ name: meta.tag.string.xml.plist
165
+ "2":
166
+ name: punctuation.definition.tag.xml.plist
167
+ "3":
168
+ name: entity.name.tag.xml.plist
169
+ "4":
170
+ name: entity.name.tag.localname.xml.plist
171
+ "5":
172
+ name: punctuation.definition.tag.xml.plist
173
+ match: ((<)((string))\s*?/(>))
174
+ comment: Self-closing String
175
+ - captures:
176
+ "1":
177
+ name: meta.tag.key.xml.plist
178
+ "2":
179
+ name: punctuation.definition.tag.xml.plist
180
+ "3":
181
+ name: entity.name.tag.xml.plist
182
+ "4":
183
+ name: entity.name.tag.localname.xml.plist
184
+ "5":
185
+ name: punctuation.definition.tag.xml.plist
186
+ match: ((<)((key))\s*?/(>))
187
+ comment: Self-closing Key
188
+ - captures:
189
+ "1":
190
+ name: meta.tag.dict.xml.plist
191
+ "2":
192
+ name: punctuation.definition.tag.xml.plist
193
+ "3":
194
+ name: entity.name.tag.xml.plist
195
+ "4":
196
+ name: entity.name.tag.localname.xml.plist
197
+ "5":
198
+ name: punctuation.definition.tag.xml.plist
199
+ begin: ((<)((dict))(>))
200
+ end: ((</)((dict))(>))
201
+ patterns:
202
+ - include: "#xml_tags"
203
+ comment: Dictionary
204
+ - captures:
205
+ "1":
206
+ name: meta.tag.array.xml.plist
207
+ "2":
208
+ name: punctuation.definition.tag.xml.plist
209
+ "3":
210
+ name: entity.name.tag.xml.plist
211
+ "4":
212
+ name: entity.name.tag.localname.xml.plist
213
+ "5":
214
+ name: punctuation.definition.tag.xml.plist
215
+ begin: ((<)((array))(>))
216
+ end: ((</)((array))(>))
217
+ patterns:
218
+ - include: "#xml_tags"
219
+ comment: Array
220
+ - captures:
221
+ "1":
222
+ name: meta.tag.string.xml.plist
223
+ "2":
224
+ name: punctuation.definition.tag.xml.plist
225
+ "3":
226
+ name: entity.name.tag.xml.plist
227
+ "4":
228
+ name: entity.name.tag.localname.xml.plist
229
+ "5":
230
+ name: punctuation.definition.tag.xml.plist
231
+ begin: ((<)((string))(>))
232
+ contentName: string.quoted.other.xml.plist
233
+ end: ((</)((string))(>))
234
+ patterns:
235
+ - include: "#xml_innertag"
236
+ - name: string.unquoted.cdata.xml
237
+ captures:
238
+ "0":
239
+ name: punctuation.definition.string.xml
240
+ begin: <!\[CDATA\[
241
+ end: "]]>"
242
+ comment: Strings
243
+ - captures:
244
+ "1":
245
+ name: meta.tag.real.xml.plist
246
+ "2":
247
+ name: punctuation.definition.tag.xml.plist
248
+ "3":
249
+ name: entity.name.tag.xml.plist
250
+ "4":
251
+ name: entity.name.tag.localname.xml.plist
252
+ "5":
253
+ name: punctuation.definition.tag.xml.plist
254
+ begin: ((<)((real))(>))
255
+ end: ((</)((real))(>))
256
+ patterns:
257
+ - captures:
258
+ "0":
259
+ name: punctuation.definition.constant.xml
260
+ "1":
261
+ name: constant.numeric.real.xml.plist
262
+ begin: (<!\[CDATA\[)
263
+ end: (]]>)
264
+ patterns:
265
+ - name: constant.numeric.real.xml.plist
266
+ match: "[-+]?\\d+(\\.\\d*)?(E[-+]\\d+)?"
267
+ - name: invalid.illegal.not-a-number.xml.plist
268
+ match: .
269
+ - name: constant.numeric.real.xml.plist
270
+ match: "[-+]?\\d+(\\.\\d*)?(E[-+]\\d+)?"
271
+ - name: invalid.illegal.not-a-number.xml.plist
272
+ match: .
273
+ comment: Numeric
274
+ - captures:
275
+ "1":
276
+ name: meta.tag.integer.xml.plist
277
+ "2":
278
+ name: punctuation.definition.tag.xml.plist
279
+ "3":
280
+ name: entity.name.tag.xml.plist
281
+ "4":
282
+ name: entity.name.tag.localname.xml.plist
283
+ "5":
284
+ name: punctuation.definition.tag.xml.plist
285
+ begin: ((<)((integer))(>))
286
+ end: ((</)((integer))(>))
287
+ patterns:
288
+ - name: constant.numeric.integer.xml.plist
289
+ match: "[-+]?\\d+"
290
+ - name: invalid.illegal.not-a-number.xml.plist
291
+ match: .
292
+ comment: Integer
293
+ - captures:
294
+ "1":
295
+ name: meta.tag.boolean.xml.plist
296
+ "2":
297
+ name: punctuation.definition.tag.xml.plist
298
+ "3":
299
+ name: entity.name.tag.xml.plist
300
+ "4":
301
+ name: entity.name.tag.localname.xml.plist
302
+ "5":
303
+ name: punctuation.definition.tag.xml.plist
304
+ match: ((<)((true|false))\s*?(/>))
305
+ comment: Boolean
306
+ - captures:
307
+ "1":
308
+ name: meta.tag.data.xml.plist
309
+ "2":
310
+ name: punctuation.definition.tag.xml.plist
311
+ "3":
312
+ name: entity.name.tag.xml.plist
313
+ "4":
314
+ name: entity.name.tag.localname.xml.plist
315
+ "5":
316
+ name: punctuation.definition.tag.xml.plist
317
+ begin: ((<)((data))(>))
318
+ end: ((</)((data))(>))
319
+ patterns:
320
+ - name: constant.numeric.base64.xml.plist
321
+ match: "[A-Za-z0-9+/]"
322
+ - name: constant.numeric.base64.xml.plist
323
+ match: "="
324
+ - name: invalid.illegal.invalid-character.xml.plist
325
+ match: "[^ \\n\\t]"
326
+ comment: Data
327
+ - captures:
328
+ "1":
329
+ name: meta.tag.date.xml.plist
330
+ "2":
331
+ name: punctuation.definition.tag.xml.plist
332
+ "3":
333
+ name: entity.name.tag.xml.plist
334
+ "4":
335
+ name: entity.name.tag.localname.xml.plist
336
+ "5":
337
+ name: punctuation.definition.tag.xml.plist
338
+ begin: ((<)((date))(>))
339
+ end: ((</)((date))(>))
340
+ patterns:
341
+ - name: constant.other.date.xml.plist
342
+ match: "(?x)\n\
343
+ \t\t\t\t\t\t\t\t\t\t[0-9]{4}\t\t\t\t\t\t# Year\n\
344
+ \t\t\t\t\t\t\t\t\t\t-\t\t\t\t\t\t\t\t# Divider\n\
345
+ \t\t\t\t\t\t\t\t\t\t(0[1-9]|1[012])\t\t\t\t\t# Month\n\
346
+ \t\t\t\t\t\t\t\t\t\t-\t\t\t\t\t\t\t\t# Divider\n\
347
+ \t\t\t\t\t\t\t\t\t\t(?!00|3[2-9])[0-3][0-9]\t\t\t# Day\n\
348
+ \t\t\t\t\t\t\t\t\t\tT\t\t\t\t\t\t\t\t# Separator\n\
349
+ \t\t\t\t\t\t\t\t\t\t(?!2[5-9])[0-2][0-9]\t\t\t# Hour\n\
350
+ \t\t\t\t\t\t\t\t\t\t:\t\t\t\t\t\t\t\t# Divider\n\
351
+ \t\t\t\t\t\t\t\t\t\t[0-5][0-9]\t\t\t\t\t\t# Minute\n\
352
+ \t\t\t\t\t\t\t\t\t\t:\t\t\t\t\t\t\t\t# Divider\n\
353
+ \t\t\t\t\t\t\t\t\t\t(?!6[1-9])[0-6][0-9]\t\t\t# Second\n\
354
+ \t\t\t\t\t\t\t\t\t\tZ\t\t\t\t\t\t\t\t# Zulu\n\
355
+ \t\t\t\t\t\t\t\t\t"
356
+ comment: Date
357
+ - include: "#xml_invalid"
358
+ - include: "#xml_comment"
359
+ - include: "#xml_stray-char"
360
+ xml_innertag:
361
+ patterns:
362
+ - name: constant.character.entity.xml.plist
363
+ match: "&([a-zA-Z0-9_-]+|#[0-9]+|#x[0-9a-fA-F]+);"
364
+ - name: invalid.illegal.bad-ampersand.xml.plist
365
+ match: "&"
366
+ xml:
367
+ patterns:
368
+ - captures:
369
+ "1":
370
+ name: meta.tag.plist.xml.plist
371
+ "2":
372
+ name: punctuation.definition.tag.xml.plist
373
+ "3":
374
+ name: entity.name.tag.xml.plist
375
+ "4":
376
+ name: entity.name.tag.localname.xml.plist
377
+ "5":
378
+ name: punctuation.definition.tag.xml.plist
379
+ begin: ((<)((plist\b)))
380
+ end: ((/)((plist))(>))
381
+ patterns:
382
+ - name: meta.tag.plist.xml.plist
383
+ begin: (?<=<plist)(?!>)\s*(?:(version)(=)(?:((").*?("))|((').*?('))))?
384
+ beginCaptures:
385
+ "6":
386
+ name: string.quoted.single.xml.plist
387
+ "7":
388
+ name: punctuation.definition.string.begin.xml.plist
389
+ "8":
390
+ name: punctuation.definition.string.end.xml.plist
391
+ "1":
392
+ name: entity.other.attribute-name.version.xml.plist
393
+ "2":
394
+ name: punctuation.separator.key-value.xml.plist
395
+ "3":
396
+ name: string.quoted.double.xml.plist
397
+ "4":
398
+ name: punctuation.definition.string.begin.xml.plist
399
+ "5":
400
+ name: punctuation.definition.string.end.xml.plist
401
+ end: (?=>)
402
+ - captures:
403
+ "1":
404
+ name: meta.tag.plist.xml.plist
405
+ "2":
406
+ name: punctuation.definition.tag.xml.plist
407
+ "3":
408
+ name: meta.scope.between-tag-pair.xml.plist
409
+ match: ((>(<)))(?=/plist)
410
+ comment: Tag with no content
411
+ - endCaptures:
412
+ "0":
413
+ name: meta.tag.plist.xml.plist
414
+ "1":
415
+ name: punctuation.definition.tag.xml.plist
416
+ begin: ((>))(?!</plist)
417
+ beginCaptures:
418
+ "1":
419
+ name: meta.tag.plist.xml.plist
420
+ "2":
421
+ name: punctuation.definition.tag.xml.plist
422
+ end: (<)(?=/plist)
423
+ patterns:
424
+ - include: "#xml_tags"
425
+ - include: "#xml_invalid"
426
+ - include: "#xml_comment"
427
+ - include: text.xml
428
+ - include: "#xml_stray-char"
429
+ openstep_data:
430
+ name: meta.binary-data.plist
431
+ endCaptures:
432
+ "1":
433
+ name: punctuation.terminator.data.plist
434
+ "2":
435
+ name: punctuation.definition.data.plist
436
+ begin: (<)
437
+ beginCaptures:
438
+ "1":
439
+ name: punctuation.definition.data.plist
440
+ end: (=?)\s*?(>)
441
+ patterns:
442
+ - name: constant.numeric.base64.plist
443
+ match: "[A-Za-z0-9+/]"
444
+ - name: invalid.illegal.invalid-character.plist
445
+ match: "[^ \\n]"
446
+ xml_stray-char:
447
+ name: invalid.illegal.character-data-not-allowed-here.xml.plist
448
+ match: \S
449
+ openstep_post-value:
450
+ begin: (?<='|"|\}|\)|>|[-a-zA-Z0-9_.])(?!;)
451
+ end: (?=;)
452
+ patterns:
453
+ - include: "#openstep_stray-char"
454
+ openstep_dictionary:
455
+ name: meta.group.dictionary.plist
456
+ captures:
457
+ "1":
458
+ name: punctuation.section.dictionary.plist
459
+ begin: (\{)
460
+ end: (\})
461
+ patterns:
462
+ - include: "#openstep_name"
463
+ - include: "#openstep_comment"
464
+ - include: "#openstep_stray-char"
465
+ xml_comment:
466
+ name: comment.block.xml.plist
467
+ captures:
468
+ "0":
469
+ name: punctuation.definition.comment.xml.plist
470
+ begin: <!--
471
+ end: (?<!-)-->
472
+ patterns:
473
+ - name: invalid.illegal.double-dash-not-allowed.xml.plist
474
+ match: -(?=-->)|--
475
+ openstep_string-contents:
476
+ name: constant.character.escape.plist
477
+ match: \\([uU](\h{4}|\h{2})|\d{1,3}|.)
478
+ openstep_stray-char:
479
+ name: invalid.illegal.character-not-allowed-here.plist
480
+ match: "[^\\s\\n]"
481
+ xml_invalid:
482
+ captures:
483
+ "1":
484
+ name: meta.tag.boolean.xml.plist
485
+ "2":
486
+ name: punctuation.definition.tag.xml.plist
487
+ "3":
488
+ name: invalid.illegal.tag-not-recognized.xml.plist
489
+ "4":
490
+ name: punctuation.definition.tag.xml.plist
491
+ match: ((<)/?(\w+).*?(>))
492
+ comment: Invalid tag
493
+ openstep_string:
494
+ patterns:
495
+ - name: string.quoted.single.plist
496
+ endCaptures:
497
+ "0":
498
+ name: punctuation.definition.string.end.plist
499
+ begin: "'"
500
+ beginCaptures:
501
+ "0":
502
+ name: punctuation.definition.string.begin.plist
503
+ end: "'"
504
+ patterns:
505
+ - include: "#openstep_string-contents"
506
+ - name: string.quoted.double.plist
507
+ endCaptures:
508
+ "0":
509
+ name: punctuation.definition.string.end.plist
510
+ begin: "\""
511
+ beginCaptures:
512
+ "0":
513
+ name: punctuation.definition.string.begin.plist
514
+ end: "\""
515
+ patterns:
516
+ - include: "#openstep_string-contents"
517
+ - name: constant.numeric.plist
518
+ match: "[-+]?\\d+(\\.\\d*)?(E[-+]\\d+)?(?!\\w)"
519
+ - name: string.unquoted.plist
520
+ match: "[-a-zA-Z0-9_.]+"
521
+ openstep_name:
522
+ patterns:
523
+ - name: meta.rule.named.plist
524
+ endCaptures:
525
+ "1":
526
+ name: punctuation.terminator.array.plist
527
+ "2":
528
+ name: punctuation.terminator.dictionary.plist
529
+ "3":
530
+ name: punctuation.terminator.rule.plist
531
+ begin: (?=([-a-zA-Z0-9_.]+)|("|'))
532
+ end: ((?<=\));)|((?<=\});)|(;)
533
+ patterns:
534
+ - name: constant.other.key.plist
535
+ match: "[-a-zA-Z0-9_.]+"
536
+ - begin: (?<=('|"|[-a-zA-Z0-9_.]))(?!=)|\s
537
+ end: (?==)
538
+ patterns:
539
+ - include: "#openstep_stray-char"
540
+ comment: |-
541
+ Mark anything between the name and the =
542
+ as invalid.
543
+ - name: constant.other.key.plist
544
+ endCaptures:
545
+ "0":
546
+ name: punctuation.definition.string.end.plist
547
+ begin: ("|')
548
+ beginCaptures:
549
+ "0":
550
+ name: punctuation.definition.string.begin.plist
551
+ end: (\1)
552
+ patterns:
553
+ - include: "#openstep_string-contents"
554
+ - begin: (=)(?!;)
555
+ beginCaptures:
556
+ "1":
557
+ name: punctuation.separator.key-value.plist
558
+ end: (?=;)
559
+ patterns:
560
+ - include: "#openstep_post-value"
561
+ - include: "#openstep_string"
562
+ - include: "#openstep_data"
563
+ - include: "#openstep_array"
564
+ - include: "#openstep_dictionary"
565
+ openstep_array-item:
566
+ endCaptures:
567
+ "1":
568
+ name: punctuation.separator.array.plist
569
+ begin: (?={|\(|"|'|[-a-zA-Z0-9_.]|<)
570
+ end: (,)|(?=\))
571
+ patterns:
572
+ - include: "#openstep_string"
573
+ - include: "#openstep_data"
574
+ - include: "#openstep_dictionary"
575
+ - include: "#openstep_array"
576
+ - begin: (?<="|'|\}|\))
577
+ end: (?=,|\))
578
+ patterns:
579
+ - include: "#openstep_comment"
580
+ - include: "#openstep_stray-char"
581
+ comment: Catch stray chars
582
+ openstep_array:
583
+ name: meta.group.array.plist
584
+ captures:
585
+ "1":
586
+ name: punctuation.section.array.plist
587
+ begin: (\()
588
+ end: (\))
589
+ patterns:
590
+ - include: "#openstep_array-item"
591
+ - include: "#openstep_comment"
592
+ - include: "#openstep_stray-char"
593
+ uuid: E62B2729-6B1C-11D9-AE35-000D93589AF6
594
+ foldingStartMarker: "(?x)\n\
595
+ \t\t\t\t\t\t\t(\n\
596
+ \t\t\t\t\t\t\t\t(^|=|=[ ]|\\s\\s|\\t)\t\t\t\t# Openstep foldings\n\
597
+ \t\t\t\t\t\t\t\t(\\{|\\()(?!.*(\\)|\\}))\t\t\t# spaces before them to \n\
598
+ \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t# limit false positives\n\
599
+ \t\t\t\t\t\t\t | (\n\
600
+ \t\t\t\t\t\t\t\t\t^\\s*\n\
601
+ \t\t\t\t\t\t\t\t\t(\n\
602
+ \t\t\t\t\t\t\t\t\t\t<[^!?%/](?!.+?(/>\n\
603
+ \t\t\t\t\t\t\t\t\t | </.+?>))\n\
604
+ \t\t\t\t\t\t\t\t\t | <[!%]--(?!.+?--%?>)\n\
605
+ \t\t\t\t\t\t\t\t\t)\n\
606
+ \t\t\t\t\t\t\t\t)\n\
607
+ \t\t\t\t\t\t\t)\n\
608
+ \t\t\t\t\t\t "
609
+ patterns:
610
+ - name: text.xml.plist
611
+ begin: xml|plist
612
+ end: \Z(?!\n)
613
+ comment: This gives us the proper scope for the xml or plist snippet.
614
+ - name: source.plist.binary
615
+ begin: ^bplist00
616
+ end: \Z(?!\n)
617
+ comment: This gives us the proper scope for the convert plist command.
618
+ - name: text.xml.plist
619
+ begin: (?=\s*(<\?xml|<!DOCTYPE\s*plist))
620
+ end: \Z(?!\n)
621
+ patterns:
622
+ - include: "#xml"
623
+ - name: source.plist
624
+ begin: (?=\s*({|\(|//|/\*))
625
+ end: \Z(?!\n)
626
+ patterns:
627
+ - include: "#openstep"
628
+ foldingStopMarker: "(?x)\n\
629
+ \t\t\t\t\t\t\t(\n\
630
+ \t\t\t\t\t\t\t\t(\\}|\\))(,|;)?\t\t\t\t\t# Openstep foldings\n\
631
+ \t\t\t\t\t\t\t\t.*$\t\t\t\t\t\t\t\t# limit false positives\n\
632
+ \t\t\t\t\t\t\t | (^\\s*(</[^>]+>|/>|-->)\\s*$)\t\t# XML\t\t\t\t\t\t\n\
633
+ \t\t\t\t\t\t\t)\n\
634
+ \t\t\t\t\t\t"
635
+ keyEquivalent: ^~P