textpow 0.10.1 → 1.3.0

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 (193) hide show
  1. data/.travis.yml +7 -0
  2. data/Gemfile +10 -0
  3. data/Gemfile.lock +30 -0
  4. data/{History.txt → History.rdoc} +10 -0
  5. data/{README.txt → MIT-LICENSE.txt} +0 -30
  6. data/README.rdoc +82 -0
  7. data/Rakefile +42 -49
  8. data/bin/plist2syntax +0 -0
  9. data/bin/plist2yaml +0 -0
  10. data/examples/benchmark_js.rb +13 -0
  11. data/examples/jquery.js +9046 -0
  12. data/lib/textpow.rb +43 -3
  13. data/lib/textpow/debug_processor.rb +35 -35
  14. data/lib/textpow/recording_processor.rb +13 -0
  15. data/lib/textpow/score_manager.rb +60 -60
  16. data/lib/textpow/syntax.rb +303 -262
  17. data/lib/textpow/syntax/broken/markdown.syntax +519 -0
  18. data/lib/textpow/syntax/broken/php.syntax +1253 -0
  19. data/lib/textpow/syntax/buggy/nemerle.syntax +74 -0
  20. data/lib/textpow/syntax/old/YAML.yaml +160 -0
  21. data/lib/textpow/syntax/old/txt2tags.yaml +139 -0
  22. data/lib/textpow/syntax/source.actionscript.syntax +97 -0
  23. data/lib/textpow/syntax/source.active4d.library.syntax +21 -0
  24. data/lib/textpow/syntax/source.active4d.syntax +276 -0
  25. data/lib/textpow/syntax/source.ada.syntax +33 -0
  26. data/lib/textpow/syntax/source.antlr.syntax +151 -0
  27. data/lib/textpow/syntax/source.apache-config.mod_perl.syntax +50 -0
  28. data/lib/textpow/syntax/source.apache-config.syntax +191 -0
  29. data/lib/textpow/syntax/source.applescript.syntax +384 -0
  30. data/lib/textpow/syntax/source.asp.syntax +70 -0
  31. data/lib/textpow/syntax/source.asp.vb.net.syntax +129 -0
  32. data/lib/textpow/syntax/source.c++.qt.syntax +26 -0
  33. data/lib/textpow/syntax/source.c++.syntax +186 -0
  34. data/lib/textpow/syntax/source.c-sharp.syntax +59 -0
  35. data/lib/textpow/syntax/source.c.ragel.syntax +201 -0
  36. data/lib/textpow/syntax/source.c.syntax +414 -0
  37. data/lib/textpow/syntax/source.camlp4.ocaml.syntax +36 -0
  38. data/lib/textpow/syntax/source.cm.syntax +32 -0
  39. data/lib/textpow/syntax/source.coffee.syntax +216 -0
  40. data/lib/textpow/syntax/source.context-free.syntax +176 -0
  41. data/lib/textpow/syntax/source.css.beta.syntax +1925 -0
  42. data/lib/textpow/syntax/source.css.syntax +195 -0
  43. data/lib/textpow/syntax/source.d.syntax +142 -0
  44. data/lib/textpow/syntax/source.diff.syntax +81 -0
  45. data/lib/textpow/syntax/source.dot.syntax +47 -0
  46. data/lib/textpow/syntax/source.dylan.syntax +62 -0
  47. data/lib/textpow/syntax/source.eiffel.syntax +78 -0
  48. data/lib/textpow/syntax/source.erlang.syntax +922 -0
  49. data/lib/textpow/syntax/source.fortran.syntax +141 -0
  50. data/lib/textpow/syntax/source.fscript.syntax +80 -0
  51. data/lib/textpow/syntax/source.fxscript.syntax +142 -0
  52. data/lib/textpow/syntax/source.gri.syntax +83 -0
  53. data/lib/textpow/syntax/source.groovy.groovy.syntax +191 -0
  54. data/lib/textpow/syntax/source.haskell.syntax +88 -0
  55. data/lib/textpow/syntax/source.icalendar.syntax +32 -0
  56. data/lib/textpow/syntax/source.inform.syntax +48 -0
  57. data/lib/textpow/syntax/source.ini.syntax +55 -0
  58. data/lib/textpow/syntax/source.io.syntax +81 -0
  59. data/lib/textpow/syntax/source.java-props.syntax +20 -0
  60. data/lib/textpow/syntax/source.java.syntax +211 -0
  61. data/lib/textpow/syntax/source.js.greasemonkey.syntax +34 -0
  62. data/lib/textpow/syntax/source.js.jquery.syntax +114 -0
  63. data/lib/textpow/syntax/source.js.mootools.syntax +572 -0
  64. data/lib/textpow/syntax/source.js.prototype.bracketed.syntax +140 -0
  65. data/lib/textpow/syntax/source.js.prototype.syntax +72 -0
  66. data/lib/textpow/syntax/source.js.syntax +256 -0
  67. data/lib/textpow/syntax/source.js.yui.syntax +176 -0
  68. data/lib/textpow/syntax/source.json.syntax +136 -0
  69. data/lib/textpow/syntax/source.lex.syntax +219 -0
  70. data/lib/textpow/syntax/source.lighttpd-config.syntax +54 -0
  71. data/lib/textpow/syntax/source.lilypond.syntax +492 -0
  72. data/lib/textpow/syntax/source.lisp.syntax +61 -0
  73. data/lib/textpow/syntax/source.logo.syntax +29 -0
  74. data/lib/textpow/syntax/source.logtalk.syntax +152 -0
  75. data/lib/textpow/syntax/source.lua.syntax +86 -0
  76. data/lib/textpow/syntax/source.makefile.syntax +36 -0
  77. data/lib/textpow/syntax/source.matlab.syntax +142 -0
  78. data/lib/textpow/syntax/source.mel.syntax +92 -0
  79. data/lib/textpow/syntax/source.mips.syntax +66 -0
  80. data/lib/textpow/syntax/source.ml.syntax +121 -0
  81. data/lib/textpow/syntax/source.modula-3.syntax +47 -0
  82. data/lib/textpow/syntax/source.nant-build.syntax +53 -0
  83. data/lib/textpow/syntax/source.objc++.syntax +18 -0
  84. data/lib/textpow/syntax/source.objc.syntax +233 -0
  85. data/lib/textpow/syntax/source.ocaml.syntax +764 -0
  86. data/lib/textpow/syntax/source.ocamllex.syntax +167 -0
  87. data/lib/textpow/syntax/source.ocamlyacc.syntax +184 -0
  88. data/lib/textpow/syntax/source.open-gl.syntax +14 -0
  89. data/lib/textpow/syntax/source.pascal.syntax +77 -0
  90. data/lib/textpow/syntax/source.pascal.vectorscript.syntax +57 -0
  91. data/lib/textpow/syntax/source.perl.syntax +1113 -0
  92. data/lib/textpow/syntax/source.php.cake.syntax +55 -0
  93. data/lib/textpow/syntax/source.plist.tm-grammar.syntax +708 -0
  94. data/lib/textpow/syntax/source.postscript.syntax +114 -0
  95. data/lib/textpow/syntax/source.processing.syntax +106 -0
  96. data/lib/textpow/syntax/source.prolog.syntax +40 -0
  97. data/lib/textpow/syntax/source.python.django.syntax +21 -0
  98. data/lib/textpow/syntax/source.python.syntax +868 -0
  99. data/lib/textpow/syntax/source.qmake.syntax +114 -0
  100. data/lib/textpow/syntax/source.quake-config.syntax +32 -0
  101. data/lib/textpow/syntax/source.r-console.syntax +16 -0
  102. data/lib/textpow/syntax/source.r.syntax +81 -0
  103. data/lib/textpow/syntax/source.regexp.oniguruma.syntax +107 -0
  104. data/lib/textpow/syntax/source.regexp.python.syntax +109 -0
  105. data/lib/textpow/syntax/source.regexp.syntax +50 -0
  106. data/lib/textpow/syntax/source.remind.syntax +253 -0
  107. data/lib/textpow/syntax/source.rez.syntax +80 -0
  108. data/lib/textpow/syntax/source.ruby.experimental.syntax +145 -0
  109. data/lib/textpow/syntax/source.ruby.rails.syntax +88 -0
  110. data/lib/textpow/syntax/source.ruby.syntax +1035 -0
  111. data/lib/textpow/syntax/source.s5.syntax +69 -0
  112. data/lib/textpow/syntax/source.sass.syntax +45 -0
  113. data/lib/textpow/syntax/source.scheme.syntax +347 -0
  114. data/lib/textpow/syntax/source.scilab.syntax +41 -0
  115. data/lib/textpow/syntax/source.scss.syntax +527 -0
  116. data/lib/textpow/syntax/source.shell.syntax +384 -0
  117. data/lib/textpow/syntax/source.slate.syntax +149 -0
  118. data/lib/textpow/syntax/source.smarty.syntax +63 -0
  119. data/lib/textpow/syntax/source.sql.ruby.syntax +18 -0
  120. data/lib/textpow/syntax/source.sql.syntax +237 -0
  121. data/lib/textpow/syntax/source.ssh-config.syntax +33 -0
  122. data/lib/textpow/syntax/source.strings.syntax +39 -0
  123. data/lib/textpow/syntax/source.swig.syntax +57 -0
  124. data/lib/textpow/syntax/source.tcl.macports.syntax +163 -0
  125. data/lib/textpow/syntax/source.tcl.syntax +152 -0
  126. data/lib/textpow/syntax/source.yaml.syntax +160 -0
  127. data/lib/textpow/syntax/text.active4d-ini.syntax +50 -0
  128. data/lib/textpow/syntax/text.bbcode.syntax +287 -0
  129. data/lib/textpow/syntax/text.bibtex.syntax +151 -0
  130. data/lib/textpow/syntax/text.blog.html.syntax +41 -0
  131. data/lib/textpow/syntax/text.blog.markdown.syntax +42 -0
  132. data/lib/textpow/syntax/text.blog.syntax +27 -0
  133. data/lib/textpow/syntax/text.blog.textile.syntax +27 -0
  134. data/lib/textpow/syntax/text.gtdalt.syntax +143 -0
  135. data/lib/textpow/syntax/text.haml.syntax +88 -0
  136. data/lib/textpow/syntax/text.html.asp.net.syntax +424 -0
  137. data/lib/textpow/syntax/text.html.asp.syntax +27 -0
  138. data/lib/textpow/syntax/text.html.basic.syntax +362 -0
  139. data/lib/textpow/syntax/text.html.cfm.syntax +119 -0
  140. data/lib/textpow/syntax/text.html.django.syntax +36 -0
  141. data/lib/textpow/syntax/text.html.dokuwiki.syntax +204 -0
  142. data/lib/textpow/syntax/text.html.doxygen.syntax +43 -0
  143. data/lib/textpow/syntax/text.html.markdown.multimarkdown.syntax +39 -0
  144. data/lib/textpow/syntax/text.html.mason.syntax +119 -0
  145. data/lib/textpow/syntax/text.html.mediawiki.syntax +567 -0
  146. data/lib/textpow/syntax/text.html.mt.syntax +162 -0
  147. data/lib/textpow/syntax/text.html.ruby.syntax +40 -0
  148. data/lib/textpow/syntax/text.html.strict.active4d.syntax +311 -0
  149. data/lib/textpow/syntax/text.html.tcl.syntax +26 -0
  150. data/lib/textpow/syntax/text.html.textile.syntax +215 -0
  151. data/lib/textpow/syntax/text.html.tt.syntax +121 -0
  152. data/lib/textpow/syntax/text.html.twiki.syntax +241 -0
  153. data/lib/textpow/syntax/text.html.xhtml.1-strict.syntax +4027 -0
  154. data/lib/textpow/syntax/text.log.latex.syntax +50 -0
  155. data/lib/textpow/syntax/text.mail.markdown.syntax +118 -0
  156. data/lib/textpow/syntax/text.man.syntax +17 -0
  157. data/lib/textpow/syntax/text.moinmoin.syntax +189 -0
  158. data/lib/textpow/syntax/text.plain.gtd.syntax +22 -0
  159. data/lib/textpow/syntax/text.plain.release-notes.syntax +46 -0
  160. data/lib/textpow/syntax/text.plain.syntax +32 -0
  161. data/lib/textpow/syntax/text.plist.syntax +635 -0
  162. data/lib/textpow/syntax/text.pmwiki.syntax +113 -0
  163. data/lib/textpow/syntax/text.restructuredtext.syntax +250 -0
  164. data/lib/textpow/syntax/text.setext.syntax +147 -0
  165. data/lib/textpow/syntax/text.subversion-commit.syntax +36 -0
  166. data/lib/textpow/syntax/text.tabular.csv.syntax +68 -0
  167. data/lib/textpow/syntax/text.tabular.tsv.syntax +50 -0
  168. data/lib/textpow/syntax/text.tex.latex.beamer.syntax +41 -0
  169. data/lib/textpow/syntax/text.tex.latex.haskell.syntax +24 -0
  170. data/lib/textpow/syntax/text.tex.latex.memoir.syntax +64 -0
  171. data/lib/textpow/syntax/text.tex.latex.rd.syntax +91 -0
  172. data/lib/textpow/syntax/text.tex.latex.sweave.syntax +84 -0
  173. data/lib/textpow/syntax/text.tex.latex.syntax +566 -0
  174. data/lib/textpow/syntax/text.tex.math.syntax +49 -0
  175. data/lib/textpow/syntax/text.tex.syntax +86 -0
  176. data/lib/textpow/syntax/text.txt2tags.syntax +79 -0
  177. data/lib/textpow/syntax/text.xml.apple-dist.syntax +77 -0
  178. data/lib/textpow/syntax/text.xml.strict.syntax +92 -0
  179. data/lib/textpow/syntax/text.xml.syntax +180 -0
  180. data/lib/textpow/syntax/text.xml.xsl.syntax +60 -0
  181. data/lib/textpow/version.rb +3 -0
  182. data/spec/fixtures/objeck.plist +107 -0
  183. data/spec/fixtures/utf8.txt +1 -0
  184. data/spec/spec_helper.rb +2 -0
  185. data/spec/textpow/score_manager_spec.rb +20 -0
  186. data/spec/textpow/syntax_files_spec.rb +26 -0
  187. data/spec/textpow/syntax_spec.rb +225 -0
  188. data/spec/textpow_spec.rb +57 -0
  189. data/textpow.gemspec +19 -0
  190. metadata +246 -68
  191. data/Manifest.txt +0 -13
  192. data/mm/manual.mm +0 -266
  193. data/test/test_textpow.rb +0 -25
