github-linguist 5.3.3 → 6.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (460) hide show
  1. checksums.yaml +4 -4
  2. data/bin/git-linguist +5 -2
  3. data/ext/linguist/linguist.c +18 -7
  4. data/grammars/annotation.liquidhaskell.haskell.json +969 -862
  5. data/grammars/config.xcompose.json +22 -25
  6. data/grammars/file.lasso.json +296 -309
  7. data/grammars/hint.haskell.json +867 -766
  8. data/grammars/hint.message.haskell.json +867 -766
  9. data/grammars/hint.type.haskell.json +867 -766
  10. data/grammars/objdump.x86asm.json +20 -24
  11. data/grammars/source.Kotlin.json +220 -225
  12. data/grammars/source.LS.json +36 -55
  13. data/grammars/source.MCPOST.json +24 -38
  14. data/grammars/source.MOD.json +26 -41
  15. data/grammars/source.SASLog.json +9 -16
  16. data/grammars/source.abap.json +48 -56
  17. data/grammars/source.abl.json +8 -14
  18. data/grammars/source.abnf.json +88 -98
  19. data/grammars/source.actionscript.3.json +398 -429
  20. data/grammars/source.acucobol.json +5 -8
  21. data/grammars/source.ada.json +46 -53
  22. data/grammars/source.afm.json +548 -554
  23. data/grammars/source.agc.json +34 -37
  24. data/grammars/source.agda.json +79 -91
  25. data/grammars/source.ahk.json +62 -66
  26. data/grammars/source.alloy.json +16 -20
  27. data/grammars/source.ampl.json +41 -47
  28. data/grammars/source.angelscript.json +71 -80
  29. data/grammars/source.antlr.json +131 -136
  30. data/grammars/source.apache-config.json +93 -99
  31. data/grammars/source.apache-config.mod_perl.json +19 -24
  32. data/grammars/source.apl.json +1038 -1029
  33. data/grammars/source.applescript.json +501 -523
  34. data/grammars/source.apt.json +9 -16
  35. data/grammars/source.asn.json +27 -31
  36. data/grammars/source.asp.json +61 -67
  37. data/grammars/source.aspectj.json +385 -391
  38. data/grammars/source.assembly.json +49 -55
  39. data/grammars/source.ats.json +45 -121
  40. data/grammars/source.autoit.json +64 -69
  41. data/grammars/source.awk.json +172 -176
  42. data/grammars/source.ballerina.json +48 -395
  43. data/grammars/source.batchfile.json +269 -269
  44. data/grammars/source.befunge.json +17 -21
  45. data/grammars/source.bf.json +5 -11
  46. data/grammars/source.bison.json +10 -14
  47. data/grammars/source.blitzmax.json +300 -305
  48. data/grammars/source.boo.json +189 -193
  49. data/grammars/source.brightauthorproject.json +8 -13
  50. data/grammars/source.brightscript.json +37 -47
  51. data/grammars/source.bro.json +134 -140
  52. data/grammars/source.bsl.json +152 -193
  53. data/grammars/source.bsv.json +96 -102
  54. data/grammars/source.c++.json +176 -193
  55. data/grammars/source.c++.qt.json +13 -21
  56. data/grammars/source.c.ec.json +15 -21
  57. data/grammars/source.c.json +237 -251
  58. data/grammars/source.c.platform.json +153 -159
  59. data/grammars/source.c2hs.json +3 -6
  60. data/grammars/source.cabal.json +17 -20
  61. data/grammars/source.cache.cmake.json +18 -23
  62. data/grammars/source.cake.json +4 -7
  63. data/grammars/source.camlp4.ocaml.json +24 -27
  64. data/grammars/source.capnp.json +33 -38
  65. data/grammars/source.ceylon.json +44 -50
  66. data/grammars/source.cfscript.cfc.json +78 -86
  67. data/grammars/source.cfscript.json +513 -520
  68. data/grammars/source.changelogs.rpm-spec.json +8 -16
  69. data/grammars/source.chapel.json +109 -87
  70. data/grammars/source.cirru.json +25 -30
  71. data/grammars/source.clarion.json +41 -54
  72. data/grammars/source.clean.json +90 -95
  73. data/grammars/source.click.json +25 -28
  74. data/grammars/source.clips.json +10 -23
  75. data/grammars/source.clojure.json +151 -168
  76. data/grammars/source.cm.json +14 -19
  77. data/grammars/source.cmake.json +53 -61
  78. data/grammars/source.cobol.json +165 -180
  79. data/grammars/source.coffee.json +454 -462
  80. data/grammars/source.cool.json +36 -43
  81. data/grammars/source.coq.json +17 -21
  82. data/grammars/source.crystal.json +889 -983
  83. data/grammars/source.cs.json +739 -740
  84. data/grammars/source.csound-document.json +69 -73
  85. data/grammars/source.csound-score.json +52 -55
  86. data/grammars/source.csound.json +167 -171
  87. data/grammars/source.css.json +683 -688
  88. data/grammars/source.css.less.json +211 -511
  89. data/grammars/source.css.mss.json +94 -101
  90. data/grammars/source.css.postcss.sugarss.json +260 -0
  91. data/grammars/source.csx.json +4 -7
  92. data/grammars/source.cuda-c++.json +47 -81
  93. data/grammars/source.cwl.json +103 -0
  94. data/grammars/source.cython.json +536 -582
  95. data/grammars/source.d.json +243 -252
  96. data/grammars/source.dart.json +161 -166
  97. data/grammars/source.data-weave.json +901 -905
  98. data/grammars/source.desktop.json +29 -33
  99. data/grammars/source.diff.json +43 -52
  100. data/grammars/source.disasm.json +15 -16
  101. data/grammars/source.ditroff.desc.json +73 -84
  102. data/grammars/source.ditroff.json +60 -61
  103. data/grammars/source.dm.json +202 -213
  104. data/grammars/source.dmf.json +44 -47
  105. data/grammars/source.dockerfile.json +29 -34
  106. data/grammars/source.dot.json +46 -55
  107. data/grammars/source.dylan.json +63 -68
  108. data/grammars/source.ebnf.json +55 -62
  109. data/grammars/source.eiffel.json +57 -62
  110. data/grammars/source.elixir.json +321 -366
  111. data/grammars/source.emacs.lisp.json +458 -249
  112. data/grammars/source.erazor.json +49 -57
  113. data/grammars/source.erlang.json +508 -515
  114. data/grammars/source.essl.json +17 -30
  115. data/grammars/source.factor.json +85 -91
  116. data/grammars/source.fan.json +92 -96
  117. data/grammars/source.fancy.json +93 -118
  118. data/grammars/source.fish.json +74 -98
  119. data/grammars/source.fontforge.json +142 -146
  120. data/grammars/source.forth.json +42 -57
  121. data/grammars/source.fortran.json +193 -231
  122. data/grammars/source.fortran.modern.json +77 -103
  123. data/grammars/source.fsharp.fsi.json +1 -6
  124. data/grammars/source.fsharp.fsl.json +1 -6
  125. data/grammars/source.fsharp.fsx.json +1 -6
  126. data/grammars/source.fsharp.json +148 -153
  127. data/grammars/source.gap.json +60 -70
  128. data/grammars/source.gcode.json +9 -16
  129. data/grammars/source.gdb.json +63 -79
  130. data/grammars/source.gdb.session.json +27 -28
  131. data/grammars/source.gdbregs.json +7 -8
  132. data/grammars/source.gdscript.json +92 -96
  133. data/grammars/source.gerber.json +38 -56
  134. data/grammars/source.gfm.json +447 -462
  135. data/grammars/source.glsl.json +58 -83
  136. data/grammars/source.gn.json +188 -193
  137. data/grammars/source.gnuplot.json +104 -120
  138. data/grammars/source.go.json +169 -181
  139. data/grammars/source.golo.json +82 -87
  140. data/grammars/source.gosu.2.json +58 -68
  141. data/grammars/source.grace.json +266 -270
  142. data/grammars/source.graphql.json +586 -596
  143. data/grammars/source.groovy.gradle.json +18 -22
  144. data/grammars/source.groovy.json +422 -433
  145. data/grammars/source.harbour.json +129 -173
  146. data/grammars/source.haskell.json +871 -772
  147. data/grammars/source.haxe.2.json +402 -413
  148. data/grammars/source.hlsl.json +6 -16
  149. data/grammars/source.hsc2hs.json +1 -4
  150. data/grammars/source.hsig.json +871 -770
  151. data/grammars/source.hss.1.json +122 -144
  152. data/grammars/source.httpspec.json +119 -123
  153. data/grammars/source.hxml.json +8 -15
  154. data/grammars/source.ideal.json +125 -125
  155. data/grammars/source.idl-dlm.json +25 -32
  156. data/grammars/source.idl.json +59 -80
  157. data/grammars/source.idris.json +171 -185
  158. data/grammars/source.inform7.json +117 -121
  159. data/grammars/source.ini.json +37 -43
  160. data/grammars/source.io.json +65 -73
  161. data/grammars/source.ioke.json +72 -78
  162. data/grammars/source.isabelle.root.json +26 -30
  163. data/grammars/source.isabelle.theory.json +46 -50
  164. data/grammars/source.j.json +18 -21
  165. data/grammars/source.jasmin.json +45 -50
  166. data/grammars/source.java-properties.json +31 -41
  167. data/grammars/source.java.json +333 -342
  168. data/grammars/source.jcl.json +15 -18
  169. data/grammars/source.jflex.json +166 -172
  170. data/grammars/source.jison.json +331 -334
  171. data/grammars/source.jisonlex-injection.json +1 -2
  172. data/grammars/source.jisonlex.json +148 -151
  173. data/grammars/source.jolie.json +37 -43
  174. data/grammars/source.jq.json +80 -87
  175. data/grammars/source.js.json +798 -818
  176. data/grammars/source.js.jsx.json +2115 -2225
  177. data/grammars/source.js.objj.json +167 -172
  178. data/grammars/source.js.regexp.json +50 -50
  179. data/grammars/source.js.regexp.replacement.json +7 -7
  180. data/grammars/source.jsdoc.json +94 -94
  181. data/grammars/source.json.json +61 -71
  182. data/grammars/source.julia.console.json +5 -6
  183. data/grammars/source.julia.json +237 -234
  184. data/grammars/source.lean.json +55 -67
  185. data/grammars/source.lid.json +6 -10
  186. data/grammars/source.lilypond.json +181 -195
  187. data/grammars/source.lisp.json +40 -50
  188. data/grammars/source.litcoffee.json +169 -183
  189. data/grammars/source.livescript.json +207 -220
  190. data/grammars/source.llvm.json +28 -38
  191. data/grammars/source.logos.json +7 -14
  192. data/grammars/source.logtalk.json +136 -141
  193. data/grammars/source.loomscript.json +77 -83
  194. data/grammars/source.lsl.json +90 -106
  195. data/grammars/source.lua.json +100 -109
  196. data/grammars/source.makefile.json +181 -188
  197. data/grammars/source.makegen.json +3 -7
  198. data/grammars/source.mask.json +260 -265
  199. data/grammars/source.mata.json +38 -46
  200. data/grammars/source.mathematica.json +155 -167
  201. data/grammars/source.matlab.json +407 -684
  202. data/grammars/source.maxscript.json +293 -281
  203. data/grammars/source.mercury.json +179 -184
  204. data/grammars/source.meson.json +52 -58
  205. data/grammars/source.meta-info.json +64 -74
  206. data/grammars/source.ml.json +107 -113
  207. data/grammars/source.modelica.json +51 -59
  208. data/grammars/source.modula2.json +33 -42
  209. data/grammars/source.monkey.json +234 -241
  210. data/grammars/source.moonscript.json +51 -56
  211. data/grammars/source.mql5.json +74 -101
  212. data/grammars/source.mupad.json +30 -72
  213. data/grammars/source.ncl.json +1 -14
  214. data/grammars/source.ne.json +39 -42
  215. data/grammars/source.nemerle.json +58 -63
  216. data/grammars/source.nesc.json +9 -15
  217. data/grammars/source.netlinx.erb.json +13 -25
  218. data/grammars/source.netlinx.json +231 -292
  219. data/grammars/source.nextflow-groovy.json +1360 -0
  220. data/grammars/source.nextflow.json +74 -0
  221. data/grammars/source.nginx.json +274 -287
  222. data/grammars/source.nim.json +442 -483
  223. data/grammars/source.nim_filter.json +6 -26
  224. data/grammars/source.nimcfg.json +38 -51
  225. data/grammars/source.ninja.json +64 -70
  226. data/grammars/source.nit.json +60 -64
  227. data/grammars/source.nix.json +269 -273
  228. data/grammars/source.nmml.json +31 -37
  229. data/grammars/source.nsis.json +66 -72
  230. data/grammars/source.nu.json +129 -139
  231. data/grammars/source.nut.json +129 -133
  232. data/grammars/source.objc++.json +3 -10
  233. data/grammars/source.objc.json +303 -314
  234. data/grammars/source.objc.platform.json +145 -151
  235. data/grammars/source.ocaml.json +506 -514
  236. data/grammars/source.ocamllex.json +108 -115
  237. data/grammars/source.ocamlyacc.json +116 -123
  238. data/grammars/source.ooc.json +148 -155
  239. data/grammars/source.opa.json +39 -49
  240. data/grammars/source.opal.json +84 -89
  241. data/grammars/source.opalsysdefs.json +9 -13
  242. data/grammars/source.opencobol.json +22 -25
  243. data/grammars/source.opentype.json +148 -152
  244. data/grammars/source.ox.json +36 -44
  245. data/grammars/source.oz.json +31 -38
  246. data/grammars/source.p4.json +49 -59
  247. data/grammars/source.pan.json +273 -278
  248. data/grammars/source.papyrus.skyrim.json +705 -781
  249. data/grammars/source.parrot.pir.json +59 -65
  250. data/grammars/source.pascal.json +54 -61
  251. data/grammars/source.pawn.json +835 -849
  252. data/grammars/source.pcb.board.json +153 -158
  253. data/grammars/source.pcb.schematic.json +134 -138
  254. data/grammars/source.pcb.sexp.json +64 -74
  255. data/grammars/source.pep8.json +28 -32
  256. data/grammars/source.perl.6.json +83 -92
  257. data/grammars/source.perl.json +711 -737
  258. data/grammars/source.perl6fe.json +1204 -1218
  259. data/grammars/source.php.zephir.json +80 -89
  260. data/grammars/source.pic.json +137 -142
  261. data/grammars/source.pig_latin.json +76 -80
  262. data/grammars/source.pike.json +23 -36
  263. data/grammars/source.po.json +74 -84
  264. data/grammars/source.pogoscript.json +23 -29
  265. data/grammars/source.pony.json +98 -108
  266. data/grammars/source.postcss.json +370 -0
  267. data/grammars/source.postscript.json +88 -97
  268. data/grammars/source.pov-ray sdl.json +36 -42
  269. data/grammars/source.powershell.json +175 -197
  270. data/grammars/source.processing.json +236 -249
  271. data/grammars/source.prolog.eclipse.json +33 -38
  272. data/grammars/source.prolog.json +66 -72
  273. data/grammars/source.protobuf.json +88 -94
  274. data/grammars/source.puppet.json +144 -151
  275. data/grammars/source.purescript.json +268 -289
  276. data/grammars/source.pyjade.json +256 -281
  277. data/grammars/source.python.django.json +13 -18
  278. data/grammars/source.python.json +3319 -3367
  279. data/grammars/source.python.salt.json +3 -7
  280. data/grammars/source.qmake.json +83 -90
  281. data/grammars/source.qml.json +57 -78
  282. data/grammars/source.quoting.perl6fe.json +666 -669
  283. data/grammars/source.r.json +75 -84
  284. data/grammars/source.racket.json +17 -38
  285. data/grammars/source.rascal.json +77 -80
  286. data/grammars/source.reason.hover.type.json +1 -1
  287. data/grammars/source.reason.json +1025 -1080
  288. data/grammars/source.rebol.json +167 -177
  289. data/grammars/source.red.json +169 -177
  290. data/grammars/source.regexp.babel.json +74 -77
  291. data/grammars/source.regexp.extended.json +4 -5
  292. data/grammars/source.regexp.json +260 -264
  293. data/grammars/source.regexp.perl6fe.json +108 -111
  294. data/grammars/source.regexp.python.json +210 -215
  295. data/grammars/source.regexp.spin.json +63 -72
  296. data/grammars/source.renpy.json +617 -687
  297. data/grammars/source.rexx.json +25 -32
  298. data/grammars/source.ring.json +84 -114
  299. data/grammars/source.rpm-spec.json +392 -401
  300. data/grammars/source.ruby.gemfile.json +9 -12
  301. data/grammars/source.ruby.json +862 -952
  302. data/grammars/source.ruby.rspec.cucumber.steps.json +90 -103
  303. data/grammars/source.rust.json +223 -281
  304. data/grammars/source.sas.json +88 -105
  305. data/grammars/source.sass.json +100 -108
  306. data/grammars/source.sbt.json +16 -23
  307. data/grammars/source.scad.json +60 -67
  308. data/grammars/source.scala.json +215 -228
  309. data/grammars/source.scaml.json +120 -135
  310. data/grammars/source.scheme.json +119 -136
  311. data/grammars/source.scilab.json +40 -47
  312. data/grammars/source.scss.json +369 -403
  313. data/grammars/source.sdbl.json +14 -25
  314. data/grammars/source.shaderlab.json +24 -27
  315. data/grammars/source.shell.json +409 -440
  316. data/grammars/source.shen.json +75 -94
  317. data/grammars/source.smali.json +232 -293
  318. data/grammars/source.smalltalk.json +60 -75
  319. data/grammars/source.smt.json +67 -82
  320. data/grammars/source.solidity.json +35 -54
  321. data/grammars/source.sp.json +40 -45
  322. data/grammars/source.sparql.json +3 -8
  323. data/grammars/source.spin.json +277 -297
  324. data/grammars/source.sqf.json +34 -44
  325. data/grammars/source.sql.json +142 -156
  326. data/grammars/source.stan.json +201 -160
  327. data/grammars/source.stata.json +57 -68
  328. data/grammars/source.strings.json +26 -30
  329. data/grammars/source.stylus.json +558 -565
  330. data/grammars/source.supercollider.json +33 -40
  331. data/grammars/source.swift.json +999 -1077
  332. data/grammars/source.systemverilog.json +351 -365
  333. data/grammars/source.tcl.json +77 -94
  334. data/grammars/source.tea.json +61 -67
  335. data/grammars/source.terra.json +25 -32
  336. data/grammars/source.terraform.json +68 -88
  337. data/grammars/source.thrift.json +300 -306
  338. data/grammars/source.tl.json +112 -117
  339. data/grammars/source.tla.json +65 -69
  340. data/grammars/source.toc.json +21 -25
  341. data/grammars/source.toml.json +117 -122
  342. data/grammars/source.ts.json +2838 -2774
  343. data/grammars/source.tsx.json +180 -184
  344. data/grammars/source.turing.json +970 -974
  345. data/grammars/source.turtle.json +124 -140
  346. data/grammars/source.txl.json +23 -37
  347. data/grammars/source.ucfconstraints.json +16 -21
  348. data/grammars/source.ur.json +15 -27
  349. data/grammars/source.vala.json +221 -235
  350. data/grammars/source.varnish.vcl.json +117 -129
  351. data/grammars/source.vbnet.json +69 -106
  352. data/grammars/source.verilog.json +101 -107
  353. data/grammars/source.vhdl.json +437 -445
  354. data/grammars/source.viml.json +540 -550
  355. data/grammars/source.wavefront.mtl.json +274 -277
  356. data/grammars/source.wavefront.obj.json +781 -784
  357. data/grammars/source.wdl.json +66 -46
  358. data/grammars/source.webassembly.json +97 -102
  359. data/grammars/source.webidl.json +311 -326
  360. data/grammars/source.x10.json +28 -32
  361. data/grammars/source.x86asm.json +21 -26
  362. data/grammars/source.xc.json +164 -172
  363. data/grammars/source.xq.json +81 -92
  364. data/grammars/source.xtend.json +199 -208
  365. data/grammars/source.yaml-ext.json +118 -124
  366. data/grammars/source.yaml.json +155 -174
  367. data/grammars/source.yaml.salt.json +113 -116
  368. data/grammars/source.yang.json +10 -13
  369. data/grammars/source.yara.json +98 -0
  370. data/grammars/text.bibtex.json +95 -100
  371. data/grammars/text.cfml.basic.json +403 -404
  372. data/grammars/text.elixir.json +18 -23
  373. data/grammars/text.error-list.json +15 -16
  374. data/grammars/text.find-refs.json +487 -488
  375. data/grammars/text.gherkin.feature.json +45 -53
  376. data/grammars/text.haml.json +176 -189
  377. data/grammars/text.hamlc.json +82 -88
  378. data/grammars/text.html.abl.json +16 -21
  379. data/grammars/text.html.asciidoc.json +139 -153
  380. data/grammars/text.html.asdoc.json +145 -155
  381. data/grammars/text.html.asp.json +23 -28
  382. data/grammars/text.html.basic.json +323 -338
  383. data/grammars/text.html.cfm.json +316 -325
  384. data/grammars/text.html.creole.json +177 -189
  385. data/grammars/text.html.django.json +27 -33
  386. data/grammars/text.html.ecr.json +21 -25
  387. data/grammars/text.html.elixir.json +3 -9
  388. data/grammars/text.html.erb.json +81 -85
  389. data/grammars/text.html.erlang.yaws.json +24 -29
  390. data/grammars/text.html.factor.json +5 -11
  391. data/grammars/text.html.ftl.json +16 -25
  392. data/grammars/text.html.handlebars.json +579 -598
  393. data/grammars/text.html.javadoc.json +426 -0
  394. data/grammars/text.html.js.json +11 -17
  395. data/grammars/text.html.jsp.json +377 -384
  396. data/grammars/text.html.liquid.json +8 -18
  397. data/grammars/text.html.mako.json +257 -275
  398. data/grammars/text.html.markdown.source.gfm.apib.json +419 -427
  399. data/grammars/text.html.markdown.source.gfm.mson.json +405 -414
  400. data/grammars/text.html.mediawiki.json +318 -344
  401. data/grammars/text.html.php.blade.json +2134 -2140
  402. data/grammars/text.html.php.json +980 -1013
  403. data/grammars/text.html.slash.json +101 -107
  404. data/grammars/text.html.smarty.json +75 -83
  405. data/grammars/text.html.soy.json +250 -253
  406. data/grammars/text.html.ssp.json +18 -24
  407. data/grammars/text.html.tcl.json +17 -24
  408. data/grammars/text.html.twig.json +712 -718
  409. data/grammars/text.idl-idldoc.json +5 -9
  410. data/grammars/text.jade.json +213 -235
  411. data/grammars/text.junit-test-report.json +25 -28
  412. data/grammars/text.log.latex.json +44 -46
  413. data/grammars/text.marko.json +370 -401
  414. data/grammars/text.python.console.json +3 -7
  415. data/grammars/text.python.traceback.json +2 -5
  416. data/grammars/text.rdoc.json +15 -19
  417. data/grammars/text.restructuredtext.clean.json +8 -11
  418. data/grammars/text.restructuredtext.json +886 -873
  419. data/grammars/text.robot.json +26 -36
  420. data/grammars/text.roff.json +2852 -2915
  421. data/grammars/text.runoff.json +56 -69
  422. data/grammars/text.sfd.json +151 -155
  423. data/grammars/text.shell-session.json +5 -8
  424. data/grammars/text.slim.json +184 -210
  425. data/grammars/text.srt.json +54 -57
  426. data/grammars/text.tex.json +98 -105
  427. data/grammars/text.tex.latex.beamer.json +14 -20
  428. data/grammars/text.tex.latex.haskell.json +883 -782
  429. data/grammars/text.tex.latex.json +281 -291
  430. data/grammars/text.tex.latex.memoir.json +39 -46
  431. data/grammars/text.tex.latex.rd.json +32 -38
  432. data/grammars/text.xml.ant.json +62 -69
  433. data/grammars/text.xml.flex-config.json +1009 -1013
  434. data/grammars/text.xml.genshi.json +10 -16
  435. data/grammars/text.xml.json +117 -130
  436. data/grammars/text.xml.pom.json +235 -240
  437. data/grammars/text.xml.xsl.json +31 -37
  438. data/grammars/text.zone_file.json +24 -29
  439. data/lib/linguist/blob.rb +10 -1
  440. data/lib/linguist/blob_helper.rb +4 -1
  441. data/lib/linguist/file_blob.rb +5 -0
  442. data/lib/linguist/generated.rb +16 -0
  443. data/lib/linguist/heuristics.rb +23 -11
  444. data/lib/linguist/language.rb +3 -6
  445. data/lib/linguist/languages.json +1 -1
  446. data/lib/linguist/languages.yml +74 -12
  447. data/lib/linguist/lazy_blob.rb +15 -1
  448. data/lib/linguist/linguist.bundle +0 -0
  449. data/lib/linguist/samples.json +1666 -3381
  450. data/lib/linguist/shebang.rb +2 -0
  451. data/lib/linguist/strategy/modeline.rb +2 -0
  452. data/lib/linguist/vendor.yml +5 -6
  453. data/lib/linguist/version.rb +1 -1
  454. metadata +12 -11
  455. data/grammars/source.elm.json +0 -381
  456. data/grammars/source.nant-build.json +0 -86
  457. data/grammars/source.octave.json +0 -451
  458. data/grammars/text.html.mediawiki.elm-build-output.json +0 -111
  459. data/grammars/text.html.mediawiki.elm-documentation.json +0 -22
  460. data/grammars/text.html.vue.json +0 -936
