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,35 +1,25 @@
1
1
  {
2
- "fileTypes": [
3
- "liquid"
4
- ],
5
- "foldingStartMarker": "(?x)\n\t\t(<(?i:head|body|table|thead|tbody|tfoot|tr|div|select|fieldset|style|script|ul|ol|form|dl)\\b.*?>\n\t\t|<!--(?!.*-->)\n\t\t|\\{\\s*($|\\?>\\s*$|//|/\\*(.*\\*/\\s*$|(?!.*?\\*/)))\n\t\t)",
6
- "foldingStopMarker": "(?x)\n\t\t(</(?i:head|body|table|thead|tbody|tfoot|tr|div|select|fieldset|style|script|ul|ol|form|dl)>\n\t\t|^\\s*-->\n\t\t|(^|\\s)\\}\n\t\t)",
7
2
  "name": "HTML Liquid",
3
+ "scopeName": "text.html.liquid",
8
4
  "patterns": [
9
5
  {
10
- "begin": "{%+(?!>)=?",
11
- "end": "%}",
12
6
  "name": "source.liquid.tags.embedded.html",
7
+ "begin": "{%+(?!\u003e)=?",
8
+ "end": "%}",
13
9
  "patterns": [
14
- {
15
- "include": "source.ruby.rails"
16
- }
10
+ {}
17
11
  ]
18
12
  },
19
13
  {
14
+ "name": "source.liquid.output.embedded.html",
20
15
  "begin": "{{",
21
16
  "end": "}}",
22
- "name": "source.liquid.output.embedded.html",
23
17
  "patterns": [
24
- {
25
- "include": "source.ruby.rails"
26
- }
18
+ {}
27
19
  ]
28
20
  },
29
21
  {
30
22
  "include": "text.html.basic"
31
23
  }
32
- ],
33
- "scopeName": "text.html.liquid",
34
- "uuid": "675E0890-CA4B-404D-8000-15BE6FAE9998"
35
- }
24
+ ]
25
+ }
@@ -1,49 +1,45 @@
1
1
  {
2
- "fileTypes": [
3
- "mako",
4
- "html"
5
- ],
6
- "foldingStartMarker": "(<(?i:(head|table|div|style|script|ul|ol|form|dl))\\b.*?>|\\{)",
7
- "foldingStopMarker": "(</(?i:(head|table|div|style|script|ul|ol|form|dl))>|\\})",
8
2
  "name": "HTML (Mako)",
3
+ "scopeName": "text.html.mako",
9
4
  "patterns": [
10
5
  {
11
- "comment": "comments",
12
- "match": "(##(.*)$)",
13
- "name": "comment.line.mako"
6
+ "name": "comment.line.mako",
7
+ "match": "(##(.*)$)"
14
8
  },
15
9
  {
16
- "begin": "(<%\\s)",
17
- "captures": {
18
- "1": {
19
- "name": "keyword.control"
20
- }
21
- },
22
- "end": "(%>)",
23
10
  "name": "source.mako.substitution",
11
+ "begin": "(\u003c%\\s)",
12
+ "end": "(%\u003e)",
24
13
  "patterns": [
25
14
  {
26
15
  "include": "source.python"
27
16
  }
28
- ]
29
- },
30
- {
31
- "begin": "(<%!\\s)",
17
+ ],
32
18
  "captures": {
33
19
  "1": {
34
20
  "name": "keyword.control"
35
21
  }
36
- },
37
- "end": "(%>)",
22
+ }
23
+ },
24
+ {
38
25
  "name": "source.mako.substitution",
26
+ "begin": "(\u003c%!\\s)",
27
+ "end": "(%\u003e)",
39
28
  "patterns": [
40
29
  {
41
30
  "include": "source.python"
42
31
  }
43
- ]
32
+ ],
33
+ "captures": {
34
+ "1": {
35
+ "name": "keyword.control"
36
+ }
37
+ }
44
38
  },
45
39
  {
46
- "begin": "(<%(text)>)",
40
+ "name": "source.mako.text",
41
+ "begin": "(\u003c%(text)\u003e)",
42
+ "end": "(\u003c/%(\\2)\u003e)",
47
43
  "captures": {
48
44
  "1": {
49
45
  "name": "keyword.control"
@@ -51,15 +47,12 @@
51
47
  "2": {
52
48
  "name": "storage.type.function.python"
53
49
  }
54
- },
55
- "end": "(</%(\\2)>)",
56
- "name": "source.mako.text",
57
- "patterns": [
58
-
59
- ]
50
+ }
60
51
  },