@@ -0,0 +1,50 @@
1
+ ---
2
+ name: Active4D Config
3
+ fileTypes:
4
+ - ini
5
+ scopeName: text.active4d-ini
6
+ repository:
7
+ escaped_char:
8
+ name: constant.character.escape.active4d-ini
9
+ match: \\.
10
+ uuid: BECA5580-F845-4715-889C-134DF4BF67C2
11
+ patterns:
12
+ - name: comment.line.double-slash.active4d-ini
13
+ captures:
14
+ "1":
15
+ name: punctuation.definition.comment.active4d-ini
16
+ match: (//).*$\n?
17
+ - name: comment.line.backtick.active4d-ini
18
+ captures:
19
+ "1":
20
+ name: punctuation.definition.comment.active4d-ini
21
+ match: (`).*$\n?
22
+ - name: comment.line.double-backslash.continuation.active4d-ini
23
+ captures:
24
+ "1":
25
+ name: punctuation.definition.comment.active4d-ini
26
+ match: (\\\\).*$\n?
27
+ - name: comment.block.active4d-ini
28
+ captures:
29
+ "0":
30
+ name: punctuation.definition.comment.active4d-ini
31
+ begin: /\*
32
+ end: \*/
33
+ - name: string.quoted.double.active4d-ini
34
+ endCaptures:
35
+ "0":
36
+ name: punctuation.definition.string.end.active4d-ini
37
+ begin: "\"(?!\"\")"
38
+ beginCaptures:
39
+ "0":
40
+ name: punctuation.definition.string.begin.active4d-ini
41
+ end: "\""
42
+ patterns:
43
+ - include: "#escaped_char"
44
+ - name: constant.language.boolean.active4d-ini
45
+ match: \b(?i)(true|false|yes|no)\b
46
+ - name: keyword.operator.active4d-ini
47
+ match: "="
48
+ - name: support.constant.active4d-ini
49
+ match: (?i)((\b(use sessions|use session cookies|session var name|session timeout|session purge interval|session cookie path|session cookie name|session cookie domain|serve nonexecutables|script timeout|safe script dirs|safe doc dirs|root|refresh interval|receive timeout|platform charset|parameter mode|output encoding|output charset|max request size|log level|lib extension|lib dirs|http error page|fusebox page|expires|executable extensions|error page|default page|content charset|client is web server|cache control|auto relate one|auto relate many|auto refresh libs|auto create vars)\b)|(\<default\>|\<web\>|\<4d volume\>|\<boot volume\>))
50
+ keyEquivalent: ^~A
@@ -0,0 +1,287 @@
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
@@ -0,0 +1,151 @@
1
+ ---
2
+ name: BibTeX
3
+ fileTypes:
4
+ - bib
5
+ scopeName: text.bibtex
6
+ repository:
7
+ nested_braces:
8
+ endCaptures:
9
+ "0":
10
+ name: punctuation.definition.group.end.bibtex
11
+ begin: \{
12
+ beginCaptures:
13
+ "0":
14
+ name: punctuation.definition.group.begin.bibtex
15
+ end: \}
16
+ patterns:
17
+ - include: "#nested_braces"
18
+ integer:
19
+ name: constant.numeric.bibtex
20
+ match: \d+
21
+ string_content:
22
+ patterns:
23
+ - name: string.quoted.double.bibtex
24
+ endCaptures:
25
+ "0":
26
+ name: punctuation.definition.string.end.bibtex
27
+ begin: "\""
28
+ beginCaptures:
29
+ "0":
30
+ name: punctuation.definition.string.begin.bibtex
31
+ end: "\""
32
+ patterns:
33
+ - include: "#nested_braces"
34
+ - name: string.quoted.other.braces.bibtex
35
+ endCaptures:
36
+ "0":
37
+ name: punctuation.definition.string.end.bibtex
38
+ begin: \{
39
+ beginCaptures:
40
+ "0":
41
+ name: punctuation.definition.string.begin.bibtex
42
+ end: \}
43
+ patterns:
44
+ - name: invalid.illegal.at-sign.bibtex
45
+ match: "@"
46
+ - include: "#nested_braces"
47
+ uuid: 47F30BA1-6B1D-11D9-9A60-000D93589AF6
48
+ foldingStartMarker: \@[a-zA-Z]+\s*[{(].+,
49
+ patterns:
50
+ - name: comment.line.at-sign.bibtex
51
+ begin: "@Comment"
52
+ beginCaptures:
53
+ "0":
54
+ name: punctuation.definition.comment.bibtex
55
+ end: $\n?
56
+ - name: meta.string-constant.braces.bibtex
57
+ endCaptures:
58
+ "0":
59
+ name: punctuation.section.string-constant.end.bibtex
60
+ begin: ((@)String)\s*(\{)\s*([a-zA-Z]*)
61
+ beginCaptures:
62
+ "1":
63
+ name: keyword.other.string-constant.bibtex
64
+ "2":
65
+ name: punctuation.definition.keyword.bibtex
66
+ "3":
67
+ name: punctuation.section.string-constant.begin.bibtex
68
+ "4":
69
+ name: variable.other.bibtex
70
+ end: \}
71
+ patterns:
72
+ - include: "#string_content"
73
+ - name: meta.string-constant.parenthesis.bibtex
74
+ endCaptures:
75
+ "0":
76
+ name: punctuation.section.string-constant.end.bibtex
77
+ begin: ((@)String)\s*(\()\s*([a-zA-Z]*)
78
+ beginCaptures:
79
+ "1":
80
+ name: keyword.other.string-constant.bibtex
81
+ "2":
82
+ name: punctuation.definition.keyword.bibtex
83
+ "3":
84
+ name: punctuation.section.string-constant.begin.bibtex
85
+ "4":
86
+ name: variable.other.bibtex
87
+ end: \)
88
+ patterns:
89
+ - include: "#string_content"
90
+ - name: meta.entry.braces.bibtex
91
+ endCaptures:
92
+ "0":
93
+ name: punctuation.section.entry.end.bibtex
94
+ begin: ((@)[a-zA-Z]+)\s*(\{)\s*([^\s,]*)
95
+ beginCaptures:
96
+ "1":
97
+ name: keyword.other.entry-type.bibtex
98
+ "2":
99
+ name: punctuation.definition.keyword.bibtex
100
+ "3":
101
+ name: punctuation.section.entry.begin.bibtex
102
+ "4":
103
+ name: entity.name.type.entry-key.bibtex
104
+ end: \}
105
+ patterns:
106
+ - name: meta.key-assignment.bibtex
107
+ begin: ([a-zA-Z]+)\s*(\=)
108
+ beginCaptures:
109
+ "1":
110
+ name: string.unquoted.key.bibtex
111
+ "2":
112
+ name: punctuation.separator.key-value.bibtex
113
+ end: (?=[,}])
114
+ patterns:
115
+ - include: "#string_content"
116
+ - include: "#integer"
117
+ - name: meta.entry.parenthesis.bibtex
118
+ endCaptures:
119
+ "0":
120
+ name: punctuation.section.entry.end.bibtex
121
+ begin: ((@)[a-zA-Z]+)\s*(\()\s*([^\s,]*)
122
+ beginCaptures:
123
+ "1":
124
+ name: keyword.other.entry-type.bibtex
125
+ "2":
126
+ name: punctuation.definition.keyword.bibtex
127
+ "3":
128
+ name: punctuation.section.entry.begin.bibtex
129
+ "4":
130
+ name: entity.name.type.entry-key.bibtex
131
+ end: \)
132
+ patterns:
133
+ - name: meta.key-assignment.bibtex
134
+ begin: ([a-zA-Z]+)\s*(\=)
135
+ beginCaptures:
136
+ "1":
137
+ name: string.unquoted.key.bibtex
138
+ "2":
139
+ name: punctuation.separator.key-value.bibtex
140
+ end: (?=[,)])
141
+ patterns:
142
+ - include: "#string_content"
143
+ - include: "#integer"
144
+ - name: comment.block.bibtex
145
+ begin: "[^@\\n]"
146
+ end: (?=@)
147
+ foldingStopMarker: ^\s*[)}]\s*$
148
+ comment: "Grammar based on description from http://artis.imag.fr/~Xavier.Decoret/resources/xdkbibtex/bibtex_summary.html#comment\n\
149
+ \t\n\
150
+ \tTODO: Does not support @preamble\n\
151
+ \t"