github-linguist 5.3.3 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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,13 +1,9 @@
1
1
  {
2
- "fileTypes": [
3
- "Makegen"
4
- ],
5
2
  "name": "Makegen",
3
+ "scopeName": "source.makegen",
6
4
  "patterns": [
7
5
  {
8
6
  "include": "source.perl"
9
7
  }
10
- ],
11
- "scopeName": "source.makegen",
12
- "uuid": "5C4C476C-9AB1-4CCF-B7A8-89921315E3B9"
13
- }
8
+ ]
9
+ }
@@ -1,8 +1,6 @@
1
1
  {
2
- "fileTypes": [
3
- "mask"
4
- ],
5
2
  "name": "Mask",
3
+ "scopeName": "source.mask",
6
4
  "patterns": [
7
5
  {
8
6
  "include": "#comments"
@@ -66,150 +64,152 @@
66
64
  "comments": {
67
65
  "patterns": [
68
66
  {
67
+ "name": "comment.block.js",
69
68
  "begin": "/\\*",
69
+ "end": "\\*/",
70
70
  "captures": {
71
71
  "0": {
72
72
  "name": "punctuation.definition.comment.js"
73
73
  }
74
- },
75
- "end": "\\*/",
76
- "name": "comment.block.js"
74
+ }
77
75
  },
78
76
  {
77
+ "name": "comment.line.double-slash.js",
78
+ "match": "(//).*$\\n?",
79
79
  "captures": {
80
80
  "1": {
81
81
  "name": "punctuation.definition.comment.js"
82
82
  }
83
- },
84
- "match": "(//).*$\\n?",
85
- "name": "comment.line.double-slash.js"
83
+ }
86
84
  }
87
85
  ]
88
86
  },
89
87
  "decorator": {
90
88
  "begin": "(\\[)",
89
+ "end": "(\\])",
90
+ "patterns": [
91
+ {
92
+ "include": "source.js"
93
+ }
94
+ ],
91
95
  "beginCaptures": {
92
96
  "1": {
93
97
  "name": "keyword"
94
98
  }
95
99
  },
96
- "end": "(\\])",
97
100
  "endCaptures": {
98
101
  "1": {
99
102
  "name": "keyword"
100
103
  }
101
- },
102
- "patterns": [
103
- {
104
- "include": "source.js"
105
- }
106
- ]
104
+ }
107
105
  },
108
106
  "define": {
109
- "begin": "((define|let)\\b)",
110
- "beginCaptures": {
111
- "1": {
112
- "name": "support.constant"
113
- }
114
- },
115
- "end": "(?<=[>;\\{\\}])|(?=[>;\\{\\}])|([>;\\{\\}])",
116
107
  "name": "define.mask",
108
+ "begin": "((define|let)\\b)",
109
+ "end": "(?\u003c=[\u003e;\\{\\}])|(?=[\u003e;\\{\\}])|([\u003e;\\{\\}])",
117
110
  "patterns": [
118
111
  {
119
- "match": "(as|extends)\\b",
120
- "name": "keyword"
112
+ "name": "keyword",
113
+ "match": "(as|extends)\\b"
121
114
  },
122
115
  {
123
- "match": "(,)",
124
- "name": "punctuation"
116
+ "name": "punctuation",
117
+ "match": "(,)"
125
118
  },
126
119
  {
127
- "match": "([\\w_\\-:]+)",
128
- "name": "entity.other.attribute-name"
120
+ "name": "entity.other.attribute-name",
121
+ "match": "([\\w_\\-:]+)"
129
122
  },
130
123
  {
131
- "match": "(\\([^\\)]*\\))",
132
- "name": "variable.parameter"
124
+ "name": "variable.parameter",
125
+ "match": "(\\([^\\)]*\\))"
133
126
  }
134
- ]
127
+ ],
128
+ "beginCaptures": {
129
+ "1": {
130
+ "name": "support.constant"
131
+ }
132
+ }
135
133
  },
