tm-grammars 1.22.3 → 1.22.4

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 (201) hide show
  1. package/NOTICE +1 -1
  2. package/README.md +165 -165
  3. package/grammars/abap.json +29 -29
  4. package/grammars/actionscript-3.json +10 -10
  5. package/grammars/ada.json +6 -6
  6. package/grammars/angular-expression.json +29 -29
  7. package/grammars/angular-let-declaration.json +1 -1
  8. package/grammars/angular-ts.json +257 -257
  9. package/grammars/apex.json +72 -72
  10. package/grammars/apl.json +1 -1
  11. package/grammars/applescript.json +5 -5
  12. package/grammars/ara.json +3 -3
  13. package/grammars/asciidoc.json +4 -4
  14. package/grammars/asm.json +23 -23
  15. package/grammars/astro.json +3 -3
  16. package/grammars/awk.json +2 -2
  17. package/grammars/ballerina.json +94 -94
  18. package/grammars/bat.json +2 -2
  19. package/grammars/beancount.json +13 -13
  20. package/grammars/berry.json +6 -6
  21. package/grammars/bibtex.json +2 -2
  22. package/grammars/bicep.json +6 -6
  23. package/grammars/blade.json +73 -73
  24. package/grammars/c.json +11 -11
  25. package/grammars/cadence.json +6 -6
  26. package/grammars/cairo.json +5 -5
  27. package/grammars/clarity.json +16 -16
  28. package/grammars/clojure.json +14 -14
  29. package/grammars/cobol.json +33 -33
  30. package/grammars/codeql.json +6 -6
  31. package/grammars/coffee.json +17 -17
  32. package/grammars/common-lisp.json +48 -48
  33. package/grammars/coq.json +1 -1
  34. package/grammars/cpp-macro.json +112 -112
  35. package/grammars/cpp.json +187 -187
  36. package/grammars/crystal.json +22 -22
  37. package/grammars/csharp.json +110 -110
  38. package/grammars/css.json +23 -23
  39. package/grammars/cue.json +33 -33
  40. package/grammars/cypher.json +1 -1
  41. package/grammars/d.json +4 -4
  42. package/grammars/dart.json +6 -6
  43. package/grammars/dax.json +2 -2
  44. package/grammars/diff.json +1 -1
  45. package/grammars/dotenv.json +2 -2
  46. package/grammars/dream-maker.json +3 -3
  47. package/grammars/edge.json +1 -1
  48. package/grammars/elixir.json +15 -15
  49. package/grammars/elm.json +30 -30
  50. package/grammars/emacs-lisp.json +3 -3
  51. package/grammars/erlang.json +2 -2
  52. package/grammars/es-tag-css.json +1 -1
  53. package/grammars/es-tag-glsl.json +1 -1
  54. package/grammars/es-tag-html.json +1 -1
  55. package/grammars/es-tag-sql.json +1 -1
  56. package/grammars/es-tag-xml.json +1 -1
  57. package/grammars/fennel.json +3 -3
  58. package/grammars/fish.json +1 -1
  59. package/grammars/fluent.json +1 -1
  60. package/grammars/fortran-free-form.json +57 -57
  61. package/grammars/fsharp.json +62 -62
  62. package/grammars/gdresource.json +6 -6
  63. package/grammars/gdscript.json +8 -8
  64. package/grammars/gdshader.json +1 -1
  65. package/grammars/genie.json +1 -1
  66. package/grammars/git-commit.json +1 -1
  67. package/grammars/gleam.json +9 -9
  68. package/grammars/glimmer-js.json +6 -6
  69. package/grammars/glimmer-ts.json +6 -6
  70. package/grammars/gnuplot.json +6 -6
  71. package/grammars/go.json +41 -41
  72. package/grammars/graphql.json +1 -1
  73. package/grammars/groovy.json +12 -12
  74. package/grammars/hack.json +19 -19
  75. package/grammars/haml.json +4 -4
  76. package/grammars/handlebars.json +2 -2
  77. package/grammars/haskell.json +17 -17
  78. package/grammars/haxe.json +17 -17
  79. package/grammars/hcl.json +24 -24
  80. package/grammars/hjson.json +7 -7
  81. package/grammars/hlsl.json +8 -8
  82. package/grammars/html.json +3 -3
  83. package/grammars/http.json +2 -2
  84. package/grammars/hy.json +8 -8
  85. package/grammars/imba.json +98 -98
  86. package/grammars/java.json +14 -14
  87. package/grammars/javascript.json +264 -264
  88. package/grammars/jinja.json +8 -8
  89. package/grammars/jison.json +7 -7
  90. package/grammars/json.json +1 -1
  91. package/grammars/json5.json +1 -1
  92. package/grammars/jsonc.json +1 -1
  93. package/grammars/jsonl.json +1 -1
  94. package/grammars/jsonnet.json +1 -1
  95. package/grammars/jssm.json +2 -2
  96. package/grammars/jsx.json +264 -264
  97. package/grammars/julia.json +22 -22
  98. package/grammars/kotlin.json +2 -2
  99. package/grammars/kusto.json +1 -1
  100. package/grammars/latex.json +9 -9
  101. package/grammars/lean.json +3 -3
  102. package/grammars/less.json +13 -13
  103. package/grammars/liquid.json +5 -5
  104. package/grammars/log.json +5 -5
  105. package/grammars/logo.json +1 -1
  106. package/grammars/lua.json +25 -25
  107. package/grammars/luau.json +19 -19
  108. package/grammars/make.json +1 -1
  109. package/grammars/markdown.json +8 -8
  110. package/grammars/marko.json +6 -6
  111. package/grammars/matlab.json +12 -12
  112. package/grammars/mdc.json +3 -3
  113. package/grammars/mdx.json +25 -25
  114. package/grammars/mermaid.json +31 -31
  115. package/grammars/mipsasm.json +3 -3
  116. package/grammars/mojo.json +46 -46
  117. package/grammars/move.json +5 -5
  118. package/grammars/nextflow.json +1 -1
  119. package/grammars/nginx.json +10 -10
  120. package/grammars/nim.json +8 -8
  121. package/grammars/nix.json +34 -34
  122. package/grammars/nushell.json +3 -3
  123. package/grammars/objective-c.json +8 -8
  124. package/grammars/objective-cpp.json +14 -14
  125. package/grammars/ocaml.json +94 -94
  126. package/grammars/perl.json +34 -34
  127. package/grammars/php.json +87 -87
  128. package/grammars/polar.json +6 -6
  129. package/grammars/postcss.json +3 -3
  130. package/grammars/powerquery.json +1 -1
  131. package/grammars/powershell.json +5 -5
  132. package/grammars/prisma.json +3 -3
  133. package/grammars/prolog.json +6 -6
  134. package/grammars/proto.json +3 -3
  135. package/grammars/pug.json +4 -4
  136. package/grammars/puppet.json +11 -11
  137. package/grammars/purescript.json +5 -5
  138. package/grammars/python.json +44 -44
  139. package/grammars/qml.json +4 -4
  140. package/grammars/r.json +10 -10
  141. package/grammars/racket.json +19 -19
  142. package/grammars/raku.json +2 -2
  143. package/grammars/razor.json +24 -24
  144. package/grammars/reg.json +2 -2
  145. package/grammars/regexp.json +3 -3
  146. package/grammars/rel.json +4 -4
  147. package/grammars/riscv.json +5 -5
  148. package/grammars/rst.json +1 -1
  149. package/grammars/ruby.json +3 -3
  150. package/grammars/rust.json +1 -1
  151. package/grammars/sas.json +2 -2
  152. package/grammars/sass.json +5 -5
  153. package/grammars/scala.json +43 -43
  154. package/grammars/scheme.json +8 -8
  155. package/grammars/scss.json +7 -7
  156. package/grammars/shaderlab.json +3 -3
  157. package/grammars/shellscript.json +24 -24
  158. package/grammars/smalltalk.json +6 -6
  159. package/grammars/solidity.json +5 -5
  160. package/grammars/soy.json +1 -1
  161. package/grammars/sparql.json +1 -1
  162. package/grammars/splunk.json +3 -3
  163. package/grammars/sql.json +2 -2
  164. package/grammars/ssh-config.json +2 -2
  165. package/grammars/stata.json +33 -33
  166. package/grammars/stylus.json +6 -6
  167. package/grammars/svelte.json +8 -8
  168. package/grammars/swift.json +27 -27
  169. package/grammars/system-verilog.json +11 -11
  170. package/grammars/systemd.json +5 -5
  171. package/grammars/talonscript.json +1 -1
  172. package/grammars/tcl.json +2 -2
  173. package/grammars/templ.json +2 -2
  174. package/grammars/terraform.json +23 -23
  175. package/grammars/tex.json +3 -3
  176. package/grammars/toml.json +5 -5
  177. package/grammars/tsx.json +264 -264
  178. package/grammars/turtle.json +1 -1
  179. package/grammars/twig.json +23 -23
  180. package/grammars/typescript.json +257 -257
  181. package/grammars/typespec.json +30 -30
  182. package/grammars/typst.json +13 -13
  183. package/grammars/v.json +16 -16
  184. package/grammars/vala.json +1 -1
  185. package/grammars/vb.json +2 -2
  186. package/grammars/verilog.json +5 -5
  187. package/grammars/vhdl.json +14 -14
  188. package/grammars/viml.json +11 -11
  189. package/grammars/vue-html.json +2 -2
  190. package/grammars/vue.json +1 -1
  191. package/grammars/vyper.json +44 -44
  192. package/grammars/wasm.json +2 -2
  193. package/grammars/wgsl.json +3 -3
  194. package/grammars/wikitext.json +9 -9
  195. package/grammars/wolfram.json +331 -331
  196. package/grammars/xml.json +1 -1
  197. package/grammars/yaml.json +3 -3
  198. package/grammars/zenscript.json +2 -2
  199. package/grammars/zig.json +3 -3
  200. package/index.js +196 -196
  201. package/package.json +1 -1