61
52
  {
62
- "begin": "(<%(doc)>)",
53
+ "name": "comment.block.mako",
54
+ "begin": "(\u003c%(doc)\u003e)",
55
+ "end": "(\u003c/%(\\2)\u003e)",
63
56
  "captures": {
64
57
  "1": {
65
58
  "name": "keyword.control"
@@ -67,15 +60,17 @@
67
60
  "2": {
68
61
  "name": "storage.type.function.python"
69
62
  }
70
- },
71
- "end": "(</%(\\2)>)",
72
- "name": "comment.block.mako",
73
- "patterns": [
74
-
75
- ]
63
+ }
76
64
  },
77
65
  {
66
+ "name": "source.mako.expression",
78
67
  "begin": "(\\${)",
68
+ "end": "(})",
69
+ "patterns": [
70
+ {
71
+ "include": "source.python"
72
+ }
73
+ ],
79
74
  "captures": {
80
75
  "1": {
81
76
  "name": "keyword.control"
@@ -83,17 +78,17 @@
83
78
  "2": {
84
79
  "name": "keyword.control"
85
80
  }
86
- },
87
- "end": "(})",
88
- "name": "source.mako.expression",
81
+ }
82
+ },
83
+ {
84
+ "name": "source.doc.python.mako.controlline",
85
+ "begin": "^\\s*(%)(\\s*((endfor)|(endif)|(endwhile)))?",
86
+ "end": "$",
89
87
  "patterns": [
90
88
  {
91
89
  "include": "source.python"
92
90
  }
93
- ]
94
- },
95
- {
96
- "begin": "^\\s*(%)(\\s*((endfor)|(endif)|(endwhile)))?",
91
+ ],
97
92
  "beginCaptures": {
98
93
  "1": {
99
94
  "name": "keyword.control"
@@ -101,49 +96,42 @@
101
96
  "2": {
102
97
  "name": "keyword.control"
103
98
  }
104
- },
105
- "end": "$",
106
- "name": "source.doc.python.mako.controlline",
107
- "patterns": [
108
- {
109
- "include": "source.python"
110
- }
111
- ]
99
+ }
112
100
  },
113
101
  {
102
+ "name": "source.python.mako.line",
114
103
  "begin": "^(#)",
104
+ "end": "$",
105
+ "patterns": [
106
+ {}
107
+ ],
115
108
  "beginCaptures": {
116
109
  "1": {
117
110
  "name": "keyword.control"
118
111
  }
119
- },
120
- "end": "$",
121
- "name": "source.python.mako.line",
122
- "patterns": [
123
- {
124
- "include": "comment.block"
125
- }
126
- ]
112
+ }
127
113
  },