@@ -1,31 +1,28 @@
1
1
  {
2
- "fileTypes": [
3
- "sol"
4
- ],
5
2
  "name": "Solidity",
3
+ "scopeName": "source.solidity",
6
4
  "patterns": [
7
5
  {
8
- "comment": "Comments",
9
- "match": "\\/\\/.*",
10
- "name": "comment"
6
+ "name": "comment",
7
+ "match": "\\/\\/.*"
11
8
  },
12
9
  {
10
+ "name": "comment",
13
11
  "begin": "(\\/\\*)",
14
- "comment": "Multiline comments",
15
- "end": "(\\*\\/)",
16
- "name": "comment"
12
+ "end": "(\\*\\/)"
17
13
  },
18
14
  {
15
+ "name": "keyword.control",
16
+ "match": "\\b(event|enum)\\s+([A-Za-z_]\\w*)\\b",
19
17
  "captures": {
20
18
  "2": {
21
19
  "name": "support.function"
22
20
  }
23
- },
24
- "comment": "Events",
25
- "match": "\\b(event|enum)\\s+([A-Za-z_]\\w*)\\b",
26
- "name": "keyword.control"
21
+ }
27
22
  },
28
23
  {
24
+ "name": "keyword.control",
25
+ "match": "\\b(contract|interface|library|using|struct|function|modifier)\\s+([A-Za-z_]\\w*)(?:\\s+is\\s+((?:[A-Za-z_][\\,\\s]*)*))?\\b",
29
26
  "captures": {
30
27
  "2": {
31
28
  "name": "entity.name.function"
@@ -33,12 +30,10 @@
33
30
  "3": {
34
31
  "name": "entity.name.function"
35
32
  }
36
- },
37
- "comment": "Main keywords",
38
- "match": "\\b(contract|interface|library|using|struct|function|modifier)\\s+([A-Za-z_]\\w*)(?:\\s+is\\s+((?:[A-Za-z_][\\,\\s]*)*))?\\b",
39
- "name": "keyword.control"
33
+ }
40
34
  },
41
35
  {
36
+ "match": "\\b(address|string|bytes\\d*|int\\d*|uint\\d*|bool|u?fixed\\d+x\\d+)\\b(?:\\s+(?:indexed\\s+)?([A-Za-z_]\\w*)\\s*[,\\)])?",
42
37
  "captures": {
43
38
  "1": {
44
39
  "name": "constant.language"
@@ -46,11 +41,10 @@
46
41
  "2": {
47
42
  "name": "variable.parameter"
48
43
  }
49
- },
50
- "comment": "Built-in types",
51
- "match": "\\b(address|string|bytes\\d*|int\\d*|uint\\d*|bool|u?fixed\\d+x\\d+)\\b(?:\\s+(?:indexed\\s+)?([A-Za-z_]\\w*)\\s*[,\\)])?"
44
+ }
52
45
  },
53
46
  {
47
+ "match": "\\b(mapping)\\s*\\((.*)\\s+=\u003e\\s+(.*)\\)(\\s+(?:private|public|internal|external|inherited))?\\s+([A-Za-z_]\\w*)\\b",
54
48
  "captures": {
55
49
  "1": {
56
50
  "name": "constant.language"
@@ -64,21 +58,18 @@
64
58
  "4": {
65
59
  "name": "keyword.control"
66
60
  }
67
- },
68
- "comment": "Mapping definition",
69
- "match": "\\b(mapping)\\s*\\((.*)\\s+=>\\s+(.*)\\)(\\s+(?:private|public|internal|external|inherited))?\\s+([A-Za-z_]\\w*)\\b"
61
+ }
70
62
  },
71
63
  {
72
- "comment": "True and false keywords",
73
- "match": "\\b(true|false)\\b",
74
- "name": "constant.language"
64
+ "name": "constant.language",
65
+ "match": "\\b(true|false)\\b"
75
66
  },
76
67
  {
77
- "comment": "Langauge keywords",
78
- "match": "\\b(var|import|function|constant|if|else|for|while|do|break|continue|returns?|private|public|internal|external|inherited|this|suicide|new|is|throw|revert|assert|require|\\_)\\b",
79
- "name": "keyword.control"
68
+ "name": "keyword.control",
69
+ "match": "\\b(var|import|function|constant|view|pure|payable|storage|memory|if|else|for|while|do|break|continue|returns?|private|public|internal|external|inherited|this|suicide|selfdestruct|new|is|throw|revert|assert|require|\\_)\\b"
80
70
  },
81
71
  {
72
+ "match": "\\b([A-Za-z_]\\w+)(\\s+(?:private|public|internal|external|inherited))?\\s+([A-Za-z_]\\w*)\\;",
82
73
  "captures": {
83
74
  "1": {
84
75
  "name": "constant.language"
@@ -86,16 +77,14 @@
86
77
  "2": {
87
78
  "name": "keyword.control"
88
79
  }
89
- },
90
- "comment": "Variable definitions",
91
- "match": "\\b([A-Za-z_]\\w+)(\\s+(?:private|public|internal|external|inherited))?\\s+([A-Za-z_]\\w*)\\;"
80
+ }
92
81
  },
93
82
  {
94
- "comment": "Operators",
95
- "match": "(=|!|>|<|\\||&|\\?|:|\\^|~|\\*|\\+|-|\\/|\\%)",
96
- "name": "keyword.control"
83
+ "name": "keyword.control",
84
+ "match": "(=|!|\u003e|\u003c|\\||\u0026|\\?|:|\\^|~|\\*|\\+|-|\\/|\\%)"
97
85
  },
98
86
  {
87
+ "match": "\\b(msg|block|tx)\\.([A-Za-z_]\\w*)\\b",
99
88
  "captures": {
100
89
  "1": {
101
90
  "name": "constant.language"
@@ -103,35 +92,27 @@
103
92
  "2": {
104
93
  "name": "constant.language"
105
94
  }
106
- },
107
- "comment": "msg and block special usage",
108
- "match": "\\b(msg|block|tx)\\.([A-Za-z_]\\w*)\\b"
95
+ }
109
96
  },
110
97
  {
98
+ "match": "\\b([A-Za-z_]\\w*)\\s*\\(",
111
99
  "captures": {
112
100
  "1": {
113
101
  "name": "support.type"
114
102
  }
115
- },
116
- "comment": "Function call",
117
- "match": "\\b([A-Za-z_]\\w*)\\s*\\("
103
+ }
118
104
  },
119
105
  {
120
- "comment": "Strings",
121
- "match": "([\\\"\\'].*?[\\\"\\'])",
122
- "name": "string.quoted"
106
+ "name": "string.quoted",
107
+ "match": "([\\\"\\'].*?[\\\"\\'])"
123
108
  },
124
109
  {
125
- "comment": "Numbers",
126
- "match": "\\b(\\d+)\\b",
127
- "name": "constant.numeric"
110
+ "name": "constant.numeric",
111
+ "match": "\\b(\\d+)\\b"
128
112
  },
129
113
  {
130
- "comment": "Hexadecimal",
131
- "match": "\\b(0[xX][a-fA-F0-9]+)\\b",
132
- "name": "constant.numeric"
114
+ "name": "constant.numeric",
115
+ "match": "\\b(0[xX][a-fA-F0-9]+)\\b"
133
116
  }