@@ -35,11 +35,11 @@
35
35
  "name": "variable.other.abap"
36
36
  },
37
37
  {
38
- "match": "\\b\\d+(\\b|\\.|,)",
38
+ "match": "\\b[0-9]+(\\b|\\.|,)",
39
39
  "name": "constant.numeric.abap"
40
40
  },
41
41
  {
42
- "match": "(?i)(^|\\s+)((PUBLIC|PRIVATE|PROTECTED)\\sSECTION)(?=\\s+|:|\\.)",
42
+ "match": "(?ix)(^|\\s+)((PUBLIC|PRIVATE|PROTECTED)\\sSECTION)(?=\\s+|:|\\.)",
43
43
  "name": "storage.modifier.class.abap"
44
44
  },
45
45
  {
@@ -66,11 +66,11 @@
66
66
  "name": "constant.character.escape.abap"
67
67
  },
68
68
  {
69
- "match": "(?i)(?<=\\s)(align|alpha|case|country|currency|date|decimals|exponent|number|pad|sign|style|time|timestamp|timezone|width|xsd|zero)(?=\\s=)",
69
+ "match": "(?ix)(?<=\\s)(align|alpha|case|country|currency|date|decimals|exponent|number|pad|sign|style|time|timestamp|timezone|width|xsd|zero)(?=\\s\\=)",
70
70
  "name": "entity.name.property.stringtemplate.abap"
71
71
  },
72
72
  {
73
- "match": "(?i)(?<==\\s)(center|engineering|environment|in|iso|left|leftplus|leftspace|lower|no|out|raw|right|rightplus|rightspace|scale_preserving|scale_preserving_scientific|scientific|scientific_with_leading_zero|sign_as_postfix|simple|space|upper|user|yes)(?=\\s)",
73
+ "match": "(?ix)(?<=\\=\\s)(center|engineering|environment|in|iso|left|leftplus|leftspace|lower|no|out|raw|right|rightplus|rightspace|scale_preserving|scale_preserving_scientific|scientific|scientific_with_leading_zero|sign_as_postfix|simple|space|upper|user|yes)(?=\\s)",
74
74
  "name": "entity.value.property.stringtemplate.abap"
75
75
  }
76
76
  ]
@@ -111,7 +111,7 @@
111
111
  "name": "meta.block.begin.implementation.abap",
112
112
  "patterns": [
113
113
  {
114
- "match": "(?i)(^|\\s+)(definition|implementation|public|inheriting\\s+from|final|deferred|abstract|shared\\s+memory\\s+enabled|(global|local)*\\s*friends|(create\\s+(public|protected|private))|for\\s+behavior\\s+of|for\\s+testing|risk\\s+level\\s+(critical|dangerous|harmless))|duration\\s(short|medium|long)(?=\\s+|\\.)",
114
+ "match": "(?ix)(^|\\s+)(definition|implementation|public|inheriting\\s+from|final|deferred|abstract|shared\\s+memory\\s+enabled|(global|local)*\\s*friends|(create\\s+(public|protected|private))|for\\s+behavior\\s+of|for\\s+testing|risk\\s+level\\s+(critical|dangerous|harmless))|duration\\s(short|medium|long)(?=\\s+|\\.)",
115
115
  "name": "storage.modifier.class.abap"
116
116
  },
117
117
  {
@@ -127,7 +127,7 @@
127
127
  ]
128
128
  },