128
114
  {
129
- "begin": "(<%(def)\\S?)",
130
- "captures": {
131
- "1": {
132
- "name": "keyword.control"
133
- },
134
- "2": {
135
- "name": "storage.type.function.python"
136
- }
137
- },
138
- "end": "(</%(\\2)>)",
139
115
  "name": "source.mako.def",
116
+ "begin": "(\u003c%(def)\\S?)",
117
+ "end": "(\u003c/%(\\2)\u003e)",
140
118
  "patterns": [
141
119
  {
142
- "begin": "(?<=<%def)",
143
- "end": "(?=>)",
120
+ "begin": "(?\u003c=\u003c%def)",
121
+ "end": "(?=\u003e)",
144
122
  "patterns": [
145
123
  {
124
+ "contentName": "entity.name.function.python",
146
125
  "begin": "(name)\\s*(=)\\s*(\")(?=[A-Za-z_][A-Za-z0-9_]*)",
126
+ "end": "(\")",
127
+ "patterns": [
128
+ {
129
+ "include": "#function_def"
130
+ },
131
+ {
132
+ "include": "#entity_name"
133
+ }
134
+ ],
147
135
  "beginCaptures": {
148
136
  "1": {
149
137
  "name": "keyword.control"
@@ -155,21 +143,11 @@
155
143
  "name": "punctuation.section.function.begin.python"
156
144
  }
157
145
  },
158
- "contentName": "entity.name.function.python",
159
- "end": "(\")",
160
146
  "endCaptures": {
161
147
  "1": {
162
148
  "name": "punctuation.section.function.begin.python"
163
149
  }
164
- },
165
- "patterns": [
166
- {
167
- "include": "#function_def"
168
- },
169
- {
170
- "include": "#entity_name"
171
- }
172
- ]
150
+ }
173
151
  },
174
152
  {
175
153
  "include": "#tag-stuff"
@@ -177,23 +155,20 @@
177
155
  ]
178
156
  },
179
157
  {
180
- "begin": "(>)",
181
- "captures": {
182
- "1": {
183
- "name": "keyword.control"
184
- }
185
- },
186
- "end": "(?=</%def>)",
158
+ "begin": "(\u003e)",
159
+ "end": "(?=\u003c/%def\u003e)",
187
160
  "patterns": [
188
161
  {
189
162
  "include": "$self"
190
163
  }
191
- ]
164
+ ],
165
+ "captures": {
166
+ "1": {
167
+ "name": "keyword.control"
168
+ }
169
+ }
192
170
  }
193
- ]
194
- },
195
- {
196
- "begin": "(<%(call))",
171
+ ],
197
172
  "captures": {
198
173
  "1": {
199
174
  "name": "keyword.control"
@@ -201,12 +176,21 @@
201
176
  "2": {
202
177
  "name": "storage.type.function.python"
203
178
  }
204
- },
205
- "end": "(</%(\\2)>)",
179
+ }
180
+ },
181
+ {
206
182
  "name": "source.mako.call",
183
+ "begin": "(\u003c%(call))",
184
+ "end": "(\u003c/%(\\2)\u003e)",
207
185
  "patterns": [
208
186
  {
209
187
  "begin": "(expr)\\s*(=)\\s*(\")",
188
+ "end": "(\")",
189
+ "patterns": [
190
+ {
191
+ "include": "source.python"
192
+ }
193
+ ],
210
194
  "beginCaptures": {
211
195
  "1": {
212
196
  "name": "keyword.control"
@@ -218,59 +202,45 @@
218
202
  "name": "punctuation.section.function.begin.python"
219
203
  }
220
204
  },
221
- "end": "(\")",
222
205
  "endCaptures": {
223
206
  "1": {
224
207
  "name": "punctuation.section.function.begin.python"
225
208
  }
226
- },
209
+ }
210
+ },
211
+ {
212
+ "begin": "(\u003e)",
213
+ "end": "(?=\u003c/%call\u003e)",
227
214
  "patterns": [
228
215
  {
229
- "include": "source.python"
216
+ "include": "$self"
230
217
  }
231
- ]
232
- },
233
- {
234
- "begin": "(>)",
218
+ ],
235
219
  "captures": {
236
220
  "1": {
237
221
  "name": "keyword.control"
238
222
  }
239
- },
240
- "end": "(?=</%call>)",
241
- "patterns": [
242
- {
243
- "include": "$self"
244
- }
245
- ]
223
+ }
246
224
  }
247
- ]
248
- },
249
- {
250
- "begin": "(<%(inherit|namespace|include)) ",
251
- "beginCaptures": {
225
+ ],
226
+ "captures": {
252
227
  "1": {
253
228
  "name": "keyword.control"
254
229
  },
255
230
  "2": {
256
231
  "name": "storage.type.function.python"
257
232
  }
258
- },
259
- "end": "(/>)",
260
- "endCaptures": {
261
- "1": {
262
- "name": "keyword.control"
263
- }
264
- },
233
+ }
234
+ },
235
+ {
265
236
  "name": "source.mako.inherit",
237
+ "begin": "(\u003c%(inherit|namespace|include)) ",
238
+ "end": "(/\u003e)",
266
239
  "patterns": [
267
240
  {
268
241
  "include": "#tag-stuff"
269
242
  }
270
- ]
271
- },
272
- {
273
- "begin": "(<%(page))",
243
+ ],
274
244
  "beginCaptures": {
275
245
  "1": {
276
246
  "name": "keyword.control"
@@ -279,16 +249,28 @@
279
249
  "name": "storage.type.function.python"
280
250
  }
281
251
  },