134
- ],
135
- "scopeName": "source.solidity",
136
- "uuid": "ad87d2cd-8575-4afe-984e-9421a3788933"
137
- }
117
+ ]
118
+ }
@@ -1,33 +1,32 @@
1
1
  {
2
- "fileTypes": [
3
- "sp",
4
- "inc"
5
- ],
6
2
  "name": "SourcePawn",
3
+ "scopeName": "source.sp",
7
4
  "patterns": [
8
5
  {
9
- "match": "\\/\\/.*",
10
- "name": "comment.sourcepawn"
6
+ "name": "comment.sourcepawn",
7
+ "match": "\\/\\/.*"
11
8
  },
12
9
  {
10
+ "name": "comment.block.sourcepawn",
13
11
  "begin": "/\\*",
12
+ "end": "\\*/",
14
13
  "captures": {
15
14
  "0": {
16
15
  "name": "comment.sourcepawn"
17
16
  }
18
- },
19
- "end": "\\*/",
20
- "name": "comment.block.sourcepawn"
17
+ }
21
18
  },
22
19
  {
23
- "match": "\"(\\\\\"|\\\\.|[^\\\\\"])*\"",
24
- "name": "string.sourcepawn"
20
+ "name": "string.sourcepawn",
21
+ "match": "\"(\\\\\"|\\\\.|[^\\\\\"])*\""
25
22
  },
26
23
  {
27
- "match": "'(\\\\.|[^\\\\])?'",
28
- "name": "string.sourcepawn"
24
+ "name": "string.sourcepawn",
25
+ "match": "'(\\\\.|[^\\\\])?'"
29
26
  },
30
27
  {
28
+ "name": "keyword.operator.sourcepawn",
29
+ "match": "(\\#include|\\#tryinclude)\\s+(\u003c|\")(.+)(\u003e|\")",
31
30
  "captures": {
32
31
  "1": {
33
32
  "name": "keyword.control.import.sourcepawn"
@@ -35,11 +34,10 @@
35
34
  "3": {
36
35
  "name": "storage.type.sourcepawn"
37
36
  }
38
- },
39
- "match": "(\\#include|\\#tryinclude)\\s+(<|\")(.+)(>|\")",
40
- "name": "keyword.operator.sourcepawn"
37
+ }
41
38
  },
42
39
  {
40
+ "match": "(\\#(define|undef|pragma))\\s+(\\w+)",
43
41
  "captures": {
44
42
  "1": {
45
43
  "name": "keyword.control.import.sourcepawn"
@@ -47,10 +45,11 @@
47
45
  "3": {
48
46
  "name": "constant.sourcepawn"
49
47
  }
50
- },
51
- "match": "(\\#(define|undef|pragma))\\s+(\\w+)"
48
+ }
52
49
  },
53
50
  {
51
+ "name": "keyword.operator.sourcepawn",
52
+ "match": "(\\#if)\\s+!*(\\w+)\\s+(\\w+)",
54
53
  "captures": {
55
54
  "1": {
56
55
  "name": "keyword.control.import.sourcepawn"
@@ -61,15 +60,14 @@
61
60
  "3": {
62
61
  "name": "constant.sourcepawn"
63
62
  }
64
- },
65
- "match": "(\\#if)\\s+!*(\\w+)\\s+(\\w+)",
66
- "name": "keyword.operator.sourcepawn"
63
+ }
67
64
  },
68
65
  {
69
- "match": "#(else|end(if|input))",
70
- "name": "keyword.control.import.sourcepawn"
66
+ "name": "keyword.control.import.sourcepawn",
67
+ "match": "#(else|end(if|input))"
71
68
  },
72
69
  {
70
+ "match": "(enum|struct)(\\s+(\\w+))*",
73
71
  "captures": {
74
72
  "1": {
75
73
  "name": "declaration.tag.sourcepawn"
@@ -77,42 +75,39 @@
77
75
  "3": {
78
76
  "name": "storage.type.sourcepawn"
79
77
  }
80
- },
81
- "match": "(enum|struct)(\\s+(\\w+))*"
78
+ }
82
79
  },
83
80
  {
84
- "match": "\\w+(?=:)",
85
- "name": "storage.type.sourcepawn"
81
+ "name": "storage.type.sourcepawn",
82
+ "match": "\\w+(?=:)"
86
83
  },
87
84
  {
88
- "match": "{|}|-|=|!|%|&|\\(|\\)|,|\\.|:|;|\\?|@|\\[|\\]|\\^|\\||~|\\+|<|>",
89
- "name": "keyword.operator.sourcepawn"
85
+ "name": "keyword.operator.sourcepawn",
86
+ "match": "{|}|-|=|!|%|\u0026|\\(|\\)|,|\\.|:|;|\\?|@|\\[|\\]|\\^|\\||~|\\+|\u003c|\u003e"
90
87
  },
91
88
  {
92
- "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|ll|LL|ull|ULL)?\\b",
93
- "name": "constant.numeric.sourcepawn"
89
+ "name": "constant.numeric.sourcepawn",
90
+ "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|ll|LL|ull|ULL)?\\b"
94
91
  },
95
92
  {
96
- "match": "(\\b)(for|if|else|do|while|switch|case|default|return|break|continue|new|decl|public|stock|const|forward|static|funcenum|functag|native)(\\b)",
97
- "name": "declaration.tag.sourcepawn"
93
+ "name": "declaration.tag.sourcepawn",
94
+ "match": "(\\b)(for|if|else|do|while|switch|case|default|return|break|continue|new|decl|public|stock|const|forward|static|funcenum|functag|native)(\\b)"
98
95
  },
99
96
  {
100
- "match": "\\w+(?=\\()",
101
- "name": "support.function.sourcepawn"
97
+ "name": "support.function.sourcepawn",
98
+ "match": "\\w+(?=\\()"
102
99
  },
103
100
  {
104
- "match": "(\\b)(MaxClients|NULL_VECTOR|NULL_STRING|ADMFLAG_BAN|ADMFLAG_CHANGEMAP|ADMFLAG_CHAT|ADMFLAG_CHEATS|ADMFLAG_CONFIG|ADMFLAG_CONVARS|ADMFLAG_CUSTOM1|ADMFLAG_CUSTOM2|ADMFLAG_CUSTOM3|ADMFLAG_CUSTOM4|ADMFLAG_CUSTOM5|ADMFLAG_CUSTOM6|ADMFLAG_GENERIC|ADMFLAG_KICK|ADMFLAG_PASSWORD|ADMFLAG_RCON|ADMFLAG_RESERVATION|ADMFLAG_ROOT|ADMFLAG_SLAY|ADMFLAG_UNBAN|ADMFLAG_VOTE|ADMINMENU_PLAYERCOMMANDS|ADMINMENU_SERVERCOMMANDS|ADMINMENU_VOTINGCOMMANDS|ALL_VISIBLE_CONTENTS|AUTHMETHOD_IP|AUTHMETHOD_NAME|AUTHMETHOD_STEAM|AUTOLOAD_EXTENSIONS|AdminFlags_TOTAL|BANFLAG_AUTHID|BANFLAG_AUTO|BANFLAG_IP|BANFLAG_NOKICK|CHATCOLOR_NOSUBJECT|CLIENTFILTER_ADMINS|CLIENTFILTER_ALIVE|CLIENTFILTER_ALL|CLIENTFILTER_AUTHORIZED|CLIENTFILTER_BOTS|CLIENTFILTER_DEAD|CLIENTFILTER_INGAME|CLIENTFILTER_INGAMEAUTH|CLIENTFILTER_NOADMINS|CLIENTFILTER_NOBOTS|CLIENTFILTER_NOOBSERVERS|CLIENTFILTER_NOSPECTATORS|CLIENTFILTER_NOTAUTHORIZED|CLIENTFILTER_NOTINGAME|CLIENTFILTER_OBSERVERS|CLIENTFILTER_SPECTATORS|CLIENTFILTER_TEAMONE|CLIENTFILTER_TEAMTWO|COMMAND_FILTER_ALIVE|COMMAND_FILTER_CONNECTED|COMMAND_FILTER_DEAD|COMMAND_FILTER_NO_BOTS|COMMAND_FILTER_NO_IMMUNITY|COMMAND_FILTER_NO_MULTI|COMMAND_TARGET_AMBIGUOUS|COMMAND_TARGET_EMPTY_FILTER|COMMAND_TARGET_IMMUNE|COMMAND_TARGET_NONE|COMMAND_TARGET_NOT_ALIVE|COMMAND_TARGET_NOT_DEAD|COMMAND_TARGET_NOT_HUMAN|COMMAND_TARGET_NOT_IN_GAME|CONTENTS_AREAPORTAL|CONTENTS_AUX|CONTENTS_CURRENT_0|CONTENTS_CURRENT_180|CONTENTS_CURRENT_270|CONTENTS_CURRENT_90|CONTENTS_CURRENT_DOWN|CONTENTS_CURRENT_UP|CONTENTS_DEBRIS|CONTENTS_DETAIL|CONTENTS_EMPTY|CONTENTS_GRATE|CONTENTS_HITBOX|CONTENTS_IGNORE_NODRAW_OPAQUE|CONTENTS_LADDER|CONTENTS_MIST|CONTENTS_MONSTER|CONTENTS_MONSTERCLIP|CONTENTS_MOVEABLE|CONTENTS_OPAQUE|CONTENTS_ORIGIN|CONTENTS_PLAYERCLIP|CONTENTS_SLIME|CONTENTS_SOLID|CONTENTS_TEAM1|CONTENTS_TEAM2|CONTENTS_TESTFOGVOLUME|CONTENTS_TRANSLUCENT|CONTENTS_UNUSED5|CONTENTS_UNUSED6|CONTENTS_WATER|CONTENTS_WINDOW|CS_SLOT_C4|CS_SLOT_GRENADE|CS_SLOT_PRIMARY|CS_SLOT_SECONDARY|CS_TEAM_CT|CS_TEAM_NONE|CS_TEAM_SPECTATOR|CS_TEAM_T|DAMAGE_AIM|DAMAGE_EVENTS_ONLY|DAMAGE_NO|DAMAGE_YES|DMG_ACID|DMG_AIRBOAT|DMG_ALWAYSGIB|DMG_BLAST|DMG_BLAST_SURFACE|DMG_BUCKSHOT|DMG_BULLET|DMG_BURN|DMG_CLUB|DMG_CRIT|DMG_CRUSH|DMG_DIRECT|DMG_DISSOLVE|DMG_DROWN|DMG_DROWNRECOVER|DMG_ENERGYBEAM|DMG_FALL|DMG_GENERIC|DMG_NERVEGAS|DMG_NEVERGIB|DMG_PARALYZE|DMG_PHYSGUN|DMG_PLASMA|DMG_POISON|DMG_PREVENT_PHYSICS_FORCE|DMG_RADIATION|DMG_REMOVENORAGDOLL|DMG_SHOCK|DMG_SLASH|DMG_SLOWBURN|DMG_SONIC|DMG_VEHICLE|FBEAM_ENDENTITY|FBEAM_ENDVISIBLE|FBEAM_FADEIN|FBEAM_FADEOUT|FBEAM_FOREVER|FBEAM_HALOBEAM|FBEAM_ISACTIVE|FBEAM_NOTILE|FBEAM_ONLYNOISEONCE|FBEAM_SHADEIN|FBEAM_SHADEOUT|FBEAM_SINENOISE|FBEAM_SOLID|FBEAM_STARTENTITY|FBEAM_STARTVISIBLE|FBEAM_USE_HITBOXES|FCVAR_ARCHIVE|FCVAR_ARCHIVE_XBOX|FCVAR_CHEAT|FCVAR_CLIENTDLL|FCVAR_DATACACHE|FCVAR_DEMO|FCVAR_DONTRECORD|FCVAR_FILESYSTEM|FCVAR_GAMEDLL|FCVAR_INPUTSYSTEM|FCVAR_LAUNCHER|FCVAR_MATERIAL_SYSTEM|FCVAR_NETWORKSYSTEM|FCVAR_NEVER_AS_STRING|FCVAR_NONE|FCVAR_NOTIFY|FCVAR_NOT_CONNECTED|FCVAR_PLUGIN|FCVAR_PRINTABLEONLY|FCVAR_PROTECTED|FCVAR_REPLICATED|FCVAR_SOUNDSYSTEM|FCVAR_SPONLY|FCVAR_STUDIORENDER|FCVAR_TOOLSYSTEM|FCVAR_UNLOGGED|FCVAR_UNREGISTERED|FCVAR_USERINFO|FCVAR_VPHYSICS|FEATURECAP_COMMANDLISTENER|FEATURECAP_PLAYERRUNCMD_11PARAMS|FEET_TO_METERS|FFADE_IN|FFADE_MODULATE|FFADE_OUT|FFADE_PURGE|FFADE_STAYOUT|FLOAT_PI|FL_AIMTARGET|FL_ATCONTROLS|FL_BASEVELOCITY|FL_CLIENT|FL_CONVEYOR|FL_DISSOLVING|FL_DONTTOUCH|FL_DUCKING|FL_EDICT_ALWAYS|FL_EDICT_DIRTY_PVS_INFORMATION|FL_EDICT_DONTSEND|FL_EDICT_FREE|FL_EDICT_FULL|FL_EDICT_FULLCHECK|FL_EDICT_PENDING_DORMANT_CHECK|FL_EDICT_PVSCHECK|FL_EP2V_UNKNOWN1|FL_FAKECLIENT|FL_FLY|FL_FREEZING|FL_FROZEN|FL_FULL_EDICT_CHANGED|FL_GODMODE|FL_GRAPHED|FL_GRENADE|FL_INRAIN|FL_INWATER|FL_KILLME|FL_NOTARGET|FL_NPC|FL_OBJECT|FL_ONFIRE|FL_ONGROUND|FL_ONTRAIN|FL_PARTIALGROUND|FL_STATICPROP|FL_STEPMOVEMENT|FL_SWIM|FL_TRANSRAGDOLL|FL_UNBLOCKABLE_BY_PLAYER|FL_WATERJUMP|FL_WORLDBRUSH|FPERM_G_EXEC|FPERM_G_READ|FPERM_G_WRITE|FPERM_O_EXEC|FPERM_O_READ|FPERM_O_WRITE|FPERM_U_EXEC|FPERM_U_READ|FPERM_U_WRITE|GAMEUNITS_TO_METERS|HIDEHUD_ALL|HIDEHUD_BONUS_PROGRESS|HIDEHUD_CHAT|HIDEHUD_CROSSHAIR|HIDEHUD_FLASHLIGHT|HIDEHUD_HEALTH|HIDEHUD_INVEHICLE|HIDEHUD_MISCSTATUS|HIDEHUD_NEEDSUIT|HIDEHUD_PLAYERDEAD|HIDEHUD_VEHICLE_CROSSHAIR|HIDEHUD_WEAPONSELECTION|INVALID_ENT_REFERENCE|INVALID_FCVAR_FLAGS|INVALID_STRING_INDEX|INVALID_STRING_TABLE|IN_ALT1|IN_ALT2|IN_ATTACK|IN_ATTACK2|IN_ATTACK3|IN_BACK|IN_BULLRUSH|IN_CANCEL|IN_DUCK|IN_FORWARD|IN_GRENADE1|IN_GRENADE2|IN_JUMP|IN_LEFT|IN_MOVELEFT|IN_MOVERIGHT|IN_RELOAD|IN_RIGHT|IN_RUN|IN_SCORE|IN_SPEED|IN_USE|IN_WALK|IN_WEAPON1|IN_WEAPON2|IN_ZOOM|ITEMDRAW_CONTROL|ITEMDRAW_DEFAULT|ITEMDRAW_DISABLED|ITEMDRAW_IGNORE|ITEMDRAW_NOTEXT|ITEMDRAW_RAWLINE|ITEMDRAW_SPACER|LANG_SERVER|LAST_VISIBLE_CONTENTS|MAPLIST_FLAG_CLEARARRAY|MAPLIST_FLAG_MAPSFOLDER|MAPLIST_FLAG_NO_DEFAULT|MASK_ALL|MASK_NPCSOLID|MASK_NPCSOLID_BRUSHONLY|MASK_NPCWORLDSTATIC|MASK_OPAQUE|MASK_OPAQUE_AND_NPCS|MASK_PLAYERSOLID|MASK_PLAYERSOLID_BRUSHONLY|MASK_SHOT|MASK_SHOT_HULL|MASK_SHOT_PORTAL|MASK_SOLID|MASK_SOLID_BRUSHONLY|MASK_SPLITAREAPORTAL|MASK_VISIBLE|MASK_VISIBLE_AND_NPCS|MASK_WATER|MAXPLAYERS|MAX_AMMO_SLOTS|MAX_AMMO_TYPES|MAX_LIGHTSTYLES|MAX_NAME_LENGTH|MAX_STEAMAUTH_LENGTH|MAX_SUIT_DEVICES|MAX_TARGET_LENGTH|MAX_TEAMS|MAX_TEAM_NAME_LENGTH|MAX_WEAPONS|MAX_WEAPON_AMMO_NAME|MAX_WEAPON_OFFSET|MAX_WEAPON_POSITIONS|MAX_WEAPON_PREFIX|MAX_WEAPON_SLOTS|MAX_WEAPON_STRING|MENUFLAG_BUTTON_EXIT|MENUFLAG_BUTTON_EXITBACK|MENUFLAG_BUTTON_NOVOTE|MENUFLAG_NO_SOUND|MENU_ACTIONS_ALL|MENU_ACTIONS_DEFAULT|MENU_NO_PAGINATION|MENU_TIME_FOREVER|METERS_TO_FEET|METERS_TO_GAMEUNITS|MOTDPANEL_TYPE_FILE|MOTDPANEL_TYPE_INDEX|MOTDPANEL_TYPE_TEXT|MOTDPANEL_TYPE_URL|PCRE_CASELESS|PCRE_DOTALL|PCRE_EXTENDED|PCRE_MULTILINE|PCRE_NO_UTF8_CHECK|PCRE_UNGREEDY|PCRE_UTF8|PLATFORM_MAX_PATH|PLAYER_FLAG_BITS|REQUIRE_EXTENSIONS|REQUIRE_PLUGIN|SEEK_CUR|SEEK_END|SEEK_SET|SF_BREAK_DONT_TAKE_PHYSICS_DAMAGE|SF_BREAK_NO_BULLET_PENETRATION|SF_BREAK_PHYSICS_BREAK_IMMEDIATELY|SF_BREAK_PRESSURE|SF_BREAK_TOUCH|SF_BREAK_TRIGGER_ONLY|SF_PHYSBOX_ALWAYS_PICK_UP|SF_PHYSBOX_ASLEEP|SF_PHYSBOX_DEBRIS|SF_PHYSBOX_ENABLE_ON_PHYSCANNON|SF_PHYSBOX_ENABLE_PICKUP_OUTPUT|SF_PHYSBOX_IGNOREUSE|SF_PHYSBOX_MOTIONDISABLED|SF_PHYSBOX_NEVER_PICK_UP|SF_PHYSBOX_NEVER_PUNT|SF_PHYSBOX_NO_ROTORWASH_PUSH|SF_PHYSBOX_PREVENT_PLAYER_TOUCH_ENABLE|SF_PHYSBOX_USEPREFERRED|SF_PHYSPROP_ALWAYS_PICK_UP|SF_PHYSPROP_DEBRIS|SF_PHYSPROP_DONT_TAKE_PHYSICS_DAMAGE|SF_PHYSPROP_ENABLE_ON_PHYSCANNON|SF_PHYSPROP_ENABLE_PICKUP_OUTPUT|SF_PHYSPROP_FORCE_SERVER_SIDE|SF_PHYSPROP_FORCE_TOUCH_TRIGGERS|SF_PHYSPROP_HAS_ATTACHED_RAGDOLLS|SF_PHYSPROP_IS_GIB|SF_PHYSPROP_MOTIONDISABLED|SF_PHYSPROP_NO_COLLISIONS|SF_PHYSPROP_NO_ROTORWASH_PUSH|SF_PHYSPROP_PRESSURE|SF_PHYSPROP_PREVENT_PICKUP|SF_PHYSPROP_PREVENT_PLAYER_TOUCH_ENABLE|SF_PHYSPROP_RADIUS_PICKUP|SF_PHYSPROP_START_ASLEEP|SF_PHYSPROP_TOUCH|SF_PUSH_BREAKABLE|SF_PUSH_NO_USE|SHAKE_AMPLITUDE|SHAKE_FREQUENCY|SHAKE_START|SHAKE_START_NORUMBLE|SHAKE_START_RUMBLEONLY|SHAKE_STOP|SIZE_OF_INT|SMLIB_COLORS_GAMEDATAFILE|SMLIB_VERSION|SM_PARAM_COPYBACK|SM_PARAM_STRING_BINARY|SM_PARAM_STRING_COPY|SM_PARAM_STRING_UTF8|SNDATTN_IDLE|SNDATTN_NONE|SNDATTN_NORMAL|SNDATTN_RICOCHET|SNDATTN_STATIC|SNDPITCH_HIGH|SNDPITCH_LOW|SNDPITCH_NORMAL|SNDVOL_NORMAL|SOUND_FROM_LOCAL_PLAYER|SOUND_FROM_PLAYER|SOUND_FROM_WORLD|SOURCEMOD_PLUGINAPI_VERSION|SOURCEMOD_VERSION|SOURCEMOD_V_CSET|SOURCEMOD_V_MAJOR|SOURCEMOD_V_MINOR|SOURCEMOD_V_RELEASE|SOURCEMOD_V_REV|SOURCEMOD_V_TAG|SOURCE_SDK_ALIENSWARM|SOURCE_SDK_BLOODYGOODTIME|SOURCE_SDK_CSGO|SOURCE_SDK_CSS|SOURCE_SDK_DARKMESSIAH|SOURCE_SDK_EPISODE1|SOURCE_SDK_EPISODE2|SOURCE_SDK_EPISODE2VALVE|SOURCE_SDK_EYE|SOURCE_SDK_LEFT4DEAD|SOURCE_SDK_LEFT4DEAD2|SOURCE_SDK_ORIGINAL|SOURCE_SDK_UNKNOWN|SP_ERROR_ABORTED|SP_ERROR_ARRAY_BOUNDS|SP_ERROR_ARRAY_TOO_BIG|SP_ERROR_DECOMPRESSOR|SP_ERROR_DIVIDE_BY_ZERO|SP_ERROR_FILE_FORMAT|SP_ERROR_HEAPLEAK|SP_ERROR_HEAPLOW|SP_ERROR_HEAPMIN|SP_ERROR_INDEX|SP_ERROR_INSTRUCTION_PARAM|SP_ERROR_INVALID_ADDRESS|SP_ERROR_INVALID_INSTRUCTION|SP_ERROR_INVALID_NATIVE|SP_ERROR_MEMACCESS|SP_ERROR_NATIVE|SP_ERROR_NONE|SP_ERROR_NOTDEBUGGING|SP_ERROR_NOT_FOUND|SP_ERROR_NOT_RUNNABLE|SP_ERROR_PARAM|SP_ERROR_PARAMS_MAX|SP_ERROR_STACKLEAK|SP_ERROR_STACKLOW|SP_ERROR_STACKMIN|SP_ERROR_TRACKER_BOUNDS|SP_PARAMFLAG_BYREF|TEAM_FOUR|TEAM_INVALID|TEAM_ONE|TEAM_SPECTATOR|TEAM_THREE|TEAM_TWO|TEAM_UNASSIGNED|TEMP_REQUIRE_EXTENSIONS|TE_EXPLFLAG_DRAWALPHA|TE_EXPLFLAG_NOADDITIVE|TE_EXPLFLAG_NODLIGHTS|TE_EXPLFLAG_NOFIREBALL|TE_EXPLFLAG_NOFIREBALLSMOKE|TE_EXPLFLAG_NONE|TE_EXPLFLAG_NOPARTICLES|TE_EXPLFLAG_NOSOUND|TE_EXPLFLAG_ROTATE|TF_CONDFLAG_BLEEDING|TF_CONDFLAG_BONKED|TF_CONDFLAG_BUFFED|TF_CONDFLAG_CHARGING|TF_CONDFLAG_CLOAKED|TF_CONDFLAG_CLOAKFLICKER|TF_CONDFLAG_CRITCOLA|TF_CONDFLAG_DAZED|TF_CONDFLAG_DEADRINGERED|TF_CONDFLAG_DEFENSEBUFFED|TF_CONDFLAG_DEMOBUFF|TF_CONDFLAG_DISGUISED|TF_CONDFLAG_DISGUISING|TF_CONDFLAG_HEALING|TF_CONDFLAG_INHEALRADIUS|TF_CONDFLAG_JARATED|TF_CONDFLAG_KRITZKRIEGED|TF_CONDFLAG_MARKEDFORDEATH|TF_CONDFLAG_MEGAHEAL|TF_CONDFLAG_MILKED|TF_CONDFLAG_NONE|TF_CONDFLAG_ONFIRE|TF_CONDFLAG_OVERHEALED|TF_CONDFLAG_REGENBUFFED|TF_CONDFLAG_SLOWED|TF_CONDFLAG_TAUNTING|TF_CONDFLAG_TELEPORTGLOW|TF_CONDFLAG_TELEPORTING|TF_CONDFLAG_UBERCHARGED|TF_CONDFLAG_UBERCHARGEFADE|TF_CONDFLAG_ZOOMED|TF_DEATHFLAG_ASSISTERDOMINATION|TF_DEATHFLAG_ASSISTERREVENGE|TF_DEATHFLAG_DEADRINGER|TF_DEATHFLAG_FIRSTBLOOD|TF_DEATHFLAG_GIBBED|TF_DEATHFLAG_INTERRUPTED|TF_DEATHFLAG_KILLERDOMINATION|TF_DEATHFLAG_KILLERREVENGE|TF_DEATHFLAG_PURGATORY|TF_STUNFLAGS_BIGBONK|TF_STUNFLAGS_GHOSTSCARE|TF_STUNFLAGS_LOSERSTATE|TF_STUNFLAGS_NORMALBONK|TF_STUNFLAGS_SMALLBONK|TF_STUNFLAG_BONKSTUCK|TF_STUNFLAG_CHEERSOUND|TF_STUNFLAG_GHOSTEFFECT|TF_STUNFLAG_LIMITMOVEMENT|TF_STUNFLAG_NOSOUNDOREFFECT|TF_STUNFLAG_SLOWDOWN|TF_STUNFLAG_THIRDPERSON|TIMER_DATA_HNDL_CLOSE|TIMER_FLAG_NO_MAPCHANGE|TIMER_HNDL_CLOSE|TIMER_REPEAT|USERMSG_BLOCKHOOKS|USERMSG_INITMSG|USERMSG_RELIABLE|VDECODE_FLAG_ALLOWNOTINGAME|VDECODE_FLAG_ALLOWNULL|VDECODE_FLAG_ALLOWWORLD|VDECODE_FLAG_BYREF|VENCODE_FLAG_COPYBACK|VOICE_LISTENALL|VOICE_LISTENTEAM|VOICE_MUTED|VOICE_NORMAL|VOICE_SPEAKALL|VOICE_TEAM|VOTEFLAG_NO_REVOTES|VOTEINFO_CLIENT_INDEX|VOTEINFO_CLIENT_ITEM|VOTEINFO_ITEM_INDEX|VOTEINFO_ITEM_VOTES|WEAPON_IS_ACTIVE|WEAPON_IS_CARRIED_BY_PLAYER|WEAPON_IS_ONTARGET|WEAPON_NOCLIP|WEAPON_NOT_CARRIED|bits_SUIT_DEVICE_BREATHER|bits_SUIT_DEVICE_FLASHLIGHT|bits_SUIT_DEVICE_SPRINT)(\\b)",
105
- "name": "support.type.sourcepawn"
101
+ "name": "support.type.sourcepawn",
102
+ "match": "(\\b)(MaxClients|NULL_VECTOR|NULL_STRING|ADMFLAG_BAN|ADMFLAG_CHANGEMAP|ADMFLAG_CHAT|ADMFLAG_CHEATS|ADMFLAG_CONFIG|ADMFLAG_CONVARS|ADMFLAG_CUSTOM1|ADMFLAG_CUSTOM2|ADMFLAG_CUSTOM3|ADMFLAG_CUSTOM4|ADMFLAG_CUSTOM5|ADMFLAG_CUSTOM6|ADMFLAG_GENERIC|ADMFLAG_KICK|ADMFLAG_PASSWORD|ADMFLAG_RCON|ADMFLAG_RESERVATION|ADMFLAG_ROOT|ADMFLAG_SLAY|ADMFLAG_UNBAN|ADMFLAG_VOTE|ADMINMENU_PLAYERCOMMANDS|ADMINMENU_SERVERCOMMANDS|ADMINMENU_VOTINGCOMMANDS|ALL_VISIBLE_CONTENTS|AUTHMETHOD_IP|AUTHMETHOD_NAME|AUTHMETHOD_STEAM|AUTOLOAD_EXTENSIONS|AdminFlags_TOTAL|BANFLAG_AUTHID|BANFLAG_AUTO|BANFLAG_IP|BANFLAG_NOKICK|CHATCOLOR_NOSUBJECT|CLIENTFILTER_ADMINS|CLIENTFILTER_ALIVE|CLIENTFILTER_ALL|CLIENTFILTER_AUTHORIZED|CLIENTFILTER_BOTS|CLIENTFILTER_DEAD|CLIENTFILTER_INGAME|CLIENTFILTER_INGAMEAUTH|CLIENTFILTER_NOADMINS|CLIENTFILTER_NOBOTS|CLIENTFILTER_NOOBSERVERS|CLIENTFILTER_NOSPECTATORS|CLIENTFILTER_NOTAUTHORIZED|CLIENTFILTER_NOTINGAME|CLIENTFILTER_OBSERVERS|CLIENTFILTER_SPECTATORS|CLIENTFILTER_TEAMONE|CLIENTFILTER_TEAMTWO|COMMAND_FILTER_ALIVE|COMMAND_FILTER_CONNECTED|COMMAND_FILTER_DEAD|COMMAND_FILTER_NO_BOTS|COMMAND_FILTER_NO_IMMUNITY|COMMAND_FILTER_NO_MULTI|COMMAND_TARGET_AMBIGUOUS|COMMAND_TARGET_EMPTY_FILTER|COMMAND_TARGET_IMMUNE|COMMAND_TARGET_NONE|COMMAND_TARGET_NOT_ALIVE|COMMAND_TARGET_NOT_DEAD|COMMAND_TARGET_NOT_HUMAN|COMMAND_TARGET_NOT_IN_GAME|CONTENTS_AREAPORTAL|CONTENTS_AUX|CONTENTS_CURRENT_0|CONTENTS_CURRENT_180|CONTENTS_CURRENT_270|CONTENTS_CURRENT_90|CONTENTS_CURRENT_DOWN|CONTENTS_CURRENT_UP|CONTENTS_DEBRIS|CONTENTS_DETAIL|CONTENTS_EMPTY|CONTENTS_GRATE|CONTENTS_HITBOX|CONTENTS_IGNORE_NODRAW_OPAQUE|CONTENTS_LADDER|CONTENTS_MIST|CONTENTS_MONSTER|CONTENTS_MONSTERCLIP|CONTENTS_MOVEABLE|CONTENTS_OPAQUE|CONTENTS_ORIGIN|CONTENTS_PLAYERCLIP|CONTENTS_SLIME|CONTENTS_SOLID|CONTENTS_TEAM1|CONTENTS_TEAM2|CONTENTS_TESTFOGVOLUME|CONTENTS_TRANSLUCENT|CONTENTS_UNUSED5|CONTENTS_UNUSED6|CONTENTS_WATER|CONTENTS_WINDOW|CS_SLOT_C4|CS_SLOT_GRENADE|CS_SLOT_PRIMARY|CS_SLOT_SECONDARY|CS_TEAM_CT|CS_TEAM_NONE|CS_TEAM_SPECTATOR|CS_TEAM_T|DAMAGE_AIM|DAMAGE_EVENTS_ONLY|DAMAGE_NO|DAMAGE_YES|DMG_ACID|DMG_AIRBOAT|DMG_ALWAYSGIB|DMG_BLAST|DMG_BLAST_SURFACE|DMG_BUCKSHOT|DMG_BULLET|DMG_BURN|DMG_CLUB|DMG_CRIT|DMG_CRUSH|DMG_DIRECT|DMG_DISSOLVE|DMG_DROWN|DMG_DROWNRECOVER|DMG_ENERGYBEAM|DMG_FALL|DMG_GENERIC|DMG_NERVEGAS|DMG_NEVERGIB|DMG_PARALYZE|DMG_PHYSGUN|DMG_PLASMA|DMG_POISON|DMG_PREVENT_PHYSICS_FORCE|DMG_RADIATION|DMG_REMOVENORAGDOLL|DMG_SHOCK|DMG_SLASH|DMG_SLOWBURN|DMG_SONIC|DMG_VEHICLE|FBEAM_ENDENTITY|FBEAM_ENDVISIBLE|FBEAM_FADEIN|FBEAM_FADEOUT|FBEAM_FOREVER|FBEAM_HALOBEAM|FBEAM_ISACTIVE|FBEAM_NOTILE|FBEAM_ONLYNOISEONCE|FBEAM_SHADEIN|FBEAM_SHADEOUT|FBEAM_SINENOISE|FBEAM_SOLID|FBEAM_STARTENTITY|FBEAM_STARTVISIBLE|FBEAM_USE_HITBOXES|FCVAR_ARCHIVE|FCVAR_ARCHIVE_XBOX|FCVAR_CHEAT|FCVAR_CLIENTDLL|FCVAR_DATACACHE|FCVAR_DEMO|FCVAR_DONTRECORD|FCVAR_FILESYSTEM|FCVAR_GAMEDLL|FCVAR_INPUTSYSTEM|FCVAR_LAUNCHER|FCVAR_MATERIAL_SYSTEM|FCVAR_NETWORKSYSTEM|FCVAR_NEVER_AS_STRING|FCVAR_NONE|FCVAR_NOTIFY|FCVAR_NOT_CONNECTED|FCVAR_PLUGIN|FCVAR_PRINTABLEONLY|FCVAR_PROTECTED|FCVAR_REPLICATED|FCVAR_SOUNDSYSTEM|FCVAR_SPONLY|FCVAR_STUDIORENDER|FCVAR_TOOLSYSTEM|FCVAR_UNLOGGED|FCVAR_UNREGISTERED|FCVAR_USERINFO|FCVAR_VPHYSICS|FEATURECAP_COMMANDLISTENER|FEATURECAP_PLAYERRUNCMD_11PARAMS|FEET_TO_METERS|FFADE_IN|FFADE_MODULATE|FFADE_OUT|FFADE_PURGE|FFADE_STAYOUT|FLOAT_PI|FL_AIMTARGET|FL_ATCONTROLS|FL_BASEVELOCITY|FL_CLIENT|FL_CONVEYOR|FL_DISSOLVING|FL_DONTTOUCH|FL_DUCKING|FL_EDICT_ALWAYS|FL_EDICT_DIRTY_PVS_INFORMATION|FL_EDICT_DONTSEND|FL_EDICT_FREE|FL_EDICT_FULL|FL_EDICT_FULLCHECK|FL_EDICT_PENDING_DORMANT_CHECK|FL_EDICT_PVSCHECK|FL_EP2V_UNKNOWN1|FL_FAKECLIENT|FL_FLY|FL_FREEZING|FL_FROZEN|FL_FULL_EDICT_CHANGED|FL_GODMODE|FL_GRAPHED|FL_GRENADE|FL_INRAIN|FL_INWATER|FL_KILLME|FL_NOTARGET|FL_NPC|FL_OBJECT|FL_ONFIRE|FL_ONGROUND|FL_ONTRAIN|FL_PARTIALGROUND|FL_STATICPROP|FL_STEPMOVEMENT|FL_SWIM|FL_TRANSRAGDOLL|FL_UNBLOCKABLE_BY_PLAYER|FL_WATERJUMP|FL_WORLDBRUSH|FPERM_G_EXEC|FPERM_G_READ|FPERM_G_WRITE|FPERM_O_EXEC|FPERM_O_READ|FPERM_O_WRITE|FPERM_U_EXEC|FPERM_U_READ|FPERM_U_WRITE|GAMEUNITS_TO_METERS|HIDEHUD_ALL|HIDEHUD_BONUS_PROGRESS|HIDEHUD_CHAT|HIDEHUD_CROSSHAIR|HIDEHUD_FLASHLIGHT|HIDEHUD_HEALTH|HIDEHUD_INVEHICLE|HIDEHUD_MISCSTATUS|HIDEHUD_NEEDSUIT|HIDEHUD_PLAYERDEAD|HIDEHUD_VEHICLE_CROSSHAIR|HIDEHUD_WEAPONSELECTION|INVALID_ENT_REFERENCE|INVALID_FCVAR_FLAGS|INVALID_STRING_INDEX|INVALID_STRING_TABLE|IN_ALT1|IN_ALT2|IN_ATTACK|IN_ATTACK2|IN_ATTACK3|IN_BACK|IN_BULLRUSH|IN_CANCEL|IN_DUCK|IN_FORWARD|IN_GRENADE1|IN_GRENADE2|IN_JUMP|IN_LEFT|IN_MOVELEFT|IN_MOVERIGHT|IN_RELOAD|IN_RIGHT|IN_RUN|IN_SCORE|IN_SPEED|IN_USE|IN_WALK|IN_WEAPON1|IN_WEAPON2|IN_ZOOM|ITEMDRAW_CONTROL|ITEMDRAW_DEFAULT|ITEMDRAW_DISABLED|ITEMDRAW_IGNORE|ITEMDRAW_NOTEXT|ITEMDRAW_RAWLINE|ITEMDRAW_SPACER|LANG_SERVER|LAST_VISIBLE_CONTENTS|MAPLIST_FLAG_CLEARARRAY|MAPLIST_FLAG_MAPSFOLDER|MAPLIST_FLAG_NO_DEFAULT|MASK_ALL|MASK_NPCSOLID|MASK_NPCSOLID_BRUSHONLY|MASK_NPCWORLDSTATIC|MASK_OPAQUE|MASK_OPAQUE_AND_NPCS|MASK_PLAYERSOLID|MASK_PLAYERSOLID_BRUSHONLY|MASK_SHOT|MASK_SHOT_HULL|MASK_SHOT_PORTAL|MASK_SOLID|MASK_SOLID_BRUSHONLY|MASK_SPLITAREAPORTAL|MASK_VISIBLE|MASK_VISIBLE_AND_NPCS|MASK_WATER|MAXPLAYERS|MAX_AMMO_SLOTS|MAX_AMMO_TYPES|MAX_LIGHTSTYLES|MAX_NAME_LENGTH|MAX_STEAMAUTH_LENGTH|MAX_SUIT_DEVICES|MAX_TARGET_LENGTH|MAX_TEAMS|MAX_TEAM_NAME_LENGTH|MAX_WEAPONS|MAX_WEAPON_AMMO_NAME|MAX_WEAPON_OFFSET|MAX_WEAPON_POSITIONS|MAX_WEAPON_PREFIX|MAX_WEAPON_SLOTS|MAX_WEAPON_STRING|MENUFLAG_BUTTON_EXIT|MENUFLAG_BUTTON_EXITBACK|MENUFLAG_BUTTON_NOVOTE|MENUFLAG_NO_SOUND|MENU_ACTIONS_ALL|MENU_ACTIONS_DEFAULT|MENU_NO_PAGINATION|MENU_TIME_FOREVER|METERS_TO_FEET|METERS_TO_GAMEUNITS|MOTDPANEL_TYPE_FILE|MOTDPANEL_TYPE_INDEX|MOTDPANEL_TYPE_TEXT|MOTDPANEL_TYPE_URL|PCRE_CASELESS|PCRE_DOTALL|PCRE_EXTENDED|PCRE_MULTILINE|PCRE_NO_UTF8_CHECK|PCRE_UNGREEDY|PCRE_UTF8|PLATFORM_MAX_PATH|PLAYER_FLAG_BITS|REQUIRE_EXTENSIONS|REQUIRE_PLUGIN|SEEK_CUR|SEEK_END|SEEK_SET|SF_BREAK_DONT_TAKE_PHYSICS_DAMAGE|SF_BREAK_NO_BULLET_PENETRATION|SF_BREAK_PHYSICS_BREAK_IMMEDIATELY|SF_BREAK_PRESSURE|SF_BREAK_TOUCH|SF_BREAK_TRIGGER_ONLY|SF_PHYSBOX_ALWAYS_PICK_UP|SF_PHYSBOX_ASLEEP|SF_PHYSBOX_DEBRIS|SF_PHYSBOX_ENABLE_ON_PHYSCANNON|SF_PHYSBOX_ENABLE_PICKUP_OUTPUT|SF_PHYSBOX_IGNOREUSE|SF_PHYSBOX_MOTIONDISABLED|SF_PHYSBOX_NEVER_PICK_UP|SF_PHYSBOX_NEVER_PUNT|SF_PHYSBOX_NO_ROTORWASH_PUSH|SF_PHYSBOX_PREVENT_PLAYER_TOUCH_ENABLE|SF_PHYSBOX_USEPREFERRED|SF_PHYSPROP_ALWAYS_PICK_UP|SF_PHYSPROP_DEBRIS|SF_PHYSPROP_DONT_TAKE_PHYSICS_DAMAGE|SF_PHYSPROP_ENABLE_ON_PHYSCANNON|SF_PHYSPROP_ENABLE_PICKUP_OUTPUT|SF_PHYSPROP_FORCE_SERVER_SIDE|SF_PHYSPROP_FORCE_TOUCH_TRIGGERS|SF_PHYSPROP_HAS_ATTACHED_RAGDOLLS|SF_PHYSPROP_IS_GIB|SF_PHYSPROP_MOTIONDISABLED|SF_PHYSPROP_NO_COLLISIONS|SF_PHYSPROP_NO_ROTORWASH_PUSH|SF_PHYSPROP_PRESSURE|SF_PHYSPROP_PREVENT_PICKUP|SF_PHYSPROP_PREVENT_PLAYER_TOUCH_ENABLE|SF_PHYSPROP_RADIUS_PICKUP|SF_PHYSPROP_START_ASLEEP|SF_PHYSPROP_TOUCH|SF_PUSH_BREAKABLE|SF_PUSH_NO_USE|SHAKE_AMPLITUDE|SHAKE_FREQUENCY|SHAKE_START|SHAKE_START_NORUMBLE|SHAKE_START_RUMBLEONLY|SHAKE_STOP|SIZE_OF_INT|SMLIB_COLORS_GAMEDATAFILE|SMLIB_VERSION|SM_PARAM_COPYBACK|SM_PARAM_STRING_BINARY|SM_PARAM_STRING_COPY|SM_PARAM_STRING_UTF8|SNDATTN_IDLE|SNDATTN_NONE|SNDATTN_NORMAL|SNDATTN_RICOCHET|SNDATTN_STATIC|SNDPITCH_HIGH|SNDPITCH_LOW|SNDPITCH_NORMAL|SNDVOL_NORMAL|SOUND_FROM_LOCAL_PLAYER|SOUND_FROM_PLAYER|SOUND_FROM_WORLD|SOURCEMOD_PLUGINAPI_VERSION|SOURCEMOD_VERSION|SOURCEMOD_V_CSET|SOURCEMOD_V_MAJOR|SOURCEMOD_V_MINOR|SOURCEMOD_V_RELEASE|SOURCEMOD_V_REV|SOURCEMOD_V_TAG|SOURCE_SDK_ALIENSWARM|SOURCE_SDK_BLOODYGOODTIME|SOURCE_SDK_CSGO|SOURCE_SDK_CSS|SOURCE_SDK_DARKMESSIAH|SOURCE_SDK_EPISODE1|SOURCE_SDK_EPISODE2|SOURCE_SDK_EPISODE2VALVE|SOURCE_SDK_EYE|SOURCE_SDK_LEFT4DEAD|SOURCE_SDK_LEFT4DEAD2|SOURCE_SDK_ORIGINAL|SOURCE_SDK_UNKNOWN|SP_ERROR_ABORTED|SP_ERROR_ARRAY_BOUNDS|SP_ERROR_ARRAY_TOO_BIG|SP_ERROR_DECOMPRESSOR|SP_ERROR_DIVIDE_BY_ZERO|SP_ERROR_FILE_FORMAT|SP_ERROR_HEAPLEAK|SP_ERROR_HEAPLOW|SP_ERROR_HEAPMIN|SP_ERROR_INDEX|SP_ERROR_INSTRUCTION_PARAM|SP_ERROR_INVALID_ADDRESS|SP_ERROR_INVALID_INSTRUCTION|SP_ERROR_INVALID_NATIVE|SP_ERROR_MEMACCESS|SP_ERROR_NATIVE|SP_ERROR_NONE|SP_ERROR_NOTDEBUGGING|SP_ERROR_NOT_FOUND|SP_ERROR_NOT_RUNNABLE|SP_ERROR_PARAM|SP_ERROR_PARAMS_MAX|SP_ERROR_STACKLEAK|SP_ERROR_STACKLOW|SP_ERROR_STACKMIN|SP_ERROR_TRACKER_BOUNDS|SP_PARAMFLAG_BYREF|TEAM_FOUR|TEAM_INVALID|TEAM_ONE|TEAM_SPECTATOR|TEAM_THREE|TEAM_TWO|TEAM_UNASSIGNED|TEMP_REQUIRE_EXTENSIONS|TE_EXPLFLAG_DRAWALPHA|TE_EXPLFLAG_NOADDITIVE|TE_EXPLFLAG_NODLIGHTS|TE_EXPLFLAG_NOFIREBALL|TE_EXPLFLAG_NOFIREBALLSMOKE|TE_EXPLFLAG_NONE|TE_EXPLFLAG_NOPARTICLES|TE_EXPLFLAG_NOSOUND|TE_EXPLFLAG_ROTATE|TF_CONDFLAG_BLEEDING|TF_CONDFLAG_BONKED|TF_CONDFLAG_BUFFED|TF_CONDFLAG_CHARGING|TF_CONDFLAG_CLOAKED|TF_CONDFLAG_CLOAKFLICKER|TF_CONDFLAG_CRITCOLA|TF_CONDFLAG_DAZED|TF_CONDFLAG_DEADRINGERED|TF_CONDFLAG_DEFENSEBUFFED|TF_CONDFLAG_DEMOBUFF|TF_CONDFLAG_DISGUISED|TF_CONDFLAG_DISGUISING|TF_CONDFLAG_HEALING|TF_CONDFLAG_INHEALRADIUS|TF_CONDFLAG_JARATED|TF_CONDFLAG_KRITZKRIEGED|TF_CONDFLAG_MARKEDFORDEATH|TF_CONDFLAG_MEGAHEAL|TF_CONDFLAG_MILKED|TF_CONDFLAG_NONE|TF_CONDFLAG_ONFIRE|TF_CONDFLAG_OVERHEALED|TF_CONDFLAG_REGENBUFFED|TF_CONDFLAG_SLOWED|TF_CONDFLAG_TAUNTING|TF_CONDFLAG_TELEPORTGLOW|TF_CONDFLAG_TELEPORTING|TF_CONDFLAG_UBERCHARGED|TF_CONDFLAG_UBERCHARGEFADE|TF_CONDFLAG_ZOOMED|TF_DEATHFLAG_ASSISTERDOMINATION|TF_DEATHFLAG_ASSISTERREVENGE|TF_DEATHFLAG_DEADRINGER|TF_DEATHFLAG_FIRSTBLOOD|TF_DEATHFLAG_GIBBED|TF_DEATHFLAG_INTERRUPTED|TF_DEATHFLAG_KILLERDOMINATION|TF_DEATHFLAG_KILLERREVENGE|TF_DEATHFLAG_PURGATORY|TF_STUNFLAGS_BIGBONK|TF_STUNFLAGS_GHOSTSCARE|TF_STUNFLAGS_LOSERSTATE|TF_STUNFLAGS_NORMALBONK|TF_STUNFLAGS_SMALLBONK|TF_STUNFLAG_BONKSTUCK|TF_STUNFLAG_CHEERSOUND|TF_STUNFLAG_GHOSTEFFECT|TF_STUNFLAG_LIMITMOVEMENT|TF_STUNFLAG_NOSOUNDOREFFECT|TF_STUNFLAG_SLOWDOWN|TF_STUNFLAG_THIRDPERSON|TIMER_DATA_HNDL_CLOSE|TIMER_FLAG_NO_MAPCHANGE|TIMER_HNDL_CLOSE|TIMER_REPEAT|USERMSG_BLOCKHOOKS|USERMSG_INITMSG|USERMSG_RELIABLE|VDECODE_FLAG_ALLOWNOTINGAME|VDECODE_FLAG_ALLOWNULL|VDECODE_FLAG_ALLOWWORLD|VDECODE_FLAG_BYREF|VENCODE_FLAG_COPYBACK|VOICE_LISTENALL|VOICE_LISTENTEAM|VOICE_MUTED|VOICE_NORMAL|VOICE_SPEAKALL|VOICE_TEAM|VOTEFLAG_NO_REVOTES|VOTEINFO_CLIENT_INDEX|VOTEINFO_CLIENT_ITEM|VOTEINFO_ITEM_INDEX|VOTEINFO_ITEM_VOTES|WEAPON_IS_ACTIVE|WEAPON_IS_CARRIED_BY_PLAYER|WEAPON_IS_ONTARGET|WEAPON_NOCLIP|WEAPON_NOT_CARRIED|bits_SUIT_DEVICE_BREATHER|bits_SUIT_DEVICE_FLASHLIGHT|bits_SUIT_DEVICE_SPRINT)(\\b)"
106
103
  },
107
104
  {
108
- "match": "(\\b)(ANG_ALPHA|ANG_BETA|ANG_GAMMA|APLRes_Failure|APLRes_SilentFailure|APLRes_Success|Access_Effective|Access_Real|Address_MinimumValid|Address_Null|AdminCache_Admins|AdminCache_Groups|AdminCache_Overrides|Admin_Ban|Admin_Changemap|Admin_Chat|Admin_Cheats|Admin_Config|Admin_Convars|Admin_Custom1|Admin_Custom2|Admin_Custom3|Admin_Custom4|Admin_Custom5|Admin_Custom6|Admin_Generic|Admin_Kick|Admin_Password|Admin_RCON|Admin_Reservation|Admin_Root|Admin_Slay|Admin_Unban|Admin_Vote|COLLISION_GROUP_BREAKABLE_GLASS|COLLISION_GROUP_DEBRIS|COLLISION_GROUP_DEBRIS_TRIGGER|COLLISION_GROUP_DISSOLVING|COLLISION_GROUP_DOOR_BLOCKER|COLLISION_GROUP_INTERACTIVE|COLLISION_GROUP_INTERACTIVE_DEB|COLLISION_GROUP_IN_VEHICLE|COLLISION_GROUP_NONE|COLLISION_GROUP_NPC|COLLISION_GROUP_NPC_ACTOR|COLLISION_GROUP_NPC_SCRIPTED|COLLISION_GROUP_PASSABLE_DOOR|COLLISION_GROUP_PLAYER|COLLISION_GROUP_PLAYER_MOVEMENT|COLLISION_GROUP_PROJECTILE|COLLISION_GROUP_PUSHAWAY|COLLISION_GROUP_VEHICLE|COLLISION_GROUP_VEHICLE_CLIP|COLLISION_GROUP_WEAPON|CSRoundEnd_BombDefused|CSRoundEnd_CTStoppedEscape|CSRoundEnd_CTSurrender|CSRoundEnd_CTWin|CSRoundEnd_Draw|CSRoundEnd_GameStart|CSRoundEnd_HostagesNotRescued|CSRoundEnd_HostagesRescued|CSRoundEnd_TargetBombed|CSRoundEnd_TargetSaved|CSRoundEnd_TerroristWin|CSRoundEnd_TerroristsEscaped|CSRoundEnd_TerroristsNotEscaped|CSRoundEnd_TerroristsStopped|CSRoundEnd_TerroristsSurrender|CSRoundEnd_VIPEscaped|CSRoundEnd_VIPKilled|CSRoundEnd_VIPNotEscaped|CSWeapon_AK47|CSWeapon_ASSAULTSUIT|CSWeapon_AUG|CSWeapon_AWP|CSWeapon_BIZON|CSWeapon_C4|CSWeapon_DEAGLE|CSWeapon_DECOY|CSWeapon_DEFUSER|CSWeapon_ELITE|CSWeapon_FAMAS|CSWeapon_FIVESEVEN|CSWeapon_FLASHBANG|CSWeapon_G3SG1|CSWeapon_GALIL|CSWeapon_GALILAR|CSWeapon_GLOCK|CSWeapon_HEGRENADE|CSWeapon_HKP2000|CSWeapon_INCGRENADE|CSWeapon_KEVLAR|CSWeapon_KNIFE|CSWeapon_KNIFE_GG|CSWeapon_M249|CSWeapon_M3|CSWeapon_M4A1|CSWeapon_MAC10|CSWeapon_MAG7|CSWeapon_MOLOTOV|CSWeapon_MP5NAVY|CSWeapon_MP7|CSWeapon_MP9|CSWeapon_NEGEV|CSWeapon_NIGHTVISION|CSWeapon_NONE|CSWeapon_NOVA|CSWeapon_P228|CSWeapon_P250|CSWeapon_P90|CSWeapon_SAWEDOFF|CSWeapon_SCAR17|CSWeapon_SCAR20|CSWeapon_SCOUT|CSWeapon_SG550|CSWeapon_SG552|CSWeapon_SG556|CSWeapon_SHIELD|CSWeapon_SMOKEGRENADE|CSWeapon_SSG08|CSWeapon_TASER|CSWeapon_TEC9|CSWeapon_TMP|CSWeapon_UMP45|CSWeapon_USP|CSWeapon_XM1014|ChatColorInfo_Alternative|ChatColorInfo_Code|ChatColorInfo_SubjectType|ChatColorInfo_Supported|ChatColorSubjectType_none|ChatColorSubjectType_player|ChatColorSubjectType_undefined|ChatColorSubjectType_world|ChatColor_Black|ChatColor_Blue|ChatColor_BlueRed|ChatColor_Gray|ChatColor_Green|ChatColor_Lightgreen|ChatColor_Normal|ChatColor_Olivegreen|ChatColor_Orange|ChatColor_Red|ChatColor_RedBlue|ChatColor_Team|ClientHudPrint_Console|ClientHudPrint_Notify|ClientHudPrint_Talk|Client_HudPrint_Center|Command_Allow|Command_Deny|ConVarBound_Lower|ConVarBound_Upper|ConVarQuery_NotFound|ConVarQuery_NotValid|ConVarQuery_Okay|ConVarQuery_Protected|CookieAccess_Private|CookieAccess_Protected|CookieAccess_Public|CookieMenuAction_DisplayOption|CookieMenuAction_SelectOption|CookieMenu_OnOff|CookieMenu_OnOff_Int|CookieMenu_YesNo|CookieMenu_YesNo_Int|DBBind_Float|DBBind_Int|DBBind_String|DBPrio_High|DBPrio_Low|DBPrio_Normal|DBVal_Data|DBVal_Error|DBVal_Null|DBVal_TypeMismatch|DISSOLVE_CORE|DISSOLVE_ELECTRICAL|DISSOLVE_ELECTRICAL_LIGHT|DISSOLVE_NORMAL|DialogType_AskConnect|DialogType_Entry|DialogType_Menu|DialogType_Msg|DialogType_Text|EFL_BOT_FROZEN|EFL_CHECK_UNTOUCH|EFL_DIRTY_ABSANGVELOCITY|EFL_DIRTY_ABSTRANSFORM|EFL_DIRTY_ABSVELOCITY|EFL_DIRTY_SHADOWUPDATE|EFL_DIRTY_SPATIAL_PARTITION|EFL_DIRTY_SURR_COLLISION_BOUNDS|EFL_DONTBLOCKLOS|EFL_DONTWALKON|EFL_DORMANT|EFL_FORCE_CHECK_TRANSMIT|EFL_HAS_PLAYER_CHILD|EFL_IN_SKYBOX|EFL_IS_BEING_LIFTED_BY_BARNACLE|EFL_KEEP_ON_RECREATE_ENTITIES|EFL_KILLME|EFL_NOCLIP_ACTIVE|EFL_NOTIFY|EFL_NO_AUTO_EDICT_ATTACH|EFL_NO_DAMAGE_FORCES|EFL_NO_DISSOLVE|EFL_NO_GAME_PHYSICS_SIMULATION|EFL_NO_MEGAPHYSCANNON_RAGDOLL|EFL_NO_PHYSCANNON_INTERACTION|EFL_NO_ROTORWASH_PUSH|EFL_NO_THINK_FUNCTION|EFL_NO_WATER_VELOCITY_CHANGE|EFL_SERVER_ONLY|EFL_SETTING_UP_BONES|EFL_TOUCHING_FLUID|EFL_USE_PARTITION_WHEN_NOT_SOL|ET_Event|ET_Hook|ET_Ignore|ET_Single|EventHookMode_Post|EventHookMode_PostNoCopy|EventHookMode_Pre|FSOLID_CUSTOMBOXTEST|FSOLID_CUSTOMRAYTEST|FSOLID_FORCE_WORLD_ALIGNED|FSOLID_MAX_BITS|FSOLID_NOT_SOLID|FSOLID_NOT_STANDABLE|FSOLID_ROOT_PARENT_ALIGNED|FSOLID_TRIGGER|FSOLID_TRIGGER_TOUCH_DEBRIS|FSOLID_USE_TRIGGER_BOUNDS|FSOLID_VOLUME_CONTENTS|FeatureStatus_Available|FeatureStatus_Unavailable|FeatureStatus_Unknown|FeatureType_Capability|FeatureType_Native|FileTime_Created|FileTime_LastAccess|FileTime_LastChange|FileType_Directory|FileType_File|FileType_Unknown|INVALID_ADMIN_ID|INVALID_FUNCTION|INVALID_GROUP_ID|INVALID_HANDLE|INVALID_MESSAGE_ID|INVALID_TOPMENUOBJECT|Identity_Core|Identity_Extension|Identity_Plugin|Immunity_Default|Immunity_Global|KvData_Color|KvData_Float|KvData_Int|KvData_NUMTYPES|KvData_None|KvData_Ptr|KvData_String|KvData_UInt64|KvData_WString|Listen_Default|Listen_No|Listen_Yes|MOVETYPE_CUSTOM|MOVETYPE_FLY|MOVETYPE_FLYGRAVITY|MOVETYPE_ISOMETRIC|MOVETYPE_LADDER|MOVETYPE_NOCLIP|MOVETYPE_NONE|MOVETYPE_OBSERVER|MOVETYPE_PUSH|MOVETYPE_STEP|MOVETYPE_VPHYSICS|MOVETYPE_WALK|MapChange_Instant|MapChange_MapEnd|MapChange_RoundEnd|MenuAction_Cancel|MenuAction_Display|MenuAction_DrawItem|MenuAction_Select|MenuAction_Start|MenuAction_VoteCancel|MenuAction_VoteStart|MenuCancel_Disconnected|MenuCancel_Exit|MenuCancel_ExitBack|MenuCancel_Interrupted|MenuCancel_NoDisplay|MenuCancel_Timeout|MenuEnd_Cancelled|MenuEnd_Exit|MenuEnd_ExitBack|MenuEnd_Selected|MenuEnd_VotingCancelled|MenuEnd_VotingDone|MenuSource_External|MenuSource_None|MenuSource_Normal|MenuSource_RawPanel|MenuStyle_Default|MenuStyle_Radio|MenuStyle_Valve|NUM_OBSERVER_MODES|NetFlow_Both|NetFlow_Incoming|NetFlow_Outgoing|Nominate_Added|Nominate_AlreadyInVote|Nominate_InvalidMap|Nominate_Replaced|Nominate_VoteFull|NumberType_Int16|NumberType_Int32|NumberType_Int8|OBS_ALLOW_ALL|OBS_ALLOW_NONE|OBS_ALLOW_NUM_MODES|OBS_ALLOW_TEAM|OBS_MODE_CHASE|OBS_MODE_DEATHCAM|OBS_MODE_FIXED|OBS_MODE_FREEZECAM|OBS_MODE_IN_EYE|OBS_MODE_NONE|OBS_MODE_ROAMING|Override_Command|Override_CommandGroup|Param_Any|Param_Array|Param_Cell|Param_CellByRef|Param_Float|Param_FloatByRef|Param_String|Param_VarArgs|Path_SM|PlInfo_Author|PlInfo_Description|PlInfo_Name|PlInfo_URL|PlInfo_Version|Plugin_BadLoad|Plugin_Changed|Plugin_Continue|Plugin_Created|Plugin_Error|Plugin_Failed|Plugin_Handled|Plugin_Loaded|Plugin_Paused|Plugin_Running|Plugin_Stop|Plugin_Uncompiled|PropField_Entity|PropField_Float|PropField_Integer|PropField_String|PropField_Unsupported|PropField_Vector|Prop_Data|Prop_Send|QUERYCOOKIE_FAILED|REGEX_ERROR_BADCOUNT|REGEX_ERROR_BADMAGIC|REGEX_ERROR_BADNEWLINE|REGEX_ERROR_BADOPTION|REGEX_ERROR_BADPARTIAL|REGEX_ERROR_BADUTF8|REGEX_ERROR_BADUTF8_OFFSET|REGEX_ERROR_CALLOUT|REGEX_ERROR_DFA_RECURSE|REGEX_ERROR_DFA_UCOND|REGEX_ERROR_DFA_UITEM|REGEX_ERROR_DFA_UMLIMIT|REGEX_ERROR_DFA_WSSIZE|REGEX_ERROR_INTERNAL|REGEX_ERROR_MATCHLIMIT|REGEX_ERROR_NOMATCH|REGEX_ERROR_NOMEMORY|REGEX_ERROR_NONE|REGEX_ERROR_NOSUBSTRING|REGEX_ERROR_NULL|REGEX_ERROR_NULLWSLIMIT|REGEX_ERROR_PARTIAL|REGEX_ERROR_RECURSIONLIMIT|REGEX_ERROR_UNKNOWN_OPCODE|RENDERFX_CLAMP_MIN_SCALE|RENDERFX_DISTORT|RENDERFX_ENV_RAIN|RENDERFX_ENV_SNOW|RENDERFX_EXPLODE|RENDERFX_FADE_FAST|RENDERFX_FADE_SLOW|RENDERFX_FLICKER_FAST|RENDERFX_FLICKER_SLOW|RENDERFX_GLOWSHELL|RENDERFX_HOLOGRAM|RENDERFX_MAX|RENDERFX_NONE|RENDERFX_NO_DISSIPATION|RENDERFX_PULSE_FAST|RENDERFX_PULSE_FAST_WIDE|RENDERFX_PULSE_FAST_WIDER|RENDERFX_PULSE_SLOW|RENDERFX_PULSE_SLOW_WIDE|RENDERFX_RAGDOLL|RENDERFX_SOLID_FAST|RENDERFX_SOLID_SLOW|RENDERFX_SPOTLIGHT|RENDERFX_STROBE_FAST|RENDERFX_STROBE_FASTER|RENDERFX_STROBE_SLOW|RENDER_ENVIRONMENTAL|RENDER_GLOW|RENDER_NONE|RENDER_NORMAL|RENDER_TRANSADD|RENDER_TRANSADDFRAMEBLEND|RENDER_TRANSALPHA|RENDER_TRANSALPHAADD|RENDER_TRANSCOLOR|RENDER_TRANSTEXTURE|RENDER_WORLDGLOW|RayType_EndPoint|RayType_Infinite|RoundState_BetweenRounds|RoundState_Bonus|RoundState_GameOver|RoundState_Init|RoundState_Pregame|RoundState_Preround|RoundState_Restart|RoundState_RoundRunning|RoundState_Stalemate|RoundState_StartGame|RoundState_TeamWin|SDKCall_Entity|SDKCall_EntityList|SDKCall_GameRules|SDKCall_Player|SDKCall_Raw|SDKCall_Static|SDKConf_Signature|SDKConf_Virtual|SDKHook_EndTouch|SDKHook_EndTouchPost|SDKHook_FireBulletsPost|SDKHook_GetMaxHealth|SDKHook_GroundEntChangedPost|SDKHook_OnTakeDamage|SDKHook_OnTakeDamagePost|SDKHook_PostThink|SDKHook_PostThinkPost|SDKHook_PreThink|SDKHook_PreThinkPost|SDKHook_Reload|SDKHook_ReloadPost|SDKHook_SetTransmit|SDKHook_ShouldCollide|SDKHook_Spawn|SDKHook_SpawnPost|SDKHook_StartTouch|SDKHook_StartTouchPost|SDKHook_Think|SDKHook_ThinkPost|SDKHook_Touch|SDKHook_TouchPost|SDKHook_TraceAttack|SDKHook_TraceAttackPost|SDKHook_Use|SDKHook_UsePost|SDKHook_VPhysicsUpdate|SDKHook_VPhysicsUpdatePost|SDKHook_WeaponCanSwitchTo|SDKHook_WeaponCanSwitchToPost|SDKHook_WeaponCanUse|SDKHook_WeaponCanUsePost|SDKHook_WeaponDrop|SDKHook_WeaponDropPost|SDKHook_WeaponEquip|SDKHook_WeaponEquipPost|SDKHook_WeaponSwitch|SDKHook_WeaponSwitchPost|SDKLibrary_Engine|SDKLibrary_Server|SDKPass_ByRef|SDKPass_ByValue|SDKPass_Plain|SDKPass_Pointer|SDKType_Bool|SDKType_CBaseEntity|SDKType_CBasePlayer|SDKType_Edict|SDKType_Float|SDKType_PlainOldData|SDKType_QAngle|SDKType_String|SDKType_Vector|SMCError_Custom|SMCError_InvalidProperty1|SMCError_InvalidSection1|SMCError_InvalidSection2|SMCError_InvalidSection3|SMCError_InvalidSection4|SMCError_InvalidSection5|SMCError_InvalidTokens|SMCError_Okay|SMCError_StreamError|SMCError_StreamOpen|SMCError_TokenOverflow|SMCParse_Continue|SMCParse_Halt|SMCParse_HaltFail|SM_REPLY_TO_CHAT|SM_REPLY_TO_CONSOLE|SNDCHAN_AUTO|SNDCHAN_BODY|SNDCHAN_ITEM|SNDCHAN_REPLACE|SNDCHAN_STATIC|SNDCHAN_STREAM|SNDCHAN_USER_BASE|SNDCHAN_VOICE|SNDCHAN_VOICE_BASE|SNDCHAN_WEAPON|SNDLEVEL_AIRCRAFT|SNDLEVEL_CAR|SNDLEVEL_CONVO|SNDLEVEL_DISHWASHER|SNDLEVEL_DRYER|SNDLEVEL_FRIDGE|SNDLEVEL_GUNFIRE|SNDLEVEL_HELICOPTER|SNDLEVEL_HOME|SNDLEVEL_LIBRARY|SNDLEVEL_MINIBIKE|SNDLEVEL_NONE|SNDLEVEL_NORMAL|SNDLEVEL_RAIDSIREN|SNDLEVEL_ROCKET|SNDLEVEL_RUSTLE|SNDLEVEL_SCREAMING|SNDLEVEL_SNOWMOBILE|SNDLEVEL_TRAFFIC|SNDLEVEL_TRAIN|SNDLEVEL_WHISPER|SND_CHANGEPITCH|SND_CHANGEVOL|SND_DELAY|SND_NOFLAGS|SND_SHOULDPAUSE|SND_SPAWNING|SND_SPEAKER|SND_STOP|SND_STOPLOOPING|SOLID_BBOX|SOLID_BSP|SOLID_CUSTOM|SOLID_LAST|SOLID_NONE|SOLID_OBB|SOLID_OBB_YAW|SOLID_VPHYSICS|Sort_Ascending|Sort_Descending|Sort_Float|Sort_Integer|Sort_Random|Sort_String|TFClass_DemoMan|TFClass_Engineer|TFClass_Heavy|TFClass_Medic|TFClass_Pyro|TFClass_Scout|TFClass_Sniper|TFClass_Soldier|TFClass_Spy|TFClass_Unknown|TFCond_Bleeding|TFCond_Bonked|TFCond_Buffed|TFCond_Charging|TFCond_CloakFlicker|TFCond_Cloaked|TFCond_CritCanteen|TFCond_CritCola|TFCond_CritHype|TFCond_CritMmmph|TFCond_CritOnFirstBlood|TFCond_CritOnFlagCapture|TFCond_CritOnKill|TFCond_CritOnWin|TFCond_Dazed|TFCond_DeadRingered|TFCond_DefenseBuffMmmph|TFCond_DefenseBuffed|TFCond_DemoBuff|TFCond_DisguiseRemoved|TFCond_Disguised|TFCond_DisguisedAsDispenser|TFCond_Disguising|TFCond_FocusBuff|TFCond_HalloweenBombHead|TFCond_HalloweenCritCandy|TFCond_HalloweenThriller|TFCond_Healing|TFCond_InHealRadius|TFCond_Jarated|TFCond_Kritzkrieged|TFCond_MarkedForDeath|TFCond_MarkedForDeathSilent|TFCond_MegaHeal|TFCond_Milked|TFCond_NoHealingDamageBuff|TFCond_OnFire|TFCond_Overhealed|TFCond_RegenBuffed|TFCond_Reprogrammed|TFCond_RestrictToMelee|TFCond_Sapped|TFCond_Slowed|TFCond_SpeedBuffAlly|TFCond_Taunting|TFCond_TeleportedGlow|TFCond_Teleporting|TFCond_TmpDamageBonus|TFCond_UberchargeFading|TFCond_Ubercharged|TFCond_UberchargedCanteen|TFCond_UberchargedHidden|TFCond_Unknown1|TFCond_Unknown2|TFCond_Zoomed|TFHoliday_Birthday|TFHoliday_Christmas|TFHoliday_FullMoon|TFHoliday_Halloween|TFHoliday_HalloweenOrFullMoon|TFHoliday_HalloweenOrFullMoonOrValentines|TFHoliday_MeetThePyro|TFHoliday_ValentinesDay|TFObjectMode_Entrance|TFObjectMode_Exit|TFObjectMode_None|TFObject_CartDispenser|TFObject_Dispenser|TFObject_Sapper|TFObject_Sentry|TFObject_Teleporter|TFResource_Backstabs|TFResource_BuildingsDestroyed|TFResource_Captures|TFResource_Deaths|TFResource_Defenses|TFResource_Dominations|TFResource_Headshots|TFResource_HealPoints|TFResource_Invulns|TFResource_KillAssists|TFResource_MaxHealth|TFResource_Ping|TFResource_PlayerClass|TFResource_ResupplyPoints|TFResource_Revenge|TFResource_Score|TFResource_Teleports|TFResource_TotalScore|TFTeam_Blue|TFTeam_Red|TFTeam_Spectator|TFTeam_Unassigned|TFWeaponSlot_Building|TFWeaponSlot_Grenade|TFWeaponSlot_Item1|TFWeaponSlot_Item2|TFWeaponSlot_Melee|TFWeaponSlot_PDA|TFWeaponSlot_Primary|TFWeaponSlot_Secondary|TF_CUSTOM_AEGIS_ROUND|TF_CUSTOM_AIR_STICKY_BURST|TF_CUSTOM_BACKSTAB|TF_CUSTOM_BASEBALL|TF_CUSTOM_BLEEDING|TF_CUSTOM_BOOTS_STOMP|TF_CUSTOM_BURNING|TF_CUSTOM_BURNING_ARROW|TF_CUSTOM_BURNING_FLARE|TF_CUSTOM_CANNONBALL_PUSH|TF_CUSTOM_CARRIED_BUILDING|TF_CUSTOM_CHARGE_IMPACT|TF_CUSTOM_CLEAVER|TF_CUSTOM_CLEAVER_CRIT|TF_CUSTOM_COMBO_PUNCH|TF_CUSTOM_DECAPITATION|TF_CUSTOM_DECAPITATION_BOSS|TF_CUSTOM_DEFENSIVE_STICKY|TF_CUSTOM_EYEBALL_ROCKET|TF_CUSTOM_FISH_KILL|TF_CUSTOM_FLARE_EXPLOSION|TF_CUSTOM_FLARE_PELLET|TF_CUSTOM_FLYINGBURN|TF_CUSTOM_GOLD_WRENCH|TF_CUSTOM_HEADSHOT|TF_CUSTOM_HEADSHOT_DECAPITATION|TF_CUSTOM_MERASMUS_DECAPITATION|TF_CUSTOM_MERASMUS_GRENADE|TF_CUSTOM_MERASMUS_PLAYER_BOMB|TF_CUSTOM_MERASMUS_ZAP|TF_CUSTOM_MINIGUN|TF_CUSTOM_PENETRATE_ALL_PLAYERS|TF_CUSTOM_PENETRATE_HEADSHOT|TF_CUSTOM_PENETRATE_MY_TEAM|TF_CUSTOM_PICKAXE|TF_CUSTOM_PLASMA|TF_CUSTOM_PLASMA_CHARGED|TF_CUSTOM_PLASMA_GIB|TF_CUSTOM_PLAYER_SENTRY|TF_CUSTOM_PRACTICE_STICKY|TF_CUSTOM_PUMPKIN_BOMB|TF_CUSTOM_ROCKET_DIRECTHIT|TF_CUSTOM_SAPPER_RECORDER_DEATH|TF_CUSTOM_SHOTGUN_REVENGE_CRIT|TF_CUSTOM_STANDARD_STICKY|TF_CUSTOM_STICKBOMB_EXPLOSION|TF_CUSTOM_SUICIDE|TF_CUSTOM_TAUNT_ARMAGEDDON|TF_CUSTOM_TAUNT_ARROW_STAB|TF_CUSTOM_TAUNT_BARBARIAN_SWING|TF_CUSTOM_TAUNT_ENGINEER_ARM|TF_CUSTOM_TAUNT_ENGINEER_SMASH|TF_CUSTOM_TAUNT_FENCING|TF_CUSTOM_TAUNT_GRAND_SLAM|TF_CUSTOM_TAUNT_GRENADE|TF_CUSTOM_TAUNT_HADOUKEN|TF_CUSTOM_TAUNT_HIGH_NOON|TF_CUSTOM_TAUNT_UBERSLICE|TF_CUSTOM_TELEFRAG|TF_CUSTOM_TRIGGER_HURT|TF_CUSTOM_WRENCH_FIX|TF_FLAGEVENT_CAPTURED|TF_FLAGEVENT_DEFENDED|TF_FLAGEVENT_DROPPED|TF_FLAGEVENT_PICKEDUP|TF_FLAGEVENT_RETURNED|TF_WEAPON_BAT|TF_WEAPON_BAT_FISH|TF_WEAPON_BAT_GIFTWRAP|TF_WEAPON_BAT_WOOD|TF_WEAPON_BONESAW|TF_WEAPON_BOTTLE|TF_WEAPON_BUFF_ITEM|TF_WEAPON_BUILDER|TF_WEAPON_CANNON|TF_WEAPON_CLEAVER|TF_WEAPON_CLUB|TF_WEAPON_COMPOUND_BOW|TF_WEAPON_CROSSBOW|TF_WEAPON_CROWBAR|TF_WEAPON_DIRECTHIT|TF_WEAPON_DISPENSER|TF_WEAPON_DISPENSER_GUN|TF_WEAPON_DRG_POMSON|TF_WEAPON_FIREAXE|TF_WEAPON_FISTS|TF_WEAPON_FLAMETHROWER|TF_WEAPON_FLAMETHROWER_ROCKET|TF_WEAPON_FLAREGUN|TF_WEAPON_GRENADELAUNCHER|TF_WEAPON_GRENADE_CALTROP|TF_WEAPON_GRENADE_CLEAVER|TF_WEAPON_GRENADE_CONCUSSION|TF_WEAPON_GRENADE_DEMOMAN|TF_WEAPON_GRENADE_EMP|TF_WEAPON_GRENADE_GAS|TF_WEAPON_GRENADE_HEAL|TF_WEAPON_GRENADE_JAR|TF_WEAPON_GRENADE_JAR_MILK|TF_WEAPON_GRENADE_MIRV|TF_WEAPON_GRENADE_MIRVBOMB|TF_WEAPON_GRENADE_MIRV_DEMOMAN|TF_WEAPON_GRENADE_NAIL|TF_WEAPON_GRENADE_NAPALM|TF_WEAPON_GRENADE_NORMAL|TF_WEAPON_GRENADE_ORNAMENT|TF_WEAPON_GRENADE_PIPEBOMB|TF_WEAPON_GRENADE_SMOKE_BOMB|TF_WEAPON_GRENADE_STICKY_BALL|TF_WEAPON_GRENADE_STUNBALL|TF_WEAPON_HANDGUN_SCOUT_PRIMARY|TF_WEAPON_HANDGUN_SCOUT_SEC|TF_WEAPON_INVIS|TF_WEAPON_JAR|TF_WEAPON_JAR_MILK|TF_WEAPON_KNIFE|TF_WEAPON_LASER_POINTER|TF_WEAPON_LIFELINE|TF_WEAPON_LUNCHBOX|TF_WEAPON_MECHANICAL_ARM|TF_WEAPON_MEDIGUN|TF_WEAPON_MINIGUN|TF_WEAPON_NAILGUN|TF_WEAPON_NONE|TF_WEAPON_PARTICLE_CANNON|TF_WEAPON_PDA|TF_WEAPON_PDA_ENGINEER_BUILD|TF_WEAPON_PDA_ENGINEER_DESTROY|TF_WEAPON_PDA_SPY|TF_WEAPON_PEP_BRAWLER_BLASTER|TF_WEAPON_PIPEBOMBLAUNCHER|TF_WEAPON_PISTOL|TF_WEAPON_PISTOL_SCOUT|TF_WEAPON_PUMPKIN_BOMB|TF_WEAPON_RAYGUN|TF_WEAPON_RAYGUN_REVENGE|TF_WEAPON_REVOLVER|TF_WEAPON_ROCKETLAUNCHER|TF_WEAPON_SCATTERGUN|TF_WEAPON_SENTRY_BULLET|TF_WEAPON_SENTRY_REVENGE|TF_WEAPON_SENTRY_ROCKET|TF_WEAPON_SHOTGUN_BUILDING_RESCUE|TF_WEAPON_SHOTGUN_HWG|TF_WEAPON_SHOTGUN_PRIMARY|TF_WEAPON_SHOTGUN_PYRO|TF_WEAPON_SHOTGUN_SOLDIER|TF_WEAPON_SHOVEL|TF_WEAPON_SMG|TF_WEAPON_SNIPERRIFLE|TF_WEAPON_SNIPERRIFLE_DECAP|TF_WEAPON_SODA_POPPER|TF_WEAPON_STICKBOMB|TF_WEAPON_STICKY_BALL_LAUNCHER|TF_WEAPON_SWORD|TF_WEAPON_SYRINGEGUN_MEDIC|TF_WEAPON_TRANQ|TF_WEAPON_WRENCH|TopMenuAction_DisplayOption|TopMenuAction_DisplayTitle|TopMenuAction_DrawOption|TopMenuAction_RemoveObject|TopMenuAction_SelectOption|TopMenuObject_Category|TopMenuObject_Item|TopMenuPosition_LastCategory|TopMenuPosition_LastRoot|TopMenuPosition_Start|UM_BitBuf|UM_Protobuf|Use_Off|Use_On|Use_Set|Use_Toggle|VoteCancel_Generic|VoteCancel_NoVotes|WATER_LEVEL_FEET_IN_WATER|WATER_LEVEL_HEAD_IN_WATER|WATER_LEVEL_NOT_IN_WATER|WATER_LEVEL_WAIST_IN_WATER)(\\b)",
109
- "name": "support.type.sourcepawn"
105
+ "name": "support.type.sourcepawn",
106
+ "match": "(\\b)(ANG_ALPHA|ANG_BETA|ANG_GAMMA|APLRes_Failure|APLRes_SilentFailure|APLRes_Success|Access_Effective|Access_Real|Address_MinimumValid|Address_Null|AdminCache_Admins|AdminCache_Groups|AdminCache_Overrides|Admin_Ban|Admin_Changemap|Admin_Chat|Admin_Cheats|Admin_Config|Admin_Convars|Admin_Custom1|Admin_Custom2|Admin_Custom3|Admin_Custom4|Admin_Custom5|Admin_Custom6|Admin_Generic|Admin_Kick|Admin_Password|Admin_RCON|Admin_Reservation|Admin_Root|Admin_Slay|Admin_Unban|Admin_Vote|COLLISION_GROUP_BREAKABLE_GLASS|COLLISION_GROUP_DEBRIS|COLLISION_GROUP_DEBRIS_TRIGGER|COLLISION_GROUP_DISSOLVING|COLLISION_GROUP_DOOR_BLOCKER|COLLISION_GROUP_INTERACTIVE|COLLISION_GROUP_INTERACTIVE_DEB|COLLISION_GROUP_IN_VEHICLE|COLLISION_GROUP_NONE|COLLISION_GROUP_NPC|COLLISION_GROUP_NPC_ACTOR|COLLISION_GROUP_NPC_SCRIPTED|COLLISION_GROUP_PASSABLE_DOOR|COLLISION_GROUP_PLAYER|COLLISION_GROUP_PLAYER_MOVEMENT|COLLISION_GROUP_PROJECTILE|COLLISION_GROUP_PUSHAWAY|COLLISION_GROUP_VEHICLE|COLLISION_GROUP_VEHICLE_CLIP|COLLISION_GROUP_WEAPON|CSRoundEnd_BombDefused|CSRoundEnd_CTStoppedEscape|CSRoundEnd_CTSurrender|CSRoundEnd_CTWin|CSRoundEnd_Draw|CSRoundEnd_GameStart|CSRoundEnd_HostagesNotRescued|CSRoundEnd_HostagesRescued|CSRoundEnd_TargetBombed|CSRoundEnd_TargetSaved|CSRoundEnd_TerroristWin|CSRoundEnd_TerroristsEscaped|CSRoundEnd_TerroristsNotEscaped|CSRoundEnd_TerroristsStopped|CSRoundEnd_TerroristsSurrender|CSRoundEnd_VIPEscaped|CSRoundEnd_VIPKilled|CSRoundEnd_VIPNotEscaped|CSWeapon_AK47|CSWeapon_ASSAULTSUIT|CSWeapon_AUG|CSWeapon_AWP|CSWeapon_BIZON|CSWeapon_C4|CSWeapon_DEAGLE|CSWeapon_DECOY|CSWeapon_DEFUSER|CSWeapon_ELITE|CSWeapon_FAMAS|CSWeapon_FIVESEVEN|CSWeapon_FLASHBANG|CSWeapon_G3SG1|CSWeapon_GALIL|CSWeapon_GALILAR|CSWeapon_GLOCK|CSWeapon_HEGRENADE|CSWeapon_HKP2000|CSWeapon_INCGRENADE|CSWeapon_KEVLAR|CSWeapon_KNIFE|CSWeapon_KNIFE_GG|CSWeapon_M249|CSWeapon_M3|CSWeapon_M4A1|CSWeapon_MAC10|CSWeapon_MAG7|CSWeapon_MOLOTOV|CSWeapon_MP5NAVY|CSWeapon_MP7|CSWeapon_MP9|CSWeapon_NEGEV|CSWeapon_NIGHTVISION|CSWeapon_NONE|CSWeapon_NOVA|CSWeapon_P228|CSWeapon_P250|CSWeapon_P90|CSWeapon_SAWEDOFF|CSWeapon_SCAR17|CSWeapon_SCAR20|CSWeapon_SCOUT|CSWeapon_SG550|CSWeapon_SG552|CSWeapon_SG556|CSWeapon_SHIELD|CSWeapon_SMOKEGRENADE|CSWeapon_SSG08|CSWeapon_TASER|CSWeapon_TEC9|CSWeapon_TMP|CSWeapon_UMP45|CSWeapon_USP|CSWeapon_XM1014|ChatColorInfo_Alternative|ChatColorInfo_Code|ChatColorInfo_SubjectType|ChatColorInfo_Supported|ChatColorSubjectType_none|ChatColorSubjectType_player|ChatColorSubjectType_undefined|ChatColorSubjectType_world|ChatColor_Black|ChatColor_Blue|ChatColor_BlueRed|ChatColor_Gray|ChatColor_Green|ChatColor_Lightgreen|ChatColor_Normal|ChatColor_Olivegreen|ChatColor_Orange|ChatColor_Red|ChatColor_RedBlue|ChatColor_Team|ClientHudPrint_Console|ClientHudPrint_Notify|ClientHudPrint_Talk|Client_HudPrint_Center|Command_Allow|Command_Deny|ConVarBound_Lower|ConVarBound_Upper|ConVarQuery_NotFound|ConVarQuery_NotValid|ConVarQuery_Okay|ConVarQuery_Protected|CookieAccess_Private|CookieAccess_Protected|CookieAccess_Public|CookieMenuAction_DisplayOption|CookieMenuAction_SelectOption|CookieMenu_OnOff|CookieMenu_OnOff_Int|CookieMenu_YesNo|CookieMenu_YesNo_Int|DBBind_Float|DBBind_Int|DBBind_String|DBPrio_High|DBPrio_Low|DBPrio_Normal|DBVal_Data|DBVal_Error|DBVal_Null|DBVal_TypeMismatch|DISSOLVE_CORE|DISSOLVE_ELECTRICAL|DISSOLVE_ELECTRICAL_LIGHT|DISSOLVE_NORMAL|DialogType_AskConnect|DialogType_Entry|DialogType_Menu|DialogType_Msg|DialogType_Text|EFL_BOT_FROZEN|EFL_CHECK_UNTOUCH|EFL_DIRTY_ABSANGVELOCITY|EFL_DIRTY_ABSTRANSFORM|EFL_DIRTY_ABSVELOCITY|EFL_DIRTY_SHADOWUPDATE|EFL_DIRTY_SPATIAL_PARTITION|EFL_DIRTY_SURR_COLLISION_BOUNDS|EFL_DONTBLOCKLOS|EFL_DONTWALKON|EFL_DORMANT|EFL_FORCE_CHECK_TRANSMIT|EFL_HAS_PLAYER_CHILD|EFL_IN_SKYBOX|EFL_IS_BEING_LIFTED_BY_BARNACLE|EFL_KEEP_ON_RECREATE_ENTITIES|EFL_KILLME|EFL_NOCLIP_ACTIVE|EFL_NOTIFY|EFL_NO_AUTO_EDICT_ATTACH|EFL_NO_DAMAGE_FORCES|EFL_NO_DISSOLVE|EFL_NO_GAME_PHYSICS_SIMULATION|EFL_NO_MEGAPHYSCANNON_RAGDOLL|EFL_NO_PHYSCANNON_INTERACTION|EFL_NO_ROTORWASH_PUSH|EFL_NO_THINK_FUNCTION|EFL_NO_WATER_VELOCITY_CHANGE|EFL_SERVER_ONLY|EFL_SETTING_UP_BONES|EFL_TOUCHING_FLUID|EFL_USE_PARTITION_WHEN_NOT_SOL|ET_Event|ET_Hook|ET_Ignore|ET_Single|EventHookMode_Post|EventHookMode_PostNoCopy|EventHookMode_Pre|FSOLID_CUSTOMBOXTEST|FSOLID_CUSTOMRAYTEST|FSOLID_FORCE_WORLD_ALIGNED|FSOLID_MAX_BITS|FSOLID_NOT_SOLID|FSOLID_NOT_STANDABLE|FSOLID_ROOT_PARENT_ALIGNED|FSOLID_TRIGGER|FSOLID_TRIGGER_TOUCH_DEBRIS|FSOLID_USE_TRIGGER_BOUNDS|FSOLID_VOLUME_CONTENTS|FeatureStatus_Available|FeatureStatus_Unavailable|FeatureStatus_Unknown|FeatureType_Capability|FeatureType_Native|FileTime_Created|FileTime_LastAccess|FileTime_LastChange|FileType_Directory|FileType_File|FileType_Unknown|INVALID_ADMIN_ID|INVALID_FUNCTION|INVALID_GROUP_ID|INVALID_HANDLE|INVALID_MESSAGE_ID|INVALID_TOPMENUOBJECT|Identity_Core|Identity_Extension|Identity_Plugin|Immunity_Default|Immunity_Global|KvData_Color|KvData_Float|KvData_Int|KvData_NUMTYPES|KvData_None|KvData_Ptr|KvData_String|KvData_UInt64|KvData_WString|Listen_Default|Listen_No|Listen_Yes|MOVETYPE_CUSTOM|MOVETYPE_FLY|MOVETYPE_FLYGRAVITY|MOVETYPE_ISOMETRIC|MOVETYPE_LADDER|MOVETYPE_NOCLIP|MOVETYPE_NONE|MOVETYPE_OBSERVER|MOVETYPE_PUSH|MOVETYPE_STEP|MOVETYPE_VPHYSICS|MOVETYPE_WALK|MapChange_Instant|MapChange_MapEnd|MapChange_RoundEnd|MenuAction_Cancel|MenuAction_Display|MenuAction_DrawItem|MenuAction_Select|MenuAction_Start|MenuAction_VoteCancel|MenuAction_VoteStart|MenuCancel_Disconnected|MenuCancel_Exit|MenuCancel_ExitBack|MenuCancel_Interrupted|MenuCancel_NoDisplay|MenuCancel_Timeout|MenuEnd_Cancelled|MenuEnd_Exit|MenuEnd_ExitBack|MenuEnd_Selected|MenuEnd_VotingCancelled|MenuEnd_VotingDone|MenuSource_External|MenuSource_None|MenuSource_Normal|MenuSource_RawPanel|MenuStyle_Default|MenuStyle_Radio|MenuStyle_Valve|NUM_OBSERVER_MODES|NetFlow_Both|NetFlow_Incoming|NetFlow_Outgoing|Nominate_Added|Nominate_AlreadyInVote|Nominate_InvalidMap|Nominate_Replaced|Nominate_VoteFull|NumberType_Int16|NumberType_Int32|NumberType_Int8|OBS_ALLOW_ALL|OBS_ALLOW_NONE|OBS_ALLOW_NUM_MODES|OBS_ALLOW_TEAM|OBS_MODE_CHASE|OBS_MODE_DEATHCAM|OBS_MODE_FIXED|OBS_MODE_FREEZECAM|OBS_MODE_IN_EYE|OBS_MODE_NONE|OBS_MODE_ROAMING|Override_Command|Override_CommandGroup|Param_Any|Param_Array|Param_Cell|Param_CellByRef|Param_Float|Param_FloatByRef|Param_String|Param_VarArgs|Path_SM|PlInfo_Author|PlInfo_Description|PlInfo_Name|PlInfo_URL|PlInfo_Version|Plugin_BadLoad|Plugin_Changed|Plugin_Continue|Plugin_Created|Plugin_Error|Plugin_Failed|Plugin_Handled|Plugin_Loaded|Plugin_Paused|Plugin_Running|Plugin_Stop|Plugin_Uncompiled|PropField_Entity|PropField_Float|PropField_Integer|PropField_String|PropField_Unsupported|PropField_Vector|Prop_Data|Prop_Send|QUERYCOOKIE_FAILED|REGEX_ERROR_BADCOUNT|REGEX_ERROR_BADMAGIC|REGEX_ERROR_BADNEWLINE|REGEX_ERROR_BADOPTION|REGEX_ERROR_BADPARTIAL|REGEX_ERROR_BADUTF8|REGEX_ERROR_BADUTF8_OFFSET|REGEX_ERROR_CALLOUT|REGEX_ERROR_DFA_RECURSE|REGEX_ERROR_DFA_UCOND|REGEX_ERROR_DFA_UITEM|REGEX_ERROR_DFA_UMLIMIT|REGEX_ERROR_DFA_WSSIZE|REGEX_ERROR_INTERNAL|REGEX_ERROR_MATCHLIMIT|REGEX_ERROR_NOMATCH|REGEX_ERROR_NOMEMORY|REGEX_ERROR_NONE|REGEX_ERROR_NOSUBSTRING|REGEX_ERROR_NULL|REGEX_ERROR_NULLWSLIMIT|REGEX_ERROR_PARTIAL|REGEX_ERROR_RECURSIONLIMIT|REGEX_ERROR_UNKNOWN_OPCODE|RENDERFX_CLAMP_MIN_SCALE|RENDERFX_DISTORT|RENDERFX_ENV_RAIN|RENDERFX_ENV_SNOW|RENDERFX_EXPLODE|RENDERFX_FADE_FAST|RENDERFX_FADE_SLOW|RENDERFX_FLICKER_FAST|RENDERFX_FLICKER_SLOW|RENDERFX_GLOWSHELL|RENDERFX_HOLOGRAM|RENDERFX_MAX|RENDERFX_NONE|RENDERFX_NO_DISSIPATION|RENDERFX_PULSE_FAST|RENDERFX_PULSE_FAST_WIDE|RENDERFX_PULSE_FAST_WIDER|RENDERFX_PULSE_SLOW|RENDERFX_PULSE_SLOW_WIDE|RENDERFX_RAGDOLL|RENDERFX_SOLID_FAST|RENDERFX_SOLID_SLOW|RENDERFX_SPOTLIGHT|RENDERFX_STROBE_FAST|RENDERFX_STROBE_FASTER|RENDERFX_STROBE_SLOW|RENDER_ENVIRONMENTAL|RENDER_GLOW|RENDER_NONE|RENDER_NORMAL|RENDER_TRANSADD|RENDER_TRANSADDFRAMEBLEND|RENDER_TRANSALPHA|RENDER_TRANSALPHAADD|RENDER_TRANSCOLOR|RENDER_TRANSTEXTURE|RENDER_WORLDGLOW|RayType_EndPoint|RayType_Infinite|RoundState_BetweenRounds|RoundState_Bonus|RoundState_GameOver|RoundState_Init|RoundState_Pregame|RoundState_Preround|RoundState_Restart|RoundState_RoundRunning|RoundState_Stalemate|RoundState_StartGame|RoundState_TeamWin|SDKCall_Entity|SDKCall_EntityList|SDKCall_GameRules|SDKCall_Player|SDKCall_Raw|SDKCall_Static|SDKConf_Signature|SDKConf_Virtual|SDKHook_EndTouch|SDKHook_EndTouchPost|SDKHook_FireBulletsPost|SDKHook_GetMaxHealth|SDKHook_GroundEntChangedPost|SDKHook_OnTakeDamage|SDKHook_OnTakeDamagePost|SDKHook_PostThink|SDKHook_PostThinkPost|SDKHook_PreThink|SDKHook_PreThinkPost|SDKHook_Reload|SDKHook_ReloadPost|SDKHook_SetTransmit|SDKHook_ShouldCollide|SDKHook_Spawn|SDKHook_SpawnPost|SDKHook_StartTouch|SDKHook_StartTouchPost|SDKHook_Think|SDKHook_ThinkPost|SDKHook_Touch|SDKHook_TouchPost|SDKHook_TraceAttack|SDKHook_TraceAttackPost|SDKHook_Use|SDKHook_UsePost|SDKHook_VPhysicsUpdate|SDKHook_VPhysicsUpdatePost|SDKHook_WeaponCanSwitchTo|SDKHook_WeaponCanSwitchToPost|SDKHook_WeaponCanUse|SDKHook_WeaponCanUsePost|SDKHook_WeaponDrop|SDKHook_WeaponDropPost|SDKHook_WeaponEquip|SDKHook_WeaponEquipPost|SDKHook_WeaponSwitch|SDKHook_WeaponSwitchPost|SDKLibrary_Engine|SDKLibrary_Server|SDKPass_ByRef|SDKPass_ByValue|SDKPass_Plain|SDKPass_Pointer|SDKType_Bool|SDKType_CBaseEntity|SDKType_CBasePlayer|SDKType_Edict|SDKType_Float|SDKType_PlainOldData|SDKType_QAngle|SDKType_String|SDKType_Vector|SMCError_Custom|SMCError_InvalidProperty1|SMCError_InvalidSection1|SMCError_InvalidSection2|SMCError_InvalidSection3|SMCError_InvalidSection4|SMCError_InvalidSection5|SMCError_InvalidTokens|SMCError_Okay|SMCError_StreamError|SMCError_StreamOpen|SMCError_TokenOverflow|SMCParse_Continue|SMCParse_Halt|SMCParse_HaltFail|SM_REPLY_TO_CHAT|SM_REPLY_TO_CONSOLE|SNDCHAN_AUTO|SNDCHAN_BODY|SNDCHAN_ITEM|SNDCHAN_REPLACE|SNDCHAN_STATIC|SNDCHAN_STREAM|SNDCHAN_USER_BASE|SNDCHAN_VOICE|SNDCHAN_VOICE_BASE|SNDCHAN_WEAPON|SNDLEVEL_AIRCRAFT|SNDLEVEL_CAR|SNDLEVEL_CONVO|SNDLEVEL_DISHWASHER|SNDLEVEL_DRYER|SNDLEVEL_FRIDGE|SNDLEVEL_GUNFIRE|SNDLEVEL_HELICOPTER|SNDLEVEL_HOME|SNDLEVEL_LIBRARY|SNDLEVEL_MINIBIKE|SNDLEVEL_NONE|SNDLEVEL_NORMAL|SNDLEVEL_RAIDSIREN|SNDLEVEL_ROCKET|SNDLEVEL_RUSTLE|SNDLEVEL_SCREAMING|SNDLEVEL_SNOWMOBILE|SNDLEVEL_TRAFFIC|SNDLEVEL_TRAIN|SNDLEVEL_WHISPER|SND_CHANGEPITCH|SND_CHANGEVOL|SND_DELAY|SND_NOFLAGS|SND_SHOULDPAUSE|SND_SPAWNING|SND_SPEAKER|SND_STOP|SND_STOPLOOPING|SOLID_BBOX|SOLID_BSP|SOLID_CUSTOM|SOLID_LAST|SOLID_NONE|SOLID_OBB|SOLID_OBB_YAW|SOLID_VPHYSICS|Sort_Ascending|Sort_Descending|Sort_Float|Sort_Integer|Sort_Random|Sort_String|TFClass_DemoMan|TFClass_Engineer|TFClass_Heavy|TFClass_Medic|TFClass_Pyro|TFClass_Scout|TFClass_Sniper|TFClass_Soldier|TFClass_Spy|TFClass_Unknown|TFCond_Bleeding|TFCond_Bonked|TFCond_Buffed|TFCond_Charging|TFCond_CloakFlicker|TFCond_Cloaked|TFCond_CritCanteen|TFCond_CritCola|TFCond_CritHype|TFCond_CritMmmph|TFCond_CritOnFirstBlood|TFCond_CritOnFlagCapture|TFCond_CritOnKill|TFCond_CritOnWin|TFCond_Dazed|TFCond_DeadRingered|TFCond_DefenseBuffMmmph|TFCond_DefenseBuffed|TFCond_DemoBuff|TFCond_DisguiseRemoved|TFCond_Disguised|TFCond_DisguisedAsDispenser|TFCond_Disguising|TFCond_FocusBuff|TFCond_HalloweenBombHead|TFCond_HalloweenCritCandy|TFCond_HalloweenThriller|TFCond_Healing|TFCond_InHealRadius|TFCond_Jarated|TFCond_Kritzkrieged|TFCond_MarkedForDeath|TFCond_MarkedForDeathSilent|TFCond_MegaHeal|TFCond_Milked|TFCond_NoHealingDamageBuff|TFCond_OnFire|TFCond_Overhealed|TFCond_RegenBuffed|TFCond_Reprogrammed|TFCond_RestrictToMelee|TFCond_Sapped|TFCond_Slowed|TFCond_SpeedBuffAlly|TFCond_Taunting|TFCond_TeleportedGlow|TFCond_Teleporting|TFCond_TmpDamageBonus|TFCond_UberchargeFading|TFCond_Ubercharged|TFCond_UberchargedCanteen|TFCond_UberchargedHidden|TFCond_Unknown1|TFCond_Unknown2|TFCond_Zoomed|TFHoliday_Birthday|TFHoliday_Christmas|TFHoliday_FullMoon|TFHoliday_Halloween|TFHoliday_HalloweenOrFullMoon|TFHoliday_HalloweenOrFullMoonOrValentines|TFHoliday_MeetThePyro|TFHoliday_ValentinesDay|TFObjectMode_Entrance|TFObjectMode_Exit|TFObjectMode_None|TFObject_CartDispenser|TFObject_Dispenser|TFObject_Sapper|TFObject_Sentry|TFObject_Teleporter|TFResource_Backstabs|TFResource_BuildingsDestroyed|TFResource_Captures|TFResource_Deaths|TFResource_Defenses|TFResource_Dominations|TFResource_Headshots|TFResource_HealPoints|TFResource_Invulns|TFResource_KillAssists|TFResource_MaxHealth|TFResource_Ping|TFResource_PlayerClass|TFResource_ResupplyPoints|TFResource_Revenge|TFResource_Score|TFResource_Teleports|TFResource_TotalScore|TFTeam_Blue|TFTeam_Red|TFTeam_Spectator|TFTeam_Unassigned|TFWeaponSlot_Building|TFWeaponSlot_Grenade|TFWeaponSlot_Item1|TFWeaponSlot_Item2|TFWeaponSlot_Melee|TFWeaponSlot_PDA|TFWeaponSlot_Primary|TFWeaponSlot_Secondary|TF_CUSTOM_AEGIS_ROUND|TF_CUSTOM_AIR_STICKY_BURST|TF_CUSTOM_BACKSTAB|TF_CUSTOM_BASEBALL|TF_CUSTOM_BLEEDING|TF_CUSTOM_BOOTS_STOMP|TF_CUSTOM_BURNING|TF_CUSTOM_BURNING_ARROW|TF_CUSTOM_BURNING_FLARE|TF_CUSTOM_CANNONBALL_PUSH|TF_CUSTOM_CARRIED_BUILDING|TF_CUSTOM_CHARGE_IMPACT|TF_CUSTOM_CLEAVER|TF_CUSTOM_CLEAVER_CRIT|TF_CUSTOM_COMBO_PUNCH|TF_CUSTOM_DECAPITATION|TF_CUSTOM_DECAPITATION_BOSS|TF_CUSTOM_DEFENSIVE_STICKY|TF_CUSTOM_EYEBALL_ROCKET|TF_CUSTOM_FISH_KILL|TF_CUSTOM_FLARE_EXPLOSION|TF_CUSTOM_FLARE_PELLET|TF_CUSTOM_FLYINGBURN|TF_CUSTOM_GOLD_WRENCH|TF_CUSTOM_HEADSHOT|TF_CUSTOM_HEADSHOT_DECAPITATION|TF_CUSTOM_MERASMUS_DECAPITATION|TF_CUSTOM_MERASMUS_GRENADE|TF_CUSTOM_MERASMUS_PLAYER_BOMB|TF_CUSTOM_MERASMUS_ZAP|TF_CUSTOM_MINIGUN|TF_CUSTOM_PENETRATE_ALL_PLAYERS|TF_CUSTOM_PENETRATE_HEADSHOT|TF_CUSTOM_PENETRATE_MY_TEAM|TF_CUSTOM_PICKAXE|TF_CUSTOM_PLASMA|TF_CUSTOM_PLASMA_CHARGED|TF_CUSTOM_PLASMA_GIB|TF_CUSTOM_PLAYER_SENTRY|TF_CUSTOM_PRACTICE_STICKY|TF_CUSTOM_PUMPKIN_BOMB|TF_CUSTOM_ROCKET_DIRECTHIT|TF_CUSTOM_SAPPER_RECORDER_DEATH|TF_CUSTOM_SHOTGUN_REVENGE_CRIT|TF_CUSTOM_STANDARD_STICKY|TF_CUSTOM_STICKBOMB_EXPLOSION|TF_CUSTOM_SUICIDE|TF_CUSTOM_TAUNT_ARMAGEDDON|TF_CUSTOM_TAUNT_ARROW_STAB|TF_CUSTOM_TAUNT_BARBARIAN_SWING|TF_CUSTOM_TAUNT_ENGINEER_ARM|TF_CUSTOM_TAUNT_ENGINEER_SMASH|TF_CUSTOM_TAUNT_FENCING|TF_CUSTOM_TAUNT_GRAND_SLAM|TF_CUSTOM_TAUNT_GRENADE|TF_CUSTOM_TAUNT_HADOUKEN|TF_CUSTOM_TAUNT_HIGH_NOON|TF_CUSTOM_TAUNT_UBERSLICE|TF_CUSTOM_TELEFRAG|TF_CUSTOM_TRIGGER_HURT|TF_CUSTOM_WRENCH_FIX|TF_FLAGEVENT_CAPTURED|TF_FLAGEVENT_DEFENDED|TF_FLAGEVENT_DROPPED|TF_FLAGEVENT_PICKEDUP|TF_FLAGEVENT_RETURNED|TF_WEAPON_BAT|TF_WEAPON_BAT_FISH|TF_WEAPON_BAT_GIFTWRAP|TF_WEAPON_BAT_WOOD|TF_WEAPON_BONESAW|TF_WEAPON_BOTTLE|TF_WEAPON_BUFF_ITEM|TF_WEAPON_BUILDER|TF_WEAPON_CANNON|TF_WEAPON_CLEAVER|TF_WEAPON_CLUB|TF_WEAPON_COMPOUND_BOW|TF_WEAPON_CROSSBOW|TF_WEAPON_CROWBAR|TF_WEAPON_DIRECTHIT|TF_WEAPON_DISPENSER|TF_WEAPON_DISPENSER_GUN|TF_WEAPON_DRG_POMSON|TF_WEAPON_FIREAXE|TF_WEAPON_FISTS|TF_WEAPON_FLAMETHROWER|TF_WEAPON_FLAMETHROWER_ROCKET|TF_WEAPON_FLAREGUN|TF_WEAPON_GRENADELAUNCHER|TF_WEAPON_GRENADE_CALTROP|TF_WEAPON_GRENADE_CLEAVER|TF_WEAPON_GRENADE_CONCUSSION|TF_WEAPON_GRENADE_DEMOMAN|TF_WEAPON_GRENADE_EMP|TF_WEAPON_GRENADE_GAS|TF_WEAPON_GRENADE_HEAL|TF_WEAPON_GRENADE_JAR|TF_WEAPON_GRENADE_JAR_MILK|TF_WEAPON_GRENADE_MIRV|TF_WEAPON_GRENADE_MIRVBOMB|TF_WEAPON_GRENADE_MIRV_DEMOMAN|TF_WEAPON_GRENADE_NAIL|TF_WEAPON_GRENADE_NAPALM|TF_WEAPON_GRENADE_NORMAL|TF_WEAPON_GRENADE_ORNAMENT|TF_WEAPON_GRENADE_PIPEBOMB|TF_WEAPON_GRENADE_SMOKE_BOMB|TF_WEAPON_GRENADE_STICKY_BALL|TF_WEAPON_GRENADE_STUNBALL|TF_WEAPON_HANDGUN_SCOUT_PRIMARY|TF_WEAPON_HANDGUN_SCOUT_SEC|TF_WEAPON_INVIS|TF_WEAPON_JAR|TF_WEAPON_JAR_MILK|TF_WEAPON_KNIFE|TF_WEAPON_LASER_POINTER|TF_WEAPON_LIFELINE|TF_WEAPON_LUNCHBOX|TF_WEAPON_MECHANICAL_ARM|TF_WEAPON_MEDIGUN|TF_WEAPON_MINIGUN|TF_WEAPON_NAILGUN|TF_WEAPON_NONE|TF_WEAPON_PARTICLE_CANNON|TF_WEAPON_PDA|TF_WEAPON_PDA_ENGINEER_BUILD|TF_WEAPON_PDA_ENGINEER_DESTROY|TF_WEAPON_PDA_SPY|TF_WEAPON_PEP_BRAWLER_BLASTER|TF_WEAPON_PIPEBOMBLAUNCHER|TF_WEAPON_PISTOL|TF_WEAPON_PISTOL_SCOUT|TF_WEAPON_PUMPKIN_BOMB|TF_WEAPON_RAYGUN|TF_WEAPON_RAYGUN_REVENGE|TF_WEAPON_REVOLVER|TF_WEAPON_ROCKETLAUNCHER|TF_WEAPON_SCATTERGUN|TF_WEAPON_SENTRY_BULLET|TF_WEAPON_SENTRY_REVENGE|TF_WEAPON_SENTRY_ROCKET|TF_WEAPON_SHOTGUN_BUILDING_RESCUE|TF_WEAPON_SHOTGUN_HWG|TF_WEAPON_SHOTGUN_PRIMARY|TF_WEAPON_SHOTGUN_PYRO|TF_WEAPON_SHOTGUN_SOLDIER|TF_WEAPON_SHOVEL|TF_WEAPON_SMG|TF_WEAPON_SNIPERRIFLE|TF_WEAPON_SNIPERRIFLE_DECAP|TF_WEAPON_SODA_POPPER|TF_WEAPON_STICKBOMB|TF_WEAPON_STICKY_BALL_LAUNCHER|TF_WEAPON_SWORD|TF_WEAPON_SYRINGEGUN_MEDIC|TF_WEAPON_TRANQ|TF_WEAPON_WRENCH|TopMenuAction_DisplayOption|TopMenuAction_DisplayTitle|TopMenuAction_DrawOption|TopMenuAction_RemoveObject|TopMenuAction_SelectOption|TopMenuObject_Category|TopMenuObject_Item|TopMenuPosition_LastCategory|TopMenuPosition_LastRoot|TopMenuPosition_Start|UM_BitBuf|UM_Protobuf|Use_Off|Use_On|Use_Set|Use_Toggle|VoteCancel_Generic|VoteCancel_NoVotes|WATER_LEVEL_FEET_IN_WATER|WATER_LEVEL_HEAD_IN_WATER|WATER_LEVEL_NOT_IN_WATER|WATER_LEVEL_WAIST_IN_WATER)(\\b)"
110
107
  },
111
108
  {
112
- "match": "(\\b)(true|false)(\\b)",
113
- "name": "storage.type.sourcepawn"
109
+ "name": "storage.type.sourcepawn",
110
+ "match": "(\\b)(true|false)(\\b)"
114
111
  }
115
- ],
116
- "scopeName": "source.sp",
117
- "uuid": "3969408F-A9CD-41C0-8F47-953B7EEFEF9D"
118
- }
112
+ ]
113
+ }
@@ -1,9 +1,6 @@
1
1
  {
2
- "fileTypes": [
3
- "sparql"
4
- ],
5
- "keyEquivalent": "^~S",
6
2
  "name": "SPARQL",
3
+ "scopeName": "source.sparql",
7
4
  "patterns": [
8
5
  {
9
6
  "include": "source.turtle#sparqlKeywords"
@@ -17,7 +14,5 @@
17
14
  {
18
15
  "include": "source.turtle"
19
16
  }
20
- ],
21
- "scopeName": "source.sparql",
22
- "uuid": "A66816FF-6EF0-46F7-8F67-438339EF61C9"
23
- }
17
+ ]
18
+ }
@@ -1,75 +1,68 @@
1
1
  {
2
- "bundleUUID": "E3BADC20-6B0E-11D9-9DC9-000D93589AF6",
3
- "comment": "\n\ttodo:\n\t\tlist comprehension / generator comprehension scope.\n\n\t",
4
- "fileTypes": [
5
- "spin"
6
- ],
7
- "firstLineMatch": "^#!/.*\\bspin[0-9.-]*\\b",
8
- "foldingStartMarker": "^(PUB|Pub|pub|PRI|Pri|pri|DAT|Dat|dat|CON|Con|con|OBJ|Obj|obj|VAR|Var|var)\\s+([.a-zA-Z0-9_ <]+)\\s*(\\((.*)\\))?\\s*:|\\{\\s*$|\\(\\s*$|\\[\\s*$|^\\s*\"\"\"(?=.)(?!.*\"\"\")",
9
- "foldingStopMarker": "^\\s*$|^\\s*\\}|^\\s*\\]|^\\s*\\)|^\\s*\"\"\"\\s*$",
10
- "keyEquivalent": "^~P",
11
2
  "name": "Spin",
3
+ "scopeName": "source.spin",
12
4
  "patterns": [
13
5
  {
6
+ "name": "comment.block.spin",
14
7
  "begin": "{",
8
+ "end": "}(?!.*})",
15
9
  "captures": {
16
10
  "0": {
17
11
  "name": "punctuation.definition.comment.php"
18
12
  }
19
- },
20
- "end": "}(?!.*})",
21
- "name": "comment.block.spin"
13
+ }
22
14
  },
23
15
  {
16
+ "name": "comment.line.single-quote.spin",
17
+ "match": "(').*$\\n?",
24
18
  "captures": {
25
19
  "1": {
26
20
  "name": "punctuation.definition.comment.spin"
27
21
  }
28
- },
29
- "match": "(').*$\\n?",
30
- "name": "comment.line.single-quote.spin"
22
+ }
31
23
  },