129
129
  {
130
- "begin": "(?i)^\\s*(method)\\s(?:([a-z_\\/][a-z_0-9\\/]*)~)?([a-z_\\/][a-z_0-9\\/]*)",
130
+ "begin": "(?ix)^\\s*(method)\\s(?:([a-z_\\/][a-z_0-9\\/]*)~)?([a-z_\\/][a-z_0-9\\/]*)",
131
131
  "beginCaptures": {
132
132
  "1": {
133
133
  "name": "storage.type.block.abap"
@@ -142,19 +142,19 @@
142
142
  "end": "\\s*\\.\\s*\\n?",
143
143
  "patterns": [
144
144
  {
145
- "match": "(?i)(?<=^|\\s)(BY\\s+DATABASE(\\s+PROCEDURE|\\s+FUNCTION|\\s+GRAPH\\s+WORKSPACE)|BY\\s+KERNEL\\s+MODULE)(?=\\s+|\\.)",
145
+ "match": "(?ix)(?<=^|\\s)(BY\\s+DATABASE(\\s+PROCEDURE|\\s+FUNCTION|\\s+GRAPH\\s+WORKSPACE)|BY\\s+KERNEL\\s+MODULE)(?=\\s+|\\.)",
146
146
  "name": "storage.modifier.method.abap"
147
147
  },
148
148
  {
149
- "match": "(?i)(?<=^|\\s)(FOR\\s+(HDB|LLANG))(?=\\s+|\\.)",
149
+ "match": "(?ix)(?<=^|\\s)(FOR\\s+(HDB|LLANG))(?=\\s+|\\.)",
150
150
  "name": "storage.modifier.method.abap"
151
151
  },
152
152
  {
153
- "match": "(?i)(?<=\\s)(OPTIONS\\s+(READ-ONLY|DETERMINISTIC|SUPPRESS\\s+SYNTAX\\s+ERRORS))(?=\\s+|\\.)",
153
+ "match": "(?ix)(?<=\\s)(OPTIONS\\s+(READ-ONLY|DETERMINISTIC|SUPPRESS\\s+SYNTAX\\s+ERRORS))(?=\\s+|\\.)",
154
154
  "name": "storage.modifier.method.abap"
155
155
  },
156
156
  {
157
- "match": "(?i)(?<=^|\\s)(LANGUAGE\\s+(SQLSCRIPT|SQL|GRAPH))(?=\\s+|\\.)",
157
+ "match": "(?ix)(?<=^|\\s)(LANGUAGE\\s+(SQLSCRIPT|SQL|GRAPH))(?=\\s+|\\.)",
158
158
  "name": "storage.modifier.method.abap"
159
159
  },
160
160
  {
@@ -163,7 +163,7 @@
163
163
  "name": "storage.modifier.method.abap"
164
164
  }
165
165
  },
166
- "match": "(?i)(?<=\\s)(USING)\\s+([a-z_\\/][a-z_0-9\\/=>]*)+(?=\\s+|\\.)"
166
+ "match": "(?ix)(?<=\\s)(USING)\\s+([a-z_\\/][a-z_0-9\\/=\\>]*)+(?=\\s+|\\.)"
167
167
  },
168
168
  {
169
169
  "begin": "(?=[A-Za-z_][A-Za-z0-9_]*)",
@@ -177,7 +177,7 @@
177
177
  ]
178
178
  },
179
179
  {
180
- "begin": "(?i)^\\s*(INTERFACE)\\s([a-z_\\/][a-z_0-9\\/]*)",
180
+ "begin": "(?ix)^\\s*(INTERFACE)\\s([a-z_\\/][a-z_0-9\\/]*)",
181
181
  "beginCaptures": {
182
182
  "1": {
183
183
  "name": "storage.type.block.abap"
@@ -189,13 +189,13 @@
189
189
  "end": "\\s*\\.\\s*\\n?",
190
190
  "patterns": [
191
191
  {
192
- "match": "(?i)(?<=^|\\s)(DEFERRED|PUBLIC)(?=\\s+|\\.)",
192
+ "match": "(?ix)(?<=^|\\s)(DEFERRED|PUBLIC)(?=\\s+|\\.)",
193
193
  "name": "storage.modifier.method.abap"
194
194
  }
195
195
  ]
196
196
  },
197
197
  {
198
- "begin": "(?i)^\\s*(FORM)\\s([a-z_\\/][a-z_0-9\\/\\-?]*)",
198
+ "begin": "(?ix)^\\s*(FORM)\\s([a-z_\\/][a-z_0-9\\/\\-\\?]*)",
199
199
  "beginCaptures": {
200
200
  "1": {
201
201
  "name": "storage.type.block.abap"
@@ -207,7 +207,7 @@
207
207
  "end": "\\s*\\.\\s*\\n?",
208
208
  "patterns": [
209
209
  {
210
- "match": "(?i)(?<=^|\\s)(USING|TABLES|CHANGING|RAISING|IMPLEMENTATION|DEFINITION)(?=\\s+|\\.)",
210
+ "match": "(?ix)(?<=^|\\s)(USING|TABLES|CHANGING|RAISING|IMPLEMENTATION|DEFINITION)(?=\\s+|\\.)",
211
211
  "name": "storage.modifier.form.abap"
212
212
  },
213
213
  {
@@ -256,35 +256,35 @@
256
256
  ],
257
257
  "repository": {
258
258
  "abap_constants": {
259
- "match": "(?i)(?<=\\s)(initial|null|@?space|@?abap_true|@?abap_false|@?abap_undefined|table_line|%_final|%_hints|%_predefined|col_background|col_group|col_heading|col_key|col_negative|col_normal|col_positive|col_total|adabas|as400|db2|db6|hdb|oracle|sybase|mssqlnt|pos_low|pos_high)(?=\\s|\\.|,)",
259
+ "match": "(?ix)(?<=\\s)(initial|null|@?space|@?abap_true|@?abap_false|@?abap_undefined|table_line|\n %_final|%_hints|%_predefined|col_background|col_group|col_heading|col_key|col_negative|col_normal|col_positive|col_total|\n\t\t\t\tadabas|as400|db2|db6|hdb|oracle|sybase|mssqlnt|pos_low|pos_high)(?=\\s|\\.|,)",
260
260
  "name": "constant.language.abap"
261
261
  },
262
262
  "abaptypes": {
263
263
  "patterns": [
264
264
  {
265
- "match": "(?i)\\s(abap_bool|string|xstring|any|clike|csequence|numeric|xsequence|decfloat|decfloat16|decfloat34|utclong|simple|int8|c|n|i|p|f|d|t|x)(?=\\s|\\.|,)",
265
+ "match": "(?ix)\\s(abap_bool|string|xstring|any|clike|csequence|numeric|xsequence|decfloat|decfloat16|decfloat34|utclong|simple|int8|c|n|i|p|f|d|t|x)(?=\\s|\\.|,)",
266
266
  "name": "support.type.abap"
267
267
  },
268
268
  {
269
- "match": "(?i)\\s(TYPE|REF|TO|LIKE|LINE|OF|STRUCTURE|STANDARD|SORTED|HASHED|INDEX|TABLE|WITH|UNIQUE|NON-UNIQUE|SECONDARY|DEFAULT|KEY)(?=\\s|\\.|,)",
269
+ "match": "(?ix)\\s(TYPE|REF|TO|LIKE|LINE|OF|STRUCTURE|STANDARD|SORTED|HASHED|INDEX|TABLE|WITH|UNIQUE|NON-UNIQUE|SECONDARY|DEFAULT|KEY)(?=\\s|\\.|,)",
270
270
  "name": "keyword.control.simple.abap"
271
271
  }
272
272
  ]
273
273
  },
274
274
  "arithmetic_operator": {
275
- "match": "(?i)(?<=\\s)(\\+|-|\\*|\\*\\*|\\/|%|DIV|MOD|BIT-AND|BIT-OR|BIT-XOR|BIT-NOT)(?=\\s)",
275
+ "match": "(?i)(?<=\\s)(\\+|\\-|\\*|\\*\\*|\\/|%|DIV|MOD|BIT-AND|BIT-OR|BIT-XOR|BIT-NOT)(?=\\s)",
276
276
  "name": "keyword.control.simple.abap"
277
277
  },
278
278
  "builtin_functions": {
279
- "match": "(?i)(?<=\\s)(abs|sign|ceil|floor|trunc|frac|acos|asin|atan|cos|sin|tan|cosh|sinh|tanh|exp|log|log10|sqrt|strlen|xstrlen|charlen|lines|numofchar|dbmaxlen|round|rescale|nmax|nmin|cmax|cmin|boolc|boolx|xsdbool|contains|contains_any_of|contains_any_not_of|matches|line_exists|ipow|char_off|count|count_any_of|count_any_not_of|distance|condense|concat_lines_of|escape|find|find_end|find_any_of|find_any_not_of|insert|match|repeat|replace|reverse|segment|shift_left|shift_right|substring|substring_after|substring_from|substring_before|substring_to|to_upper|to_lower|to_mixed|from_mixed|translate|bit-set|line_index)(?=\\()",
279
+ "match": "(?ix)(?<=\\s)(abs|sign|ceil|floor|trunc|frac|acos|asin|atan|cos|sin|tan|cosh|sinh|tanh|exp|log|log10|sqrt|strlen|xstrlen|charlen|lines|numofchar|dbmaxlen|round|rescale|nmax|nmin|cmax|cmin|boolc|boolx|xsdbool|contains|contains_any_of|contains_any_not_of|matches|line_exists|ipow|char_off|count|count_any_of|count_any_not_of|distance|condense|concat_lines_of|escape|find|find_end|find_any_of|find_any_not_of|insert|match|repeat|replace|reverse|segment|shift_left|shift_right|substring|substring_after|substring_from|substring_before|substring_to|to_upper|to_lower|to_mixed|from_mixed|translate|bit-set|line_index)(?=\\()",
280
280
  "name": "entity.name.function.builtin.abap"
281
281
  },
282
282
  "comparison_operator": {
283
- "match": "(?i)(?<=\\s)(<|>|<=|>=|=|<>|eq|ne|lt|le|gt|ge|cs|cp|co|cn|ca|na|ns|np|byte-co|byte-cn|byte-ca|byte-na|byte-cs|byte-ns|o|z|m)(?=\\s)",
283
+ "match": "(?i)(?<=\\s)(<|>|<\\=|>\\=|\\=|<>|eq|ne|lt|le|gt|ge|cs|cp|co|cn|ca|na|ns|np|byte-co|byte-cn|byte-ca|byte-na|byte-cs|byte-ns|o|z|m)(?=\\s)",
284
284
  "name": "keyword.control.simple.abap"
285
285
  },
286
286
  "control_keywords": {
287
- "match": "(?i)(^|\\s)(at|case|catch|continue|do|elseif|else|endat|endcase|endcatch|enddo|endif|endloop|endon|endtry|endwhile|if|loop|on|raise|try|while)(?=\\s|\\.|:)",
287
+ "match": "(?ix)(^|\\s)(\n\t at|case|catch|continue|do|elseif|else|endat|endcase|endcatch|enddo|endif|\n\t endloop|endon|endtry|endwhile|if|loop|on|raise|try|while)(?=\\s|\\.|:)",
288
288
  "name": "keyword.control.flow.abap"
289
289
  },
290
290
  "generic_names": {
@@ -315,14 +315,14 @@
315
315
  "name": "variable.other.abap"
316
316
  }
317
317
  },
318
- "match": "(?i)\\b(data|value|field-symbol|final|reference|resumable)\\((<?[a-z_\\/][a-z_0-9\\/]*>?)\\)"
318
+ "match": "(?ix)\\b(data|value|field-symbol|final|reference|resumable)\\((<?[a-z_\\/][a-z_0-9\\/]*>?)\\)"
319
319
  },
320
320
  "logical_operator": {
321
321
  "match": "(?i)(?<=\\s)(not|or|and)(?=\\s)",
322
322
  "name": "keyword.control.simple.abap"
323
323
  },
324
324
  "main_keywords": {
325
- "match": "(?i)(?<=^|\\s)(abap-source|abstract|accept|accepting|access|according|action|activation|actual|add|add-corresponding|adjacent|after|alias|aliases|all|allocate|amdp|analysis|analyzer|append|appending|application|archive|area|arithmetic|as|ascending|assert|assign|assigned|assigning|association|asynchronous|at|attributes|authority|authority-check|authorization|auto|back|background|backward|badi|base|before|begin|behavior|between|binary|bit|blank|blanks|block|blocks|bound|boundaries|bounds|boxed|break|break-point|buffer|by|bypassing|byte|byte-order|call|calling|cast|casting|cds|centered|change|changing|channels|char-to-hex|character|check|checkbox|cid|circular|class|class-data|class-events|class-method|class-methods|class-pool|cleanup|clear|client|clients|clock|clone|close|cnt|code|collect|color|column|comment|comments|commit|common|communication|comparing|component|components|compression|compute|concatenate|cond|condense|condition|connection|constant|constants|context|contexts|control|controls|conv|conversion|convert|copy|corresponding|count|country|cover|create|currency|current|cursor|customer-function|data|database|datainfo|dataset|date|daylight|ddl|deallocate|decimals|declarations|deep|default|deferred|define|delete|deleting|demand|descending|describe|destination|detail|determine|dialog|did|directory|discarding|display|display-mode|distance|distinct|divide|divide-corresponding|dummy|duplicate|duplicates|duration|during|dynpro|edit|editor-call|empty|enabled|enabling|encoding|end|end-enhancement-section|end-of-definition|end-of-page|end-of-selection|end-test-injection|end-test-seam|endenhancement|endexec|endfunction|endian|ending|endmodule|endprovide|endselect|endwith|enhancement|enhancement-point|enhancement-section|enhancements|entities|entity|entries|entry|enum|equiv|errors|escape|escaping|event|events|exact|except|exception|exception-table|exceptions|excluding|exec|execute|exists|exit|exit-command|expanding|explicit|exponent|export|exporting|extended|extension|extract|fail|failed|features|fetch|field|field-groups|field-symbols|fields|file|fill|filter|filters|final|find|first|first-line|fixed-point|flush|following|for|format|forward|found|frame|frames|free|from|full|function|function-pool|generate|get|giving|graph|group|groups|handle|handler|hashed|having|header|headers|heading|help-id|help-request|hide|hint|hold|hotspot|icon|id|identification|identifier|ignore|ignoring|immediately|implemented|implicit|import|importing|in|inactive|incl|include|includes|including|increment|index|index-line|indicators|infotypes|inheriting|init|initial|initialization|inner|input|insert|instance|instances|intensified|interface|interface-pool|interfaces|internal|intervals|into|inverse|inverted-date|is|job|join|keep|keeping|kernel|key|keys|keywords|kind|language|last|late|layout|leading|leave|left|left-justified|legacy|length|let|level|levels|like|line|line-count|line-selection|line-size|linefeed|lines|link|list|list-processing|listbox|load|load-of-program|local|locale|lock|locks|log-point|logical|lower|mapped|mapping|margin|mark|mask|match|matchcode|maximum|members|memory|mesh|message|message-id|messages|messaging|method|methods|mode|modif|modifier|modify|module|move|move-corresponding|multiply|multiply-corresponding|name|nametab|native|nested|nesting|new|new-line|new-page|new-section|next|no-display|no-extension|no-gap|no-gaps|no-grouping|no-heading|no-scrolling|no-sign|no-title|no-zero|nodes|non-unicode|non-unique|number|object|objects|objmgr|obligatory|occurence|occurences|occurrence|occurrences|occurs|of|offset|on|only|open|optional|option|options|order|others|out|outer|output|output-length|overflow|overlay|pack|package|padding|page|parameter|parameter-table|parameters|part|partially|pcre|perform|performing|permissions|pf-status|places|pool|position|pragmas|preceding|precompiled|preferred|preserving|primary|print|print-control|private|privileged|procedure|process|program|property|protected|provide|push|pushbutton|put|query|queue-only|queueonly|quickinfo|radiobutton|raising|range|ranges|read|read-only|receive|received|receiving|redefinition|reduce|ref|reference|refresh|regex|reject|renaming|replace|replacement|replacing|report|reported|request|requested|required|reserve|reset|resolution|respecting|response|restore|result|results|resumable|resume|retry|return|returning|right|right-justified|rollback|rows|rp-provide-from-last|run|sap|sap-spool|save|saving|scan|screen|scroll|scroll-boundary|scrolling|search|seconds|section|select|select-options|selection|selection-screen|selection-set|selection-sets|selection-table|selections|send|separate|separated|session|set|shared|shift|shortdump|shortdump-id|sign|simple|simulation|single|size|skip|skipping|smart|some|sort|sortable|sorted|source|specified|split|spool|spots|sql|stable|stamp|standard|start-of-selection|starting|state|statement|statements|static|statics|statusinfo|step|step-loop|stop|structure|structures|style|subkey|submatches|submit|subroutine|subscreen|substring|subtract|subtract-corresponding|suffix|sum|summary|supplied|supply|suppress|switch|symbol|syntax-check|syntax-trace|system-call|system-exceptions|tab|tabbed|table|tables|tableview|tabstrip|target|task|tasks|test|test-injection|test-seam|testing|text|textpool|then|throw|time|times|title|titlebar|to|tokens|top-lines|top-of-page|trace-file|trace-table|trailing|transaction|transfer|transformation|translate|transporting|trmac|truncate|truncation|type|type-pool|type-pools|types|uline|unassign|unbounded|under|unicode|union|unique|unit|unix|unpack|until|unwind|up|update|upper|user|user-command|using|utf-8|uuid|valid|validate|value|value-request|values|vary|varying|version|via|visible|wait|when|where|window|windows|with|with-heading|with-title|without|word|work|workspace|write|xml|zone)(?=\\s|\\.|:|,)",
325
+ "match": "(?ix)(?<=^|\\s)(\nabap-source|\nabstract|\naccept|\naccepting|\naccess|\naccording|\naction|\nactivation|\nactual|\nadd|\nadd-corresponding|\nadjacent|\nafter|\nalias|\naliases|\nall|\nallocate|\namdp|\nanalysis|\nanalyzer|\nappend|\nappending|\napplication|\narchive|\narea|\narithmetic|\nas|\nascending|\nassert|\nassign|\nassigned|\nassigning|\nassociation|\nasynchronous|\nat|\nattributes|\nauthority|\nauthority-check|\nauthorization|\nauto|\nback|\nbackground|\nbackward|\nbadi|\nbase|\nbefore|\nbegin|\nbehavior|\nbetween|\nbinary|\nbit|\nblank|\nblanks|\nblock|\nblocks|\nbound|\nboundaries|\nbounds|\nboxed|\nbreak|\nbreak-point|\nbuffer|\nby|\nbypassing|\nbyte|\nbyte-order|\ncall|\ncalling|\ncast|\ncasting|\ncds|\ncentered|\nchange|\nchanging|\nchannels|\nchar-to-hex|\ncharacter|\ncheck|\ncheckbox|\ncid|\ncircular|\nclass|\nclass-data|\nclass-events|\nclass-method|\nclass-methods|\nclass-pool|\ncleanup|\nclear|\nclient|\nclients|\nclock|\nclone|\nclose|\ncnt|\ncode|\ncollect|\ncolor|\ncolumn|\ncomment|\ncomments|\ncommit|\ncommon|\ncommunication|\ncomparing|\ncomponent|\ncomponents|\ncompression|\ncompute|\nconcatenate|\ncond|\ncondense|\ncondition|\nconnection|\nconstant|\nconstants|\ncontext|\ncontexts|\ncontrol|\ncontrols|\nconv|\nconversion|\nconvert|\ncopy|\ncorresponding|\ncount|\ncountry|\ncover|\ncreate|\ncurrency|\ncurrent|\ncursor|\ncustomer-function|\ndata|\ndatabase|\ndatainfo|\ndataset|\ndate|\ndaylight|\nddl|\ndeallocate|\ndecimals|\ndeclarations|\ndeep|\ndefault|\ndeferred|\ndefine|\ndelete|\ndeleting|\ndemand|\ndescending|\ndescribe|\ndestination|\ndetail|\ndetermine|\ndialog|\ndid|\ndirectory|\ndiscarding|\ndisplay|\ndisplay-mode|\ndistance|\ndistinct|\ndivide|\ndivide-corresponding|\ndummy|\nduplicate|\nduplicates|\nduration|\nduring|\ndynpro|\nedit|\neditor-call|\nempty|\nenabled|\nenabling|\nencoding|\nend|\nend-enhancement-section|\nend-of-definition|\nend-of-page|\nend-of-selection|\nend-test-injection|\nend-test-seam|\nendenhancement|\nendexec|\nendfunction|\nendian|\nending|\nendmodule|\nendprovide|\nendselect|\nendwith|\nenhancement|\nenhancement-point|\nenhancement-section|\nenhancements|\nentities|\nentity|\nentries|\nentry|\nenum|\nequiv|\nerrors|\nescape|\nescaping|\nevent|\nevents|\nexact|\nexcept|\nexception|\nexception-table|\nexceptions|\nexcluding|\nexec|\nexecute|\nexists|\nexit|\nexit-command|\nexpanding|\nexplicit|\nexponent|\nexport|\nexporting|\nextended|\nextension|\nextract|\nfail|\nfailed|\nfeatures|\nfetch|\nfield|\nfield-groups|\nfield-symbols|\nfields|\nfile|\nfill|\nfilter|\nfilters|\nfinal|\nfind|\nfirst|\nfirst-line|\nfixed-point|\nflush|\nfollowing|\nfor|\nformat|\nforward|\nfound|\nframe|\nframes|\nfree|\nfrom|\nfull|\nfunction|\nfunction-pool|\ngenerate|\nget|\ngiving|\ngraph|\ngroup|\ngroups|\nhandle|\nhandler|\nhashed|\nhaving|\nheader|\nheaders|\nheading|\nhelp-id|\nhelp-request|\nhide|\nhint|\nhold|\nhotspot|\nicon|\nid|\nidentification|\nidentifier|\nignore|\nignoring|\nimmediately|\nimplemented|\nimplicit|\nimport|\nimporting|\nin|\ninactive|\nincl|\ninclude|\nincludes|\nincluding|\nincrement|\nindex|\nindex-line|\nindicators|\ninfotypes|\ninheriting|\ninit|\ninitial|\ninitialization|\ninner|\ninput|\ninsert|\ninstance|\ninstances|\nintensified|\ninterface|\ninterface-pool|\ninterfaces|\ninternal|\nintervals|\ninto|\ninverse|\ninverted-date|\nis|\njob|\njoin|\nkeep|\nkeeping|\nkernel|\nkey|\nkeys|\nkeywords|\nkind|\nlanguage|\nlast|\nlate|\nlayout|\nleading|\nleave|\nleft|\nleft-justified|\nlegacy|\nlength|\nlet|\nlevel|\nlevels|\nlike|\nline|\nline-count|\nline-selection|\nline-size|\nlinefeed|\nlines|\nlink|\nlist|\nlist-processing|\nlistbox|\nload|\nload-of-program|\nlocal|\nlocale|\nlock|\nlocks|\nlog-point|\nlogical|\nlower|\nmapped|\nmapping|\nmargin|\nmark|\nmask|\nmatch|\nmatchcode|\nmaximum|\nmembers|\nmemory|\nmesh|\nmessage|\nmessage-id|\nmessages|\nmessaging|\nmethod|\nmethods|\nmode|\nmodif|\nmodifier|\nmodify|\nmodule|\nmove|\nmove-corresponding|\nmultiply|\nmultiply-corresponding|\nname|\nnametab|\nnative|\nnested|\nnesting|\nnew|\nnew-line|\nnew-page|\nnew-section|\nnext|\nno-display|\nno-extension|\nno-gap|\nno-gaps|\nno-grouping|\nno-heading|\nno-scrolling|\nno-sign|\nno-title|\nno-zero|\nnodes|\nnon-unicode|\nnon-unique|\nnumber|\nobject|\nobjects|\nobjmgr|\nobligatory|\noccurence|\noccurences|\noccurrence|\noccurrences|\noccurs|\nof|\noffset|\non|\nonly|\nopen|\noptional|\noption|\noptions|\norder|\nothers|\nout|\nouter|\noutput|\noutput-length|\noverflow|\noverlay|\npack|\npackage|\npadding|\npage|\nparameter|\nparameter-table|\nparameters|\npart|\npartially|\npcre|\nperform|\nperforming|\npermissions|\npf-status|\nplaces|\npool|\nposition|\npragmas|\npreceding|\nprecompiled|\npreferred|\npreserving|\nprimary|\nprint|\nprint-control|\nprivate|\nprivileged|\nprocedure|\nprocess|\nprogram|\nproperty|\nprotected|\nprovide|\npush|\npushbutton|\nput|\nquery|\nqueue-only|\nqueueonly|\nquickinfo|\nradiobutton|\nraising|\nrange|\nranges|\nread|\nread-only|\nreceive|\nreceived|\nreceiving|\nredefinition|\nreduce|\nref|\nreference|\nrefresh|\nregex|\nreject|\nrenaming|\nreplace|\nreplacement|\nreplacing|\nreport|\nreported|\nrequest|\nrequested|\nrequired|\nreserve|\nreset|\nresolution|\nrespecting|\nresponse|\nrestore|\nresult|\nresults|\nresumable|\nresume|\nretry|\nreturn|\nreturning|\nright|\nright-justified|\nrollback|\nrows|\nrp-provide-from-last|\nrun|\nsap|\nsap-spool|\nsave|\nsaving|\nscan|\nscreen|\nscroll|\nscroll-boundary|\nscrolling|\nsearch|\nseconds|\nsection|\nselect|\nselect-options|\nselection|\nselection-screen|\nselection-set|\nselection-sets|\nselection-table|\nselections|\nsend|\nseparate|\nseparated|\nsession|\nset|\nshared|\nshift|\nshortdump|\nshortdump-id|\nsign|\nsimple|\nsimulation|\nsingle|\nsize|\nskip|\nskipping|\nsmart|\nsome|\nsort|\nsortable|\nsorted|\nsource|\nspecified|\nsplit|\nspool|\nspots|\nsql|\nstable|\nstamp|\nstandard|\nstart-of-selection|\nstarting|\nstate|\nstatement|\nstatements|\nstatic|\nstatics|\nstatusinfo|\nstep|\nstep-loop|\nstop|\nstructure|\nstructures|\nstyle|\nsubkey|\nsubmatches|\nsubmit|\nsubroutine|\nsubscreen|\nsubstring|\nsubtract|\nsubtract-corresponding|\nsuffix|\nsum|\nsummary|\nsupplied|\nsupply|\nsuppress|\nswitch|\nsymbol|\nsyntax-check|\nsyntax-trace|\nsystem-call|\nsystem-exceptions|\ntab|\ntabbed|\ntable|\ntables|\ntableview|\ntabstrip|\ntarget|\ntask|\ntasks|\ntest|\ntest-injection|\ntest-seam|\ntesting|\ntext|\ntextpool|\nthen|\nthrow|\ntime|\ntimes|\ntitle|\ntitlebar|\nto|\ntokens|\ntop-lines|\ntop-of-page|\ntrace-file|\ntrace-table|\ntrailing|\ntransaction|\ntransfer|\ntransformation|\ntranslate|\ntransporting|\ntrmac|\ntruncate|\ntruncation|\ntype|\ntype-pool|\ntype-pools|\ntypes|\nuline|\nunassign|\nunbounded|\nunder|\nunicode|\nunion|\nunique|\nunit|\nunix|\nunpack|\nuntil|\nunwind|\nup|\nupdate|\nupper|\nuser|\nuser-command|\nusing|\nutf-8|\nuuid|\nvalid|\nvalidate|\nvalue|\nvalue-request|\nvalues|\nvary|\nvarying|\nversion|\nvia|\nvisible|\nwait|\nwhen|\nwhere|\nwindow|\nwindows|\nwith|\nwith-heading|\nwith-title|\nwithout|\nword|\nwork|\nworkspace|\nwrite|\nxml|\nzone\n\t\t \t)(?=\\s|\\.|:|,)",
326
326
  "name": "keyword.control.simple.abap"
327
327
  },
328
328
  "operators": {
@@ -346,15 +346,15 @@
346
346
  "name": "keyword.control.simple.abap"
347
347
  },
348
348
  "reserved_names": {
349
- "match": "(?i)(?<=\\s)(me|super)(?=\\s|\\.|,|->)",
349
+ "match": "(?ix)(?<=\\s)(me|super)(?=\\s|\\.|,|->)",
350
350
  "name": "constant.language.abap"
351
351
  },
352
352
  "sql_functions": {
353
- "match": "(?i)(?<=\\s)(abap_system_timezone|abap_user_timezone|abs|add_days|add_months|allow_precision_loss|as_geo_json|avg|bintohex|cast|ceil|coalesce|concat_with_space|concat|corr_spearman|corr|count|currency_conversion|datn_add_days|datn_add_months|datn_days_between|dats_add_days|dats_add_months|dats_days_between|dats_from_datn|dats_is_valid|dats_tims_to_tstmp|dats_to_datn|dayname|days_between|dense_rank|division|div|extract_day|extract_hour|extract_minute|extract_month|extract_second|extract_year|first_value|floor|grouping|hextobin|initcap|instr|is_valid|lag|last_value|lead|left|length|like_regexpr|locate_regexpr_after|locate_regexpr|locate|lower|lpad|ltrim|max|median|min|mod|monthname|ntile|occurrences_regexpr|over|product|rank|replace_regexpr|replace|rigth|round|row_number|rpad|rtrim|stddev|string_agg|substring_regexpr|substring|sum|tims_from_timn|tims_is_valid|tims_to_timn|to_blob|to_clob|tstmp_add_seconds|tstmp_current_utctimestamp|tstmp_is_valid|tstmp_seconds_between|tstmp_to_dats|tstmp_to_dst|tstmp_to_tims|tstmpl_from_utcl|tstmpl_to_utcl|unit_conversion|upper|utcl_add_seconds|utcl_current|utcl_seconds_between|uuid|var|weekday)(?=\\()",
353
+ "match": "(?ix)(?<=\\s)(\nabap_system_timezone|\nabap_user_timezone|\nabs|\nadd_days|\nadd_months|\nallow_precision_loss|\nas_geo_json|\navg|\nbintohex|\ncast|\nceil|\ncoalesce|\nconcat_with_space|\nconcat|\ncorr_spearman|\ncorr|\ncount|\ncurrency_conversion|\ndatn_add_days|\ndatn_add_months|\ndatn_days_between|\ndats_add_days|\ndats_add_months|\ndats_days_between|\ndats_from_datn|\ndats_is_valid|\ndats_tims_to_tstmp|\ndats_to_datn|\ndayname|\ndays_between|\ndense_rank|\ndivision|\ndiv|\nextract_day|\nextract_hour|\nextract_minute|\nextract_month|\nextract_second|\nextract_year|\nfirst_value|\nfloor|\ngrouping|\nhextobin|\ninitcap|\ninstr|\nis_valid|\nlag|\nlast_value|\nlead|\nleft|\nlength|\nlike_regexpr|\nlocate_regexpr_after|\nlocate_regexpr|\nlocate|\nlower|\nlpad|\nltrim|\nmax|\nmedian|\nmin|\nmod|\nmonthname|\nntile|\noccurrences_regexpr|\nover|\nproduct|\nrank|\nreplace_regexpr|\nreplace|\nrigth|\nround|\nrow_number|\nrpad|\nrtrim|\nstddev|\nstring_agg|\nsubstring_regexpr|\nsubstring|\nsum|\ntims_from_timn|\ntims_is_valid|\ntims_to_timn|\nto_blob|\nto_clob|\ntstmp_add_seconds|\ntstmp_current_utctimestamp|\ntstmp_is_valid|\ntstmp_seconds_between|\ntstmp_to_dats|\ntstmp_to_dst|\ntstmp_to_tims|\ntstmpl_from_utcl|\ntstmpl_to_utcl|\nunit_conversion|\nupper|\nutcl_add_seconds|\nutcl_current|\nutcl_seconds_between|\nuuid|\nvar|\nweekday\n )(?=\\()",
354
354
  "name": "entity.name.function.sql.abap"
355
355
  },
356
356
  "sql_types": {
357
- "match": "(?i)(?<=\\s)(char|clnt|cuky|curr|datn|dats|dec|decfloat16|decfloat34|fltp|int1|int2|int4|int8|lang|numc|quan|raw|sstring|timn|tims|unit|utclong)(?=\\s|\\(|\\))",
357
+ "match": "(?ix)(?<=\\s)(char|clnt|cuky|curr|datn|dats|dec|decfloat16|decfloat34|fltp|int1|int2|int4|int8|lang|numc|quan|raw|sstring|timn|tims|unit|utclong)(?=\\s|\\(|\\))",
358
358
  "name": "entity.name.type.sql.abap"
359
359
  },
360
360
  "system_fields": {
@@ -366,7 +366,7 @@
366
366
  "name": "variable.language.abap"
367
367
  }
368
368
  },
369
- "match": "(?i)\\b(sy)-(abcde|batch|binpt|calld|callr|colno|cpage|cprog|cucol|curow|datar|datlo|datum|dayst|dbcnt|dbnam|dbsysc|dyngr|dynnr|fdayw|fdpos|host|index|langu|ldbpg|lilli|linct|linno|linsz|lisel|listi|loopc|lsind|macol|mandt|marow|modno|msgid|msgli|msgno|msgty|msgv[1-4]|opsysc|pagno|pfkey|repid|saprl|scols|slset|spono|srows|staco|staro|stepl|subrc|sysid|tabix|tcode|tfill|timlo|title|tleng|tvar\\d|tzone|ucomm|uline|uname|uzeit|vline|wtitl|zonlo)(?=\\.|\\s)"
369
+ "match": "(?ix)\\b(sy)-(abcde|batch|binpt|calld|callr|colno|cpage|cprog|cucol|curow|datar|datlo|datum|dayst|dbcnt|dbnam|dbsysc|dyngr|dynnr|fdayw|fdpos|host|index|langu|ldbpg|lilli|linct|linno|linsz|lisel|listi|loopc|lsind|macol|mandt|marow|modno|msgid|msgli|msgno|msgty|msgv[1-4]|opsysc|pagno|pfkey|repid|saprl|scols|slset|spono|srows|staco|staro|stepl|subrc|sysid|tabix|tcode|tfill|timlo|title|tleng|tvar[0-9]|tzone|ucomm|uline|uname|uzeit|vline|wtitl|zonlo)(?=\\.|\\s)"
370
370
  },
371
371
  "text_symbols": {
372
372
  "captures": {
@@ -377,7 +377,7 @@
377
377
  "name": "constant.numeric.abap"
378
378
  }
379
379
  },
380
- "match": "(?i)(?<=^|\\s)(text)-([A-Z0-9]{1,3})(?=\\s|\\.|:|,)"
380
+ "match": "(?ix)(?<=^|\\s)(text)-([A-Z0-9]{1,3})(?=\\s|\\.|:|,)"
381
381
  }
382
382
  },
383
383
  "scopeName": "source.abap"
@@ -92,7 +92,7 @@
92
92
  ],
93
93
  "repository": {
94
94
  "arithmetic_operators": {
95
- "match": "(\\+|-|/|%|(?<!:)\\*)",
95
+ "match": "(\\+|\\-|/|%|(?<!:)\\*)",
96
96
  "name": "keyword.operator.actionscript.3"
97
97
  },
98
98
  "array_access_operators": {
@@ -358,7 +358,7 @@
358
358
  ]
359
359
  },
360
360
  "functions": {
361
- "begin": "\\b(function)\\b(?:\\s+\\b(get|set)\\b\\s+)?\\s*([a-zA-Z0-9_$]+\\b)?",
361
+ "begin": "\\b(function)\\b(?:\\s+\\b(get|set)\\b\\s+)?\\s*([a-zA-Z0-9_\\$]+\\b)?",
362
362
  "beginCaptures": {
363
363
  "1": {
364
364
  "name": "storage.type.function.actionscript.3"
@@ -391,7 +391,7 @@
391
391
  }
392
392
  },
393
393
  "comment": "Following convention, let's guess that anything in all caps/digits (possible underscores) is a constant.",
394
- "match": "\\b([A-Z$][A-Z0-9_]+)\\b"
394
+ "match": "\\b([A-Z\\$][A-Z0-9_]+)\\b"
395
395
  },
396
396
  "guess_type": {
397
397
  "captures": {
@@ -400,7 +400,7 @@
400
400
  }
401
401
  },
402
402
  "comment": "Following convention, let's guess that any word starting with one or more capital letters (that contains at least some lower-case letters so that constants aren't detected) refers to a class/type. May be fully-qualified.",
403
- "match": "\\b((?:[A-Za-z0-9_$]+\\.)*[A-Z][A-Z0-9]*[a-z]+[A-Za-z0-9_$]*)\\b"
403
+ "match": "\\b((?:[A-Za-z0-9_\\$]+\\.)*[A-Z][A-Z0-9]*[a-z]+[A-Za-z0-9_\\$]*)\\b"
404
404
  },