282
- "end": "(\\/>)",
283
252
  "endCaptures": {
284
253
  "1": {
285
254
  "name": "keyword.control"
286
255
  }
287
- },
256
+ }
257
+ },
258
+ {
288
259
  "name": "source.mako.page",
260
+ "begin": "(\u003c%(page))",
261
+ "end": "(\\/\u003e)",
289
262
  "patterns": [
290
263
  {
291
264
  "begin": "(args)\\s*(=)\\s*(\")",
265
+ "end": "(\")",
266
+ "patterns": [
267
+ {
268
+ "include": "#positional_args"
269
+ },
270
+ {
271
+ "include": "#keyword_arguments"
272
+ }
273
+ ],
292
274
  "beginCaptures": {
293
275
  "1": {
294
276
  "name": "keyword.control"
@@ -300,29 +282,17 @@
300
282
  "name": "punctuation.section.function.begin.python"
301
283
  }
302
284
  },
303
- "end": "(\")",
304
285
  "endCaptures": {
305
286
  "1": {
306
287
  "name": "punctuation.section.function.end.python"
307
288
  }
308
- },
309
- "patterns": [
310
- {
311
- "include": "#positional_args"
312
- },
313
- {
314
- "include": "#keyword_arguments"
315
- }
316
- ]
289
+ }
317
290
  },
318
291
  {
319
292
  "include": "#tag-stuff"
320
293
  }
321
- ]
322
- },
323
- {
324
- "begin": "(<%([a-zA-Z0-9:_]+))",
325
- "captures": {
294
+ ],
295
+ "beginCaptures": {
326
296
  "1": {
327
297
  "name": "keyword.control"
328
298
  },
@@ -330,11 +300,25 @@
330
300
  "name": "storage.type.function.python"
331
301
  }
332
302
  },
333
- "end": "(</%(\\2)>|\\/>)",
303
+ "endCaptures": {
304
+ "1": {
305
+ "name": "keyword.control"
306
+ }
307
+ }
308
+ },
309
+ {
334
310
  "name": "source.mako.genericcall",
311
+ "begin": "(\u003c%([a-zA-Z0-9:_]+))",
312
+ "end": "(\u003c/%(\\2)\u003e|\\/\u003e)",
335
313
  "patterns": [
336
314
  {
337
315
  "begin": "(expr)\\s*(=)\\s*(\")",
316
+ "end": "(\")",
317
+ "patterns": [
318
+ {
319
+ "include": "source.python"
320
+ }
321
+ ],
338
322
  "beginCaptures": {
339
323
  "1": {
340
324
  "name": "keyword.control"
@@ -346,36 +330,38 @@
346
330
  "name": "punctuation.section.function.begin.python"
347
331
  }
348
332
  },
349
- "end": "(\")",
350
333
  "endCaptures": {
351
334
  "1": {
352
335
  "name": "punctuation.section.function.begin.python"
353
336
  }
354
- },
337
+ }
338
+ },
339
+ {
340
+ "begin": "(\u003e)",
341
+ "end": "(?=\u003c/%[a-zA-Z0-9:_]+\u003e)",
355
342
  "patterns": [
356
343
  {
357
- "include": "source.python"
344
+ "include": "$self"
358
345
  }
359
- ]
360
- },
361
- {
362
- "begin": "(>)",
346
+ ],
363
347
  "captures": {
364
348
  "1": {
365
349
  "name": "keyword.control"
366
350
  }
367
- },
368
- "end": "(?=</%[a-zA-Z0-9:_]+>)",
369
- "patterns": [
370
- {
371
- "include": "$self"
372
- }
373
- ]
351
+ }
374
352
  },
375
353
  {
376
354
  "include": "#tag-stuff"
377
355
  }
378
- ]
356
+ ],
357
+ "captures": {
358
+ "1": {
359
+ "name": "keyword.control"
360
+ },
361
+ "2": {
362
+ "name": "storage.type.function.python"
363
+ }
364
+ }
379
365
  },
380
366
  {
381
367
  "include": "text.html.basic"
@@ -383,28 +369,28 @@
383
369
  ],