32
24
  {
33
- "match": "(?i:(%[0-9A-Fa-f]*)L)",
34
- "name": "constant.numeric.integer.long.hexadecimal.spin"
25
+ "name": "constant.numeric.integer.long.hexadecimal.spin",
26
+ "match": "(?i:(%[0-9A-Fa-f]*)L)"
35
27
  },
36
28
  {
37
- "match": "(?i:(\\$[0-9A-Fa-f_]*)|(%[01_]*))",
38
- "name": "constant.numeric.integer.hexadecimal.spin"
29
+ "name": "constant.numeric.integer.hexadecimal.spin",
30
+ "match": "(?i:(\\$[0-9A-Fa-f_]*)|(%[01_]*))"
39
31
  },
40
32
  {
41
- "match": "\\b(?i:(((\\d+(\\.(?=[^a-zA-Z])\\d*)?|(?<=[^0-9a-zA-Z])\\.\\d+)(e[\\-\\+]?\\d+)?))J)",
42
- "name": "constant.numeric.complex.spin"
33
+ "name": "constant.numeric.complex.spin",
34
+ "match": "\\b(?i:(((\\d+(\\.(?=[^a-zA-Z])\\d*)?|(?\u003c=[^0-9a-zA-Z])\\.\\d+)(e[\\-\\+]?\\d+)?))J)"
43
35
  },