405
405
  "implements": {
406
406
  "captures": {
@@ -426,7 +426,7 @@
426
426
  "name": "support.type.actionscript.3"
427
427
  }
428
428
  },
429
- "match": "(^|\\s+|;)\\b(import)\\b\\s+([A-Za-z0-9$_\\.]+(?:\\.\\*)?)\\s*(?=;|$)",
429
+ "match": "(^|\\s+|;)\\b(import)\\b\\s+([A-Za-z0-9\\$_\\.]+(?:\\.\\*)?)\\s*(?=;|$)",
430
430
  "name": "meta.import.actionscript.3"
431
431
  },
432
432
  "interface": {
@@ -642,11 +642,11 @@
642
642
  "name": "storage.modifier.actionscript.3"
643
643
  }
644
644
  },
645
- "match": "((\\w+)\\s+)?(namespace)\\s+(?:[A-Za-z0-9_$]+)",
645
+ "match": "((\\w+)\\s+)?(namespace)\\s+(?:[A-Za-z0-9_\\$]+)",
646
646
  "name": "meta.namespace_declaration.actionscript.3"
647
647
  },
648
648
  "numbers": {
649
- "match": "\\b((0(x|X)[0-9a-fA-F]*)|((\\d+\\.?\\d*)|(\\.\\d+))((e|E)(\\+|-)?\\d+)?)(L|l|UL|ul|u|U|F|f)?\\b",
649
+ "match": "\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\.?[0-9]*)|(\\.[0-9]+))((e|E)(\\+|-)?[0-9]+)?)(L|l|UL|ul|u|U|F|f)?\\b",
650
650
  "name": "constant.numeric.actionscript.3"
651
651
  },