136
134
  "expression": {
137
135
  "patterns": [
138
136
  {
137
+ "name": "markup.italic",
139
138
  "begin": "(\\()",
139
+ "end": "\\)",
140
+ "patterns": [
141
+ {
142
+ "include": "#js-expression"
143
+ },
144
+ {
145
+ "include": "source.js"
146
+ }
147
+ ],
140
148
  "beginCaptures": {
141
149
  "0": {
142
150
  "name": "variable.parameter"
143
151
  }
144
152
  },
145
- "end": "\\)",
146
153
  "endCaptures": {
147
154
  "0": {
148
155
  "name": "variable.parameter"
149
156
  }
150
- },
151
- "name": "markup.italic",
152
- "patterns": [
153
- {
154
- "include": "#js-expression"
155
- },
156
- {
157
- "include": "source.js"
158
- }
159
- ]
157
+ }
160
158
  }
161
159
  ]
162
160
  },
163
161
  "html": {
164
162
  "patterns": [
165
163
  {
166
- "begin": "((\\{|>)\\s*('''|\"\"\"))",
164
+ "name": "syntax.html.mask",
165
+ "begin": "((\\{|\u003e)\\s*('''|\"\"\"))",
166
+ "end": "(('''|\"\"\"))",
167
+ "patterns": [
168
+ {
169
+ "include": "text.html.basic"
170
+ }
171
+ ],
167
172
  "beginCaptures": {
168
173
  "1": {
169
174
  "name": "variable.parameter"
170
175
  }
171
176
  },
172
- "end": "(('''|\"\"\"))",
173
177
  "endCaptures": {
174
178
  "1": {
175
179
  "name": "variable.parameter"
176
180
  }
177
- },
178
- "name": "syntax.html.mask",
179
- "patterns": [
180
- {
181
- "include": "text.html.basic"
182
- }
183
- ]
181
+ }
184
182
  }
185
183
  ]
186
184
  },
187
185
  "import": {
188
- "begin": "(import)\\b",
189
- "beginCaptures": {
190
- "1": {
191
- "name": "keyword"
192
- }
193
- },
194
- "end": "(;|(?<=['|\"]))",
195
186
  "name": "import.mask",
187
+ "begin": "(import)\\b",
188
+ "end": "(;|(?\u003c=['|\"]))",
196
189
  "patterns": [
197
190
  {
198
- "match": "\\b(sync|async|as|from)\\b",
199
- "name": "keyword"
191
+ "name": "keyword",
192
+ "match": "\\b(sync|async|as|from)\\b"
200
193
  },
201
194
  {
202
- "match": "(,)",
203
- "name": "punctuation"
195
+ "name": "punctuation",
196
+ "match": "(,)"
204
197
  },
205
198
  {
206
199
  "include": "#literal-string"
207
200
  }
208
- ]
201
+ ],
202
+ "beginCaptures": {
203
+ "1": {
204
+ "name": "keyword"
205
+ }
206
+ }
209
207
  },
210
208
  "interpolation": {
211
209
  "patterns": [
212
210
  {
211
+ "name": "markup.italic",
212
+ "match": "(?\u003c!\\\\)(~)([\\w\\.]+)",
213
213
  "captures": {
214
214
  "1": {
215
215
  "name": "variable.parameter"
@@ -217,28 +217,16 @@
217
217
  "2": {
218
218
  "name": "other.interpolated.mask"
219
219
  }
220
- },
221
- "match": "(?<!\\\\)(~)([\\w\\.]+)",
222
- "name": "markup.italic"
220
+ }
223
221
  },
224
222
  {
223
+ "name": "markup.italic",
225
224
  "begin": "(~\\[)",
226
- "beginCaptures": {
227
- "0": {
228
- "name": "variable.parameter"
229
- }
230
- },
231
225
  "end": "\\]",
232
- "endCaptures": {
233
- "0": {
234
- "name": "variable.parameter"
235
- }
236
- },
237
- "name": "markup.italic",
238
226
  "patterns": [
239
227
  {
240
- "match": "(\\s*\\w*\\s*:)",
241
- "name": "keyword.util.mask"
228
+ "name": "keyword.util.mask",
229
+ "match": "(\\s*\\w*\\s*:)"
242
230
  },
243
231
  {
244
232
  "include": "#js-interpolation"
@@ -246,26 +234,26 @@
246
234
  {
247
235
  "include": "source.js"
248
236
  }
249
- ]
250
- }
251
- ]
252
- },
253
- "javascript": {
254
- "patterns": [
255
- {
256
- "begin": "\\{",
237
+ ],
257
238
  "beginCaptures": {
258
239
  "0": {
259
240
  "name": "variable.parameter"
260
241
  }
261
242
  },
262
- "end": "\\}",
263
243
  "endCaptures": {
264
244
  "0": {
265
245
  "name": "variable.parameter"
266
246
  }
267
- },
247
+ }
248
+ }
249
+ ]
250
+ },
251
+ "javascript": {
252
+ "patterns": [
253
+ {
268
254
  "name": "syntax.js.mask",
255
+ "begin": "\\{",
256
+ "end": "\\}",
269
257
  "patterns": [
270
258
  {
271
259
  "include": "#js-block"
@@ -273,16 +261,26 @@
273
261
  {
274
262
  "include": "source.js"
275
263
  }
276
- ]
264
+ ],
265
+ "beginCaptures": {
266
+ "0": {
267
+ "name": "variable.parameter"
268
+ }
269
+ },
270
+ "endCaptures": {
271
+ "0": {
272
+ "name": "variable.parameter"
273
+ }
274
+ }
277
275
  }
278
276
  ]
279
277
  },