44
36
  {
45
- "match": "\\b(?i:(\\d+\\.\\d*(e[\\-\\+]?\\d+)?))(?=[^a-zA-Z])",
46
- "name": "constant.numeric.float.spin"
37
+ "name": "constant.numeric.float.spin",
38
+ "match": "\\b(?i:(\\d+\\.\\d*(e[\\-\\+]?\\d+)?))(?=[^a-zA-Z])"
47
39
  },
48
40
  {
49
- "match": "(?<=[^0-9a-zA-Z])(?i:(\\.\\d+(e[\\-\\+]?\\d+)?))",
50
- "name": "constant.numeric.float.spin"
41
+ "name": "constant.numeric.float.spin",
42
+ "match": "(?\u003c=[^0-9a-zA-Z])(?i:(\\.\\d+(e[\\-\\+]?\\d+)?))"
51
43
  },
52
44
  {
53
- "match": "\\b(?i:(\\d+e[\\-\\+]?\\d+))",
54
- "name": "constant.numeric.float.spin"
45
+ "name": "constant.numeric.float.spin",
46
+ "match": "\\b(?i:(\\d+e[\\-\\+]?\\d+))"
55
47
  },
56
48
  {
57
- "match": "\\b(?i:([0-9]+[0-9_]*)L)",
58
- "name": "constant.numeric.integer.long.decimal.spin"
49
+ "name": "constant.numeric.integer.long.decimal.spin",
50
+ "match": "\\b(?i:([0-9]+[0-9_]*)L)"
59
51
  },