652
652
  "object_literal": {
@@ -772,7 +772,7 @@
772
772
  "name": "meta.package_name.actionscript.3"
773
773
  },
774
774
  "parameters": {
775
- "begin": "(\\.\\.\\.)?\\s*([A-Za-z_$][A-Za-z0-9_$]*)(?:\\s*(:)\\s*(?:(?:([A-Za-z$][A-Za-z0-9_$]+(?:\\.[A-Za-z$][A-Za-z0-9_$]+)*)(?:\\.<([A-Za-z$][A-Za-z0-9_$]+(?:\\.[A-Za-z$][A-Za-z0-9_$]+)*)>)?)|(\\*)))?(?:\\s*(=))?",
775
+ "begin": "(\\.\\.\\.)?\\s*([A-Za-z\\_\\$][A-Za-z0-9_\\$]*)(?:\\s*(\\:)\\s*(?:(?:([A-Za-z\\$][A-Za-z0-9_\\$]+(?:\\.[A-Za-z\\$][A-Za-z0-9_\\$]+)*)(?:\\.<([A-Za-z\\$][A-Za-z0-9_\\$]+(?:\\.[A-Za-z\\$][A-Za-z0-9_\\$]+)*)>)?)|(\\*)))?(?:\\s*(=))?",
776
776
  "beginCaptures": {
777
777
  "1": {
778
778
  "name": "keyword.operator.actionscript.3"
@@ -881,7 +881,7 @@
881
881
  "name": "support.type.actionscript.3"
882
882
  }
883
883
  },
884
- "match": "(:)\\s*(?:([A-Za-z$][A-Za-z0-9_$]+(?:\\.[A-Za-z$][A-Za-z0-9_$]+)*)(?:\\.<([A-Za-z$][A-Za-z0-9_$]+(?:\\.[A-Za-z$][A-Za-z0-9_$]+)*)>)?)|(\\*)"
884
+ "match": "(\\:)\\s*(?:([A-Za-z\\$][A-Za-z0-9_\\$]+(?:\\.[A-Za-z\\$][A-Za-z0-9_\\$]+)*)(?:\\.<([A-Za-z\\$][A-Za-z0-9_\\$]+(?:\\.[A-Za-z\\$][A-Za-z0-9_\\$]+)*)>)?)|(\\*)"
885
885
  },