384
370
  "repository": {
385
371
  "builtin_exceptions": {
386
- "match": "(?x)\\b((Arithmetic|Assertion|Attribute|EOF|Environment|FloatingPoint|IO|Import|Indentation|Index|Key|Lookup|Memory|Name|OS|Overflow|NotImplemented|Reference|Runtime|Standard|Syntax|System|Tab|Type|UnboundLocal|Unicode(Translate|Encode|Decode)?|Value|ZeroDivision)Error|(Deprecation|Future|Overflow|PendingDeprecation|Runtime|Syntax|User)?Warning|KeyboardInterrupt|NotImplemented|StopIteration|SystemExit|(Base)?Exception)\\b",
387
- "name": "support.type.exception.python"
372
+ "name": "support.type.exception.python",
373
+ "match": "(?x)\\b((Arithmetic|Assertion|Attribute|EOF|Environment|FloatingPoint|IO|Import|Indentation|Index|Key|Lookup|Memory|Name|OS|Overflow|NotImplemented|Reference|Runtime|Standard|Syntax|System|Tab|Type|UnboundLocal|Unicode(Translate|Encode|Decode)?|Value|ZeroDivision)Error|(Deprecation|Future|Overflow|PendingDeprecation|Runtime|Syntax|User)?Warning|KeyboardInterrupt|NotImplemented|StopIteration|SystemExit|(Base)?Exception)\\b"
388
374
  },
389
375
  "builtin_functions": {
390
- "match": "(?x)\\b(\n __import__|all|abs|any|apply|callable|chr|cmp|coerce|compile|delattr|dir|\n divmod|eval|execfile|filter|getattr|globals|hasattr|hash|hex|id|\n input|intern|isinstance|issubclass|iter|len|locals|map|max|min|oct|\n ord|pow|range|raw_input|reduce|reload|repr|round|setattr|sorted|\n sum|unichr|vars|zip\n\t\t\t)\\b",
391
- "name": "support.function.builtin.python"
376
+ "name": "support.function.builtin.python",
377
+ "match": "(?x)\\b(\n __import__|all|abs|any|apply|callable|chr|cmp|coerce|compile|delattr|dir|\n divmod|eval|execfile|filter|getattr|globals|hasattr|hash|hex|id|\n input|intern|isinstance|issubclass|iter|len|locals|map|max|min|oct|\n ord|pow|range|raw_input|reduce|reload|repr|round|setattr|sorted|\n sum|unichr|vars|zip\n\t\t\t)\\b"
392
378
  },
393
379
  "builtin_types": {
394
- "match": "(?x)\\b(\n\t\t\t\tbasestring|bool|buffer|classmethod|complex|dict|enumerate|file|\n\t\t\t\tfloat|frozenset|int|list|long|object|open|property|reversed|set|\n\t\t\t\tslice|staticmethod|str|super|tuple|type|unicode|xrange\n\t\t\t)\\b",
395
- "name": "support.type.python"
380
+ "name": "support.type.python",
381
+ "match": "(?x)\\b(\n\t\t\t\tbasestring|bool|buffer|classmethod|complex|dict|enumerate|file|\n\t\t\t\tfloat|frozenset|int|list|long|object|open|property|reversed|set|\n\t\t\t\tslice|staticmethod|str|super|tuple|type|unicode|xrange\n\t\t\t)\\b"
396
382
  },
397
383
  "constant_placeholder": {
398
- "match": "(?i:%(\\([a-z_]+\\))?#?0?\\-?[ ]?\\+?([0-9]*|\\*)(\\.([0-9]*|\\*))?[hL]?[a-z%])",
399
- "name": "constant.other.placeholder.python"
384
+ "name": "constant.other.placeholder.python",
385
+ "match": "(?i:%(\\([a-z_]+\\))?#?0?\\-?[ ]?\\+?([0-9]*|\\*)(\\.([0-9]*|\\*))?[hL]?[a-z%])"
400
386
  },
401
387
  "dotted_entity_name": {
402
388
  "begin": "(?=[A-Za-z_][A-Za-z0-9_]*(\\.[A-Za-z_][A-Za-z0-9_]*)*)",
403
- "end": "(?<=[A-Za-z0-9_])",
389
+ "end": "(?\u003c=[A-Za-z0-9_])",
404
390
  "patterns": [
405
391
  {
406
392
  "begin": "(?=[A-Za-z_][A-Za-z0-9_]*)",
407
- "end": "(?<=[A-Za-z0-9_])",
393
+ "end": "(?\u003c=[A-Za-z0-9_])",
408
394
  "patterns": [
409
395
  {
410
396
  "include": "#entity_name"
@@ -416,6 +402,8 @@
416
402
  "entities": {
417
403
  "patterns": [
418
404
  {
405
+ "name": "constant.character.entity.html",
406
+ "match": "(\u0026)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)",
419
407
  "captures": {
420
408
  "1": {
421
409
  "name": "punctuation.definition.entity.html"
@@ -423,19 +411,17 @@
423
411
  "3": {
424
412
  "name": "punctuation.definition.entity.html"
425
413
  }
426
- },
427
- "match": "(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)",
428
- "name": "constant.character.entity.html"
414
+ }
429
415
  },
430
416
  {
431
- "match": "&",
432
- "name": "invalid.illegal.bad-ampersand.html"
417
+ "name": "invalid.illegal.bad-ampersand.html",
418
+ "match": "\u0026"
433
419
  }
434
420
  ]
435
421
  },
436
422
  "entity_name": {
437
423
  "begin": "(?=[A-Za-z_][A-Za-z0-9_]*)",
438
- "end": "(?<=[A-Za-z0-9_])",
424
+ "end": "(?\u003c=[A-Za-z0-9_])",
439
425
  "patterns": [
440
426
  {
441
427
  "include": "#magic_function_names"
@@ -461,35 +447,35 @@
461
447
  ]
462
448
  },
463
449
  "escaped_char": {
464
- "match": "\\\\[.\\n]",
465
- "name": "constant.character.escape.python"
450
+ "name": "constant.character.escape.python",
451
+ "match": "\\\\[.\\n]"
466
452
  },
467
453
  "function_def": {
454
+ "contentName": "meta.function.parameters.python",
468
455
  "begin": "(\\()",
456
+ "end": "(\\))\\s*(?=\\\")",
457
+ "patterns": [
458
+ {
459
+ "include": "#keyword_arguments"
460
+ },
461
+ {
462
+ "include": "#positional_args"
463
+ }
464
+ ],
469
465
  "beginCaptures": {
470
466
  "1": {
471
467
  "name": "punctuation.section.parameters.begin.python"
472
468
  }
473
469
  },
474
- "contentName": "meta.function.parameters.python",
475
- "end": "(\\))\\s*(?=\\\")",
476
470
  "endCaptures": {
477
471
  "1": {
478
472
  "name": "punctuation.section.parameters.end.python"
479
473
  }
480
- },
481
- "patterns": [
482
- {
483
- "include": "#keyword_arguments"
484
- },
485
- {
486
- "include": "#positional_args"
487
- }
488
- ]
474
+ }
489
475
  },
490
476
  "function_name": {
491
477
  "begin": "(?=[A-Za-z_][A-Za-z0-9_]*)",
492
- "end": "(?<=[A-Za-z0-9_])",
478
+ "end": "(?\u003c=[A-Za-z0-9_])",
493
479
  "patterns": [
494
480
  {
495
481
  "include": "#magic_function_names"
@@ -515,11 +501,17 @@
515
501
  "match": "[A-Za-z_][A-Za-z0-9_]*"
516
502
  },
517
503
  "illegal_names": {
518
- "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|while|with|yield)\\b",
519
- "name": "invalid.illegal.name.python"
504
+ "name": "invalid.illegal.name.python",
505
+ "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|while|with|yield)\\b"
520
506
  },
521
507
  "keyword_arguments": {
522
508
  "begin": "\\b([a-zA-Z_][a-zA-Z_0-9]*)\\s*(=)",
509
+ "end": "\\s*(?:(,)|(?=$\\n?|[\\)\"]))",
510
+ "patterns": [
511
+ {
512
+ "include": "$base"
513
+ }
514
+ ],
523
515
  "beginCaptures": {
524
516
  "1": {
525
517
  "name": "variable.parameter.function.python"
@@ -528,19 +520,14 @@
528
520
  "name": "keyword.operator.assignment.python"
529
521
  }
530
522
  },
531
- "end": "\\s*(?:(,)|(?=$\\n?|[\\)\"]))",
532
523
  "endCaptures": {
533
524
  "1": {
534
525
  "name": "punctuation.separator.parameters.python"
535
526
  }
536
- },
537
- "patterns": [
538
- {
539
- "include": "$base"
540
- }
541
- ]
527
+ }
542
528
  },
543
529
  "line_continuation": {
530
+ "match": "(\\\\)(.*)$\\n?",
544
531
  "captures": {
545
532
  "1": {
546
533
  "name": "punctuation.separator.continuation.line.python"
@@ -548,20 +535,18 @@
548
535
  "2": {
549
536
  "name": "invalid.illegal.unexpected-text.python"
550
537
  }
551
- },
552
- "match": "(\\\\)(.*)$\\n?"
538
+ }
553
539
  },
554
540
  "magic_function_names": {
555
- "comment": "these methods have magic interpretation by python and are generally called indirectly through syntactic constructs",
556
- "match": "(?x)\\b(__(?:\n\t\t\t\t\t\tabs|add|and|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",
557
- "name": "entity.name.function.magic.python"
541
+ "name": "entity.name.function.magic.python",
542
+ "match": "(?x)\\b(__(?:\n\t\t\t\t\t\tabs|add|and|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"
558
543
  },
559
544
  "magic_variable_names": {
560
- "comment": "magic variables which a class/module may have.",
561
- "match": "\\b__(all|bases|class|debug|dict|doc|file|members|metaclass|methods|name|slots|weakref)__\\b",
562
- "name": "support.variable.magic.python"
545
+ "name": "support.variable.magic.python",
546
+ "match": "\\b__(all|bases|class|debug|dict|doc|file|members|metaclass|methods|name|slots|weakref)__\\b"
563
547
  },
564
548
  "positional_args": {
549
+ "match": "\\b([a-zA-Z_][a-zA-Z_0-9]*)\\s*(?:(,)|(?=[\\n\\)\"]))",
565
550
  "captures": {
566
551
  "1": {
567
552
  "name": "variable.parameter.function.python"
@@ -569,14 +554,23 @@
569
554
  "2": {
570
555
  "name": "punctuation.separator.parameters.python"
571
556
  }
572
- },
573
- "match": "\\b([a-zA-Z_][a-zA-Z_0-9]*)\\s*(?:(,)|(?=[\\n\\)\"]))"
557
+ }
574
558
  },
575
559
  "source_mako_tagargs": {
576
560
  "name": "source.mako.tagargs",
577
561
  "patterns": [
578
562
  {
563
+ "contentName": "entity.name.function.python",
579
564
  "begin": "(name)\\s*(=)\\s*(\")(?=[A-Za-z_][A-Za-z0-9_]*)",
565
+ "end": "(\")",
566
+ "patterns": [
567
+ {
568
+ "include": "#function_def"
569
+ },
570
+ {
571
+ "include": "#entity_name"
572
+ }
573
+ ],
580
574
  "beginCaptures": {
581
575
  "1": {
582
576
  "name": "keyword.control"
@@ -588,21 +582,11 @@
588
582
  "name": "punctuation.section.function.begin.python"
589
583
  }
590
584
  },
591
- "contentName": "entity.name.function.python",
592
- "end": "(\")",
593
585
  "endCaptures": {
594
586
  "1": {
595
587
  "name": "punctuation.section.function.begin.python"
596
588
  }
597
- },
598
- "patterns": [
599
- {
600
- "include": "#function_def"
601
- },
602
- {
603
- "include": "#entity_name"
604
- }
605
- ]
589
+ }
606
590
  },
607
591
  {
608
592
  "include": "#tag-stuff"
@@ -610,19 +594,9 @@
610
594
  ]
611
595
  },
612
596
  "string-double-quoted": {
597
+ "name": "string.quoted.double.html",
613
598
  "begin": "\"",
614
- "beginCaptures": {
615
- "0": {
616
- "name": "punctuation.definition.string.begin.html"
617
- }
618
- },
619
599
  "end": "\"",
620
- "endCaptures": {
621
- "0": {
622
- "name": "punctuation.definition.string.end.html"
623
- }
624
- },
625
- "name": "string.quoted.double.html",
626
600
  "patterns": [
627
601
  {
628
602
  "include": "#embedded-code"
@@ -630,22 +604,22 @@
630
604
  {
631
605
  "include": "#entities"
632
606
  }
633
- ]
634
- },
635
- "string-single-quoted": {
636
- "begin": "'",
607
+ ],
637
608
  "beginCaptures": {
638
609
  "0": {
639
610
  "name": "punctuation.definition.string.begin.html"
640
611
  }
641
612
  },
642
- "end": "'",
643
613
  "endCaptures": {
644
614
  "0": {
645
615
  "name": "punctuation.definition.string.end.html"
646
616
  }
647
- },
617
+ }
618
+ },
619
+ "string-single-quoted": {
648
620
  "name": "string.quoted.single.html",
621
+ "begin": "'",
622
+ "end": "'",
649
623
  "patterns": [
650
624
  {
651
625
  "include": "#embedded-code"
@@ -653,40 +627,32 @@
653
627
  {
654
628
  "include": "#entities"
655
629
  }
656
- ]
630
+ ],
631
+ "beginCaptures": {
632
+ "0": {
633
+ "name": "punctuation.definition.string.begin.html"
634
+ }
635
+ },
636
+ "endCaptures": {
637
+ "0": {
638
+ "name": "punctuation.definition.string.end.html"
639
+ }
640
+ }
657
641
  },
658
642
  "tag-generic-attribute": {
659
- "match": "\\b([a-zA-Z\\-_:]+)",
660
- "name": "entity.other.attribute-name.html"
643
+ "name": "entity.other.attribute-name.html",
644
+ "match": "\\b([a-zA-Z\\-_:]+)"
661
645
  },
662
646
  "tag-id-attribute": {
663
- "begin": "\\b(id)\\b\\s*(=)",
664
- "captures": {
665
- "1": {
666
- "name": "entity.other.attribute-name.id.html"
667
- },
668
- "2": {
669
- "name": "punctuation.separator.key-value.html"
670
- }
671
- },
672
- "end": "(?<='|\")",
673
647
  "name": "meta.attribute-with-value.id.html",
648
+ "begin": "\\b(id)\\b\\s*(=)",
649
+ "end": "(?\u003c='|\")",
674
650
  "patterns": [
675
651
  {
676
- "begin": "\"",
677
- "beginCaptures": {
678
- "0": {
679
- "name": "punctuation.definition.string.begin.html"
680
- }
681
- },
652
+ "name": "string.quoted.double.html",
682
653
  "contentName": "meta.toc-list.id.html",
654
+ "begin": "\"",
683
655
  "end": "\"",
684
- "endCaptures": {
685
- "0": {
686
- "name": "punctuation.definition.string.end.html"
687
- }
688
- },
689
- "name": "string.quoted.double.html",
690
656
  "patterns": [
691
657
  {
692
658
  "include": "#embedded-code"
@@ -694,23 +660,23 @@
694
660
  {
695
661
  "include": "#entities"
696
662
  }
697
- ]
698
- },
699
- {
700
- "begin": "'",
663
+ ],
701
664
  "beginCaptures": {
702
665
  "0": {
703
666
  "name": "punctuation.definition.string.begin.html"
704
667
  }
705
668
  },
706
- "contentName": "meta.toc-list.id.html",
707
- "end": "'",
708
669
  "endCaptures": {
709
670
  "0": {
710
671
  "name": "punctuation.definition.string.end.html"
711
672
  }
712
- },
673
+ }
674
+ },
675
+ {
713
676
  "name": "string.quoted.single.html",
677
+ "contentName": "meta.toc-list.id.html",
678
+ "begin": "'",
679
+ "end": "'",
714
680
  "patterns": [
715
681
  {
716
682
  "include": "#embedded-code"
@@ -718,9 +684,27 @@
718
684
  {
719
685
  "include": "#entities"
720
686
  }
721
- ]
687
+ ],
688
+ "beginCaptures": {
689
+ "0": {
690
+ "name": "punctuation.definition.string.begin.html"
691
+ }
692
+ },
693
+ "endCaptures": {
694
+ "0": {
695
+ "name": "punctuation.definition.string.end.html"
696
+ }
697
+ }
722
698
  }
723
- ]
699
+ ],
700
+ "captures": {
701
+ "1": {
702
+ "name": "entity.other.attribute-name.id.html"
703
+ },
704
+ "2": {
705
+ "name": "punctuation.separator.key-value.html"
706
+ }
707
+ }
724
708
  },
725
709
  "tag-stuff": {
726
710
  "patterns": [
@@ -738,7 +722,5 @@
738
722
  }
739
723
  ]
740
724
  }
741
- },
742
- "scopeName": "text.html.mako",
743
- "uuid": "8580C15A-0134-4D25-9705-14F98729B2C5"
744
- }
725
+ }
726
+ }