60
52
  {
61
- "match": "\\b([0-9]+[0-9_]*)",
62
- "name": "constant.numeric.integer.decimal.spin"
53
+ "name": "constant.numeric.integer.decimal.spin",
54
+ "match": "\\b([0-9]+[0-9_]*)"
63
55
  },
64
56
  {
57
+ "match": "\\b(global)\\b",
65
58
  "captures": {
66
59
  "1": {
67
60
  "name": "storage.modifier.global.spin"
68
61
  }
69
- },
70
- "match": "\\b(global)\\b"
62
+ }
71
63
  },
72
64
  {
65
+ "match": "\\b(?:(import)|(from))\\b",
73
66
  "captures": {
74
67
  "1": {
75
68
  "name": "keyword.control.import.spin"
@@ -77,93 +70,73 @@
77
70
  "2": {
78
71
  "name": "keyword.control.import.from.spin"
79
72
  }
80
- },
81
- "match": "\\b(?:(import)|(from))\\b"
73
+ }
82
74
  },
83
75
  {
84
- "comment": "keywords that delimit flow blocks or alter flow from within a block",
85
- "match": "\\b((?i:if)|(?i:repeat)|(?i:else)|(?i:elseif))\\b",
86
- "name": "keyword.control.flow.spin"
76
+ "name": "keyword.control.flow.spin",
77
+ "match": "\\b((?i:if)|(?i:repeat)|(?i:else)|(?i:elseif))\\b"
87
78
  },