886
886
  "strings": {
887
887
  "patterns": [
@@ -944,7 +944,7 @@
944
944
  "name": "keyword.operator.actionscript.3"
945
945
  }
946
946
  },
947
- "match": "((static)\\s+)?((\\w+)\\s+)?((static)\\s+)?(const|var)\\s+(?:[A-Za-z0-9_$]+)(?:\\s*(:))?",
947
+ "match": "((static)\\s+)?((\\w+)\\s+)?((static)\\s+)?(const|var)\\s+(?:[A-Za-z0-9_\\$]+)(?:\\s*(:))?",
948
948
  "name": "meta.variable_declaration.actionscript.3"
949
949
  },
950
950
  "vector_creation_operators": {
package/grammars/ada.json CHANGED
@@ -198,7 +198,7 @@
198
198
  ]
199
199
  }
200
200
  },
201
- "match": "(?i)\\b([^(=>)]*)\\s*(=>)\\s*([^,)]+)",
201
+ "match": "(?i)\\b([^(=>)]*)\\s*(=>)\\s*([^,\\)]+)",
202
202
  "name": "meta.definition.array.aggregate.component.ada"
203
203
  },
204
204
  "array_dimensions": {
@@ -534,7 +534,7 @@
534
534
  ]
535
535
  }
536
536
  },