280
278
  "js-block": {
281
279
  "patterns": [
282
280
  {
281
+ "name": "other.interpolated.mask",
283
282
  "begin": "\\{",
284
283
  "end": "\\}",
285
- "name": "other.interpolated.mask",
286
284
  "patterns": [
287
285
  {
288
286
  "include": "#js-block"
@@ -297,9 +295,9 @@
297
295
  "js-expression": {
298
296
  "patterns": [
299
297
  {
298
+ "name": "other.interpolated.mask",
300
299
  "begin": "\\(",
301
300
  "end": "\\)",
302
- "name": "other.interpolated.mask",
303
301
  "patterns": [
304
302
  {
305
303
  "include": "#js-expression"
@@ -314,9 +312,9 @@
314
312
  "js-interpolation": {
315
313
  "patterns": [
316
314
  {
315
+ "name": "other.interpolated.mask",
317
316
  "begin": "\\[",
318
317
  "end": "\\]",
319
- "name": "other.interpolated.mask",
320
318
  "patterns": [
321
319
  {
322
320
  "include": "#js-interpolation"
@@ -329,142 +327,142 @@
329
327
  ]
330
328
  },
331
329
  "klass_id": {
330
+ "name": "node-head.attribute.mask",
332
331
  "begin": "([\\.#][\\w_\\-$:]*)",
333
- "beginCaptures": {
334
- "1": {
335
- "name": "entity.other.attribute-name.markup.bold.mask"
336
- }
337
- },
338
332
  "end": "(?=[\\s\\.#])",
339
- "name": "node-head.attribute.mask",
340
333
  "patterns": [
341
334
  {
342
335
  "include": "#interpolation"
343
336
  },
344
337
  {
345
- "match": "(([\\w_\\-$]+)(?=[\\s.#]))",
346
- "name": "entity.other.attribute-name.mask"
338
+ "name": "entity.other.attribute-name.mask",
339
+ "match": "(([\\w_\\-$]+)(?=[\\s.#]))"
347
340
  }
348
- ]
341
+ ],
342
+ "beginCaptures": {
343
+ "1": {
344
+ "name": "entity.other.attribute-name.markup.bold.mask"
345
+ }
346
+ }
349
347
  },
350
348
  "literal-string": {
351
349
  "patterns": [
352
350
  {
351
+ "name": "literal-string",
353
352
  "begin": "(''')",
353
+ "end": "(''')",
354
+ "patterns": [
355
+ {
356
+ "include": "#string-content"
357
+ }
358
+ ],
354
359
  "beginCaptures": {
355
360
  "0": {
356
361
  "name": "string.quoted.single.js"
357
362
  }
358
363
  },
359
- "end": "(''')",
360
364
  "endCaptures": {
361
365
  "0": {
362
366
  "name": "string.quoted.single.js"
363
367
  }
364
- },
368
+ }
369
+ },
370
+ {
365
371
  "name": "literal-string",
372
+ "begin": "(\"\"\")",
373
+ "end": "(\"\"\")",
366
374
  "patterns": [
367
375
  {
368
376
  "include": "#string-content"
369
377
  }
370
- ]
371
- },
372
- {
373
- "begin": "(\"\"\")",
378
+ ],
374
379
  "beginCaptures": {
375
380
  "0": {
376
381
  "name": "string.quoted.single.js"
377
382
  }
378
383
  },
379
- "end": "(\"\"\")",
380
384
  "endCaptures": {
381
385
  "0": {
382
386
  "name": "string.quoted.single.js"
383
387
  }
384
- },
388
+ }
389
+ },
390
+ {
385
391
  "name": "literal-string",
392
+ "begin": "(')",
393
+ "end": "(')",
386
394
  "patterns": [
387
395
  {
388
396
  "include": "#string-content"
389
397
  }
390
- ]
391
- },
392
- {
393
- "begin": "(')",
398
+ ],
394
399
  "beginCaptures": {
395
400
  "0": {
396
401
  "name": "string.quoted.single.js"
397
402
  }
398
403
  },
399
- "end": "(')",
400
404
  "endCaptures": {
401
405
  "0": {
402
406
  "name": "string.quoted.single.js"
403
407
  }
404
- },
408
+ }
409
+ },
410
+ {
405
411
  "name": "literal-string",
412
+ "begin": "(\")",
413
+ "end": "(\")",
406
414
  "patterns": [
407
415
  {
408
416
  "include": "#string-content"
409
417
  }
410
- ]
411
- },
412
- {
413
- "begin": "(\")",
418
+ ],
414
419
  "beginCaptures": {
415
420
  "0": {
416
421
  "name": "string.quoted.single.js"
417
422
  }
418
423
  },
419
- "end": "(\")",
420
424
  "endCaptures": {
421
425
  "0": {
422
426
  "name": "string.quoted.single.js"
423
427
  }
424
- },
425
- "name": "literal-string",
426
- "patterns": [
427
- {
428
- "include": "#string-content"
429
- }
430
- ]
428
+ }
431
429
  }
432
430
  ]
433
431
  },
434
432
  "markdown": {
435
- "begin": "((\\{|>)\\s*('''|\"\"\"))",
433
+ "name": "syntax.markdown.mask",
434
+ "begin": "((\\{|\u003e)\\s*('''|\"\"\"))",
435
+ "end": "('''|\"\"\")",
436
+ "patterns": [
437
+ {
438
+ "include": "source.gfm"
439
+ }
440
+ ],
436
441
  "beginCaptures": {
437
442
  "1": {
438
443
  "name": "variable.parameter"
439
444
  }
440
445
  },
441
- "end": "('''|\"\"\")",
442
446
  "endCaptures": {
443
447
  "1": {
444
448
  "name": "variable.parameter"
445
449
  }
446
- },
447
- "name": "syntax.markdown.mask",
448
- "patterns": [
449
- {
450
- "include": "text.html.markdown"
451
- }
452
- ]
450
+ }
453
451
  },
454
452
  "node": {
455
- "begin": "([^\\s\\.#;>\\{\\(]+)",
456
- "beginCaptures": {
457
- "0": {
458
- "name": "entity.name.tag.mask"
459
- }
460
- },
461
- "end": "(?<=[>;\\{\\}])|(?=[>;\\{\\}])|([>;\\{\\}])",
462
453
  "name": "node.mask",
454
+ "begin": "([^\\s\\.#;\u003e\\{\\(]+)",
455
+ "end": "(?\u003c=[\u003e;\\{\\}])|(?=[\u003e;\\{\\}])|([\u003e;\\{\\}])",
463
456
  "patterns": [
464
457
  {
465
458
  "include": "#node_attributes"
466
459
  }
467
- ]
460
+ ],
461
+ "beginCaptures": {
462
+ "0": {
463
+ "name": "entity.name.tag.mask"
464
+ }
465
+ }
468
466
  },
469
467
  "node_attribute": {
470
468
  "name": "node.attribute.mask",
@@ -473,11 +471,18 @@
473
471
  "include": "#comments"
474
472
  },
475
473
  {
476
- "include": "#expression",
477
- "name": "attribute-expression"
474
+ "name": "attribute-expression",
475
+ "include": "#expression"
478
476
  },
479
477
  {
478
+ "name": "attribute-key-value",
480
479
  "begin": "([\\w_\\-$]+)(\\s*=\\s*)",
480
+ "end": "([\\s;\u003e\\{])",
481
+ "patterns": [
482
+ {
483
+ "include": "#node_attribute_value"
484
+ }
485
+ ],
481
486
  "beginCaptures": {
482
487
  "1": {
483
488
  "name": "entity.other.attribute-name"
@@ -485,54 +490,46 @@
485
490
  "2": {
486
491
  "name": "keyword.operator.assignment"
487
492
  }
488
- },
489
- "end": "([\\s;>\\{])",
490
- "name": "attribute-key-value",
491
- "patterns": [
492
- {
493
- "include": "#node_attribute_value"
494
- }
495
- ]
493
+ }
496
494
  },
497
495
  {
498
- "match": "([\\w_\\-$:]+)(?=([\\s;>\\{])|$)",
499
- "name": "entity.other.attribute-name"
496
+ "name": "entity.other.attribute-name",
497
+ "match": "([\\w_\\-$:]+)(?=([\\s;\u003e\\{])|$)"
500
498
  }
501
499
  ]
502
500
  },
503
501
  "node_attribute_expression": {
502
+ "name": "meta.group.braces.round",
504
503
  "begin": "(\\()",
505
504
  "end": "(\\))",
506
- "name": "meta.group.braces.round",
507
505
  "patterns": [
508
506
  {
509
- "include": "js-expression"
507
+ "include": "#js-expression"
510
508
  }
511
509
  ]
512
510
  },
513
511
  "node_attribute_value": {
514
512
  "patterns": [
515
513
  {
516
- "match": "(true|false)(?=[\\s>;\\{])",
517
- "name": "constant.character"
514
+ "name": "constant.character",
515
+ "match": "(true|false)(?=[\\s\u003e;\\{])"
518
516
  },
519
517
  {
520
- "match": "([\\d\\.]+)(?=[\\s>;\\{])",
521
- "name": "constant.numeric"
518
+ "name": "constant.numeric",
519
+ "match": "([\\d\\.]+)(?=[\\s\u003e;\\{])"
522
520
  },
523
521
  {
524
522
  "include": "#literal-string"
525
523
  },
526
524
  {
527
- "match": "((\\s*)[^\\s>;\\{]+)",
528
- "name": "string.quoted"
525
+ "name": "string.quoted",
526
+ "match": "((\\s*)[^\\s\u003e;\\{]+)"
529
527
  }
530
528
  ]
531
529
  },
532
530
  "node_attributes": {
533
- "begin": "",
534
- "end": "(?<=[>;\\{\\}])",
535
531
  "name": "node.attributes.mask",
532
+ "end": "(?\u003c=[\u003e;\\{\\}])",
536
533
  "patterns": [
537
534
  {
538
535
  "include": "#klass_id"
@@ -543,9 +540,9 @@
543
540
  ]
544
541
  },
545
542
  "node_klass_id": {
546
- "begin": "(?=[\\.#])",
547
- "end": "(?<=[>;\\{\\}])|(?=[>;\\{\\}])|([>;\\{\\}])",
548
543
  "name": "node.head.mask",
544
+ "begin": "(?=[\\.#])",
545
+ "end": "(?\u003c=[\u003e;\\{\\}])|(?=[\u003e;\\{\\}])|([\u003e;\\{\\}])",
549
546
  "patterns": [
550
547
  {
551
548
  "include": "#klass_id"
@@ -556,14 +553,9 @@
556
553
  ]
557
554
  },
558
555
  "node_template": {
559
- "begin": "(@[^\\s\\.#;>\\{]+)",
560
- "beginCaptures": {
561
- "0": {
562
- "name": "variable.parameter.mask"
563
- }
564
- },
565
- "end": "(?<=[>;\\{\\}])|(?=[>;\\{\\}])|([>;\\{\\}])",
566
556
  "name": "node.mask",
557
+ "begin": "(@[^\\s\\.#;\u003e\\{]+)",
558
+ "end": "(?\u003c=[\u003e;\\{\\}])|(?=[\u003e;\\{\\}])|([\u003e;\\{\\}])",
567
559
  "patterns": [
568
560
  {
569
561
  "include": "#klass_id"
@@ -571,11 +563,16 @@
571
563
  {
572
564
  "include": "#node_attribute"
573
565
  }
574
- ]
566
+ ],
567
+ "beginCaptures": {
568
+ "0": {
569
+ "name": "variable.parameter.mask"
570
+ }
571
+ }
575
572
  },
576
573
  "punctuation": {
577
- "match": "([>;\\{\\}])",
578
574
  "name": "meta.group.braces",
575
+ "match": "([\u003e;\\{\\}])",
579
576
  "patterns": [
580
577
  {
581
578
  "include": "$self"
@@ -583,87 +580,82 @@
583
580
  ]
584
581
  },
585
582
  "statement": {
586
- "begin": "(if|else|with|each|for|switch|case|\\+if|\\+with|\\+each|\\+for|debugger|log|script|\\:import|\\:template|include)(?=[\\s.#;\\{\\}]|$)",
587
- "beginCaptures": {
588
- "1": {
589
- "name": "support.constant"
590
- }
591
- },
592
- "end": "(?<=[>;\\{\\}])|(?=[>;\\{\\}])|([>;\\{\\}])",
593
583
  "name": "tag.mask",
584
+ "begin": "(if|else|with|each|for|switch|case|\\+if|\\+with|\\+each|\\+for|debugger|log|script|\\:import|\\:template|include)(?=[\\s.#;\\{\\}]|$)",
585
+ "end": "(?\u003c=[\u003e;\\{\\}])|(?=[\u003e;\\{\\}])|([\u003e;\\{\\}])",
594
586
  "patterns": [
595
587
  {
596
588
  "include": "#node_attributes"
597
589
  }
598
- ]
590
+ ],
591
+ "beginCaptures": {
592
+ "1": {
593
+ "name": "support.constant"
594
+ }
595
+ }
599
596
  },
600
597
  "string-content": {
601
598
  "patterns": [
602
599
  {
603
- "match": "\\\\(x[\\da-fA-F]{2}|u[\\da-fA-F]{4}|.)",
604
- "name": "constant.character.escape.js"
600
+ "name": "constant.character.escape.js",
601
+ "match": "\\\\(x[\\da-fA-F]{2}|u[\\da-fA-F]{4}|.)"
605
602
  },
606
603
  {
607
604
  "include": "#interpolation"
608
605
  },
609
606
  {
610
- "match": "(.)",
611
- "name": "string"
607
+ "name": "string",
608
+ "match": "(.)"
612
609
  }
613
610
  ]
614
611
  },
615
612
  "style": {
616
613
  "patterns": [
617
614
  {
615
+ "name": "syntax.style.mask",
618
616
  "begin": "(\\{)",
617
+ "end": "(\\})",
618
+ "patterns": [
619
+ {
620
+ "include": "source.css"
621
+ }
622
+ ],
619
623
  "beginCaptures": {
620
624
  "1": {
621
625
  "name": "variable.parameter"
622
626
  }
623
627
  },
624
- "end": "(\\})",
625
628
  "endCaptures": {
626
629
  "1": {
627
630
  "name": "variable.parameter"
628
631
  }
629
- },
630
- "name": "syntax.style.mask",
631
- "patterns": [
632
- {
633
- "include": "source.css"
634
- }
635
- ]
632
+ }
636
633
  }
637
634
  ]
638
635
  },
639
636
  "tag": {
640
- "begin": "(a|abbr|acronym|address|applet|area|article|aside|audio|b|base|basefont|bdo|big|blockquote|body|br|button|canvas|caption|center|cite|code|col|colgroup|command|datalist|dd|del|details|dfn|dir|div|dl|dt|em|embed|fieldset|figcaption|figure|font|footer|form|frame|frameset|h1|h2|h3|h4|h5|h6|head|header|hgroup|hr|html|i|iframe|img|input|ins|keygen|kbd|label|legend|li|link|map|mark|menu|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|pre|progress|q|rp|rt|ruby|s|samp|script|section|select|small|source|span|strike|strong|style|sub|summary|sup|table|tbody|td|textarea|tfoot|th|thead|time|title|tr|tt|u|ul|video|wbr|xmp)(?=[\\s.#;\\{\\}]|$)",
641
- "beginCaptures": {
642
- "1": {
643
- "name": "storage.type.mask"
644
- }
645
- },
646
- "end": "(?<=[>;\\{\\}])|(?=[>;\\{\\}])|([>;\\{\\}])",
647
637
  "name": "tag.mask",
638
+ "begin": "(a|abbr|acronym|address|applet|area|article|aside|audio|b|base|basefont|bdo|big|blockquote|body|br|button|canvas|caption|center|cite|code|col|colgroup|command|datalist|dd|del|details|dfn|dir|div|dl|dt|em|embed|fieldset|figcaption|figure|font|footer|form|frame|frameset|h1|h2|h3|h4|h5|h6|head|header|hgroup|hr|html|i|iframe|img|input|ins|keygen|kbd|label|legend|li|link|map|mark|menu|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|pre|progress|q|rp|rt|ruby|s|samp|script|section|select|small|source|span|strike|strong|style|sub|summary|sup|table|tbody|td|textarea|tfoot|th|thead|time|title|tr|tt|u|ul|video|wbr|xmp)(?=[\\s.#;\\{\\}]|$)",
639
+ "end": "(?\u003c=[\u003e;\\{\\}])|(?=[\u003e;\\{\\}])|([\u003e;\\{\\}])",
648
640
  "patterns": [
649
641
  {
650
642
  "include": "#node_attributes"
651
643
  }
652
- ]
653
- },
654
- "tag_javascript": {
655
- "begin": "(slot|pipe|event|function|script)\\b",
644
+ ],
656
645
  "beginCaptures": {
657
646
  "1": {
658
- "name": "support.constant"
647
+ "name": "storage.type.mask"
659
648
  }
660
- },
661
- "end": "(\\})|(?<=\\})",
649
+ }
650
+ },
651
+ "tag_javascript": {
662
652
  "name": "slot.mask",
653
+ "begin": "(slot|pipe|event|function|script)\\b",
654
+ "end": "(\\})|(?\u003c=\\})",
663
655
  "patterns": [
664
656
  {
665
- "match": "\\b(static|private|public|async|self)\\b",
666
- "name": "keyword"
657
+ "name": "keyword",
658
+ "match": "\\b(static|private|public|async|self)\\b"
667
659
  },
668
660
  {
669
661
  "include": "#klass_id"
@@ -674,17 +666,17 @@
674
666
  {
675
667
  "include": "#javascript"
676
668
  }
677
- ]
678
- },
679
- "tag_markdown": {
680
- "begin": "(md|markdown)\\b",
669
+ ],
681
670
  "beginCaptures": {
682
671
  "1": {
683
672
  "name": "support.constant"
684
673
  }
685
- },
686
- "end": "(?<=\\})|(\\})",
674
+ }
675
+ },
676
+ "tag_markdown": {
687
677
  "name": "syntax.markdown.mask",
678
+ "begin": "(md|markdown)\\b",
679
+ "end": "(?\u003c=\\})|(\\})",
688
680
  "patterns": [
689
681
  {
690
682
  "include": "#klass_id"
@@ -695,17 +687,17 @@
695
687
  {
696
688
  "include": "#markdown"
697
689
  }
698
- ]
699
- },
700
- "tag_style": {
701
- "begin": "(style)\\b",
690
+ ],
702
691
  "beginCaptures": {
703
692
  "1": {
704
693
  "name": "support.constant"
705
694
  }
706
- },
707
- "end": "(?<=\\})|(\\})",
695
+ }
696
+ },
697
+ "tag_style": {
708
698
  "name": "syntax.style.mask",
699
+ "begin": "(style)\\b",
700
+ "end": "(?\u003c=\\})|(\\})",
709
701
  "patterns": [
710
702
  {
711
703
  "include": "#klass_id"
@@ -716,31 +708,36 @@
716
708
  {
717
709
  "include": "#style"
718
710
  }
719
- ]
720
- },
721
- "tag_var": {
722
- "begin": "(var)\\b",
711
+ ],
723
712
  "beginCaptures": {
724
713
  "1": {
725
714
  "name": "support.constant"
726
715
  }
727
- },
728
- "end": "([\\};\\]])|(?<=[\\};\\]])",
716
+ }
717
+ },
718
+ "tag_var": {
729
719
  "name": "var.mask",
720
+ "begin": "(var)\\b",
721
+ "end": "([\\};\\]])|(?\u003c=[\\};\\]])",
730
722
  "patterns": [
731
723
  {
732
724
  "include": "source.js"
733
725
  }
734
- ]
726
+ ],
727
+ "beginCaptures": {
728
+ "1": {
729
+ "name": "support.constant"
730
+ }
731
+ }
735
732
  },