88
79
  {
89
- "comment": "keyword operators that evaluate to True or False",
90
- "match": "\\b(and|in|is|not|or)\\b",
91
- "name": "keyword.operator.logical.spin"
80
+ "name": "keyword.operator.logical.spin",
81
+ "match": "\\b(and|in|is|not|or)\\b"
92
82
  },
93
83
  {
84
+ "match": "\\b(_CLKMODE|_clkmode|_clkMode|_Clkmode|_XINFREQ|_xinfreq|_xinFreq|_Xinfreq|ABORT|Abort|abort|QUIT|Quit|quit|NEXT|Next|next|WHILE|While|while|UNTIL|Until|until|FROM|From|from|TO|To|to|RETURN|Return|return|DIR[a-zA-Z](?=\\[)|Dir[a-zA-Z](?=\\[)|dir[a-zA-Z](?=\\[)|OUT[a-zA-Z](?=\\[)|Out[a-zA-Z](?=\\[)|out[a-zA-Z](?=\\[)|IN[a-zA-Z](?=\\[)|In[a-zA-Z](?=\\[)|in[a-zA-Z](?=\\[))\\b",
94
85
  "captures": {
95
86
  "1": {
96
87
  "name": "keyword.other.spin"
97
88
  }
98
- },
99
- "comment": "keywords that haven't fit into other groups (yet).",
100
- "match": "\\b(_CLKMODE|_clkmode|_clkMode|_Clkmode|_XINFREQ|_xinfreq|_xinFreq|_Xinfreq|ABORT|Abort|abort|QUIT|Quit|quit|NEXT|Next|next|WHILE|While|while|UNTIL|Until|until|FROM|From|from|TO|To|to|RETURN|Return|return|DIR[a-zA-Z](?=\\[)|Dir[a-zA-Z](?=\\[)|dir[a-zA-Z](?=\\[)|OUT[a-zA-Z](?=\\[)|Out[a-zA-Z](?=\\[)|out[a-zA-Z](?=\\[)|IN[a-zA-Z](?=\\[)|In[a-zA-Z](?=\\[)|in[a-zA-Z](?=\\[))\\b"
89
+ }
101
90
  },
102
91
  {
103
- "match": "<>",
104
- "name": "invalid.deprecated.operator.spin"
92
+ "name": "invalid.deprecated.operator.spin",
93
+ "match": "\u003c\u003e"
105
94
  },
106
95
  {
107
- "match": "<\\=|>\\=|\\=\\=|<|>|\\!\\=",
108
- "name": "keyword.operator.comparison.spin"
96
+ "name": "keyword.operator.comparison.spin",
97
+ "match": "\u003c\\=|\u003e\\=|\\=\\=|\u003c|\u003e|\\!\\="
109
98
  },
110
99
  {
111
- "match": "\\+\\=|-\\=|:\\=|:|\\*\\=|/\\=|//\\=|%\\=|&\\=|\\|\\=|\\^\\=|>>\\=|<<\\=|\\*\\*\\=",
112
- "name": "keyword.operator.assignment.augmented.spin"
100
+ "name": "keyword.operator.assignment.augmented.spin",
101
+ "match": "\\+\\=|-\\=|:\\=|:|\\*\\=|/\\=|//\\=|%\\=|\u0026\\=|\\|\\=|\\^\\=|\u003e\u003e\\=|\u003c\u003c\\=|\\*\\*\\="
113
102
  },
114
103
  {
115
- "match": "\\+|\\-|\\*|\\*\\*|/|//|<<|>>|&|\\||\\^|~|\\!",
116
- "name": "keyword.operator.arithmetic.spin"
104
+ "name": "keyword.operator.arithmetic.spin",
105
+ "match": "\\+|\\-|\\*|\\*\\*|/|//|\u003c\u003c|\u003e\u003e|\u0026|\\||\\^|~|\\!"
117
106
  },
118
107
  {
119
- "match": "\\=",
120
- "name": "keyword.operator.assignment.spin"
108
+ "name": "keyword.operator.assignment.spin",
109
+ "match": "\\="
121
110
  },
122
111
  {
123
- "begin": "^\\s*(class)\\s+(?=[a-zA-Z_][a-zA-Z_0-9]*\\s*\\:)",
124
- "beginCaptures": {
125
- "1": {
126
- "name": "storage.type.class.spin"
127
- }
128
- },
112
+ "name": "meta.class.old-style.spin",
129
113
  "contentName": "entity.name.type.class.spin",
114
+ "begin": "^\\s*(class)\\s+(?=[a-zA-Z_][a-zA-Z_0-9]*\\s*\\:)",
130
115
  "end": "\\s*(:)",
131
- "endCaptures": {
132
- "1": {
133
- "name": "punctuation.section.class.begin.spin"
134
- }
135
- },
136
- "name": "meta.class.old-style.spin",
137
116
  "patterns": [
138
117
  {
139
118
  "include": "#entity_name_class"
140
119
  }
141
- ]
142
- },
143
- {
144
- "begin": "^\\s*(class)\\s+(?=[a-zA-Z_][a-zA-Z_0-9]*\\s*\\()",
120
+ ],
145
121
  "beginCaptures": {
146
122
  "1": {
147
123
  "name": "storage.type.class.spin"
148
124
  }
149
125
  },
150
- "end": "(\\))\\s*(?:(\\:)|(.*$\\n?))",
151
126
  "endCaptures": {
152
127
  "1": {
153
- "name": "punctuation.definition.inheritance.end.spin"
154
- },
155
- "2": {
156
128
  "name": "punctuation.section.class.begin.spin"
157
- },
158
- "3": {
159
- "name": "invalid.illegal.missing-section-begin.spin"
160
129
  }
161
- },
130
+ }
131
+ },
132
+ {
162
133
  "name": "meta.class.spin",
134
+ "begin": "^\\s*(class)\\s+(?=[a-zA-Z_][a-zA-Z_0-9]*\\s*\\()",
135
+ "end": "(\\))\\s*(?:(\\:)|(.*$\\n?))",
163
136
  "patterns": [
164
137
  {
165
- "begin": "(?=[A-Za-z_][A-Za-z0-9_]*)",
166
138
  "contentName": "entity.name.type.class.spin",
139
+ "begin": "(?=[A-Za-z_][A-Za-z0-9_]*)",
167
140
  "end": "(?![A-Za-z0-9_])",
168
141
  "patterns": [
169
142
  {
@@ -172,55 +145,58 @@
172
145
  ]
173
146
  },
174
147
  {
175
- "begin": "(\\()",
176
- "beginCaptures": {
177
- "1": {
178
- "name": "punctuation.definition.inheritance.begin.spin"
179
- }
180
- },
181
148
  "contentName": "meta.class.inheritance.spin",
149
+ "begin": "(\\()",
182
150
  "end": "(?=\\)|:)",
183
151
  "patterns": [
184
152
  {
185
- "begin": "(?<=\\(|,)\\s*",
186
153
  "contentName": "entity.other.inherited-class.spin",
154
+ "begin": "(?\u003c=\\(|,)\\s*",
187
155
  "end": "\\s*(?:(,)|(?=\\)))",
188
- "endCaptures": {
189
- "1": {
190
- "name": "punctuation.separator.inheritance.spin"
191
- }
192
- },
193
156
  "patterns": [
194
157
  {
195
158
  "include": "$self"
196
159
  }
197
- ]
160
+ ],
161
+ "endCaptures": {
162
+ "1": {
163
+ "name": "punctuation.separator.inheritance.spin"
164
+ }
165
+ }
198
166
  }
199
- ]
167
+ ],
168
+ "beginCaptures": {
169
+ "1": {
170
+ "name": "punctuation.definition.inheritance.begin.spin"
171
+ }
172
+ }
200
173
  }
201
- ]
202
- },
203
- {
204
- "begin": "^\\s*(class)\\s+(?=[a-zA-Z_][a-zA-Z_0-9])",
174
+ ],
205
175
  "beginCaptures": {
206
176
  "1": {
207
177
  "name": "storage.type.class.spin"
208
178
  }
209
179
  },
210
- "end": "(\\()|\\s*($\\n?|#.*$\\n?)",
211
180
  "endCaptures": {
212
181
  "1": {
213
- "name": "punctuation.definition.inheritance.begin.spin"
182
+ "name": "punctuation.definition.inheritance.end.spin"
214
183
  },
215
184
  "2": {
216
- "name": "invalid.illegal.missing-inheritance.spin"
185
+ "name": "punctuation.section.class.begin.spin"
186
+ },
187
+ "3": {
188
+ "name": "invalid.illegal.missing-section-begin.spin"
217
189
  }
218
- },
190
+ }
191
+ },
192
+ {
219
193
  "name": "meta.class.spin",
194
+ "begin": "^\\s*(class)\\s+(?=[a-zA-Z_][a-zA-Z_0-9])",
195
+ "end": "(\\()|\\s*($\\n?|#.*$\\n?)",
220
196
  "patterns": [
221
197
  {
222
- "begin": "(?=[A-Za-z_][A-Za-z0-9_]*)",
223
198
  "contentName": "entity.name.type.class.spin",
199
+ "begin": "(?=[A-Za-z_][A-Za-z0-9_]*)",
224
200
  "end": "(?![A-Za-z0-9_])",
225
201
  "patterns": [
226
202
  {
@@ -228,32 +204,29 @@
228
204
  }
229
205
  ]
230
206
  }
231
- ]
232
- },
233
- {
234
- "begin": "^(PUB|Pub|pub|PRI|Pri|pri)\\s+(?=[A-Za-z_][A-Za-z0-9_]*\\s*\\()",
207
+ ],
235
208
  "beginCaptures": {
236
209
  "1": {
237
- "name": "storage.type.function.spin"
210
+ "name": "storage.type.class.spin"
238
211
  }
239
212
  },
240
- "end": "(\\)|\\n)\\s*(?:(\\:|(?=\\||'))|(.*$\\n?))",
241
213
  "endCaptures": {
242
214
  "1": {
243
- "name": "punctuation.definition.parameters.end.spin"
215
+ "name": "punctuation.definition.inheritance.begin.spin"
244
216
  },
245
217
  "2": {
246
- "name": "punctuation.section.function.begin.spin"
247
- },
248
- "3": {
249
- "name": "invalid.illegal.missing-section-begin.spin"
218
+ "name": "invalid.illegal.missing-inheritance.spin"
250
219
  }
251
- },
220
+ }
221
+ },
222
+ {
252
223
  "name": "meta.function.spin",
224
+ "begin": "^(PUB|Pub|pub|PRI|Pri|pri)\\s+(?=[A-Za-z_][A-Za-z0-9_]*\\s*\\()",
225
+ "end": "(\\)|\\n)\\s*(?:(\\:|(?=\\||'))|(.*$\\n?))",
253
226
  "patterns": [
254
227
  {
255
- "begin": "(?=[A-Za-z_][A-Za-z0-9_]*)",
256
228
  "contentName": "entity.name.function.spin",
229
+ "begin": "(?=[A-Za-z_][A-Za-z0-9_]*)",
257
230
  "end": "(?![A-Za-z0-9_])",
258
231
  "patterns": [
259
232
  {
@@ -262,19 +235,15 @@
262
235
  ]
263
236
  },
264
237
  {
265
- "begin": "(\\()",
266
- "beginCaptures": {
267
- "1": {
268
- "name": "punctuation.definition.parameters.begin.spin"
269
- }
270
- },
271
238
  "contentName": "meta.function.parameters.spin",
239
+ "begin": "(\\()",
272
240
  "end": "(?![a-zA-Z0-9_])",
273
241
  "patterns": [
274
242
  {
275
243
  "include": "#keyword_arguments"
276
244
  },
277
245
  {
246
+ "match": "\\b([a-zA-Z_][a-zA-Z_0-9]*)\\s*(?:(,\\s*)|(?=[\\n\\)]))",
278
247
  "captures": {
279
248
  "1": {
280
249
  "name": "variable.parameter.function.spin"
@@ -282,34 +251,41 @@
282
251
  "2": {
283
252
  "name": "punctuation.separator.parameters.spin"
284
253
  }
285
- },
286
- "match": "\\b([a-zA-Z_][a-zA-Z_0-9]*)\\s*(?:(,\\s*)|(?=[\\n\\)]))"
254
+ }
287
255
  }
288
- ]
256
+ ],
257
+ "beginCaptures": {
258
+ "1": {
259
+ "name": "punctuation.definition.parameters.begin.spin"
260
+ }
261
+ }
289
262
  }
290
- ]
291
- },
292
- {
293
- "begin": "^(PUB|Pub|pub|PRI|Pri|pri)\\s+(?=[A-Za-z_][A-Za-z0-9_]*)",
263
+ ],
294
264
  "beginCaptures": {
295
265
  "1": {
296
266
  "name": "storage.type.function.spin"
297
267
  }
298
268
  },
299
- "end": "(?![A-Za-z0-9_,])",
300
269
  "endCaptures": {
301
270
  "1": {
302
- "name": "punctuation.definition.parameters.begin.spin"
271
+ "name": "punctuation.definition.parameters.end.spin"
303
272
  },
304
273
  "2": {
305
- "name": "invalid.illegal.missing-parameters.spin"
274
+ "name": "punctuation.section.function.begin.spin"
275
+ },
276
+ "3": {
277
+ "name": "invalid.illegal.missing-section-begin.spin"
306
278
  }
307
- },
279
+ }
280
+ },
281
+ {
308
282
  "name": "meta.function.spin",
283
+ "begin": "^(PUB|Pub|pub|PRI|Pri|pri)\\s+(?=[A-Za-z_][A-Za-z0-9_]*)",
284
+ "end": "(?![A-Za-z0-9_,])",
309
285
  "patterns": [
310
286
  {
311
- "begin": "(?=[A-Za-z_][A-Za-z0-9_]*)",
312
287
  "contentName": "entity.name.function.spin",
288
+ "begin": "(?=[A-Za-z_][A-Za-z0-9_]*)",
313
289
  "end": "(?![A-Za-z0-9_])",
314
290
  "patterns": [
315
291
  {
@@ -317,44 +293,45 @@
317
293
  }
318
294
  ]
319
295
  }
320
- ]
321
- },
322
- {
323
- },
324
- {
325
- "begin": "^\\s*(?=@\\s*[A-Za-z_][A-Za-z0-9_]*(?:[a-zA-Z_][a-zA-Z_0-9]*)*\\s*\\()",
326
- "comment": "a decorator may be a function call which returns a decorator.",
327
- "end": "(\\))",
328
- "endCaptures": {
296
+ ],
297
+ "beginCaptures": {
329
298
  "1": {
330
- "name": "punctuation.definition.arguments.end.spin"
299
+ "name": "storage.type.function.spin"
331
300
  }
332
301
  },
302
+ "endCaptures": {
303
+ "1": {
304
+ "name": "punctuation.definition.parameters.begin.spin"
305
+ },
306
+ "2": {
307
+ "name": "invalid.illegal.missing-parameters.spin"
308
+ }
309
+ }
310
+ },
311
+ {},
312
+ {
333
313
  "name": "meta.function.decorator.spin",
314
+ "begin": "^\\s*(?=@\\s*[A-Za-z_][A-Za-z0-9_]*(?:[a-zA-Z_][a-zA-Z_0-9]*)*\\s*\\()",
315
+ "end": "(\\))",
334
316
  "patterns": [
335
317
  {
336
- "begin": "(?=(@)\\s*[A-Za-z_][A-Za-z0-9_]*(?:[A-Za-z_][A-Za-z0-9_]*)*\\s*\\()",
337
- "beginCaptures": {
338
- "1": {
339
- "name": "punctuation.definition.decorator.spin"
340
- }
341
- },
342
318
  "contentName": "entity.name.function.decorator.spin",
319
+ "begin": "(?=(@)\\s*[A-Za-z_][A-Za-z0-9_]*(?:[A-Za-z_][A-Za-z0-9_]*)*\\s*\\()",
343
320
  "end": "(?=\\s*\\()",
344
321
  "patterns": [
345
322
  {
346
323
  "include": "#dotted_name"
347
324
  }
348
- ]
349
- },
350
- {
351
- "begin": "(\\()",
325
+ ],
352
326
  "beginCaptures": {
353
327
  "1": {
354
- "name": "punctuation.definition.arguments.begin.spin"
328
+ "name": "punctuation.definition.decorator.spin"
355
329
  }
356
- },
330
+ }
331
+ },
332
+ {
357
333
  "contentName": "meta.function.decorator.arguments.spin",
334
+ "begin": "(\\()",
358
335
  "end": "(?=\\))",
359
336
  "patterns": [
360
337
  {
@@ -363,47 +340,47 @@
363
340
  {
364
341
  "include": "$self"
365
342
  }
366
- ]
343
+ ],
344
+ "beginCaptures": {
345
+ "1": {
346
+ "name": "punctuation.definition.arguments.begin.spin"
347
+ }
348
+ }
367
349
  }
368
- ]
350
+ ],
351
+ "endCaptures": {
352
+ "1": {
353
+ "name": "punctuation.definition.arguments.end.spin"
354
+ }
355
+ }
369
356
  },
370
357
  {
371
- "begin": "[(,]\\s*(?=@[A-Za-z_][A-Za-z0-9_]*(?:[a-zA-Z_][a-zA-Z_0-9]*)*)",
358
+ "name": "meta.function.decorator.spin",
372
359
  "contentName": "entity.name.function.decorator.spin",
360
+ "begin": "[(,]\\s*(?=@[A-Za-z_][A-Za-z0-9_]*(?:[a-zA-Z_][a-zA-Z_0-9]*)*)",
373
361
  "end": "(?![@A-Za-z0-9_])",
374
- "name": "meta.function.decorator.spin",
375
362
  "patterns": [
376
363
  {
377
364
  "begin": "(?=(@)\\s*[A-Za-z_][A-Za-z0-9_]*([A-Za-z_][A-Za-z0-9_]*)*)",
378
- "beginCaptures": {
379
- "1": {
380
- "name": "punctuation.definition.decorator.spin"
381
- }
382
- },
383
365
  "end": "(?![@A-Za-z0-9_])",
384
366
  "patterns": [
385
367
  {
386
368
  "include": "#dotted_name"
387
369
  }
388
- ]
370
+ ],
371
+ "beginCaptures": {
372
+ "1": {
373
+ "name": "punctuation.definition.decorator.spin"
374
+ }
375
+ }
389
376
  }
390
377
  ]
391
378
  },