537
- "match": "(?i)(\\d(?:(_)?\\d)*#)[0-9a-f](?:(_)?[0-9a-f])*(?:(\\.)[0-9a-f](?:(_)?[0-9a-f])*)?(#)([eE](?:\\+|-)?\\d(?:_?\\d)*)?",
537
+ "match": "(?i)(\\d(?:(_)?\\d)*#)[0-9a-f](?:(_)?[0-9a-f])*(?:(\\.)[0-9a-f](?:(_)?[0-9a-f])*)?(#)([eE](?:\\+|\\-)?\\d(?:_?\\d)*)?",
538
538
  "name": "constant.numeric.ada"
539
539
  },
540
540
  "basic_declaration": {
@@ -941,7 +941,7 @@
941
941
  ]
942
942
  }
943
943
  },
944
- "match": "(?i)\\b((?:\\w|\\d|_)+)\\s*(=>)\\s*([^,)])+\\b"
944
+ "match": "(?i)\\b((?:\\w|\\d|_)+)\\s*(=>)\\s*([^,\\)])+\\b"
945
945
  },
946
946
  {
947
947
  "include": "#expression"
@@ -967,7 +967,7 @@
967
967
  ]
968
968
  }
969
969
  },
970
- "match": "\\d(?:(_)?\\d)*(?:(\\.)\\d(?:(_)?\\d)*)?([eE](?:\\+|-)?\\d(?:_?\\d)*)?",
970
+ "match": "\\d(?:(_)?\\d)*(?:(\\.)\\d(?:(_)?\\d)*)?([eE](?:\\+|\\-)?\\d(?:_?\\d)*)?",
971
971
  "name": "constant.numeric.ada"
972
972
  },
973
973
  "declarative_item": {
@@ -1330,7 +1330,7 @@
1330
1330
  "name": "punctuation.ada"
1331
1331
  }
1332
1332
  },
1333
- "match": "([eE])(\\+|-)?\\d(?:(_)?\\d)*"
1333
+ "match": "([eE])(\\+|\\-)?\\d(?:(_)?\\d)*"
1334
1334
  },
1335
1335
  "expression": {
1336
1336
  "name": "meta.expression.ada",
@@ -2312,7 +2312,7 @@
2312
2312
  ]
2313
2313
  }
2314
2314
  },
2315
- "match": "(?i)\\b(others)\\s*(=>)\\s*([^,)]+)"
2315
+ "match": "(?i)\\b(others)\\s*(=>)\\s*([^,\\)]+)"
2316
2316
  },
2317
2317
  {
2318
2318
  "include": "#expression"
@@ -53,7 +53,7 @@
53
53
  "name": "entity.name.function.pipe.ng"
54
54
  }
55
55
  },
56
- "match": "((?<!\\|)\\|(?!\\|))\\s?([a-zA-Z0-9\\-_$]*)"
56
+ "match": "((?<!\\|)\\|(?!\\|))\\s?([a-zA-Z0-9\\-\\_\\$]*)"
57
57
  },
58
58
  {
59
59
  "match": "(?<!\\.|\\$)\\b(let)\\b(?!\\$)",
@@ -114,7 +114,7 @@
114
114
  ]
115
115
  },
116
116
  {
117
- "match": "\\*=|(?<!\\()\\/=|%=|\\+=|-=",
117
+ "match": "\\*=|(?<!\\()\\/=|%=|\\+=|\\-=",
118
118
  "name": "keyword.operator.assignment.compound.ts"
119
119
  },
120
120
  {
@@ -134,7 +134,7 @@
134
134
  "name": "keyword.operator.relational.ts"
135
135
  },
136
136
  {
137
- "match": "!|&&|\\?\\?|\\|\\|",
137
+ "match": "\\!|&&|\\?\\?|\\|\\|",
138
138
  "name": "keyword.operator.logical.ts"
139
139
  },
140
140
  {
@@ -142,7 +142,7 @@
142
142
  "name": "keyword.operator.bitwise.ts"
143
143
  },
144
144
  {
145
- "match": "=",
145
+ "match": "\\=",
146
146
  "name": "keyword.operator.assignment.ts"
147
147
  },
148
148
  {
@@ -163,7 +163,7 @@
163
163
  "name": "keyword.operator.arithmetic.ts"
164
164
  }
165
165
  },
166
- "match": "(?<=[_$0-9A-Za-z])\\s*(\\/)(?![\\/*])"
166
+ "match": "(?<=[_$[:alnum:]])\\s*(\\/)(?![\\/*])"
167
167
  },
168
168
  {
169
169
  "include": "#typeofOperator"
@@ -171,8 +171,8 @@
171
171
  ]
172
172
  },
173
173
  "functionCall": {
174
- "begin": "(?=(\\??\\.\\s*)?([_$A-Za-z][_$0-9A-Za-z]*)\\s*(<([^<>]|<[^<>]+>)+>\\s*)?\\()",
175
- "end": "(?<=\\))(?!(\\??\\.\\s*)?([_$A-Za-z][_$0-9A-Za-z]*)\\s*(<([^<>]|<[^<>]+>)+>\\s*)?\\()",
174
+ "begin": "(?=(\\??\\.\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\s*(<([^<>]|\\<[^<>]+\\>)+>\\s*)?\\()",
175
+ "end": "(?<=\\))(?!(\\??\\.\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\s*(<([^<>]|\\<[^<>]+\\>)+>\\s*)?\\()",
176
176
  "patterns": [
177
177
  {
178
178
  "match": "\\?",
@@ -183,17 +183,17 @@
183
183
  "name": "punctuation.accessor.ts"
184
184
  },
185
185
  {
186
- "match": "([_$A-Za-z][_$0-9A-Za-z]*)",
186
+ "match": "([_$[:alpha:]][_$[:alnum:]]*)",
187
187
  "name": "entity.name.function.ts"
188
188
  },
189
189
  {
190
- "begin": "<",
190
+ "begin": "\\<",
191
191
  "beginCaptures": {
192
192
  "0": {
193
193
  "name": "punctuation.definition.typeparameters.begin.ts"
194
194
  }
195
195
  },
196
- "end": ">",
196
+ "end": "\\>",
197
197
  "endCaptures": {
198
198
  "0": {
199
199
  "name": "punctuation.definition.typeparameters.end.ts"
@@ -247,7 +247,7 @@
247
247
  "identifiers": {
248
248
  "patterns": [
249
249
  {
250
- "match": "([_$A-Za-z][_$0-9A-Za-z]*)(?=\\s*\\.\\s*prototype\\b(?!\\$))",
250
+ "match": "([_$[:alpha:]][_$[:alnum:]]*)(?=\\s*\\.\\s*prototype\\b(?!\\$))",
251
251
  "name": "support.class.ts"
252
252
  },
253
253
  {
@@ -262,7 +262,7 @@
262
262
  "name": "variable.other.object.property.ts"
263
263
  }
264
264
  },
265
- "match": "([?!]?\\.)\\s*(?:([A-Z][_$\\dA-Z]*)|([_$A-Za-z][_$0-9A-Za-z]*))(?=\\s*\\.\\s*[_$A-Za-z][_$0-9A-Za-z]*)"
265
+ "match": "([?!]?\\.)\\s*(?:([[:upper:]][_$[:digit:][:upper:]]*)|([_$[:alpha:]][_$[:alnum:]]*))(?=\\s*\\.\\s*[_$[:alpha:]][_$[:alnum:]]*)"
266
266
  },
267
267
  {
268
268
  "captures": {
@@ -273,7 +273,7 @@
273
273
  "name": "entity.name.function.ts"
274
274
  }
275
275
  },
276
- "match": "(?:([?!]?\\.)\\s*)?([_$A-Za-z][_$0-9A-Za-z]*)(?=\\s*=\\s*((async\\s+)|(function\\s*[(<])|(function\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\s*=>)|((<([^<>]|<[^<>]+>)+>\\s*)?\\(([^()]|\\([^()]*\\))*\\)(\\s*:\\s*(.)*)?\\s*=>)))"
276
+ "match": "(?:([?!]?\\.)\\s*)?([_$[:alpha:]][_$[:alnum:]]*)(?=\\s*=\\s*((async\\s+)|(function\\s*[(<])|(function\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\s*=>)|((<([^<>]|\\<[^<>]+\\>)+>\\s*)?\\(([^()]|\\([^()]*\\))*\\)(\\s*:\\s*(.)*)?\\s*=>)))"
277
277
  },
278
278
  {
279
279
  "captures": {
@@ -284,7 +284,7 @@
284
284
  "name": "constant.other.property.ts"
285
285
  }
286
286
  },
287
- "match": "([?!]?\\.)\\s*([A-Z][_$\\dA-Z]*)(?![_$0-9A-Za-z])"
287
+ "match": "([?!]?\\.)\\s*([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])"
288
288
  },
289
289
  {
290
290
  "captures": {
@@ -295,7 +295,7 @@
295
295
  "name": "variable.other.property.ts"
296
296
  }
297
297
  },
298
- "match": "([?!]?\\.)\\s*([_$A-Za-z][_$0-9A-Za-z]*)"
298
+ "match": "([?!]?\\.)\\s*([_$[:alpha:]][_$[:alnum:]]*)"
299
299
  },
300
300
  {
301
301
  "captures": {
@@ -306,14 +306,14 @@
306
306
  "name": "variable.other.object.ts"
307
307
  }
308
308
  },
309
- "match": "(?:([A-Z][_$\\dA-Z]*)|([_$A-Za-z][_$0-9A-Za-z]*))(?=\\s*\\.\\s*[_$A-Za-z][_$0-9A-Za-z]*)"
309
+ "match": "(?:([[:upper:]][_$[:digit:][:upper:]]*)|([_$[:alpha:]][_$[:alnum:]]*))(?=\\s*\\.\\s*[_$[:alpha:]][_$[:alnum:]]*)"
310
310
  },
311
311
  {
312
- "match": "([A-Z][_$\\dA-Z]*)(?![_$0-9A-Za-z])",
312
+ "match": "([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])",
313
313
  "name": "constant.character.other"
314
314
  },
315
315
  {
316
- "match": "[_$A-Za-z][_$0-9A-Za-z]*",
316
+ "match": "[_$[:alpha:]][_$[:alnum:]]*",
317
317
  "name": "variable.other.readwrite.ts"
318
318
  }
319
319
  ]