736
733
  "xml": {
737
- "begin": "(?=</?\\s*(\\w+))",
738
- "end": "(?<=</\\1>)",
739
734
  "name": "syntax.html.mask",
735
+ "begin": "(?=\u003c/?\\s*(\\w+))",
736
+ "end": "(?\u003c=\u003c/\\1\u003e)",
740
737
  "patterns": [
741
738
  {
742
- "begin": "(<mask>)",
743
- "end": "(</mask>)",
739
+ "begin": "(\u003cmask\u003e)",
740
+ "end": "(\u003c/mask\u003e)",
744
741
  "patterns": [
745
742
  {
746
743
  "include": "source.mask"
@@ -756,66 +753,64 @@
756
753
  ]
757
754
  },
758
755
  "xml_markdown": {
759
- "begin": "(?i)<markdown[^\\>]*>",
756
+ "name": "syntax.markdown.mask",
757
+ "begin": "(?i)\u003cmarkdown[^\\\u003e]*\u003e",
758
+ "end": "(?i)\u003c/markdown[^\\\u003e]*\u003e",
759
+ "patterns": [
760
+ {
761
+ "include": "source.gfm"
762
+ }
763
+ ],
760
764
  "beginCaptures": {
761
765
  "0": {
762
766
  "name": "variable.parameter"
763
767
  }
764
768
  },
765
- "end": "(?i)</markdown[^\\>]*>",
766
769
  "endCaptures": {
767
770
  "0": {
768
771
  "name": "variable.parameter"
769
772
  }
770
- },
773
+ }
774
+ },
775
+ "xml_script": {
771
776
  "name": "syntax.markdown.mask",
777
+ "begin": "(?i)\u003cscript[^\\\u003e]*\u003e",
778
+ "end": "(?i)\u003c/script[^\\\u003e]*\u003e",
772
779
  "patterns": [
773
780
  {
774
- "include": "text.html.markdown"
781
+ "include": "source.js"
775
782
  }
776
- ]
777
- },
778
- "xml_script": {
779
- "begin": "(?i)<script[^\\>]*>",
783
+ ],
780
784
  "beginCaptures": {
781
785
  "0": {
782
786
  "name": "variable.parameter"
783
787
  }
784
788
  },
785
- "end": "(?i)</script[^\\>]*>",
786
789
  "endCaptures": {
787
790
  "0": {
788
791
  "name": "variable.parameter"
789
792
  }
790
- },
793
+ }
794
+ },
795
+ "xml_style": {
791
796
  "name": "syntax.markdown.mask",
797
+ "begin": "(?i)\u003cstyle[^\\\u003e]*\u003e",
798
+ "end": "(?i)\u003c/style[^\\\u003e]*\u003e",
792
799
  "patterns": [
793
800
  {
794
- "include": "source.js"
801
+ "include": "source.css"
795
802
  }
796
- ]
797
- },
798
- "xml_style": {
799
- "begin": "(?i)<style[^\\>]*>",
803
+ ],
800
804
  "beginCaptures": {
801
805
  "0": {
802
806
  "name": "variable.parameter"
803
807
  }
804
808
  },
805
- "end": "(?i)</style[^\\>]*>",
806
809
  "endCaptures": {
807
810
  "0": {
808
811
  "name": "variable.parameter"
809
812
  }
810
- },
811
- "name": "syntax.markdown.mask",
812
- "patterns": [
813
- {
814
- "include": "source.css"
815
- }
816
- ]
813
+ }
817
814
  }
818
- },
819
- "scopeName": "source.mask",
820
- "uuid": "1a1ae218-751e-4eb8-8c10-4400d892a660"
821
- }
815
+ }
816
+ }