392
379
  {
393
- "begin": "(?<=\\)|\\])\\s*(\\()",
394
- "beginCaptures": {
395
- "1": {
396
- "name": "punctuation.definition.arguments.begin.spin"
397
- }
398
- },
380
+ "name": "meta.function-call.spin",
399
381
  "contentName": "meta.function-call.arguments.spin",
382
+ "begin": "(?\u003c=\\)|\\])\\s*(\\()",
400
383
  "end": "(\\))",
401
- "endCaptures": {
402
- "1": {
403
- "name": "punctuation.definition.arguments.end.spin"
404
- }
405
- },
406
- "name": "meta.function-call.spin",
407
384
  "patterns": [
408
385
  {
409
386
  "include": "#keyword_arguments"
@@ -411,17 +388,22 @@
411
388
  {
412
389
  "include": "$self"
413
390
  }
414
- ]
415
- },
416
- {
417
- "begin": "(?=[A-Za-z_][A-Za-z0-9_]*(?:\\.[a-zA-Z_][a-zA-Z_0-9]*)*\\s*\\()",
418
- "end": "(\\))",
391
+ ],
392
+ "beginCaptures": {
393
+ "1": {
394
+ "name": "punctuation.definition.arguments.begin.spin"
395
+ }
396
+ },
419
397
  "endCaptures": {
420
398
  "1": {
421
399
  "name": "punctuation.definition.arguments.end.spin"
422
400
  }
423
- },
401
+ }
402
+ },
403
+ {
424
404
  "name": "meta.function-call.spin",
405
+ "begin": "(?=[A-Za-z_][A-Za-z0-9_]*(?:\\.[a-zA-Z_][a-zA-Z_0-9]*)*\\s*\\()",
406
+ "end": "(\\))",
425
407
  "patterns": [
426
408
  {
427
409
  "begin": "(?=[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*\\s*\\()",
@@ -433,13 +415,8 @@
433
415
  ]
434
416
  },
435
417
  {
436
- "begin": "(\\()",
437
- "beginCaptures": {
438
- "1": {
439
- "name": "punctuation.definition.arguments.begin.spin"
440
- }
441
- },
442
418
  "contentName": "meta.function-call.arguments.spin",
419
+ "begin": "(\\()",
443
420
  "end": "(?=\\))",
444
421
  "patterns": [
445
422
  {
@@ -448,19 +425,24 @@
448
425
  {
449
426
  "include": "$self"
450
427
  }
451
- ]
428
+ ],
429
+ "beginCaptures": {
430
+ "1": {
431
+ "name": "punctuation.definition.arguments.begin.spin"
432
+ }
433
+ }
452
434
  }
453
- ]
454
- },
455
- {
456
- "begin": "(?=[A-Za-z_][A-Za-z0-9_]*(?:\\.[a-zA-Z_][a-zA-Z_0-9]*)*\\s*\\[)",
457
- "end": "(\\])",
435
+ ],
458
436
  "endCaptures": {
459
437
  "1": {
460
438
  "name": "punctuation.definition.arguments.end.spin"
461
439
  }
462
- },
440
+ }
441
+ },
442
+ {
463
443
  "name": "meta.item-access.spin",
444
+ "begin": "(?=[A-Za-z_][A-Za-z0-9_]*(?:\\.[a-zA-Z_][a-zA-Z_0-9]*)*\\s*\\[)",
445
+ "end": "(\\])",
464
446
  "patterns": [
465
447
  {
466
448
  "begin": "(?=[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*\\s*\\[)",
@@ -472,58 +454,63 @@
472
454
  ]
473
455
  },
474
456
  {
475
- "begin": "(\\[)",
476
- "beginCaptures": {
477
- "1": {
478
- "name": "punctuation.definition.arguments.begin.spin"
479
- }
480
- },
481
457
  "contentName": "meta.item-access.arguments.spin",
458
+ "begin": "(\\[)",
482
459
  "end": "(?=\\])",
483
460
  "patterns": [
484
461
  {
485
462
  "include": "$self"
486
463
  }
487
- ]
464
+ ],
465
+ "beginCaptures": {
466
+ "1": {
467
+ "name": "punctuation.definition.arguments.begin.spin"
468
+ }
469
+ }
488
470
  }
489
- ]
471
+ ],
472
+ "endCaptures": {
473
+ "1": {
474
+ "name": "punctuation.definition.arguments.end.spin"
475
+ }
476
+ }
490
477
  },
491
478
  {
492
- "begin": "(?<=\\)|\\])\\s*(\\[)",
479
+ "name": "meta.item-access.spin",
480
+ "contentName": "meta.item-access.arguments.spin",
481
+ "begin": "(?\u003c=\\)|\\])\\s*(\\[)",
482
+ "end": "(\\])",
483
+ "patterns": [
484
+ {
485
+ "include": "$self"
486
+ }
487
+ ],
493
488
  "beginCaptures": {
494
489
  "1": {
495
490
  "name": "punctuation.definition.arguments.begin.spin"
496
491
  }
497
492
  },
498
- "contentName": "meta.item-access.arguments.spin",
499
- "end": "(\\])",
500
493
  "endCaptures": {
501
494
  "1": {
502
495
  "name": "punctuation.definition.arguments.end.spin"
503
496
  }
504
- },
505
- "name": "meta.item-access.spin",
506
- "patterns": [
507
- {
508
- "include": "$self"
509
- }
510
- ]
497
+ }
511
498
  },
512
499
  {
500
+ "match": "\\b(def|lambda)\\b",
513
501
  "captures": {
514
502
  "1": {
515
503
  "name": "storage.type.function.spin"
516
504
  }
517
- },
518
- "match": "\\b(def|lambda)\\b"
505
+ }
519
506
  },
520
507
  {
508
+ "match": "^\\b(class|OBJ|Obj|obj|DAT|Dat|dat|CON|Con|con|VAR|Var|var)\\b",
521
509
  "captures": {
522
510
  "1": {
523
511
  "name": "storage.type.class.spin"
524
512
  }
525
- },
526
- "match": "^\\b(class|OBJ|Obj|obj|DAT|Dat|dat|CON|Con|con|VAR|Var|var)\\b"
513
+ }
527
514
  },
528
515
  {
529
516
  "include": "#line_continuation"
@@ -532,8 +519,8 @@
532
519
  "include": "#language_variables"
533
520
  },
534
521
  {
535
- "match": "\\b(cnt|CNT|Cnt|CLKFREQ|ClkFreq|clkFreq|clkfreq|P8X32A|P8x32a|P8X32a|p8x32a|XTAL([0-9]+)|Xtal([0-9]+)|xtal([0-9]+)|PLL([0-9]+)X|PLL([0-9]+)x|Pll([0-9]+)x|pll([0-9]+)X|pll([0-9]+)x)\\b",
536
- "name": "constant.language.spin"
522
+ "name": "constant.language.spin",
523
+ "match": "\\b(cnt|CNT|Cnt|CLKFREQ|ClkFreq|clkFreq|clkfreq|P8X32A|P8x32a|P8X32a|p8x32a|XTAL([0-9]+)|Xtal([0-9]+)|xtal([0-9]+)|PLL([0-9]+)X|PLL([0-9]+)x|Pll([0-9]+)x|pll([0-9]+)X|pll([0-9]+)x)\\b"
537
524
  },
538
525
  {
539
526
  "include": "#string_quoted_double"
@@ -551,6 +538,7 @@
551
538
  ]
552
539
  },
553
540
  {
541
+ "match": "(\\[)(\\s*(\\]))\\b",
554
542
  "captures": {
555
543
  "1": {
556
544
  "name": "punctuation.definition.list.begin.spin"
@@ -561,42 +549,43 @@
561
549
  "3": {
562
550
  "name": "punctuation.definition.list.end.spin"
563
551
  }
564
- },
565
- "match": "(\\[)(\\s*(\\]))\\b"
552
+ }
566
553
  },
567
554
  {
555
+ "name": "meta.structure.list.spin",
568
556
  "begin": "(\\[)",
569
- "beginCaptures": {
570
- "1": {
571
- "name": "punctuation.definition.list.begin.spin"
572
- }
573
- },
574
557
  "end": "(\\])",
575
- "endCaptures": {
576
- "1": {
577
- "name": "punctuation.definition.list.end.spin"
578
- }
579
- },
580
- "name": "meta.structure.list.spin",
581
558
  "patterns": [
582
559
  {
583
- "begin": "(?<=\\[|\\,)\\s*(?![\\],])",
584
560
  "contentName": "meta.structure.list.item.spin",
561
+ "begin": "(?\u003c=\\[|\\,)\\s*(?![\\],])",
585
562
  "end": "\\s*(?:(,)|(?=\\]))",
586
- "endCaptures": {
587
- "1": {
588
- "name": "punctuation.separator.list.spin"
589
- }
590
- },
591
563
  "patterns": [
592
564
  {
593
565
  "include": "$self"
594
566
  }
595
- ]
567
+ ],
568
+ "endCaptures": {
569
+ "1": {
570
+ "name": "punctuation.separator.list.spin"
571
+ }
572
+ }
596
573
  }
597
- ]
574
+ ],
575
+ "beginCaptures": {
576
+ "1": {
577
+ "name": "punctuation.definition.list.begin.spin"
578
+ }
579
+ },
580
+ "endCaptures": {
581
+ "1": {
582
+ "name": "punctuation.definition.list.end.spin"
583
+ }
584
+ }
598
585
  },
599
586
  {
587
+ "name": "meta.structure.tuple.spin",
588
+ "match": "(\\()(\\s*(\\)))",
600
589
  "captures": {
601
590
  "1": {
602
591
  "name": "punctuation.definition.tuple.begin.spin"
@@ -607,11 +596,11 @@
607
596
  "3": {
608
597
  "name": "punctuation.definition.tuple.end.spin"
609
598
  }
610
- },
611
- "match": "(\\()(\\s*(\\)))",
612
- "name": "meta.structure.tuple.spin"
599
+ }
613
600
  },
614
601
  {
602
+ "name": "meta.structure.dictionary.spin",
603
+ "match": "(\\{)(\\s*(\\}))",
615
604
  "captures": {
616
605
  "1": {
617
606
  "name": "punctuation.definition.dictionary.begin.spin"
@@ -622,18 +611,16 @@
622
611
  "3": {
623
612
  "name": "punctuation.definition.dictionary.end.spin"
624
613
  }
625
- },
626
- "match": "(\\{)(\\s*(\\}))",
627
- "name": "meta.structure.dictionary.spin"
614
+ }
628
615
  },
629
616
  {
630
617
  "begin": "(\\{)",
618
+ "end": "(\\})",
631
619
  "beginCaptures": {
632
620
  "1": {
633
621
  "name": "punctuation.definition.dictionary.begin.spin"
634
622
  }
635
623
  },
636
- "end": "(\\})",
637
624
  "endCaptures": {
638
625
  "1": {
639
626
  "name": "punctuation.definition.dictionary.end.spin"
@@ -643,27 +630,27 @@
643
630
  ],
644
631
  "repository": {
645
632
  "builtin_exceptions": {
646
- "match": "(?x)\\b(\n (\n Arithmetic|Assertion|Attribute|Buffer|EOF|Environment|FloatingPoint|IO|\n Import|Indentation|Index|Key|Lookup|Memory|Name|NotImplemented|OS|Overflow|\n Reference|Runtime|Standard|Syntax|System|Tab|Type|UnboundLocal|\n Unicode(Encode|Decode|Translate)?|\n Value|VMS|Windows|ZeroDivision\n )Error|\n ((Pending)?Deprecation|Runtime|Syntax|User|Future|Import|Unicode|Bytes)?Warning|\n (Base)?Exception|\n SystemExit|StopIteration|NotImplemented|KeyboardInterrupt|GeneratorExit\n\t\t\t)\\b",
647
- "name": "support.type.exception.spin"
633
+ "name": "support.type.exception.spin",
634
+ "match": "(?x)\\b(\n (\n Arithmetic|Assertion|Attribute|Buffer|EOF|Environment|FloatingPoint|IO|\n Import|Indentation|Index|Key|Lookup|Memory|Name|NotImplemented|OS|Overflow|\n Reference|Runtime|Standard|Syntax|System|Tab|Type|UnboundLocal|\n Unicode(Encode|Decode|Translate)?|\n Value|VMS|Windows|ZeroDivision\n )Error|\n ((Pending)?Deprecation|Runtime|Syntax|User|Future|Import|Unicode|Bytes)?Warning|\n (Base)?Exception|\n SystemExit|StopIteration|NotImplemented|KeyboardInterrupt|GeneratorExit\n\t\t\t)\\b"
648
635
  },
649
636
  "builtin_functions": {
650
- "match": "(?x)\\b(\n STRING|String|string|WAITCNT|Waitcnt|WaitCnt|waitcnt|waitCnt|COGNEW|CogNew|Cognew|cogNew|cognew|COGSTOP|CogStop|Cogstop|cogStop|cogstop|ABS|Abs|abs|MAX|Max|max|MIN|Min|min|NEG|Neg|neg|STRSIZE|StrSize|StrSIZE|strSIZE|strSize|Strsize|strsize|LONGFILL|LongFILL|longFILL|LongFill|longFill|Longfill|longfill|BYTEMOVE|ByteMove|ByteMOVE|byteMOVE|byteMove|Bytemove|bytemove|BYTEFILL|ByteFILL|ByteFill|Bytefill|byteFILL|ByteFILL|byteFill|bytefill|LOOKUPZ|LookUpz|lookUpz|LookUpZ|lookUpZ|LookUPZ|Lookupz|lookupz|CONSTANT|Constant|constant\n\t\t\t)\\b(?=\\s*\\()",
651
- "name": "support.function.builtin.spin"
637
+ "name": "support.function.builtin.spin",
638
+ "match": "(?x)\\b(\n STRING|String|string|WAITCNT|Waitcnt|WaitCnt|waitcnt|waitCnt|COGNEW|CogNew|Cognew|cogNew|cognew|COGSTOP|CogStop|Cogstop|cogStop|cogstop|ABS|Abs|abs|MAX|Max|max|MIN|Min|min|NEG|Neg|neg|STRSIZE|StrSize|StrSIZE|strSIZE|strSize|Strsize|strsize|LONGFILL|LongFILL|longFILL|LongFill|longFill|Longfill|longfill|BYTEMOVE|ByteMove|ByteMOVE|byteMOVE|byteMove|Bytemove|bytemove|BYTEFILL|ByteFILL|ByteFill|Bytefill|byteFILL|ByteFILL|byteFill|bytefill|LOOKUPZ|LookUpz|lookUpz|LookUpZ|lookUpZ|LookUPZ|Lookupz|lookupz|CONSTANT|Constant|constant\n\t\t\t)\\b(?=\\s*\\()"
652
639
  },
653
640
  "builtin_types": {
654
- "match": "(?x)\\b(\n\t\t\t\tLONG|Long|long|BYTE|Byte|byte|WORD|Word|word|RES|Res|res\n\t\t\t)\\b",
655
- "name": "support.type.spin"
641
+ "name": "support.type.spin",
642
+ "match": "(?x)\\b(\n\t\t\t\tLONG|Long|long|BYTE|Byte|byte|WORD|Word|word|RES|Res|res\n\t\t\t)\\b"
656
643
  },
657
644
  "constant_placeholder": {
658
- "match": "(?i:(\\([a-z_]+\\))?#?0?\\-?[ ]?\\+?([0-9]*|\\*)(\\.([0-9]*|\\*))?[hL]?[a-z])",
659
- "name": "constant.other.placeholder.spin"
645
+ "name": "constant.other.placeholder.spin",
646
+ "match": "(?i:(\\([a-z_]+\\))?#?0?\\-?[ ]?\\+?([0-9]*|\\*)(\\.([0-9]*|\\*))?[hL]?[a-z])"
660
647
  },
661
648
  "docstrings": {
662
649
  "patterns": [
663
650
  {
664
- "begin": "^\\s*(?=[uU]?[rR]?\\{\\{)",
665
- "end": "(?<=\\}\\})",
666
651
  "name": "comment.block.spin",
652
+ "begin": "^\\s*(?=[uU]?[rR]?\\{\\{)",
653
+ "end": "(?\u003c=\\}\\})",
667
654
  "patterns": [
668
655
  {
669
656
  "include": "#string_quoted_double"
@@ -695,7 +682,7 @@
695
682
  ]
696
683
  },
697
684
  {
698
- "begin": "(?<!\\.)(?=[A-Za-z_][A-Za-z0-9_]*)",
685
+ "begin": "(?\u003c!\\.)(?=[A-Za-z_][A-Za-z0-9_]*)",
699
686
  "end": "(?![A-Za-z0-9_])",
700
687
  "patterns": [
701
688
  {
@@ -750,6 +737,7 @@
750
737
  ]
751
738
  },
752
739
  "escaped_char": {
740
+ "match": "(\\\\x[0-9A-F]{2})|(\\\\[0-7]{3})|(\\\\\\n)|(\\\\\\\\)|(\\\\\\\")|(\\\\')|(\\\\a)|(\\\\b)|(\\\\f)|(\\\\n)|(\\\\r)|(\\\\t)|(\\\\v)",
753
741
  "captures": {
754
742
  "1": {
755
743
  "name": "constant.character.escape.hex.spin"
@@ -790,10 +778,10 @@
790
778
  "9": {
791
779
  "name": "constant.character.escape.formfeed.spin"
792
780
  }
793
- },
794
- "match": "(\\\\x[0-9A-F]{2})|(\\\\[0-7]{3})|(\\\\\\n)|(\\\\\\\\)|(\\\\\\\")|(\\\\')|(\\\\a)|(\\\\b)|(\\\\f)|(\\\\n)|(\\\\r)|(\\\\t)|(\\\\v)"
781
+ }
795
782
  },
796
783
  "escaped_unicode_char": {
784
+ "match": "(\\\\U[0-9A-Fa-f]{8})|(\\\\u[0-9A-Fa-f]{4})|(\\\\N\\{[a-zA-Z ]+\\})",
797
785
  "captures": {
798
786
  "1": {
799
787
  "name": "constant.character.escape.unicode.16-bit-hex.spin"
@@ -804,8 +792,7 @@
804
792
  "3": {
805
793
  "name": "constant.character.escape.unicode.name.spin"
806
794
  }
807
- },
808
- "match": "(\\\\U[0-9A-Fa-f]{8})|(\\\\u[0-9A-Fa-f]{4})|(\\\\N\\{[a-zA-Z ]+\\})"
795
+ }
809
796
  },
810
797
  "function_name": {
811
798
  "patterns": [
@@ -833,11 +820,17 @@
833
820
  "match": "[A-Za-z_][A-Za-z0-9_]*"
834
821
  },
835
822
  "illegal_names": {
836
- "match": "\\b(and|as|assert|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|not|or|pass|print|raise|return|try|with|yield)\\b",
837
- "name": "invalid.illegal.name.spin"
823
+ "name": "invalid.illegal.name.spin",
824
+ "match": "\\b(and|as|assert|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|not|or|pass|print|raise|return|try|with|yield)\\b"
838
825
  },
839
826
  "keyword_arguments": {
840
827
  "begin": "\\b([a-zA-Z_][a-zA-Z_0-9]*)\\s*(=)(?!=)",
828
+ "end": "\\s*(?:(?=$\\n?|[\\)\\:]))",
829
+ "patterns": [
830
+ {
831
+ "include": "$self"
832
+ }
833
+ ],
841
834
  "beginCaptures": {
842
835
  "1": {
843
836
  "name": "variable.parameter.function.spin"
@@ -846,23 +839,18 @@
846
839
  "name": "keyword.operator.assignment.spin"
847
840
  }
848
841
  },
849
- "end": "\\s*(?:(?=$\\n?|[\\)\\:]))",
850
842
  "endCaptures": {
851
843
  "1": {
852
844
  "name": "punctuation.separator.parameters.spin"
853
845
  }
854
- },
855
- "patterns": [
856
- {
857
- "include": "$self"
858
- }
859
- ]
846
+ }
860
847
  },
861
848
  "language_variables": {
862
- "match": "\\b(self|cls)\\b",
863
- "name": "variable.language.spin"
849
+ "name": "variable.language.spin",
850
+ "match": "\\b(self|cls)\\b"
864
851
  },
865
852
  "line_continuation": {
853
+ "match": "(\\\\)(.*)$\\n?",
866
854
  "captures": {
867
855
  "1": {
868
856
  "name": "punctuation.separator.continuation.line.spin"
@@ -870,22 +858,17 @@
870
858
  "2": {
871
859
  "name": "invalid.illegal.unexpected-text.spin"
872
860
  }
873
- },
874
- "match": "(\\\\)(.*)$\\n?"
861
+ }
875
862
  },
876
863
  "magic_function_names": {
877
- "comment": "these methods have magic interpretation by spin and are generally called indirectly through syntactic constructs",
878
- "match": "(?x)\\b(__(?:\n\t\t\t\t\t\tabs|add|AND|And|and|OR|NOT|Not|not|Or|or|call|cmp|coerce|complex|contains|del|delattr|\n\t\t\t\t\t\tdelete|delitem|delslice|div|divmod|enter|eq|exit|float|\n\t\t\t\t\t\tfloordiv|ge|get|getattr|getattribute|getitem|getslice|gt|\n\t\t\t\t\t\thash|hex|iadd|iand|idiv|ifloordiv|ilshift|imod|imul|init|\n\t\t\t\t\t\tint|invert|ior|ipow|irshift|isub|iter|itruediv|ixor|le|len|\n\t\t\t\t\t\tlong|lshift|lt|mod|mul|ne|neg|new|nonzero|oct|or|pos|pow|\n\t\t\t\t\t\tradd|rand|rdiv|rdivmod|repr|rfloordiv|rlshift|rmod|rmul|ror|\n\t\t\t\t\t\trpow|rrshift|rshift|rsub|rtruediv|rxor|set|setattr|setitem|\n\t\t\t\t\t\tsetslice|str|sub|truediv|unicode|xor\n\t\t\t\t\t)__)\\b",
879
- "name": "support.function.magic.spin"
864
+ "name": "support.function.magic.spin",
865
+ "match": "(?x)\\b(__(?:\n\t\t\t\t\t\tabs|add|AND|And|and|OR|NOT|Not|not|Or|or|call|cmp|coerce|complex|contains|del|delattr|\n\t\t\t\t\t\tdelete|delitem|delslice|div|divmod|enter|eq|exit|float|\n\t\t\t\t\t\tfloordiv|ge|get|getattr|getattribute|getitem|getslice|gt|\n\t\t\t\t\t\thash|hex|iadd|iand|idiv|ifloordiv|ilshift|imod|imul|init|\n\t\t\t\t\t\tint|invert|ior|ipow|irshift|isub|iter|itruediv|ixor|le|len|\n\t\t\t\t\t\tlong|lshift|lt|mod|mul|ne|neg|new|nonzero|oct|or|pos|pow|\n\t\t\t\t\t\tradd|rand|rdiv|rdivmod|repr|rfloordiv|rlshift|rmod|rmul|ror|\n\t\t\t\t\t\trpow|rrshift|rshift|rsub|rtruediv|rxor|set|setattr|setitem|\n\t\t\t\t\t\tsetslice|str|sub|truediv|unicode|xor\n\t\t\t\t\t)__)\\b"
880
866
  },
881
867
  "magic_variable_names": {
882
- "comment": "magic variables which a class/module may have.",
883
- "match": "\\b__(all|bases|class|debug|dict|doc|file|members|metaclass|methods|name|slots|weakref)__\\b",
884
- "name": "support.variable.magic.spin"
868
+ "name": "support.variable.magic.spin",
869
+ "match": "\\b__(all|bases|class|debug|dict|doc|file|members|metaclass|methods|name|slots|weakref)__\\b"
885
870
  },
886
871
  "regular_expressions": {
887
- "comment": "Changed disabled to 1 to turn off syntax highlighting in “r” strings.",
888
- "disabled": 0,
889
872
  "patterns": [
890
873
  {
891
874
  "include": "source.regexp.spin"
@@ -895,14 +878,19 @@
895
878
  "string_quoted_double": {
896
879
  "patterns": [
897
880
  {
881
+ "name": "string.quoted.double.single-line.spin",
898
882
  "begin": "(\")",
883
+ "end": "((?\u003c=\")(\")|\")|(\\n)",
884
+ "patterns": [
885
+ {
886
+ "include": "#escaped_char"
887
+ }
888
+ ],
899
889
  "beginCaptures": {
900
890
  "1": {
901
891
  "name": "punctuation.definition.string.begin.spin"
902
892
  }
903
893
  },
904
- "comment": "double quoted string",
905
- "end": "((?<=\")(\")|\")|(\\n)",
906
894
  "endCaptures": {
907
895
  "1": {
908
896
  "name": "punctuation.definition.string.end.spin"
@@ -913,13 +901,7 @@
913
901
  "3": {
914
902
  "name": "invalid.illegal.unclosed-string.spin"
915
903
  }
916
- },
917
- "name": "string.quoted.double.single-line.spin",
918
- "patterns": [
919
- {
920
- "include": "#escaped_char"
921
- }
922
- ]
904
+ }
923
905
  }
924
906
  ]
925
907
  },
@@ -930,7 +912,5 @@
930
912
  }
931
913
  ]
932
914
  }
933
- },
934
- "scopeName": "source.spin",
935
- "uuid": "F23DB5B2-7D08-11D9-A709-000D93B6E43C"
936
- }
915
+ }
916
+ }