@@ -430,7 +430,7 @@
430
430
  "name": "meta.delimiter.decimal.period.ts"
431
431
  }
432
432
  },
433
- "match": "(?<!\\$)(?:(?:\\b\\d+(\\.)\\d+[eE][+-]?\\d+\\b)|#1.1E+3(?:\\b\\d+(\\.)[eE][+-]?\\d+\\b)|#1.E+3(?:\\B(\\.)\\d+[eE][+-]?\\d+\\b)|#.1E+3(?:\\b\\d+[eE][+-]?\\d+\\b)|#1E+3(?:\\b\\d+(\\.)\\d+\\b)|#1.1(?:\\b\\d+(\\.)\\B)|#1.(?:\\B(\\.)\\d+\\b)|#.1(?:\\b\\d+\\b(?!\\.))#1)(?!\\$)"
433
+ "match": "(?<!\\$)(?:(?:\\b[0-9]+(\\.)[0-9]+[eE][+-]?[0-9]+\\b)|#1.1E+3(?:\\b[0-9]+(\\.)[eE][+-]?[0-9]+\\b)|#1.E+3(?:\\B(\\.)[0-9]+[eE][+-]?[0-9]+\\b)|#.1E+3(?:\\b[0-9]+[eE][+-]?[0-9]+\\b)|#1E+3(?:\\b[0-9]+(\\.)[0-9]+\\b)|#1.1(?:\\b[0-9]+(\\.)\\B)|#1.(?:\\B(\\.)[0-9]+\\b)|#.1(?:\\b[0-9]+\\b(?!\\.))#1)(?!\\$)"
434
434
  }
435
435
  ]
436
436
  },
@@ -454,7 +454,7 @@
454
454
  "name": "keyword.operator.optional.ts"
455
455
  }
456
456
  },
457
- "match": "(?:\\s*\\b(readonly)\\s+)?(?:\\s*\\b(public|private|protected)\\s+)?(\\.\\.\\.)?\\s*(?<!=|:)([_$A-Za-z][_$0-9A-Za-z]*)\\s*(\\??)(?=\\s*(=\\s*((async\\s+)|(function\\s*[(<])|(function\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\s*=>)|((<([^<>]|<[^<>]+>)+>\\s*)?\\(([^()]|\\([^()]*\\))*\\)(\\s*:\\s*(.)*)?\\s*=>)))|(:\\s*((<)|([(]\\s*(([)])|(\\.\\.\\.)|([_$0-9A-Za-z]+\\s*(([:,?=])|([)]\\s*=>))))))))"
457
+ "match": "(?:\\s*\\b(readonly)\\s+)?(?:\\s*\\b(public|private|protected)\\s+)?(\\.\\.\\.)?\\s*(?<!=|:)([_$[:alpha:]][_$[:alnum:]]*)\\s*(\\??)(?=\\s*(=\\s*((async\\s+)|(function\\s*[(<])|(function\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\s*=>)|((<([^<>]|\\<[^<>]+\\>)+>\\s*)?\\(([^()]|\\([^()]*\\))*\\)(\\s*:\\s*(.)*)?\\s*=>)))|(:\\s*((<)|([(]\\s*(([)])|(\\.\\.\\.)|([_$[:alnum:]]+\\s*(([:,?=])|([)]\\s*=>))))))))"
458
458
  },
459
459
  {
460
460
  "captures": {
@@ -474,7 +474,7 @@
474
474
  "name": "keyword.operator.optional.ts"
475
475
  }
476
476
  },
477
- "match": "(?:\\s*\\b(readonly)\\s+)?(?:\\s*\\b(public|private|protected)\\s+)?(\\.\\.\\.)?\\s*(?<!=|:)([_$A-Za-z][_$0-9A-Za-z]*)\\s*(\\??)"
477
+ "match": "(?:\\s*\\b(readonly)\\s+)?(?:\\s*\\b(public|private|protected)\\s+)?(\\.\\.\\.)?\\s*(?<!=|:)([_$[:alpha:]][_$[:alnum:]]*)\\s*(\\??)"
478
478
  }
479
479
  ]
480
480
  },
@@ -501,7 +501,7 @@
501
501
  ]
502
502
  },
503
503
  "punctuationAccessor": {
504
- "match": "\\?\\.|!\\.|\\.",
504
+ "match": "\\?\\.|\\!\\.|\\.",
505
505
  "name": "punctuation.accessor.ts"
506
506
  },
507
507
  "punctuationComma": {
@@ -573,7 +573,7 @@
573
573
  "name": "constant.character.escape.ts"
574
574
  },
575
575
  "ternaryExpression": {
576
- "begin": "(?!\\?\\.\\s*[^\\d])(\\?)(?!\\?)",
576
+ "begin": "(?!\\?\\.\\s*[^[:digit:]])(\\?)(?!\\?)",
577
577
  "beginCaptures": {
578
578
  "1": {
579
579
  "name": "keyword.operator.ternary.ts"
@@ -634,7 +634,7 @@
634
634
  "name": "keyword.operator.type.annotation.ts"
635
635
  }
636
636
  },
637
- "end": "(?=$|[,);}\\]]|\\/\\/|\")|(?==[^>])|(?<=[}>\\])]|[_$A-Za-z])\\s*(?=\\{)",
637
+ "end": "(?=$|[,);\\}\\]]|\\/\\/|\")|(?==[^>])|(?<=[\\}>\\]\\)]|[_$[:alpha:]])\\s*(?=\\{)",
638
638
  "name": "meta.type.annotation.ts",
639
639
  "patterns": [
640
640
  {
@@ -654,7 +654,7 @@
654
654
  "name": "keyword.control.new.ts"
655
655
  }
656
656
  },
657
- "match": "(?<!\\.|\\$)\\b(new)\\b(?=\\s*<)",
657
+ "match": "(?<!\\.|\\$)\\b(new)\\b(?=\\s*\\<)",
658
658
  "name": "meta.type.constructor.ts"
659
659
  },
660
660
  {
@@ -673,7 +673,7 @@
673
673
  ]
674
674
  },
675
675
  {
676
- "begin": "(?<=>)\\s*(?=\\()",
676
+ "begin": "(?<=\\>)\\s*(?=\\()",
677
677
  "end": "(?<=\\))",
678
678
  "include": "#typeofOperator",
679
679
  "name": "meta.type.function.ts",
@@ -684,7 +684,7 @@
684
684
  ]
685
685
  },
686
686
  {
687
- "begin": "((?=[(]\\s*(([)])|(\\.\\.\\.)|([_$0-9A-Za-z]+\\s*(([:,?=])|([)]\\s*=>))))))",
687
+ "begin": "((?=[(]\\s*(([)])|(\\.\\.\\.)|([_$[:alnum:]]+\\s*(([:,?=])|([)]\\s*=>))))))",
688
688
  "end": "(?<=\\))",
689
689
  "name": "meta.type.function.ts",
690
690
  "patterns": [
@@ -706,10 +706,10 @@
706
706
  "name": "punctuation.accessor.ts"
707
707
  }
708
708
  },
709
- "match": "([_$A-Za-z][_$0-9A-Za-z]*)\\s*([?!]?\\.)"
709
+ "match": "([_$[:alpha:]][_$[:alnum:]]*)\\s*([?!]?\\.)"
710
710
  },
711
711
  {
712
- "match": "[_$A-Za-z][_$0-9A-Za-z]*",
712
+ "match": "[_$[:alpha:]][_$[:alnum:]]*",
713
713
  "name": "entity.name.type.ts"
714
714
  }
715
715
  ]
@@ -13,7 +13,7 @@
13
13
  ],
14
14
  "repository": {
15
15
  "letDeclaration": {
16
- "begin": "(@let)\\s+([_$A-Za-z][_$0-9A-Za-z]*)\\s*(=)?",
16
+ "begin": "(@let)\\s+([_$[:alpha:]][_$[:alnum:]]*)\\s*(=)?",
17
17
  "beginCaptures": {
18
18
  "1": {
19
19
  "name": "storage.type.ng"