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.
- checksums.yaml +4 -4
- data/bin/git-linguist +5 -2
- data/ext/linguist/linguist.c +18 -7
- data/grammars/annotation.liquidhaskell.haskell.json +969 -862
- data/grammars/config.xcompose.json +22 -25
- data/grammars/file.lasso.json +296 -309
- data/grammars/hint.haskell.json +867 -766
- data/grammars/hint.message.haskell.json +867 -766
- data/grammars/hint.type.haskell.json +867 -766
- data/grammars/objdump.x86asm.json +20 -24
- data/grammars/source.Kotlin.json +220 -225
- data/grammars/source.LS.json +36 -55
- data/grammars/source.MCPOST.json +24 -38
- data/grammars/source.MOD.json +26 -41
- data/grammars/source.SASLog.json +9 -16
- data/grammars/source.abap.json +48 -56
- data/grammars/source.abl.json +8 -14
- data/grammars/source.abnf.json +88 -98
- data/grammars/source.actionscript.3.json +398 -429
- data/grammars/source.acucobol.json +5 -8
- data/grammars/source.ada.json +46 -53
- data/grammars/source.afm.json +548 -554
- data/grammars/source.agc.json +34 -37
- data/grammars/source.agda.json +79 -91
- data/grammars/source.ahk.json +62 -66
- data/grammars/source.alloy.json +16 -20
- data/grammars/source.ampl.json +41 -47
- data/grammars/source.angelscript.json +71 -80
- data/grammars/source.antlr.json +131 -136
- data/grammars/source.apache-config.json +93 -99
- data/grammars/source.apache-config.mod_perl.json +19 -24
- data/grammars/source.apl.json +1038 -1029
- data/grammars/source.applescript.json +501 -523
- data/grammars/source.apt.json +9 -16
- data/grammars/source.asn.json +27 -31
- data/grammars/source.asp.json +61 -67
- data/grammars/source.aspectj.json +385 -391
- data/grammars/source.assembly.json +49 -55
- data/grammars/source.ats.json +45 -121
- data/grammars/source.autoit.json +64 -69
- data/grammars/source.awk.json +172 -176
- data/grammars/source.ballerina.json +48 -395
- data/grammars/source.batchfile.json +269 -269
- data/grammars/source.befunge.json +17 -21
- data/grammars/source.bf.json +5 -11
- data/grammars/source.bison.json +10 -14
- data/grammars/source.blitzmax.json +300 -305
- data/grammars/source.boo.json +189 -193
- data/grammars/source.brightauthorproject.json +8 -13
- data/grammars/source.brightscript.json +37 -47
- data/grammars/source.bro.json +134 -140
- data/grammars/source.bsl.json +152 -193
- data/grammars/source.bsv.json +96 -102
- data/grammars/source.c++.json +176 -193
- data/grammars/source.c++.qt.json +13 -21
- data/grammars/source.c.ec.json +15 -21
- data/grammars/source.c.json +237 -251
- data/grammars/source.c.platform.json +153 -159
- data/grammars/source.c2hs.json +3 -6
- data/grammars/source.cabal.json +17 -20
- data/grammars/source.cache.cmake.json +18 -23
- data/grammars/source.cake.json +4 -7
- data/grammars/source.camlp4.ocaml.json +24 -27
- data/grammars/source.capnp.json +33 -38
- data/grammars/source.ceylon.json +44 -50
- data/grammars/source.cfscript.cfc.json +78 -86
- data/grammars/source.cfscript.json +513 -520
- data/grammars/source.changelogs.rpm-spec.json +8 -16
- data/grammars/source.chapel.json +109 -87
- data/grammars/source.cirru.json +25 -30
- data/grammars/source.clarion.json +41 -54
- data/grammars/source.clean.json +90 -95
- data/grammars/source.click.json +25 -28
- data/grammars/source.clips.json +10 -23
- data/grammars/source.clojure.json +151 -168
- data/grammars/source.cm.json +14 -19
- data/grammars/source.cmake.json +53 -61
- data/grammars/source.cobol.json +165 -180
- data/grammars/source.coffee.json +454 -462
- data/grammars/source.cool.json +36 -43
- data/grammars/source.coq.json +17 -21
- data/grammars/source.crystal.json +889 -983
- data/grammars/source.cs.json +739 -740
- data/grammars/source.csound-document.json +69 -73
- data/grammars/source.csound-score.json +52 -55
- data/grammars/source.csound.json +167 -171
- data/grammars/source.css.json +683 -688
- data/grammars/source.css.less.json +211 -511
- data/grammars/source.css.mss.json +94 -101
- data/grammars/source.css.postcss.sugarss.json +260 -0
- data/grammars/source.csx.json +4 -7
- data/grammars/source.cuda-c++.json +47 -81
- data/grammars/source.cwl.json +103 -0
- data/grammars/source.cython.json +536 -582
- data/grammars/source.d.json +243 -252
- data/grammars/source.dart.json +161 -166
- data/grammars/source.data-weave.json +901 -905
- data/grammars/source.desktop.json +29 -33
- data/grammars/source.diff.json +43 -52
- data/grammars/source.disasm.json +15 -16
- data/grammars/source.ditroff.desc.json +73 -84
- data/grammars/source.ditroff.json +60 -61
- data/grammars/source.dm.json +202 -213
- data/grammars/source.dmf.json +44 -47
- data/grammars/source.dockerfile.json +29 -34
- data/grammars/source.dot.json +46 -55
- data/grammars/source.dylan.json +63 -68
- data/grammars/source.ebnf.json +55 -62
- data/grammars/source.eiffel.json +57 -62
- data/grammars/source.elixir.json +321 -366
- data/grammars/source.emacs.lisp.json +458 -249
- data/grammars/source.erazor.json +49 -57
- data/grammars/source.erlang.json +508 -515
- data/grammars/source.essl.json +17 -30
- data/grammars/source.factor.json +85 -91
- data/grammars/source.fan.json +92 -96
- data/grammars/source.fancy.json +93 -118
- data/grammars/source.fish.json +74 -98
- data/grammars/source.fontforge.json +142 -146
- data/grammars/source.forth.json +42 -57
- data/grammars/source.fortran.json +193 -231
- data/grammars/source.fortran.modern.json +77 -103
- data/grammars/source.fsharp.fsi.json +1 -6
- data/grammars/source.fsharp.fsl.json +1 -6
- data/grammars/source.fsharp.fsx.json +1 -6
- data/grammars/source.fsharp.json +148 -153
- data/grammars/source.gap.json +60 -70
- data/grammars/source.gcode.json +9 -16
- data/grammars/source.gdb.json +63 -79
- data/grammars/source.gdb.session.json +27 -28
- data/grammars/source.gdbregs.json +7 -8
- data/grammars/source.gdscript.json +92 -96
- data/grammars/source.gerber.json +38 -56
- data/grammars/source.gfm.json +447 -462
- data/grammars/source.glsl.json +58 -83
- data/grammars/source.gn.json +188 -193
- data/grammars/source.gnuplot.json +104 -120
- data/grammars/source.go.json +169 -181
- data/grammars/source.golo.json +82 -87
- data/grammars/source.gosu.2.json +58 -68
- data/grammars/source.grace.json +266 -270
- data/grammars/source.graphql.json +586 -596
- data/grammars/source.groovy.gradle.json +18 -22
- data/grammars/source.groovy.json +422 -433
- data/grammars/source.harbour.json +129 -173
- data/grammars/source.haskell.json +871 -772
- data/grammars/source.haxe.2.json +402 -413
- data/grammars/source.hlsl.json +6 -16
- data/grammars/source.hsc2hs.json +1 -4
- data/grammars/source.hsig.json +871 -770
- data/grammars/source.hss.1.json +122 -144
- data/grammars/source.httpspec.json +119 -123
- data/grammars/source.hxml.json +8 -15
- data/grammars/source.ideal.json +125 -125
- data/grammars/source.idl-dlm.json +25 -32
- data/grammars/source.idl.json +59 -80
- data/grammars/source.idris.json +171 -185
- data/grammars/source.inform7.json +117 -121
- data/grammars/source.ini.json +37 -43
- data/grammars/source.io.json +65 -73
- data/grammars/source.ioke.json +72 -78
- data/grammars/source.isabelle.root.json +26 -30
- data/grammars/source.isabelle.theory.json +46 -50
- data/grammars/source.j.json +18 -21
- data/grammars/source.jasmin.json +45 -50
- data/grammars/source.java-properties.json +31 -41
- data/grammars/source.java.json +333 -342
- data/grammars/source.jcl.json +15 -18
- data/grammars/source.jflex.json +166 -172
- data/grammars/source.jison.json +331 -334
- data/grammars/source.jisonlex-injection.json +1 -2
- data/grammars/source.jisonlex.json +148 -151
- data/grammars/source.jolie.json +37 -43
- data/grammars/source.jq.json +80 -87
- data/grammars/source.js.json +798 -818
- data/grammars/source.js.jsx.json +2115 -2225
- data/grammars/source.js.objj.json +167 -172
- data/grammars/source.js.regexp.json +50 -50
- data/grammars/source.js.regexp.replacement.json +7 -7
- data/grammars/source.jsdoc.json +94 -94
- data/grammars/source.json.json +61 -71
- data/grammars/source.julia.console.json +5 -6
- data/grammars/source.julia.json +237 -234
- data/grammars/source.lean.json +55 -67
- data/grammars/source.lid.json +6 -10
- data/grammars/source.lilypond.json +181 -195
- data/grammars/source.lisp.json +40 -50
- data/grammars/source.litcoffee.json +169 -183
- data/grammars/source.livescript.json +207 -220
- data/grammars/source.llvm.json +28 -38
- data/grammars/source.logos.json +7 -14
- data/grammars/source.logtalk.json +136 -141
- data/grammars/source.loomscript.json +77 -83
- data/grammars/source.lsl.json +90 -106
- data/grammars/source.lua.json +100 -109
- data/grammars/source.makefile.json +181 -188
- data/grammars/source.makegen.json +3 -7
- data/grammars/source.mask.json +260 -265
- data/grammars/source.mata.json +38 -46
- data/grammars/source.mathematica.json +155 -167
- data/grammars/source.matlab.json +407 -684
- data/grammars/source.maxscript.json +293 -281
- data/grammars/source.mercury.json +179 -184
- data/grammars/source.meson.json +52 -58
- data/grammars/source.meta-info.json +64 -74
- data/grammars/source.ml.json +107 -113
- data/grammars/source.modelica.json +51 -59
- data/grammars/source.modula2.json +33 -42
- data/grammars/source.monkey.json +234 -241
- data/grammars/source.moonscript.json +51 -56
- data/grammars/source.mql5.json +74 -101
- data/grammars/source.mupad.json +30 -72
- data/grammars/source.ncl.json +1 -14
- data/grammars/source.ne.json +39 -42
- data/grammars/source.nemerle.json +58 -63
- data/grammars/source.nesc.json +9 -15
- data/grammars/source.netlinx.erb.json +13 -25
- data/grammars/source.netlinx.json +231 -292
- data/grammars/source.nextflow-groovy.json +1360 -0
- data/grammars/source.nextflow.json +74 -0
- data/grammars/source.nginx.json +274 -287
- data/grammars/source.nim.json +442 -483
- data/grammars/source.nim_filter.json +6 -26
- data/grammars/source.nimcfg.json +38 -51
- data/grammars/source.ninja.json +64 -70
- data/grammars/source.nit.json +60 -64
- data/grammars/source.nix.json +269 -273
- data/grammars/source.nmml.json +31 -37
- data/grammars/source.nsis.json +66 -72
- data/grammars/source.nu.json +129 -139
- data/grammars/source.nut.json +129 -133
- data/grammars/source.objc++.json +3 -10
- data/grammars/source.objc.json +303 -314
- data/grammars/source.objc.platform.json +145 -151
- data/grammars/source.ocaml.json +506 -514
- data/grammars/source.ocamllex.json +108 -115
- data/grammars/source.ocamlyacc.json +116 -123
- data/grammars/source.ooc.json +148 -155
- data/grammars/source.opa.json +39 -49
- data/grammars/source.opal.json +84 -89
- data/grammars/source.opalsysdefs.json +9 -13
- data/grammars/source.opencobol.json +22 -25
- data/grammars/source.opentype.json +148 -152
- data/grammars/source.ox.json +36 -44
- data/grammars/source.oz.json +31 -38
- data/grammars/source.p4.json +49 -59
- data/grammars/source.pan.json +273 -278
- data/grammars/source.papyrus.skyrim.json +705 -781
- data/grammars/source.parrot.pir.json +59 -65
- data/grammars/source.pascal.json +54 -61
- data/grammars/source.pawn.json +835 -849
- data/grammars/source.pcb.board.json +153 -158
- data/grammars/source.pcb.schematic.json +134 -138
- data/grammars/source.pcb.sexp.json +64 -74
- data/grammars/source.pep8.json +28 -32
- data/grammars/source.perl.6.json +83 -92
- data/grammars/source.perl.json +711 -737
- data/grammars/source.perl6fe.json +1204 -1218
- data/grammars/source.php.zephir.json +80 -89
- data/grammars/source.pic.json +137 -142
- data/grammars/source.pig_latin.json +76 -80
- data/grammars/source.pike.json +23 -36
- data/grammars/source.po.json +74 -84
- data/grammars/source.pogoscript.json +23 -29
- data/grammars/source.pony.json +98 -108
- data/grammars/source.postcss.json +370 -0
- data/grammars/source.postscript.json +88 -97
- data/grammars/source.pov-ray sdl.json +36 -42
- data/grammars/source.powershell.json +175 -197
- data/grammars/source.processing.json +236 -249
- data/grammars/source.prolog.eclipse.json +33 -38
- data/grammars/source.prolog.json +66 -72
- data/grammars/source.protobuf.json +88 -94
- data/grammars/source.puppet.json +144 -151
- data/grammars/source.purescript.json +268 -289
- data/grammars/source.pyjade.json +256 -281
- data/grammars/source.python.django.json +13 -18
- data/grammars/source.python.json +3319 -3367
- data/grammars/source.python.salt.json +3 -7
- data/grammars/source.qmake.json +83 -90
- data/grammars/source.qml.json +57 -78
- data/grammars/source.quoting.perl6fe.json +666 -669
- data/grammars/source.r.json +75 -84
- data/grammars/source.racket.json +17 -38
- data/grammars/source.rascal.json +77 -80
- data/grammars/source.reason.hover.type.json +1 -1
- data/grammars/source.reason.json +1025 -1080
- data/grammars/source.rebol.json +167 -177
- data/grammars/source.red.json +169 -177
- data/grammars/source.regexp.babel.json +74 -77
- data/grammars/source.regexp.extended.json +4 -5
- data/grammars/source.regexp.json +260 -264
- data/grammars/source.regexp.perl6fe.json +108 -111
- data/grammars/source.regexp.python.json +210 -215
- data/grammars/source.regexp.spin.json +63 -72
- data/grammars/source.renpy.json +617 -687
- data/grammars/source.rexx.json +25 -32
- data/grammars/source.ring.json +84 -114
- data/grammars/source.rpm-spec.json +392 -401
- data/grammars/source.ruby.gemfile.json +9 -12
- data/grammars/source.ruby.json +862 -952
- data/grammars/source.ruby.rspec.cucumber.steps.json +90 -103
- data/grammars/source.rust.json +223 -281
- data/grammars/source.sas.json +88 -105
- data/grammars/source.sass.json +100 -108
- data/grammars/source.sbt.json +16 -23
- data/grammars/source.scad.json +60 -67
- data/grammars/source.scala.json +215 -228
- data/grammars/source.scaml.json +120 -135
- data/grammars/source.scheme.json +119 -136
- data/grammars/source.scilab.json +40 -47
- data/grammars/source.scss.json +369 -403
- data/grammars/source.sdbl.json +14 -25
- data/grammars/source.shaderlab.json +24 -27
- data/grammars/source.shell.json +409 -440
- data/grammars/source.shen.json +75 -94
- data/grammars/source.smali.json +232 -293
- data/grammars/source.smalltalk.json +60 -75
- data/grammars/source.smt.json +67 -82
- data/grammars/source.solidity.json +35 -54
- data/grammars/source.sp.json +40 -45
- data/grammars/source.sparql.json +3 -8
- data/grammars/source.spin.json +277 -297
- data/grammars/source.sqf.json +34 -44
- data/grammars/source.sql.json +142 -156
- data/grammars/source.stan.json +201 -160
- data/grammars/source.stata.json +57 -68
- data/grammars/source.strings.json +26 -30
- data/grammars/source.stylus.json +558 -565
- data/grammars/source.supercollider.json +33 -40
- data/grammars/source.swift.json +999 -1077
- data/grammars/source.systemverilog.json +351 -365
- data/grammars/source.tcl.json +77 -94
- data/grammars/source.tea.json +61 -67
- data/grammars/source.terra.json +25 -32
- data/grammars/source.terraform.json +68 -88
- data/grammars/source.thrift.json +300 -306
- data/grammars/source.tl.json +112 -117
- data/grammars/source.tla.json +65 -69
- data/grammars/source.toc.json +21 -25
- data/grammars/source.toml.json +117 -122
- data/grammars/source.ts.json +2838 -2774
- data/grammars/source.tsx.json +180 -184
- data/grammars/source.turing.json +970 -974
- data/grammars/source.turtle.json +124 -140
- data/grammars/source.txl.json +23 -37
- data/grammars/source.ucfconstraints.json +16 -21
- data/grammars/source.ur.json +15 -27
- data/grammars/source.vala.json +221 -235
- data/grammars/source.varnish.vcl.json +117 -129
- data/grammars/source.vbnet.json +69 -106
- data/grammars/source.verilog.json +101 -107
- data/grammars/source.vhdl.json +437 -445
- data/grammars/source.viml.json +540 -550
- data/grammars/source.wavefront.mtl.json +274 -277
- data/grammars/source.wavefront.obj.json +781 -784
- data/grammars/source.wdl.json +66 -46
- data/grammars/source.webassembly.json +97 -102
- data/grammars/source.webidl.json +311 -326
- data/grammars/source.x10.json +28 -32
- data/grammars/source.x86asm.json +21 -26
- data/grammars/source.xc.json +164 -172
- data/grammars/source.xq.json +81 -92
- data/grammars/source.xtend.json +199 -208
- data/grammars/source.yaml-ext.json +118 -124
- data/grammars/source.yaml.json +155 -174
- data/grammars/source.yaml.salt.json +113 -116
- data/grammars/source.yang.json +10 -13
- data/grammars/source.yara.json +98 -0
- data/grammars/text.bibtex.json +95 -100
- data/grammars/text.cfml.basic.json +403 -404
- data/grammars/text.elixir.json +18 -23
- data/grammars/text.error-list.json +15 -16
- data/grammars/text.find-refs.json +487 -488
- data/grammars/text.gherkin.feature.json +45 -53
- data/grammars/text.haml.json +176 -189
- data/grammars/text.hamlc.json +82 -88
- data/grammars/text.html.abl.json +16 -21
- data/grammars/text.html.asciidoc.json +139 -153
- data/grammars/text.html.asdoc.json +145 -155
- data/grammars/text.html.asp.json +23 -28
- data/grammars/text.html.basic.json +323 -338
- data/grammars/text.html.cfm.json +316 -325
- data/grammars/text.html.creole.json +177 -189
- data/grammars/text.html.django.json +27 -33
- data/grammars/text.html.ecr.json +21 -25
- data/grammars/text.html.elixir.json +3 -9
- data/grammars/text.html.erb.json +81 -85
- data/grammars/text.html.erlang.yaws.json +24 -29
- data/grammars/text.html.factor.json +5 -11
- data/grammars/text.html.ftl.json +16 -25
- data/grammars/text.html.handlebars.json +579 -598
- data/grammars/text.html.javadoc.json +426 -0
- data/grammars/text.html.js.json +11 -17
- data/grammars/text.html.jsp.json +377 -384
- data/grammars/text.html.liquid.json +8 -18
- data/grammars/text.html.mako.json +257 -275
- data/grammars/text.html.markdown.source.gfm.apib.json +419 -427
- data/grammars/text.html.markdown.source.gfm.mson.json +405 -414
- data/grammars/text.html.mediawiki.json +318 -344
- data/grammars/text.html.php.blade.json +2134 -2140
- data/grammars/text.html.php.json +980 -1013
- data/grammars/text.html.slash.json +101 -107
- data/grammars/text.html.smarty.json +75 -83
- data/grammars/text.html.soy.json +250 -253
- data/grammars/text.html.ssp.json +18 -24
- data/grammars/text.html.tcl.json +17 -24
- data/grammars/text.html.twig.json +712 -718
- data/grammars/text.idl-idldoc.json +5 -9
- data/grammars/text.jade.json +213 -235
- data/grammars/text.junit-test-report.json +25 -28
- data/grammars/text.log.latex.json +44 -46
- data/grammars/text.marko.json +370 -401
- data/grammars/text.python.console.json +3 -7
- data/grammars/text.python.traceback.json +2 -5
- data/grammars/text.rdoc.json +15 -19
- data/grammars/text.restructuredtext.clean.json +8 -11
- data/grammars/text.restructuredtext.json +886 -873
- data/grammars/text.robot.json +26 -36
- data/grammars/text.roff.json +2852 -2915
- data/grammars/text.runoff.json +56 -69
- data/grammars/text.sfd.json +151 -155
- data/grammars/text.shell-session.json +5 -8
- data/grammars/text.slim.json +184 -210
- data/grammars/text.srt.json +54 -57
- data/grammars/text.tex.json +98 -105
- data/grammars/text.tex.latex.beamer.json +14 -20
- data/grammars/text.tex.latex.haskell.json +883 -782
- data/grammars/text.tex.latex.json +281 -291
- data/grammars/text.tex.latex.memoir.json +39 -46
- data/grammars/text.tex.latex.rd.json +32 -38
- data/grammars/text.xml.ant.json +62 -69
- data/grammars/text.xml.flex-config.json +1009 -1013
- data/grammars/text.xml.genshi.json +10 -16
- data/grammars/text.xml.json +117 -130
- data/grammars/text.xml.pom.json +235 -240
- data/grammars/text.xml.xsl.json +31 -37
- data/grammars/text.zone_file.json +24 -29
- data/lib/linguist/blob.rb +10 -1
- data/lib/linguist/blob_helper.rb +4 -1
- data/lib/linguist/file_blob.rb +5 -0
- data/lib/linguist/generated.rb +16 -0
- data/lib/linguist/heuristics.rb +23 -11
- data/lib/linguist/language.rb +3 -6
- data/lib/linguist/languages.json +1 -1
- data/lib/linguist/languages.yml +74 -12
- data/lib/linguist/lazy_blob.rb +15 -1
- data/lib/linguist/linguist.bundle +0 -0
- data/lib/linguist/samples.json +1666 -3381
- data/lib/linguist/shebang.rb +2 -0
- data/lib/linguist/strategy/modeline.rb +2 -0
- data/lib/linguist/vendor.yml +5 -6
- data/lib/linguist/version.rb +1 -1
- metadata +12 -11
- data/grammars/source.elm.json +0 -381
- data/grammars/source.nant-build.json +0 -86
- data/grammars/source.octave.json +0 -451
- data/grammars/text.html.mediawiki.elm-build-output.json +0 -111
- data/grammars/text.html.mediawiki.elm-documentation.json +0 -22
- data/grammars/text.html.vue.json +0 -936
|
@@ -1,27 +1,24 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "Gemfile",
|
|
3
3
|
"scopeName": "source.ruby.gemfile",
|
|
4
|
-
"fileTypes": [
|
|
5
|
-
"Gemfile"
|
|
6
|
-
],
|
|
7
4
|
"patterns": [
|
|
8
5
|
{
|
|
9
6
|
"include": "source.ruby"
|
|
10
7
|
},
|
|
11
8
|
{
|
|
12
|
-
"begin": "\\b(?<!\\.|::)(gem|git|group|platforms|ruby|source)\\b(?![?!])",
|
|
13
|
-
"captures": {
|
|
14
|
-
"1": {
|
|
15
|
-
"name": "keyword.other.special-method.ruby.gemfile"
|
|
16
|
-
}
|
|
17
|
-
},
|
|
18
|
-
"end": "$|(?=#|})",
|
|
19
9
|
"name": "meta.declaration.ruby.gemfile",
|
|
10
|
+
"begin": "\\b(?\u003c!\\.|::)(gem|git|group|platforms|ruby|source)\\b(?![?!])",
|
|
11
|
+
"end": "$|(?=#|})",
|
|
20
12
|
"patterns": [
|
|
21
13
|
{
|
|
22
14
|
"include": "$self"
|
|
23
15
|
}
|
|
24
|
-
]
|
|
16
|
+
],
|
|
17
|
+
"captures": {
|
|
18
|
+
"1": {
|
|
19
|
+
"name": "keyword.other.special-method.ruby.gemfile"
|
|
20
|
+
}
|
|
21
|
+
}
|
|
25
22
|
}
|
|
26
23
|
]
|
|
27
|
-
}
|
|
24
|
+
}
|
data/grammars/source.ruby.json
CHANGED
|
@@ -1,48 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "Ruby",
|
|
3
3
|
"scopeName": "source.ruby",
|
|
4
|
-
"fileTypes": [
|
|
5
|
-
"Appfile",
|
|
6
|
-
"Appraisals",
|
|
7
|
-
"arb",
|
|
8
|
-
"Berksfile",
|
|
9
|
-
"Brewfile",
|
|
10
|
-
"cap",
|
|
11
|
-
"Capfile",
|
|
12
|
-
"capfile",
|
|
13
|
-
"cgi",
|
|
14
|
-
"cr",
|
|
15
|
-
"Dangerfile",
|
|
16
|
-
"Deliverfile",
|
|
17
|
-
"Fastfile",
|
|
18
|
-
"fcgi",
|
|
19
|
-
"gemspec",
|
|
20
|
-
"Guardfile",
|
|
21
|
-
"irbrc",
|
|
22
|
-
"opal",
|
|
23
|
-
"Podfile",
|
|
24
|
-
"podspec",
|
|
25
|
-
"prawn",
|
|
26
|
-
"pryrc",
|
|
27
|
-
"Puppetfile",
|
|
28
|
-
"rabl",
|
|
29
|
-
"rake",
|
|
30
|
-
"Rakefile",
|
|
31
|
-
"Rantfile",
|
|
32
|
-
"rb",
|
|
33
|
-
"rbx",
|
|
34
|
-
"rjs",
|
|
35
|
-
"ru",
|
|
36
|
-
"ruby",
|
|
37
|
-
"Schemafile",
|
|
38
|
-
"Snapfile",
|
|
39
|
-
"thor",
|
|
40
|
-
"Thorfile",
|
|
41
|
-
"Vagrantfile"
|
|
42
|
-
],
|
|
43
|
-
"firstLineMatch": "(?x)\n# Hashbang\n^\\#!.*(?:\\s|\\/)\n (?:ruby|macruby|rake|jruby|rbx|ruby_executable_hooks)\n(?:$|\\s)\n|\n# Modeline\n(?i:\n # Emacs\n -\\*-(?:\\s*(?=[^:;\\s]+\\s*-\\*-)|(?:.*?[;\\s]|(?<=-\\*-))mode\\s*:\\s*)\n ruby\n (?=[\\s;]|(?<![-*])-\\*-).*?-\\*-\n |\n # Vim\n (?:(?:\\s|^)vi(?:m[<=>]?\\d+|m)?|\\sex)(?=:(?=\\s*set?\\s[^\\n:]+:)|:(?!\\s*set?\\s))(?:(?:\\s|\\s*:\\s*)\\w*(?:\\s*=(?:[^\\n\\\\\\s]|\\\\.)*)?)*[\\s:](?:filetype|ft|syntax)\\s*=\n ruby\n (?=\\s|:|$)\n)",
|
|
44
4
|
"patterns": [
|
|
45
5
|
{
|
|
6
|
+
"name": "meta.class.ruby",
|
|
7
|
+
"match": "(?x)\n^\\s*(class)\\s+\n(\n (\n [.a-zA-Z0-9_:]+\n (\\s*(\u003c)\\s*[.a-zA-Z0-9_:]+)? # class A \u003c B\n )\n |\n ((\u003c\u003c)\\s*[.a-zA-Z0-9_:]+) # class \u003c\u003c C\n)",
|
|
46
8
|
"captures": {
|
|
47
9
|
"1": {
|
|
48
10
|
"name": "keyword.control.class.ruby"
|
|
@@ -62,11 +24,11 @@
|
|
|
62
24
|
"7": {
|
|
63
25
|
"name": "punctuation.definition.variable.ruby"
|
|
64
26
|
}
|
|
65
|
-
}
|
|
66
|
-
"match": "(?x)\n^\\s*(class)\\s+\n(\n (\n [.a-zA-Z0-9_:]+\n (\\s*(<)\\s*[.a-zA-Z0-9_:]+)? # class A < B\n )\n |\n ((<<)\\s*[.a-zA-Z0-9_:]+) # class << C\n)",
|
|
67
|
-
"name": "meta.class.ruby"
|
|
27
|
+
}
|
|
68
28
|
},
|
|
69
29
|
{
|
|
30
|
+
"name": "meta.module.ruby",
|
|
31
|
+
"match": "(?x)\n^\\s*(module)\\s+\n(\n ([A-Z]\\w*(::))?\n ([A-Z]\\w*(::))?\n ([A-Z]\\w*(::))*\n [A-Z]\\w*\n)",
|
|
70
32
|
"captures": {
|
|
71
33
|
"1": {
|
|
72
34
|
"name": "keyword.control.module.ruby"
|
|
@@ -92,180 +54,155 @@
|
|
|
92
54
|
"8": {
|
|
93
55
|
"name": "punctuation.separator.inheritance.ruby"
|
|
94
56
|
}
|
|
95
|
-
}
|
|
96
|
-
"match": "(?x)\n^\\s*(module)\\s+\n(\n ([A-Z]\\w*(::))?\n ([A-Z]\\w*(::))?\n ([A-Z]\\w*(::))*\n [A-Z]\\w*\n)",
|
|
97
|
-
"name": "meta.module.ruby"
|
|
57
|
+
}
|
|
98
58
|
},
|
|
99
59
|
{
|
|
100
|
-
"
|
|
101
|
-
"match": "(
|
|
102
|
-
"name": "invalid.deprecated.ruby"
|
|
60
|
+
"name": "invalid.deprecated.ruby",
|
|
61
|
+
"match": "(?\u003c!\\.)\\belse(\\s)+if\\b"
|
|
103
62
|
},
|
|
104
63
|
{
|
|
64
|
+
"name": "constant.other.symbol.hashkey.ruby",
|
|
65
|
+
"match": "(?\u003e[a-zA-Z_]\\w*(?\u003e[?!])?)(:)(?!:)",
|
|
105
66
|
"captures": {
|
|
106
67
|
"1": {
|
|
107
68
|
"name": "punctuation.definition.constant.hashkey.ruby"
|
|
108
69
|
}
|
|
109
|
-
}
|
|
110
|
-
"comment": "symbols as hash key (1.9 syntax)",
|
|
111
|
-
"match": "(?>[a-zA-Z_]\\w*(?>[?!])?)(:)(?!:)",
|
|
112
|
-
"name": "constant.other.symbol.hashkey.ruby"
|
|
70
|
+
}
|
|
113
71
|
},
|
|
114
72
|
{
|
|
73
|
+
"name": "constant.other.symbol.hashkey.ruby",
|
|
74
|
+
"match": "(?\u003c!:)(:)(?\u003e[a-zA-Z_]\\w*(?\u003e[?!])?)(?=\\s*=\u003e)",
|
|
115
75
|
"captures": {
|
|
116
76
|
"1": {
|
|
117
77
|
"name": "punctuation.definition.constant.ruby"
|
|
118
78
|
}
|
|
119
|
-
}
|
|
120
|
-
"comment": "symbols as hash key (1.8 syntax)",
|
|
121
|
-
"match": "(?<!:)(:)(?>[a-zA-Z_]\\w*(?>[?!])?)(?=\\s*=>)",
|
|
122
|
-
"name": "constant.other.symbol.hashkey.ruby"
|
|
79
|
+
}
|
|
123
80
|
},
|
|
124
81
|
{
|
|
125
|
-
"
|
|
126
|
-
"match": "(
|
|
127
|
-
"name": "keyword.control.ruby"
|
|
82
|
+
"name": "keyword.control.ruby",
|
|
83
|
+
"match": "(?\u003c!\\.)\\b(BEGIN|begin|case|class|else|elsif|END|end|ensure|for|if|in|module|rescue|then|unless|until|when|while)\\b(?![?!])"
|
|
128
84
|
},
|
|
129
85
|
{
|
|
130
|
-
"
|
|
131
|
-
"match": "(
|
|
132
|
-
"name": "keyword.control.start-block.ruby"
|
|
86
|
+
"name": "keyword.control.start-block.ruby",
|
|
87
|
+
"match": "(?\u003c!\\.)\\bdo\\b"
|
|
133
88
|
},
|
|
134
89
|
{
|
|
135
|
-
"
|
|
136
|
-
"match": "(
|
|
137
|
-
"name": "meta.syntax.ruby.start-block"
|
|
90
|
+
"name": "meta.syntax.ruby.start-block",
|
|
91
|
+
"match": "(?\u003c={)(\\s+)"
|
|
138
92
|
},
|
|
139
93
|
{
|
|
140
|
-
"
|
|
141
|
-
"
|
|
94
|
+
"name": "keyword.control.pseudo-method.ruby",
|
|
95
|
+
"match": "(?\u003c!\\.)\\b(alias|alias_method|break|next|redo|retry|return|super|undef|yield)\\b(?![?!])|\\bdefined\\?|\\b(block_given|iterator)\\?"
|
|
142
96
|
},
|
|
143
97
|
{
|
|
144
|
-
"
|
|
145
|
-
"
|
|
98
|
+
"name": "constant.language.nil.ruby",
|
|
99
|
+
"match": "\\bnil\\b(?![?!])"
|
|
146
100
|
},
|
|
147
101
|
{
|
|
148
|
-
"
|
|
149
|
-
"
|
|
102
|
+
"name": "constant.language.boolean.ruby",
|
|
103
|
+
"match": "\\b(true|false)\\b(?![?!])"
|
|
150
104
|
},
|
|
151
105
|
{
|
|
152
|
-
"
|
|
153
|
-
"
|
|
106
|
+
"name": "variable.language.ruby",
|
|
107
|
+
"match": "\\b(__(FILE|LINE)__)\\b(?![?!])"
|
|
154
108
|
},
|
|
155
109
|
{
|
|
156
|
-
"
|
|
157
|
-
"
|
|
110
|
+
"name": "variable.language.self.ruby",
|
|
111
|
+
"match": "\\bself\\b(?![?!])"
|
|
158
112
|
},
|
|
159
113
|
{
|
|
160
|
-
"
|
|
161
|
-
"match": "\\b(initialize|new|loop|include|extend|prepend|raise|fail|attr_reader|attr_writer|attr_accessor|attr|catch|throw|private|private_class_method|module_function|public|public_class_method|protected|refine|using)\\b(?![?!])"
|
|
162
|
-
"name": "keyword.other.special-method.ruby"
|
|
114
|
+
"name": "keyword.other.special-method.ruby",
|
|
115
|
+
"match": "\\b(initialize|new|loop|include|extend|prepend|raise|fail|attr_reader|attr_writer|attr_accessor|attr|catch|throw|private|private_class_method|module_function|public|public_class_method|protected|refine|using)\\b(?![?!])"
|
|
163
116
|
},
|
|
164
117
|
{
|
|
165
|
-
"begin": "\\b(?<!\\.|::)(require|require_relative)\\b(?![?!])",
|
|
166
|
-
"captures": {
|
|
167
|
-
"1": {
|
|
168
|
-
"name": "keyword.other.special-method.ruby"
|
|
169
|
-
}
|
|
170
|
-
},
|
|
171
|
-
"end": "$|(?=#|})",
|
|
172
118
|
"name": "meta.require.ruby",
|
|
119
|
+
"begin": "\\b(?\u003c!\\.|::)(require|require_relative)\\b(?![?!])",
|
|
120
|
+
"end": "$|(?=#|})",
|
|
173
121
|
"patterns": [
|
|
174
122
|
{
|
|
175
123
|
"include": "$self"
|
|
176
124
|
}
|
|
177
|
-
]
|
|
125
|
+
],
|
|
126
|
+
"captures": {
|
|
127
|
+
"1": {
|
|
128
|
+
"name": "keyword.other.special-method.ruby"
|
|
129
|
+
}
|
|
130
|
+
}
|
|
178
131
|
},
|
|
179
132
|
{
|
|
133
|
+
"name": "variable.other.readwrite.instance.ruby",
|
|
134
|
+
"match": "(@)[a-zA-Z_]\\w*",
|
|
180
135
|
"captures": {
|
|
181
136
|
"1": {
|
|
182
137
|
"name": "punctuation.definition.variable.ruby"
|
|
183
138
|
}
|
|
184
|
-
}
|
|
185
|
-
"match": "(@)[a-zA-Z_]\\w*",
|
|
186
|
-
"name": "variable.other.readwrite.instance.ruby"
|
|
139
|
+
}
|
|
187
140
|
},
|
|
188
141
|
{
|
|
142
|
+
"name": "variable.other.readwrite.class.ruby",
|
|
143
|
+
"match": "(@@)[a-zA-Z_]\\w*",
|
|
189
144
|
"captures": {
|
|
190
145
|
"1": {
|
|
191
146
|
"name": "punctuation.definition.variable.ruby"
|
|
192
147
|
}
|
|
193
|
-
}
|
|
194
|
-
"match": "(@@)[a-zA-Z_]\\w*",
|
|
195
|
-
"name": "variable.other.readwrite.class.ruby"
|
|
148
|
+
}
|
|
196
149
|
},
|
|
197
150
|
{
|
|
151
|
+
"name": "variable.other.readwrite.global.ruby",
|
|
152
|
+
"match": "(\\$)[a-zA-Z_]\\w*",
|
|
198
153
|
"captures": {
|
|
199
154
|
"1": {
|
|
200
155
|
"name": "punctuation.definition.variable.ruby"
|
|
201
156
|
}
|
|
202
|
-
}
|
|
203
|
-
"match": "(\\$)[a-zA-Z_]\\w*",
|
|
204
|
-
"name": "variable.other.readwrite.global.ruby"
|
|
157
|
+
}
|
|
205
158
|
},
|
|
206
159
|
{
|
|
160
|
+
"name": "variable.other.readwrite.global.pre-defined.ruby",
|
|
161
|
+
"match": "(\\$)(!|@|\u0026|`|'|\\+|\\d+|~|=|/|\\\\|,|;|\\.|\u003c|\u003e|_|\\*|\\$|\\?|:|\"|-[0adFiIlpv])",
|
|
207
162
|
"captures": {
|
|
208
163
|
"1": {
|
|
209
164
|
"name": "punctuation.definition.variable.ruby"
|
|
210
165
|
}
|
|
211
|
-
}
|
|
212
|
-
"match": "(\\$)(!|@|&|`|'|\\+|\\d+|~|=|/|\\\\|,|;|\\.|<|>|_|\\*|\\$|\\?|:|\"|-[0adFiIlpv])",
|
|
213
|
-
"name": "variable.other.readwrite.global.pre-defined.ruby"
|
|
166
|
+
}
|
|
214
167
|
},
|
|
215
168
|
{
|
|
169
|
+
"name": "meta.environment-variable.ruby",
|
|
216
170
|
"begin": "\\b(ENV)\\[",
|
|
217
|
-
"beginCaptures": {
|
|
218
|
-
"1": {
|
|
219
|
-
"name": "variable.other.constant.ruby"
|
|
220
|
-
}
|
|
221
|
-
},
|
|
222
171
|
"end": "]",
|
|
223
|
-
"name": "meta.environment-variable.ruby",
|
|
224
172
|
"patterns": [
|
|
225
173
|
{
|
|
226
174
|
"include": "$self"
|
|
227
175
|
}
|
|
228
|
-
]
|
|
176
|
+
],
|
|
177
|
+
"beginCaptures": {
|
|
178
|
+
"1": {
|
|
179
|
+
"name": "variable.other.constant.ruby"
|
|
180
|
+
}
|
|
181
|
+
}
|
|
229
182
|
},
|
|
230
183
|
{
|
|
231
|
-
"
|
|
232
|
-
"
|
|
184
|
+
"name": "support.class.ruby",
|
|
185
|
+
"match": "\\b[A-Z]\\w*(?=((\\.|::)[A-Za-z]|\\[))"
|
|
233
186
|
},
|
|
234
187
|
{
|
|
235
|
-
"
|
|
236
|
-
"
|
|
188
|
+
"name": "support.function.kernel.ruby",
|
|
189
|
+
"match": "\\b((abort|at_exit|autoload|binding|callcc|caller|caller_locations|chomp|chop|eval|exec|exit|fork|format|gets|global_variables|gsub|lambda|load|local_variables|open|p|print|printf|proc|putc|puts|rand|readline|readlines|select|set_trace_func|sleep|spawn|sprintf|srand|sub|syscall|system|test|trace_var|trap|untrace_var|warn)\\b(?![?!])|autoload\\?|exit!)"
|
|
237
190
|
},
|
|
238
191
|
{
|
|
239
|
-
"
|
|
240
|
-
"
|
|
192
|
+
"name": "variable.other.constant.ruby",
|
|
193
|
+
"match": "\\b[_A-Z]\\w*\\b"
|
|
241
194
|
},
|
|
242
195
|
{
|
|
243
|
-
"begin": "(?x)\n(?=def\\b) # optimization to help Oniguruma fail fast\n(?<=^|\\s)(def)\\s+\n(\n (?>[a-zA-Z_]\\w*(?>\\.|::))? # method prefix\n (?> # method name\n [a-zA-Z_]\\w*(?>[?!]|=(?!>))?\n |\n ===?|!=|>[>=]?|<=>|<[<=]?|[%&`/\\|]|\\*\\*?|=?~|[-+]@?|\\[]=?\n )\n)\n\\s*(\\()",
|
|
244
|
-
"beginCaptures": {
|
|
245
|
-
"1": {
|
|
246
|
-
"name": "keyword.control.def.ruby"
|
|
247
|
-
},
|
|
248
|
-
"2": {
|
|
249
|
-
"name": "entity.name.function.ruby"
|
|
250
|
-
},
|
|
251
|
-
"3": {
|
|
252
|
-
"name": "punctuation.definition.parameters.ruby"
|
|
253
|
-
}
|
|
254
|
-
},
|
|
255
|
-
"comment": "The method pattern comes from the symbol pattern. See there for an explanation.",
|
|
256
|
-
"end": "\\)",
|
|
257
|
-
"endCaptures": {
|
|
258
|
-
"0": {
|
|
259
|
-
"name": "punctuation.definition.parameters.ruby"
|
|
260
|
-
}
|
|
261
|
-
},
|
|
262
196
|
"name": "meta.function.method.with-arguments.ruby",
|
|
197
|
+
"begin": "(?x)\n(?=def\\b) # optimization to help Oniguruma fail fast\n(?\u003c=^|\\s)(def)\\s+\n(\n (?\u003e[a-zA-Z_]\\w*(?\u003e\\.|::))? # method prefix\n (?\u003e # method name\n [a-zA-Z_]\\w*(?\u003e[?!]|=(?!\u003e))?\n |\n ===?|!=|\u003e[\u003e=]?|\u003c=\u003e|\u003c[\u003c=]?|[%\u0026`/\\|]|\\*\\*?|=?~|[-+]@?|\\[]=?\n )\n)\n\\s*(\\()",
|
|
198
|
+
"end": "\\)",
|
|
263
199
|
"patterns": [
|
|
264
200
|
{
|
|
265
201
|
"begin": "(?![\\s,)])",
|
|
266
202
|
"end": "(?=,|\\)\\s*$)",
|
|
267
203
|
"patterns": [
|
|
268
204
|
{
|
|
205
|
+
"match": "\\G([\u0026*]?)(?:([_a-zA-Z]\\w*(:))|([_a-zA-Z]\\w*))",
|
|
269
206
|
"captures": {
|
|
270
207
|
"1": {
|
|
271
208
|
"name": "storage.type.variable.ruby"
|
|
@@ -279,35 +216,42 @@
|
|
|
279
216
|
"4": {
|
|
280
217
|
"name": "variable.parameter.function.ruby"
|
|
281
218
|
}
|
|
282
|
-
}
|
|
283
|
-
"match": "\\G([&*]?)(?:([_a-zA-Z]\\w*(:))|([_a-zA-Z]\\w*))"
|
|
219
|
+
}
|
|
284
220
|
},
|
|
285
221
|
{
|
|
286
222
|
"include": "$self"
|
|
287
223
|
}
|
|
288
224
|
]
|
|
289
225
|
}
|
|
290
|
-
]
|
|
291
|
-
},
|
|
292
|
-
{
|
|
293
|
-
"begin": "(?x)\n(?=def\\b) # optimization to help Oniguruma fail fast\n(?<=^|\\s)(def)\\s+\n(\n (?>[a-zA-Z_]\\w*(?>\\.|::))? # method prefix\n (?> # method name\n [a-zA-Z_]\\w*(?>[?!]|=(?!>))?\n |\n ===?|!=|>[>=]?|<=>|<[<=]?|[%&`/\\|]|\\*\\*?|=?~|[-+]@?|\\[]=?\n )\n)\n[ \\t]\n(?=[ \\t]*[^\\s#;]) # make sure the following is not comment",
|
|
226
|
+
],
|
|
294
227
|
"beginCaptures": {
|
|
295
228
|
"1": {
|
|
296
229
|
"name": "keyword.control.def.ruby"
|
|
297
230
|
},
|
|
298
231
|
"2": {
|
|
299
232
|
"name": "entity.name.function.ruby"
|
|
233
|
+
},
|
|
234
|
+
"3": {
|
|
235
|
+
"name": "punctuation.definition.parameters.ruby"
|
|
300
236
|
}
|
|
301
237
|
},
|
|
302
|
-
"
|
|
303
|
-
|
|
238
|
+
"endCaptures": {
|
|
239
|
+
"0": {
|
|
240
|
+
"name": "punctuation.definition.parameters.ruby"
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
},
|
|
244
|
+
{
|
|
304
245
|
"name": "meta.function.method.with-arguments.ruby",
|
|
246
|
+
"begin": "(?x)\n(?=def\\b) # optimization to help Oniguruma fail fast\n(?\u003c=^|\\s)(def)\\s+\n(\n (?\u003e[a-zA-Z_]\\w*(?\u003e\\.|::))? # method prefix\n (?\u003e # method name\n [a-zA-Z_]\\w*(?\u003e[?!]|=(?!\u003e))?\n |\n ===?|!=|\u003e[\u003e=]?|\u003c=\u003e|\u003c[\u003c=]?|[%\u0026`/\\|]|\\*\\*?|=?~|[-+]@?|\\[]=?\n )\n)\n[ \\t]\n(?=[ \\t]*[^\\s#;]) # make sure the following is not comment",
|
|
247
|
+
"end": "$",
|
|
305
248
|
"patterns": [
|
|
306
249
|
{
|
|
307
250
|
"begin": "(?![\\s,])",
|
|
308
251
|
"end": "(?=,|$)",
|
|
309
252
|
"patterns": [
|
|
310
253
|
{
|
|
254
|
+
"match": "\\G([\u0026*]?)(?:([_a-zA-Z]\\w*(:))|([_a-zA-Z]\\w*))",
|
|
311
255
|
"captures": {
|
|
312
256
|
"1": {
|
|
313
257
|
"name": "storage.type.variable.ruby"
|
|
@@ -321,17 +265,26 @@
|
|
|
321
265
|
"4": {
|
|
322
266
|
"name": "variable.parameter.function.ruby"
|
|
323
267
|
}
|
|
324
|
-
}
|
|
325
|
-
"match": "\\G([&*]?)(?:([_a-zA-Z]\\w*(:))|([_a-zA-Z]\\w*))"
|
|
268
|
+
}
|
|
326
269
|
},
|
|
327
270
|
{
|
|
328
271
|
"include": "$self"
|
|
329
272
|
}
|
|
330
273
|
]
|
|
331
274
|
}
|
|
332
|
-
]
|
|
275
|
+
],
|
|
276
|
+
"beginCaptures": {
|
|
277
|
+
"1": {
|
|
278
|
+
"name": "keyword.control.def.ruby"
|
|
279
|
+
},
|
|
280
|
+
"2": {
|
|
281
|
+
"name": "entity.name.function.ruby"
|
|
282
|
+
}
|
|
283
|
+
}
|
|
333
284
|
},
|
|
334
285
|
{
|
|
286
|
+
"name": "meta.function.method.without-arguments.ruby",
|
|
287
|
+
"match": "(?x)\n(?=def\\b) # optimization to help Oniguruma fail fast\n(?\u003c=^|\\s)(def)\\b\n(\n \\s+\n (\n (?\u003e[a-zA-Z_]\\w*(?\u003e\\.|::))? # method prefix\n (?\u003e # method name\n [a-zA-Z_]\\w*(?\u003e[?!]|=(?!\u003e))?\n |\n ===?|!=|\u003e[\u003e=]?|\u003c=\u003e|\u003c[\u003c=]?|[%\u0026`/\\|]|\\*\\*?|=?~|[-+]@?|\\[]=?\n )\n )\n)?",
|
|
335
288
|
"captures": {
|
|
336
289
|
"1": {
|
|
337
290
|
"name": "keyword.control.def.ruby"
|
|
@@ -339,52 +292,37 @@
|
|
|
339
292
|
"3": {
|
|
340
293
|
"name": "entity.name.function.ruby"
|
|
341
294
|
}
|
|
342
|
-
}
|
|
343
|
-
"comment": " the optional name is just to catch the def also without a method-name",
|
|
344
|
-
"match": "(?x)\n(?=def\\b) # optimization to help Oniguruma fail fast\n(?<=^|\\s)(def)\\b\n(\n \\s+\n (\n (?>[a-zA-Z_]\\w*(?>\\.|::))? # method prefix\n (?> # method name\n [a-zA-Z_]\\w*(?>[?!]|=(?!>))?\n |\n ===?|!=|>[>=]?|<=>|<[<=]?|[%&`/\\|]|\\*\\*?|=?~|[-+]@?|\\[]=?\n )\n )\n)?",
|
|
345
|
-
"name": "meta.function.method.without-arguments.ruby"
|
|
295
|
+
}
|
|
346
296
|
},
|
|
347
297
|
{
|
|
348
|
-
"
|
|
349
|
-
"
|
|
298
|
+
"name": "constant.numeric.ruby",
|
|
299
|
+
"match": "(?x)\n\\b\n(\n [\\d](?\u003e_?\\d)* # 100_000\n (\\.(?![^[:space:][:digit:]])(?\u003e_?\\d)*)? # fractional part\n ([eE][-+]?\\d(?\u003e_?\\d)*)? # 1.23e-4\n |\n 0\n (?:\n [xX][[:xdigit:]](?\u003e_?[[:xdigit:]])*|\n [oO]?[0-7](?\u003e_?[0-7])*|\n [bB][01](?\u003e_?[01])*|\n [dD]\\d(?\u003e_?\\d)*\n ) # A base indicator can only be used with an integer\n)\\b"
|
|
350
300
|
},
|
|
351
301
|
{
|
|
302
|
+
"name": "constant.other.symbol.ruby",
|
|
352
303
|
"begin": ":'",
|
|
304
|
+
"end": "'",
|
|
305
|
+
"patterns": [
|
|
306
|
+
{
|
|
307
|
+
"name": "constant.character.escape.ruby",
|
|
308
|
+
"match": "\\\\['\\\\]"
|
|
309
|
+
}
|
|
310
|
+
],
|
|
353
311
|
"beginCaptures": {
|
|
354
312
|
"0": {
|
|
355
313
|
"name": "punctuation.definition.symbol.begin.ruby"
|
|
356
314
|
}
|
|
357
315
|
},
|
|
358
|
-
"comment": "symbol literal with '' delimitor",
|
|
359
|
-
"end": "'",
|
|
360
316
|
"endCaptures": {
|
|
361
317
|
"0": {
|
|
362
318
|
"name": "punctuation.definition.symbol.end.ruby"
|
|
363
319
|
}
|
|
364
|
-
}
|
|
365
|
-
"name": "constant.other.symbol.ruby",
|
|
366
|
-
"patterns": [
|
|
367
|
-
{
|
|
368
|
-
"match": "\\\\['\\\\]",
|
|
369
|
-
"name": "constant.character.escape.ruby"
|
|
370
|
-
}
|
|
371
|
-
]
|
|
320
|
+
}
|
|
372
321
|
},
|
|
373
322
|
{
|
|
323
|
+
"name": "constant.other.symbol.interpolated.ruby",
|
|
374
324
|
"begin": ":\"",
|
|
375
|
-
"beginCaptures": {
|
|
376
|
-
"0": {
|
|
377
|
-
"name": "punctuation.section.symbol.begin.ruby"
|
|
378
|
-
}
|
|
379
|
-
},
|
|
380
|
-
"comment": "symbol literal with \"\" delimitor",
|
|
381
325
|
"end": "\"",
|
|
382
|
-
"endCaptures": {
|
|
383
|
-
"0": {
|
|
384
|
-
"name": "punctuation.section.symbol.end.ruby"
|
|
385
|
-
}
|
|
386
|
-
},
|
|
387
|
-
"name": "constant.other.symbol.interpolated.ruby",
|
|
388
326
|
"patterns": [
|
|
389
327
|
{
|
|
390
328
|
"include": "#interpolated_ruby"
|
|
@@ -392,50 +330,47 @@
|
|
|
392
330
|
{
|
|
393
331
|
"include": "#escaped_char"
|
|
394
332
|
}
|
|
395
|
-
]
|
|
396
|
-
},
|
|
397
|
-
{
|
|
398
|
-
"comment": "Needs higher precidence than regular expressions.",
|
|
399
|
-
"match": "(?<!\\()/=",
|
|
400
|
-
"name": "keyword.operator.assignment.augmented.ruby"
|
|
401
|
-
},
|
|
402
|
-
{
|
|
403
|
-
"begin": "'",
|
|
333
|
+
],
|
|
404
334
|
"beginCaptures": {
|
|
405
335
|
"0": {
|
|
406
|
-
"name": "punctuation.
|
|
336
|
+
"name": "punctuation.section.symbol.begin.ruby"
|
|
407
337
|
}
|
|
408
338
|
},
|
|
409
|
-
"comment": "string literal with '' delimitor",
|
|
410
|
-
"end": "'",
|
|
411
339
|
"endCaptures": {
|
|
412
340
|
"0": {
|
|
413
|
-
"name": "punctuation.
|
|
341
|
+
"name": "punctuation.section.symbol.end.ruby"
|
|
414
342
|
}
|
|
415
|
-
}
|
|
343
|
+
}
|
|
344
|
+
},
|
|
345
|
+
{
|
|
346
|
+
"name": "keyword.operator.assignment.augmented.ruby",
|
|
347
|
+
"match": "(?\u003c!\\()/="
|
|
348
|
+
},
|
|
349
|
+
{
|
|
416
350
|
"name": "string.quoted.single.ruby",
|
|
351
|
+
"begin": "'",
|
|
352
|
+
"end": "'",
|
|
417
353
|
"patterns": [
|
|
418
354
|
{
|
|
419
|
-
"
|
|
420
|
-
"
|
|
355
|
+
"name": "constant.character.escape.ruby",
|
|
356
|
+
"match": "\\\\'|\\\\\\\\"
|
|
421
357
|
}
|
|
422
|
-
]
|
|
423
|
-
},
|
|
424
|
-
{
|
|
425
|
-
"begin": "\"",
|
|
358
|
+
],
|
|
426
359
|
"beginCaptures": {
|
|
427
360
|
"0": {
|
|
428
361
|
"name": "punctuation.definition.string.begin.ruby"
|
|
429
362
|
}
|
|
430
363
|
},
|
|
431
|
-
"comment": "string literal with interpolation and \"\" delimitor",
|
|
432
|
-
"end": "\"",
|
|
433
364
|
"endCaptures": {
|
|
434
365
|
"0": {
|
|
435
366
|
"name": "punctuation.definition.string.end.ruby"
|
|
436
367
|
}
|
|
437
|
-
}
|
|
368
|
+
}
|
|
369
|
+
},
|
|
370
|
+
{
|
|
438
371
|
"name": "string.quoted.double.interpolated.ruby",
|
|
372
|
+
"begin": "\"",
|
|
373
|
+
"end": "\"",
|
|
439
374
|
"patterns": [
|
|
440
375
|
{
|
|
441
376
|
"include": "#interpolated_ruby"
|
|
@@ -443,23 +378,22 @@
|
|
|
443
378
|
{
|
|
444
379
|
"include": "#escaped_char"
|
|
445
380
|
}
|
|
446
|
-
]
|
|
447
|
-
},
|
|
448
|
-
{
|
|
449
|
-
"begin": "`",
|
|
381
|
+
],
|
|
450
382
|
"beginCaptures": {
|
|
451
383
|
"0": {
|
|
452
384
|
"name": "punctuation.definition.string.begin.ruby"
|
|
453
385
|
}
|
|
454
386
|
},
|
|
455
|
-
"comment": "execute string (allows for interpolation)",
|
|
456
|
-
"end": "`",
|
|
457
387
|
"endCaptures": {
|
|
458
388
|
"0": {
|
|
459
389
|
"name": "punctuation.definition.string.end.ruby"
|
|
460
390
|
}
|
|
461
|
-
}
|
|
391
|
+
}
|
|
392
|
+
},
|
|
393
|
+
{
|
|
462
394
|
"name": "string.interpolated.ruby",
|
|
395
|
+
"begin": "`",
|
|
396
|
+
"end": "`",
|
|
463
397
|
"patterns": [
|
|
464
398
|
{
|
|
465
399
|
"include": "#interpolated_ruby"
|
|
@@ -467,10 +401,27 @@
|
|
|
467
401
|
{
|
|
468
402
|
"include": "#escaped_char"
|
|
469
403
|
}
|
|
470
|
-
]
|
|
404
|
+
],
|
|
405
|
+
"beginCaptures": {
|
|
406
|
+
"0": {
|
|
407
|
+
"name": "punctuation.definition.string.begin.ruby"
|
|
408
|
+
}
|
|
409
|
+
},
|
|
410
|
+
"endCaptures": {
|
|
411
|
+
"0": {
|
|
412
|
+
"name": "punctuation.definition.string.end.ruby"
|
|
413
|
+
}
|
|
414
|
+
}
|
|
471
415
|
},
|
|
472
416
|
{
|
|
473
|
-
"
|
|
417
|
+
"contentName": "string.regexp.interpolated.ruby",
|
|
418
|
+
"begin": "(?x)\n(?\u003c![\\w)])((/))(?![?*+])\n(?=\n (?:\\\\/|[^/])*+ # Do NOT change the order\n /[eimnosux]*\\s*\n (?:\n [)\\]}#.,?:]|\\|\\||\u0026\u0026|\u003c=\u003e|=\u003e|==|=~|!~|!=|;|$|\n if|else|elsif|then|do|end|unless|while|until|or|and\n )\n |\n $\n)",
|
|
419
|
+
"end": "((/[eimnosux]*))",
|
|
420
|
+
"patterns": [
|
|
421
|
+
{
|
|
422
|
+
"include": "#regex_sub"
|
|
423
|
+
}
|
|
424
|
+
],
|
|
474
425
|
"captures": {
|
|
475
426
|
"1": {
|
|
476
427
|
"name": "string.regexp.interpolated.ruby"
|
|
@@ -478,30 +429,12 @@
|
|
|
478
429
|
"2": {
|
|
479
430
|
"name": "punctuation.section.regexp.ruby"
|
|
480
431
|
}
|
|
481
|
-
}
|
|
482
|
-
"comment": "regular expression literal with interpolation",
|
|
483
|
-
"contentName": "string.regexp.interpolated.ruby",
|
|
484
|
-
"end": "((/[eimnosux]*))",
|
|
485
|
-
"patterns": [
|
|
486
|
-
{
|
|
487
|
-
"include": "#regex_sub"
|
|
488
|
-
}
|
|
489
|
-
]
|
|
432
|
+
}
|
|
490
433
|
},
|
|
491
434
|
{
|
|
435
|
+
"name": "string.regexp.interpolated.ruby",
|
|
492
436
|
"begin": "%r{",
|
|
493
|
-
"beginCaptures": {
|
|
494
|
-
"0": {
|
|
495
|
-
"name": "punctuation.section.regexp.begin.ruby"
|
|
496
|
-
}
|
|
497
|
-
},
|
|
498
437
|
"end": "}[eimnosux]*",
|
|
499
|
-
"endCaptures": {
|
|
500
|
-
"0": {
|
|
501
|
-
"name": "punctuation.section.regexp.end.ruby"
|
|
502
|
-
}
|
|
503
|
-
},
|
|
504
|
-
"name": "string.regexp.interpolated.ruby",
|
|
505
438
|
"patterns": [
|
|
506
439
|
{
|
|
507
440
|
"include": "#regex_sub"
|
|
@@ -509,22 +442,22 @@
|
|
|
509
442
|
{
|
|
510
443
|
"include": "#nest_curly_r"
|
|
511
444
|
}
|
|
512
|
-
]
|
|
513
|
-
},
|
|
514
|
-
{
|
|
515
|
-
"begin": "%r\\[",
|
|
445
|
+
],
|
|
516
446
|
"beginCaptures": {
|
|
517
447
|
"0": {
|
|
518
448
|
"name": "punctuation.section.regexp.begin.ruby"
|
|
519
449
|
}
|
|
520
450
|
},
|
|
521
|
-
"end": "][eimnosux]*",
|
|
522
451
|
"endCaptures": {
|
|
523
452
|
"0": {
|
|
524
453
|
"name": "punctuation.section.regexp.end.ruby"
|
|
525
454
|
}
|
|
526
|
-
}
|
|
455
|
+
}
|
|
456
|
+
},
|
|
457
|
+
{
|
|
527
458
|
"name": "string.regexp.interpolated.ruby",
|
|
459
|
+
"begin": "%r\\[",
|
|
460
|
+
"end": "][eimnosux]*",
|
|
528
461
|
"patterns": [
|
|
529
462
|
{
|
|
530
463
|
"include": "#regex_sub"
|
|
@@ -532,22 +465,22 @@
|
|
|
532
465
|
{
|
|
533
466
|
"include": "#nest_brackets_r"
|
|
534
467
|
}
|
|
535
|
-
]
|
|
536
|
-
},
|
|
537
|
-
{
|
|
538
|
-
"begin": "%r\\(",
|
|
468
|
+
],
|
|
539
469
|
"beginCaptures": {
|
|
540
470
|
"0": {
|
|
541
471
|
"name": "punctuation.section.regexp.begin.ruby"
|
|
542
472
|
}
|
|
543
473
|
},
|
|
544
|
-
"end": "\\)[eimnosux]*",
|
|
545
474
|
"endCaptures": {
|
|
546
475
|
"0": {
|
|
547
476
|
"name": "punctuation.section.regexp.end.ruby"
|
|
548
477
|
}
|
|
549
|
-
}
|
|
478
|
+
}
|
|
479
|
+
},
|
|
480
|
+
{
|
|
550
481
|
"name": "string.regexp.interpolated.ruby",
|
|
482
|
+
"begin": "%r\\(",
|
|
483
|
+
"end": "\\)[eimnosux]*",
|
|
551
484
|
"patterns": [
|
|
552
485
|
{
|
|
553
486
|
"include": "#regex_sub"
|
|
@@ -555,22 +488,22 @@
|
|
|
555
488
|
{
|
|
556
489
|
"include": "#nest_parens_r"
|
|
557
490
|
}
|
|
558
|
-
]
|
|
559
|
-
},
|
|
560
|
-
{
|
|
561
|
-
"begin": "%r<",
|
|
491
|
+
],
|
|
562
492
|
"beginCaptures": {
|
|
563
493
|
"0": {
|
|
564
494
|
"name": "punctuation.section.regexp.begin.ruby"
|
|
565
495
|
}
|
|
566
496
|
},
|
|
567
|
-
"end": ">[eimnosux]*",
|
|
568
497
|
"endCaptures": {
|
|
569
498
|
"0": {
|
|
570
499
|
"name": "punctuation.section.regexp.end.ruby"
|
|
571
500
|
}
|
|
572
|
-
}
|
|
501
|
+
}
|
|
502
|
+
},
|
|
503
|
+
{
|
|
573
504
|
"name": "string.regexp.interpolated.ruby",
|
|
505
|
+
"begin": "%r\u003c",
|
|
506
|
+
"end": "\u003e[eimnosux]*",
|
|
574
507
|
"patterns": [
|
|
575
508
|
{
|
|
576
509
|
"include": "#regex_sub"
|
|
@@ -578,42 +511,42 @@
|
|
|
578
511
|
{
|
|
579
512
|
"include": "#nest_ltgt_r"
|
|
580
513
|
}
|
|
581
|
-
]
|
|
582
|
-
},
|
|
583
|
-
{
|
|
584
|
-
"begin": "%r([^\\w])",
|
|
514
|
+
],
|
|
585
515
|
"beginCaptures": {
|
|
586
516
|
"0": {
|
|
587
517
|
"name": "punctuation.section.regexp.begin.ruby"
|
|
588
518
|
}
|
|
589
519
|
},
|
|
590
|
-
"end": "\\1[eimnosux]*",
|
|
591
520
|
"endCaptures": {
|
|
592
521
|
"0": {
|
|
593
522
|
"name": "punctuation.section.regexp.end.ruby"
|
|
594
523
|
}
|
|
595
|
-
}
|
|
524
|
+
}
|
|
525
|
+
},
|
|
526
|
+
{
|
|
596
527
|
"name": "string.regexp.interpolated.ruby",
|
|
528
|
+
"begin": "%r([^\\w])",
|
|
529
|
+
"end": "\\1[eimnosux]*",
|
|
597
530
|
"patterns": [
|
|
598
531
|
{
|
|
599
532
|
"include": "#regex_sub"
|
|
600
533
|
}
|
|
601
|
-
]
|
|
602
|
-
},
|
|
603
|
-
{
|
|
604
|
-
"begin": "%I\\[",
|
|
534
|
+
],
|
|
605
535
|
"beginCaptures": {
|
|
606
536
|
"0": {
|
|
607
|
-
"name": "punctuation.section.
|
|
537
|
+
"name": "punctuation.section.regexp.begin.ruby"
|
|
608
538
|
}
|
|
609
539
|
},
|
|
610
|
-
"end": "]",
|
|
611
540
|
"endCaptures": {
|
|
612
541
|
"0": {
|
|
613
|
-
"name": "punctuation.section.
|
|
542
|
+
"name": "punctuation.section.regexp.end.ruby"
|
|
614
543
|
}
|
|
615
|
-
}
|
|
544
|
+
}
|
|
545
|
+
},
|
|
546
|
+
{
|
|
616
547
|
"name": "constant.other.symbol.interpolated.ruby",
|
|
548
|
+
"begin": "%I\\[",
|
|
549
|
+
"end": "]",
|
|
617
550
|
"patterns": [
|
|
618
551
|
{
|
|
619
552
|
"include": "#interpolated_ruby"
|
|
@@ -624,22 +557,22 @@
|
|
|
624
557
|
{
|
|
625
558
|
"include": "#nest_brackets_i"
|
|
626
559
|
}
|
|
627
|
-
]
|
|
628
|
-
},
|
|
629
|
-
{
|
|
630
|
-
"begin": "%I\\(",
|
|
560
|
+
],
|
|
631
561
|
"beginCaptures": {
|
|
632
562
|
"0": {
|
|
633
563
|
"name": "punctuation.section.array.begin.ruby"
|
|
634
564
|
}
|
|
635
565
|
},
|
|
636
|
-
"end": "\\)",
|
|
637
566
|
"endCaptures": {
|
|
638
567
|
"0": {
|
|
639
568
|
"name": "punctuation.section.array.end.ruby"
|
|
640
569
|
}
|
|
641
|
-
}
|
|
570
|
+
}
|
|
571
|
+
},
|
|
572
|
+
{
|
|
642
573
|
"name": "constant.other.symbol.interpolated.ruby",
|
|
574
|
+
"begin": "%I\\(",
|
|
575
|
+
"end": "\\)",
|
|
643
576
|
"patterns": [
|
|
644
577
|
{
|
|
645
578
|
"include": "#interpolated_ruby"
|
|
@@ -650,22 +583,22 @@
|
|
|
650
583
|
{
|
|
651
584
|
"include": "#nest_parens_i"
|
|
652
585
|
}
|
|
653
|
-
]
|
|
654
|
-
},
|
|
655
|
-
{
|
|
656
|
-
"begin": "%I<",
|
|
586
|
+
],
|
|
657
587
|
"beginCaptures": {
|
|
658
588
|
"0": {
|
|
659
589
|
"name": "punctuation.section.array.begin.ruby"
|
|
660
590
|
}
|
|
661
591
|
},
|
|
662
|
-
"end": ">",
|
|
663
592
|
"endCaptures": {
|
|
664
593
|
"0": {
|
|
665
594
|
"name": "punctuation.section.array.end.ruby"
|
|
666
595
|
}
|
|
667
|
-
}
|
|
596
|
+
}
|
|
597
|
+
},
|
|
598
|
+
{
|
|
668
599
|
"name": "constant.other.symbol.interpolated.ruby",
|
|
600
|
+
"begin": "%I\u003c",
|
|
601
|
+
"end": "\u003e",
|
|
669
602
|
"patterns": [
|
|
670
603
|
{
|
|
671
604
|
"include": "#interpolated_ruby"
|
|
@@ -676,22 +609,22 @@
|
|
|
676
609
|
{
|
|
677
610
|
"include": "#nest_ltgt_i"
|
|
678
611
|
}
|
|
679
|
-
]
|
|
680
|
-
},
|
|
681
|
-
{
|
|
682
|
-
"begin": "%I{",
|
|
612
|
+
],
|
|
683
613
|
"beginCaptures": {
|
|
684
614
|
"0": {
|
|
685
615
|
"name": "punctuation.section.array.begin.ruby"
|
|
686
616
|
}
|
|
687
617
|
},
|
|
688
|
-
"end": "}",
|
|
689
618
|
"endCaptures": {
|
|
690
619
|
"0": {
|
|
691
620
|
"name": "punctuation.section.array.end.ruby"
|
|
692
621
|
}
|
|
693
|
-
}
|
|
622
|
+
}
|
|
623
|
+
},
|
|
624
|
+
{
|
|
694
625
|
"name": "constant.other.symbol.interpolated.ruby",
|
|
626
|
+
"begin": "%I{",
|
|
627
|
+
"end": "}",
|
|
695
628
|
"patterns": [
|
|
696
629
|
{
|
|
697
630
|
"include": "#interpolated_ruby"
|
|
@@ -702,22 +635,22 @@
|
|
|
702
635
|
{
|
|
703
636
|
"include": "#nest_curly_i"
|
|
704
637
|
}
|
|
705
|
-
]
|
|
706
|
-
},
|
|
707
|
-
{
|
|
708
|
-
"begin": "%I([^\\w])",
|
|
638
|
+
],
|
|
709
639
|
"beginCaptures": {
|
|
710
640
|
"0": {
|
|
711
641
|
"name": "punctuation.section.array.begin.ruby"
|
|
712
642
|
}
|
|
713
643
|
},
|
|
714
|
-
"end": "\\1",
|
|
715
644
|
"endCaptures": {
|
|
716
645
|
"0": {
|
|
717
646
|
"name": "punctuation.section.array.end.ruby"
|
|
718
647
|
}
|
|
719
|
-
}
|
|
648
|
+
}
|
|
649
|
+
},
|
|
650
|
+
{
|
|
720
651
|
"name": "constant.other.symbol.interpolated.ruby",
|
|
652
|
+
"begin": "%I([^\\w])",
|
|
653
|
+
"end": "\\1",
|
|
721
654
|
"patterns": [
|
|
722
655
|
{
|
|
723
656
|
"include": "#interpolated_ruby"
|
|
@@ -725,139 +658,138 @@
|
|
|
725
658
|
{
|
|
726
659
|
"include": "#escaped_char"
|
|
727
660
|
}
|
|
728
|
-
]
|
|
729
|
-
},
|
|
730
|
-
{
|
|
731
|
-
"begin": "%i\\[",
|
|
661
|
+
],
|
|
732
662
|
"beginCaptures": {
|
|
733
663
|
"0": {
|
|
734
664
|
"name": "punctuation.section.array.begin.ruby"
|
|
735
665
|
}
|
|
736
666
|
},
|
|
737
|
-
"end": "]",
|
|
738
667
|
"endCaptures": {
|
|
739
668
|
"0": {
|
|
740
669
|
"name": "punctuation.section.array.end.ruby"
|
|
741
670
|
}
|
|
742
|
-
}
|
|
671
|
+
}
|
|
672
|
+
},
|
|
673
|
+
{
|
|
743
674
|
"name": "constant.other.symbol.ruby",
|
|
675
|
+
"begin": "%i\\[",
|
|
676
|
+
"end": "]",
|
|
744
677
|
"patterns": [
|
|
745
678
|
{
|
|
746
|
-
"
|
|
747
|
-
"
|
|
679
|
+
"name": "constant.character.escape.ruby",
|
|
680
|
+
"match": "\\\\]|\\\\\\\\"
|
|
748
681
|
},
|
|
749
682
|
{
|
|
750
683
|
"include": "#nest_brackets"
|
|
751
684
|
}
|
|
752
|
-
]
|
|
753
|
-
},
|
|
754
|
-
{
|
|
755
|
-
"begin": "%i\\(",
|
|
685
|
+
],
|
|
756
686
|
"beginCaptures": {
|
|
757
687
|
"0": {
|
|
758
688
|
"name": "punctuation.section.array.begin.ruby"
|
|
759
689
|
}
|
|
760
690
|
},
|
|
761
|
-
"end": "\\)",
|
|
762
691
|
"endCaptures": {
|
|
763
692
|
"0": {
|
|
764
693
|
"name": "punctuation.section.array.end.ruby"
|
|
765
694
|
}
|
|
766
|
-
}
|
|
695
|
+
}
|
|
696
|
+
},
|
|
697
|
+
{
|
|
767
698
|
"name": "constant.other.symbol.ruby",
|
|
699
|
+
"begin": "%i\\(",
|
|
700
|
+
"end": "\\)",
|
|
768
701
|
"patterns": [
|
|
769
702
|
{
|
|
770
|
-
"
|
|
771
|
-
"
|
|
703
|
+
"name": "constant.character.escape.ruby",
|
|
704
|
+
"match": "\\\\\\)|\\\\\\\\"
|
|
772
705
|
},
|
|
773
706
|
{
|
|
774
707
|
"include": "#nest_parens"
|
|
775
708
|
}
|
|
776
|
-
]
|
|
777
|
-
},
|
|
778
|
-
{
|
|
779
|
-
"begin": "%i<",
|
|
709
|
+
],
|
|
780
710
|
"beginCaptures": {
|
|
781
711
|
"0": {
|
|
782
712
|
"name": "punctuation.section.array.begin.ruby"
|
|
783
713
|
}
|
|
784
714
|
},
|
|
785
|
-
"end": ">",
|
|
786
715
|
"endCaptures": {
|
|
787
716
|
"0": {
|
|
788
717
|
"name": "punctuation.section.array.end.ruby"
|
|
789
718
|
}
|
|
790
|
-
}
|
|
719
|
+
}
|
|
720
|
+
},
|
|
721
|
+
{
|
|
791
722
|
"name": "constant.other.symbol.ruby",
|
|
723
|
+
"begin": "%i\u003c",
|
|
724
|
+
"end": "\u003e",
|
|
792
725
|
"patterns": [
|
|
793
726
|
{
|
|
794
|
-
"
|
|
795
|
-
"
|
|
727
|
+
"name": "constant.character.escape.ruby",
|
|
728
|
+
"match": "\\\\\u003e|\\\\\\\\"
|
|
796
729
|
},
|
|
797
730
|
{
|
|
798
731
|
"include": "#nest_ltgt"
|
|
799
732
|
}
|
|
800
|
-
]
|
|
801
|
-
},
|
|
802
|
-
{
|
|
803
|
-
"begin": "%i{",
|
|
733
|
+
],
|
|
804
734
|
"beginCaptures": {
|
|
805
735
|
"0": {
|
|
806
736
|
"name": "punctuation.section.array.begin.ruby"
|
|
807
737
|
}
|
|
808
738
|
},
|
|
809
|
-
"end": "}",
|
|
810
739
|
"endCaptures": {
|
|
811
740
|
"0": {
|
|
812
741
|
"name": "punctuation.section.array.end.ruby"
|
|
813
742
|
}
|
|
814
|
-
}
|
|
743
|
+
}
|
|
744
|
+
},
|
|
745
|
+
{
|
|
815
746
|
"name": "constant.other.symbol.ruby",
|
|
747
|
+
"begin": "%i{",
|
|
748
|
+
"end": "}",
|
|
816
749
|
"patterns": [
|
|
817
750
|
{
|
|
818
|
-
"
|
|
819
|
-
"
|
|
751
|
+
"name": "constant.character.escape.ruby",
|
|
752
|
+
"match": "\\\\}|\\\\\\\\"
|
|
820
753
|
},
|
|
821
754
|
{
|
|
822
755
|
"include": "#nest_curly"
|
|
823
756
|
}
|
|
824
|
-
]
|
|
825
|
-
},
|
|
826
|
-
{
|
|
827
|
-
"begin": "%i([^\\w])",
|
|
757
|
+
],
|
|
828
758
|
"beginCaptures": {
|
|
829
759
|
"0": {
|
|
830
760
|
"name": "punctuation.section.array.begin.ruby"
|
|
831
761
|
}
|
|
832
762
|
},
|
|
833
|
-
"end": "\\1",
|
|
834
763
|
"endCaptures": {
|
|
835
764
|
"0": {
|
|
836
765
|
"name": "punctuation.section.array.end.ruby"
|
|
837
766
|
}
|
|
838
|
-
}
|
|
767
|
+
}
|
|
768
|
+
},
|
|
769
|
+
{
|
|
839
770
|
"name": "constant.other.symbol.ruby",
|
|
771
|
+
"begin": "%i([^\\w])",
|
|
772
|
+
"end": "\\1",
|
|
840
773
|
"patterns": [
|
|
841
774
|
{
|
|
842
|
-
"comment": "Cant be named because its not neccesarily an escape.",
|
|
843
775
|
"match": "\\\\."
|
|
844
776
|
}
|
|
845
|
-
]
|
|
846
|
-
},
|
|
847
|
-
{
|
|
848
|
-
"begin": "%W\\[",
|
|
777
|
+
],
|
|
849
778
|
"beginCaptures": {
|
|
850
779
|
"0": {
|
|
851
780
|
"name": "punctuation.section.array.begin.ruby"
|
|
852
781
|
}
|
|
853
782
|
},
|
|
854
|
-
"end": "]",
|
|
855
783
|
"endCaptures": {
|
|
856
784
|
"0": {
|
|
857
785
|
"name": "punctuation.section.array.end.ruby"
|
|
858
786
|
}
|
|
859
|
-
}
|
|
787
|
+
}
|
|
788
|
+
},
|
|
789
|
+
{
|
|
860
790
|
"name": "string.quoted.other.interpolated.ruby",
|
|
791
|
+
"begin": "%W\\[",
|
|
792
|
+
"end": "]",
|
|
861
793
|
"patterns": [
|
|
862
794
|
{
|
|
863
795
|
"include": "#interpolated_ruby"
|
|
@@ -868,22 +800,22 @@
|
|
|
868
800
|
{
|
|
869
801
|
"include": "#nest_brackets_i"
|
|
870
802
|
}
|
|
871
|
-
]
|
|
872
|
-
},
|
|
873
|
-
{
|
|
874
|
-
"begin": "%W\\(",
|
|
803
|
+
],
|
|
875
804
|
"beginCaptures": {
|
|
876
805
|
"0": {
|
|
877
806
|
"name": "punctuation.section.array.begin.ruby"
|
|
878
807
|
}
|
|
879
808
|
},
|
|
880
|
-
"end": "\\)",
|
|
881
809
|
"endCaptures": {
|
|
882
810
|
"0": {
|
|
883
811
|
"name": "punctuation.section.array.end.ruby"
|
|
884
812
|
}
|
|
885
|
-
}
|
|
813
|
+
}
|
|
814
|
+
},
|
|
815
|
+
{
|
|
886
816
|
"name": "string.quoted.other.interpolated.ruby",
|
|
817
|
+
"begin": "%W\\(",
|
|
818
|
+
"end": "\\)",
|
|
887
819
|
"patterns": [
|
|
888
820
|
{
|
|
889
821
|
"include": "#interpolated_ruby"
|
|
@@ -894,22 +826,22 @@
|
|
|
894
826
|
{
|
|
895
827
|
"include": "#nest_parens_i"
|
|
896
828
|
}
|
|
897
|
-
]
|
|
898
|
-
},
|
|
899
|
-
{
|
|
900
|
-
"begin": "%W<",
|
|
829
|
+
],
|
|
901
830
|
"beginCaptures": {
|
|
902
831
|
"0": {
|
|
903
832
|
"name": "punctuation.section.array.begin.ruby"
|
|
904
833
|
}
|
|
905
834
|
},
|
|
906
|
-
"end": ">",
|
|
907
835
|
"endCaptures": {
|
|
908
836
|
"0": {
|
|
909
837
|
"name": "punctuation.section.array.end.ruby"
|
|
910
838
|
}
|
|
911
|
-
}
|
|
839
|
+
}
|
|
840
|
+
},
|
|
841
|
+
{
|
|
912
842
|
"name": "string.quoted.other.interpolated.ruby",
|
|
843
|
+
"begin": "%W\u003c",
|
|
844
|
+
"end": "\u003e",
|
|
913
845
|
"patterns": [
|
|
914
846
|
{
|
|
915
847
|
"include": "#interpolated_ruby"
|
|
@@ -920,22 +852,22 @@
|
|
|
920
852
|
{
|
|
921
853
|
"include": "#nest_ltgt_i"
|
|
922
854
|
}
|
|
923
|
-
]
|
|
924
|
-
},
|
|
925
|
-
{
|
|
926
|
-
"begin": "%W{",
|
|
855
|
+
],
|
|
927
856
|
"beginCaptures": {
|
|
928
857
|
"0": {
|
|
929
858
|
"name": "punctuation.section.array.begin.ruby"
|
|
930
859
|
}
|
|
931
860
|
},
|
|
932
|
-
"end": "}",
|
|
933
861
|
"endCaptures": {
|
|
934
862
|
"0": {
|
|
935
863
|
"name": "punctuation.section.array.end.ruby"
|
|
936
864
|
}
|
|
937
|
-
}
|
|
865
|
+
}
|
|
866
|
+
},
|
|
867
|
+
{
|
|
938
868
|
"name": "string.quoted.other.interpolated.ruby",
|
|
869
|
+
"begin": "%W{",
|
|
870
|
+
"end": "}",
|
|
939
871
|
"patterns": [
|
|
940
872
|
{
|
|
941
873
|
"include": "#interpolated_ruby"
|
|
@@ -946,22 +878,22 @@
|
|
|
946
878
|
{
|
|
947
879
|
"include": "#nest_curly_i"
|
|
948
880
|
}
|
|
949
|
-
]
|
|
950
|
-
},
|
|
951
|
-
{
|
|
952
|
-
"begin": "%W([^\\w])",
|
|
881
|
+
],
|
|
953
882
|
"beginCaptures": {
|
|
954
883
|
"0": {
|
|
955
884
|
"name": "punctuation.section.array.begin.ruby"
|
|
956
885
|
}
|
|
957
886
|
},
|
|
958
|
-
"end": "\\1",
|
|
959
887
|
"endCaptures": {
|
|
960
888
|
"0": {
|
|
961
889
|
"name": "punctuation.section.array.end.ruby"
|
|
962
890
|
}
|
|
963
|
-
}
|
|
891
|
+
}
|
|
892
|
+
},
|
|
893
|
+
{
|
|
964
894
|
"name": "string.quoted.other.interpolated.ruby",
|
|
895
|
+
"begin": "%W([^\\w])",
|
|
896
|
+
"end": "\\1",
|
|
965
897
|
"patterns": [
|
|
966
898
|
{
|
|
967
899
|
"include": "#interpolated_ruby"
|
|
@@ -969,139 +901,138 @@
|
|
|
969
901
|
{
|
|
970
902
|
"include": "#escaped_char"
|
|
971
903
|
}
|
|
972
|
-
]
|
|
973
|
-
},
|
|
974
|
-
{
|
|
975
|
-
"begin": "%w\\[",
|
|
904
|
+
],
|
|
976
905
|
"beginCaptures": {
|
|
977
906
|
"0": {
|
|
978
907
|
"name": "punctuation.section.array.begin.ruby"
|
|
979
908
|
}
|
|
980
909
|
},
|
|
981
|
-
"end": "]",
|
|
982
910
|
"endCaptures": {
|
|
983
911
|
"0": {
|
|
984
912
|
"name": "punctuation.section.array.end.ruby"
|
|
985
913
|
}
|
|
986
|
-
}
|
|
914
|
+
}
|
|
915
|
+
},
|
|
916
|
+
{
|
|
987
917
|
"name": "string.quoted.other.ruby",
|
|
918
|
+
"begin": "%w\\[",
|
|
919
|
+
"end": "]",
|
|
988
920
|
"patterns": [
|
|
989
921
|
{
|
|
990
|
-
"
|
|
991
|
-
"
|
|
922
|
+
"name": "constant.character.escape.ruby",
|
|
923
|
+
"match": "\\\\]|\\\\\\\\"
|
|
992
924
|
},
|
|
993
925
|
{
|
|
994
926
|
"include": "#nest_brackets"
|
|
995
927
|
}
|
|
996
|
-
]
|
|
997
|
-
},
|
|
998
|
-
{
|
|
999
|
-
"begin": "%w\\(",
|
|
928
|
+
],
|
|
1000
929
|
"beginCaptures": {
|
|
1001
930
|
"0": {
|
|
1002
931
|
"name": "punctuation.section.array.begin.ruby"
|
|
1003
932
|
}
|
|
1004
933
|
},
|
|
1005
|
-
"end": "\\)",
|
|
1006
934
|
"endCaptures": {
|
|
1007
935
|
"0": {
|
|
1008
936
|
"name": "punctuation.section.array.end.ruby"
|
|
1009
937
|
}
|
|
1010
|
-
}
|
|
938
|
+
}
|
|
939
|
+
},
|
|
940
|
+
{
|
|
1011
941
|
"name": "string.quoted.other.ruby",
|
|
942
|
+
"begin": "%w\\(",
|
|
943
|
+
"end": "\\)",
|
|
1012
944
|
"patterns": [
|
|
1013
945
|
{
|
|
1014
|
-
"
|
|
1015
|
-
"
|
|
946
|
+
"name": "constant.character.escape.ruby",
|
|
947
|
+
"match": "\\\\\\)|\\\\\\\\"
|
|
1016
948
|
},
|
|
1017
949
|
{
|
|
1018
950
|
"include": "#nest_parens"
|
|
1019
951
|
}
|
|
1020
|
-
]
|
|
1021
|
-
},
|
|
1022
|
-
{
|
|
1023
|
-
"begin": "%w<",
|
|
952
|
+
],
|
|
1024
953
|
"beginCaptures": {
|
|
1025
954
|
"0": {
|
|
1026
955
|
"name": "punctuation.section.array.begin.ruby"
|
|
1027
956
|
}
|
|
1028
957
|
},
|
|
1029
|
-
"end": ">",
|
|
1030
958
|
"endCaptures": {
|
|
1031
959
|
"0": {
|
|
1032
960
|
"name": "punctuation.section.array.end.ruby"
|
|
1033
961
|
}
|
|
1034
|
-
}
|
|
962
|
+
}
|
|
963
|
+
},
|
|
964
|
+
{
|
|
1035
965
|
"name": "string.quoted.other.ruby",
|
|
966
|
+
"begin": "%w\u003c",
|
|
967
|
+
"end": "\u003e",
|
|
1036
968
|
"patterns": [
|
|
1037
969
|
{
|
|
1038
|
-
"
|
|
1039
|
-
"
|
|
970
|
+
"name": "constant.character.escape.ruby",
|
|
971
|
+
"match": "\\\\\u003e|\\\\\\\\"
|
|
1040
972
|
},
|
|
1041
973
|
{
|
|
1042
974
|
"include": "#nest_ltgt"
|
|
1043
975
|
}
|
|
1044
|
-
]
|
|
1045
|
-
},
|
|
1046
|
-
{
|
|
1047
|
-
"begin": "%w{",
|
|
976
|
+
],
|
|
1048
977
|
"beginCaptures": {
|
|
1049
978
|
"0": {
|
|
1050
979
|
"name": "punctuation.section.array.begin.ruby"
|
|
1051
980
|
}
|
|
1052
981
|
},
|
|
1053
|
-
"end": "}",
|
|
1054
982
|
"endCaptures": {
|
|
1055
983
|
"0": {
|
|
1056
984
|
"name": "punctuation.section.array.end.ruby"
|
|
1057
985
|
}
|
|
1058
|
-
}
|
|
986
|
+
}
|
|
987
|
+
},
|
|
988
|
+
{
|
|
1059
989
|
"name": "string.quoted.other.ruby",
|
|
990
|
+
"begin": "%w{",
|
|
991
|
+
"end": "}",
|
|
1060
992
|
"patterns": [
|
|
1061
993
|
{
|
|
1062
|
-
"
|
|
1063
|
-
"
|
|
994
|
+
"name": "constant.character.escape.ruby",
|
|
995
|
+
"match": "\\\\}|\\\\\\\\"
|
|
1064
996
|
},
|
|
1065
997
|
{
|
|
1066
998
|
"include": "#nest_curly"
|
|
1067
999
|
}
|
|
1068
|
-
]
|
|
1069
|
-
},
|
|
1070
|
-
{
|
|
1071
|
-
"begin": "%w([^\\w])",
|
|
1000
|
+
],
|
|
1072
1001
|
"beginCaptures": {
|
|
1073
1002
|
"0": {
|
|
1074
1003
|
"name": "punctuation.section.array.begin.ruby"
|
|
1075
1004
|
}
|
|
1076
1005
|
},
|
|
1077
|
-
"end": "\\1",
|
|
1078
1006
|
"endCaptures": {
|
|
1079
1007
|
"0": {
|
|
1080
1008
|
"name": "punctuation.section.array.end.ruby"
|
|
1081
1009
|
}
|
|
1082
|
-
}
|
|
1010
|
+
}
|
|
1011
|
+
},
|
|
1012
|
+
{
|
|
1083
1013
|
"name": "string.quoted.other.ruby",
|
|
1014
|
+
"begin": "%w([^\\w])",
|
|
1015
|
+
"end": "\\1",
|
|
1084
1016
|
"patterns": [
|
|
1085
1017
|
{
|
|
1086
|
-
"comment": "Cant be named because its not neccesarily an escape.",
|
|
1087
1018
|
"match": "\\\\."
|
|
1088
1019
|
}
|
|
1089
|
-
]
|
|
1090
|
-
},
|
|
1091
|
-
{
|
|
1092
|
-
"begin": "%[Qx]?\\(",
|
|
1020
|
+
],
|
|
1093
1021
|
"beginCaptures": {
|
|
1094
1022
|
"0": {
|
|
1095
|
-
"name": "punctuation.
|
|
1023
|
+
"name": "punctuation.section.array.begin.ruby"
|
|
1096
1024
|
}
|
|
1097
1025
|
},
|
|
1098
|
-
"end": "\\)",
|
|
1099
1026
|
"endCaptures": {
|
|
1100
1027
|
"0": {
|
|
1101
|
-
"name": "punctuation.
|
|
1028
|
+
"name": "punctuation.section.array.end.ruby"
|
|
1102
1029
|
}
|
|
1103
|
-
}
|
|
1030
|
+
}
|
|
1031
|
+
},
|
|
1032
|
+
{
|
|
1104
1033
|
"name": "string.quoted.other.interpolated.ruby",
|
|
1034
|
+
"begin": "%[Qx]?\\(",
|
|
1035
|
+
"end": "\\)",
|
|
1105
1036
|
"patterns": [
|
|
1106
1037
|
{
|
|
1107
1038
|
"include": "#interpolated_ruby"
|
|
@@ -1112,22 +1043,22 @@
|
|
|
1112
1043
|
{
|
|
1113
1044
|
"include": "#nest_parens_i"
|
|
1114
1045
|
}
|
|
1115
|
-
]
|
|
1116
|
-
},
|
|
1117
|
-
{
|
|
1118
|
-
"begin": "%[Qx]?\\[",
|
|
1046
|
+
],
|
|
1119
1047
|
"beginCaptures": {
|
|
1120
1048
|
"0": {
|
|
1121
1049
|
"name": "punctuation.definition.string.begin.ruby"
|
|
1122
1050
|
}
|
|
1123
1051
|
},
|
|
1124
|
-
"end": "]",
|
|
1125
1052
|
"endCaptures": {
|
|
1126
1053
|
"0": {
|
|
1127
1054
|
"name": "punctuation.definition.string.end.ruby"
|
|
1128
1055
|
}
|
|
1129
|
-
}
|
|
1056
|
+
}
|
|
1057
|
+
},
|
|
1058
|
+
{
|
|
1130
1059
|
"name": "string.quoted.other.interpolated.ruby",
|
|
1060
|
+
"begin": "%[Qx]?\\[",
|
|
1061
|
+
"end": "]",
|
|
1131
1062
|
"patterns": [
|
|
1132
1063
|
{
|
|
1133
1064
|
"include": "#interpolated_ruby"
|
|
@@ -1138,22 +1069,22 @@
|
|
|
1138
1069
|
{
|
|
1139
1070
|
"include": "#nest_brackets_i"
|
|
1140
1071
|
}
|
|
1141
|
-
]
|
|
1142
|
-
},
|
|
1143
|
-
{
|
|
1144
|
-
"begin": "%[Qx]?{",
|
|
1072
|
+
],
|
|
1145
1073
|
"beginCaptures": {
|
|
1146
1074
|
"0": {
|
|
1147
1075
|
"name": "punctuation.definition.string.begin.ruby"
|
|
1148
1076
|
}
|
|
1149
1077
|
},
|
|
1150
|
-
"end": "}",
|
|
1151
1078
|
"endCaptures": {
|
|
1152
1079
|
"0": {
|
|
1153
1080
|
"name": "punctuation.definition.string.end.ruby"
|
|
1154
1081
|
}
|
|
1155
|
-
}
|
|
1082
|
+
}
|
|
1083
|
+
},
|
|
1084
|
+
{
|
|
1156
1085
|
"name": "string.quoted.other.interpolated.ruby",
|
|
1086
|
+
"begin": "%[Qx]?{",
|
|
1087
|
+
"end": "}",
|
|
1157
1088
|
"patterns": [
|
|
1158
1089
|
{
|
|
1159
1090
|
"include": "#interpolated_ruby"
|
|
@@ -1164,22 +1095,22 @@
|
|
|
1164
1095
|
{
|
|
1165
1096
|
"include": "#nest_curly_i"
|
|
1166
1097
|
}
|
|
1167
|
-
]
|
|
1168
|
-
},
|
|
1169
|
-
{
|
|
1170
|
-
"begin": "%[Qx]?<",
|
|
1098
|
+
],
|
|
1171
1099
|
"beginCaptures": {
|
|
1172
1100
|
"0": {
|
|
1173
1101
|
"name": "punctuation.definition.string.begin.ruby"
|
|
1174
1102
|
}
|
|
1175
1103
|
},
|
|
1176
|
-
"end": ">",
|
|
1177
1104
|
"endCaptures": {
|
|
1178
1105
|
"0": {
|
|
1179
1106
|
"name": "punctuation.definition.string.end.ruby"
|
|
1180
1107
|
}
|
|
1181
|
-
}
|
|
1108
|
+
}
|
|
1109
|
+
},
|
|
1110
|
+
{
|
|
1182
1111
|
"name": "string.quoted.other.interpolated.ruby",
|
|
1112
|
+
"begin": "%[Qx]?\u003c",
|
|
1113
|
+
"end": "\u003e",
|
|
1183
1114
|
"patterns": [
|
|
1184
1115
|
{
|
|
1185
1116
|
"include": "#interpolated_ruby"
|
|
@@ -1190,22 +1121,22 @@
|
|
|
1190
1121
|
{
|
|
1191
1122
|
"include": "#nest_ltgt_i"
|
|
1192
1123
|
}
|
|
1193
|
-
]
|
|
1194
|
-
},
|
|
1195
|
-
{
|
|
1196
|
-
"begin": "%[Qx]([^\\w])",
|
|
1124
|
+
],
|
|
1197
1125
|
"beginCaptures": {
|
|
1198
1126
|
"0": {
|
|
1199
1127
|
"name": "punctuation.definition.string.begin.ruby"
|
|
1200
1128
|
}
|
|
1201
1129
|
},
|
|
1202
|
-
"end": "\\1",
|
|
1203
1130
|
"endCaptures": {
|
|
1204
1131
|
"0": {
|
|
1205
1132
|
"name": "punctuation.definition.string.end.ruby"
|
|
1206
1133
|
}
|
|
1207
|
-
}
|
|
1134
|
+
}
|
|
1135
|
+
},
|
|
1136
|
+
{
|
|
1208
1137
|
"name": "string.quoted.other.interpolated.ruby",
|
|
1138
|
+
"begin": "%[Qx]([^\\w])",
|
|
1139
|
+
"end": "\\1",
|
|
1209
1140
|
"patterns": [
|
|
1210
1141
|
{
|
|
1211
1142
|
"include": "#interpolated_ruby"
|
|
@@ -1213,361 +1144,354 @@
|
|
|
1213
1144
|
{
|
|
1214
1145
|
"include": "#escaped_char"
|
|
1215
1146
|
}
|
|
1216
|
-
]
|
|
1217
|
-
},
|
|
1218
|
-
{
|
|
1219
|
-
"begin": "%([^\\w\\s=])",
|
|
1147
|
+
],
|
|
1220
1148
|
"beginCaptures": {
|
|
1221
1149
|
"0": {
|
|
1222
1150
|
"name": "punctuation.definition.string.begin.ruby"
|
|
1223
1151
|
}
|
|
1224
1152
|
},
|
|
1225
|
-
"end": "\\1",
|
|
1226
1153
|
"endCaptures": {
|
|
1227
1154
|
"0": {
|
|
1228
1155
|
"name": "punctuation.definition.string.end.ruby"
|
|
1229
1156
|
}
|
|
1230
|
-
}
|
|
1157
|
+
}
|
|
1158
|
+
},
|
|
1159
|
+
{
|
|
1231
1160
|
"name": "string.quoted.other.interpolated.ruby",
|
|
1232
|
-
"
|
|
1161
|
+
"begin": "%([^\\w\\s=])",
|
|
1162
|
+
"end": "\\1",
|
|
1163
|
+
"patterns": [
|
|
1233
1164
|
{
|
|
1234
1165
|
"include": "#interpolated_ruby"
|
|
1235
1166
|
},
|
|
1236
1167
|
{
|
|
1237
1168
|
"include": "#escaped_char"
|
|
1238
1169
|
}
|
|
1239
|
-
]
|
|
1240
|
-
},
|
|
1241
|
-
{
|
|
1242
|
-
"begin": "%q\\(",
|
|
1170
|
+
],
|
|
1243
1171
|
"beginCaptures": {
|
|
1244
1172
|
"0": {
|
|
1245
1173
|
"name": "punctuation.definition.string.begin.ruby"
|
|
1246
1174
|
}
|
|
1247
1175
|
},
|
|
1248
|
-
"end": "\\)",
|
|
1249
1176
|
"endCaptures": {
|
|
1250
1177
|
"0": {
|
|
1251
1178
|
"name": "punctuation.definition.string.end.ruby"
|
|
1252
1179
|
}
|
|
1253
|
-
}
|
|
1180
|
+
}
|
|
1181
|
+
},
|
|
1182
|
+
{
|
|
1254
1183
|
"name": "string.quoted.other.ruby",
|
|
1184
|
+
"begin": "%q\\(",
|
|
1185
|
+
"end": "\\)",
|
|
1255
1186
|
"patterns": [
|
|
1256
1187
|
{
|
|
1257
|
-
"
|
|
1258
|
-
"
|
|
1188
|
+
"name": "constant.character.escape.ruby",
|
|
1189
|
+
"match": "\\\\\\)|\\\\\\\\"
|
|
1259
1190
|
},
|
|
1260
1191
|
{
|
|
1261
1192
|
"include": "#nest_parens"
|
|
1262
1193
|
}
|
|
1263
|
-
]
|
|
1264
|
-
},
|
|
1265
|
-
{
|
|
1266
|
-
"begin": "%q<",
|
|
1194
|
+
],
|
|
1267
1195
|
"beginCaptures": {
|
|
1268
1196
|
"0": {
|
|
1269
1197
|
"name": "punctuation.definition.string.begin.ruby"
|
|
1270
1198
|
}
|
|
1271
1199
|
},
|
|
1272
|
-
"end": ">",
|
|
1273
1200
|
"endCaptures": {
|
|
1274
1201
|
"0": {
|
|
1275
1202
|
"name": "punctuation.definition.string.end.ruby"
|
|
1276
1203
|
}
|
|
1277
|
-
}
|
|
1204
|
+
}
|
|
1205
|
+
},
|
|
1206
|
+
{
|
|
1278
1207
|
"name": "string.quoted.other.ruby",
|
|
1208
|
+
"begin": "%q\u003c",
|
|
1209
|
+
"end": "\u003e",
|
|
1279
1210
|
"patterns": [
|
|
1280
1211
|
{
|
|
1281
|
-
"
|
|
1282
|
-
"
|
|
1212
|
+
"name": "constant.character.escape.ruby",
|
|
1213
|
+
"match": "\\\\\u003e|\\\\\\\\"
|
|
1283
1214
|
},
|
|
1284
1215
|
{
|
|
1285
1216
|
"include": "#nest_ltgt"
|
|
1286
1217
|
}
|
|
1287
|
-
]
|
|
1288
|
-
},
|
|
1289
|
-
{
|
|
1290
|
-
"begin": "%q\\[",
|
|
1218
|
+
],
|
|
1291
1219
|
"beginCaptures": {
|
|
1292
1220
|
"0": {
|
|
1293
1221
|
"name": "punctuation.definition.string.begin.ruby"
|
|
1294
1222
|
}
|
|
1295
1223
|
},
|
|
1296
|
-
"end": "]",
|
|
1297
1224
|
"endCaptures": {
|
|
1298
1225
|
"0": {
|
|
1299
1226
|
"name": "punctuation.definition.string.end.ruby"
|
|
1300
1227
|
}
|
|
1301
|
-
}
|
|
1228
|
+
}
|
|
1229
|
+
},
|
|
1230
|
+
{
|
|
1302
1231
|
"name": "string.quoted.other.ruby",
|
|
1232
|
+
"begin": "%q\\[",
|
|
1233
|
+
"end": "]",
|
|
1303
1234
|
"patterns": [
|
|
1304
1235
|
{
|
|
1305
|
-
"
|
|
1306
|
-
"
|
|
1236
|
+
"name": "constant.character.escape.ruby",
|
|
1237
|
+
"match": "\\\\]|\\\\\\\\"
|
|
1307
1238
|
},
|
|
1308
1239
|
{
|
|
1309
1240
|
"include": "#nest_brackets"
|
|
1310
1241
|
}
|
|
1311
|
-
]
|
|
1312
|
-
},
|
|
1313
|
-
{
|
|
1314
|
-
"begin": "%q{",
|
|
1242
|
+
],
|
|
1315
1243
|
"beginCaptures": {
|
|
1316
1244
|
"0": {
|
|
1317
1245
|
"name": "punctuation.definition.string.begin.ruby"
|
|
1318
1246
|
}
|
|
1319
1247
|
},
|
|
1320
|
-
"end": "}",
|
|
1321
1248
|
"endCaptures": {
|
|
1322
1249
|
"0": {
|
|
1323
1250
|
"name": "punctuation.definition.string.end.ruby"
|
|
1324
1251
|
}
|
|
1325
|
-
}
|
|
1252
|
+
}
|
|
1253
|
+
},
|
|
1254
|
+
{
|
|
1326
1255
|
"name": "string.quoted.other.ruby",
|
|
1256
|
+
"begin": "%q{",
|
|
1257
|
+
"end": "}",
|
|
1327
1258
|
"patterns": [
|
|
1328
1259
|
{
|
|
1329
|
-
"
|
|
1330
|
-
"
|
|
1260
|
+
"name": "constant.character.escape.ruby",
|
|
1261
|
+
"match": "\\\\}|\\\\\\\\"
|
|
1331
1262
|
},
|
|
1332
1263
|
{
|
|
1333
1264
|
"include": "#nest_curly"
|
|
1334
1265
|
}
|
|
1335
|
-
]
|
|
1336
|
-
},
|
|
1337
|
-
{
|
|
1338
|
-
"begin": "%q([^\\w])",
|
|
1266
|
+
],
|
|
1339
1267
|
"beginCaptures": {
|
|
1340
1268
|
"0": {
|
|
1341
1269
|
"name": "punctuation.definition.string.begin.ruby"
|
|
1342
1270
|
}
|
|
1343
1271
|
},
|
|
1344
|
-
"end": "\\1",
|
|
1345
1272
|
"endCaptures": {
|
|
1346
1273
|
"0": {
|
|
1347
1274
|
"name": "punctuation.definition.string.end.ruby"
|
|
1348
1275
|
}
|
|
1349
|
-
}
|
|
1276
|
+
}
|
|
1277
|
+
},
|
|
1278
|
+
{
|
|
1350
1279
|
"name": "string.quoted.other.ruby",
|
|
1280
|
+
"begin": "%q([^\\w])",
|
|
1281
|
+
"end": "\\1",
|
|
1351
1282
|
"patterns": [
|
|
1352
1283
|
{
|
|
1353
|
-
"comment": "Cant be named because its not neccesarily an escape.",
|
|
1354
1284
|
"match": "\\\\."
|
|
1355
1285
|
}
|
|
1356
|
-
]
|
|
1357
|
-
},
|
|
1358
|
-
{
|
|
1359
|
-
"begin": "%s\\(",
|
|
1286
|
+
],
|
|
1360
1287
|
"beginCaptures": {
|
|
1361
1288
|
"0": {
|
|
1362
|
-
"name": "punctuation.definition.
|
|
1289
|
+
"name": "punctuation.definition.string.begin.ruby"
|
|
1363
1290
|
}
|
|
1364
1291
|
},
|
|
1365
|
-
"end": "\\)",
|
|
1366
1292
|
"endCaptures": {
|
|
1367
1293
|
"0": {
|
|
1368
|
-
"name": "punctuation.definition.
|
|
1294
|
+
"name": "punctuation.definition.string.end.ruby"
|
|
1369
1295
|
}
|
|
1370
|
-
}
|
|
1296
|
+
}
|
|
1297
|
+
},
|
|
1298
|
+
{
|
|
1371
1299
|
"name": "constant.other.symbol.ruby",
|
|
1300
|
+
"begin": "%s\\(",
|
|
1301
|
+
"end": "\\)",
|
|
1372
1302
|
"patterns": [
|
|
1373
1303
|
{
|
|
1374
|
-
"
|
|
1375
|
-
"
|
|
1304
|
+
"name": "constant.character.escape.ruby",
|
|
1305
|
+
"match": "\\\\\\)|\\\\\\\\"
|
|
1376
1306
|
},
|
|
1377
1307
|
{
|
|
1378
1308
|
"include": "#nest_parens"
|
|
1379
1309
|
}
|
|
1380
|
-
]
|
|
1381
|
-
},
|
|
1382
|
-
{
|
|
1383
|
-
"begin": "%s<",
|
|
1310
|
+
],
|
|
1384
1311
|
"beginCaptures": {
|
|
1385
1312
|
"0": {
|
|
1386
1313
|
"name": "punctuation.definition.symbol.begin.ruby"
|
|
1387
1314
|
}
|
|
1388
1315
|
},
|
|
1389
|
-
"end": ">",
|
|
1390
1316
|
"endCaptures": {
|
|
1391
1317
|
"0": {
|
|
1392
1318
|
"name": "punctuation.definition.symbol.end.ruby"
|
|
1393
1319
|
}
|
|
1394
|
-
}
|
|
1320
|
+
}
|
|
1321
|
+
},
|
|
1322
|
+
{
|
|
1395
1323
|
"name": "constant.other.symbol.ruby",
|
|
1324
|
+
"begin": "%s\u003c",
|
|
1325
|
+
"end": "\u003e",
|
|
1396
1326
|
"patterns": [
|
|
1397
1327
|
{
|
|
1398
|
-
"
|
|
1399
|
-
"
|
|
1328
|
+
"name": "constant.character.escape.ruby",
|
|
1329
|
+
"match": "\\\\\u003e|\\\\\\\\"
|
|
1400
1330
|
},
|
|
1401
1331
|
{
|
|
1402
1332
|
"include": "#nest_ltgt"
|
|
1403
1333
|
}
|
|
1404
|
-
]
|
|
1405
|
-
},
|
|
1406
|
-
{
|
|
1407
|
-
"begin": "%s\\[",
|
|
1334
|
+
],
|
|
1408
1335
|
"beginCaptures": {
|
|
1409
1336
|
"0": {
|
|
1410
1337
|
"name": "punctuation.definition.symbol.begin.ruby"
|
|
1411
1338
|
}
|
|
1412
1339
|
},
|
|
1413
|
-
"end": "]",
|
|
1414
1340
|
"endCaptures": {
|
|
1415
1341
|
"0": {
|
|
1416
1342
|
"name": "punctuation.definition.symbol.end.ruby"
|
|
1417
1343
|
}
|
|
1418
|
-
}
|
|
1344
|
+
}
|
|
1345
|
+
},
|
|
1346
|
+
{
|
|
1419
1347
|
"name": "constant.other.symbol.ruby",
|
|
1348
|
+
"begin": "%s\\[",
|
|
1349
|
+
"end": "]",
|
|
1420
1350
|
"patterns": [
|
|
1421
1351
|
{
|
|
1422
|
-
"
|
|
1423
|
-
"
|
|
1352
|
+
"name": "constant.character.escape.ruby",
|
|
1353
|
+
"match": "\\\\]|\\\\\\\\"
|
|
1424
1354
|
},
|
|
1425
1355
|
{
|
|
1426
1356
|
"include": "#nest_brackets"
|
|
1427
1357
|
}
|
|
1428
|
-
]
|
|
1429
|
-
},
|
|
1430
|
-
{
|
|
1431
|
-
"begin": "%s{",
|
|
1358
|
+
],
|
|
1432
1359
|
"beginCaptures": {
|
|
1433
1360
|
"0": {
|
|
1434
1361
|
"name": "punctuation.definition.symbol.begin.ruby"
|
|
1435
1362
|
}
|
|
1436
1363
|
},
|
|
1437
|
-
"end": "}",
|
|
1438
1364
|
"endCaptures": {
|
|
1439
1365
|
"0": {
|
|
1440
1366
|
"name": "punctuation.definition.symbol.end.ruby"
|
|
1441
1367
|
}
|
|
1442
|
-
}
|
|
1368
|
+
}
|
|
1369
|
+
},
|
|
1370
|
+
{
|
|
1443
1371
|
"name": "constant.other.symbol.ruby",
|
|
1372
|
+
"begin": "%s{",
|
|
1373
|
+
"end": "}",
|
|
1444
1374
|
"patterns": [
|
|
1445
1375
|
{
|
|
1446
|
-
"
|
|
1447
|
-
"
|
|
1376
|
+
"name": "constant.character.escape.ruby",
|
|
1377
|
+
"match": "\\\\}|\\\\\\\\"
|
|
1448
1378
|
},
|
|
1449
1379
|
{
|
|
1450
1380
|
"include": "#nest_curly"
|
|
1451
1381
|
}
|
|
1452
|
-
]
|
|
1453
|
-
},
|
|
1454
|
-
{
|
|
1455
|
-
"begin": "%s([^\\w])",
|
|
1382
|
+
],
|
|
1456
1383
|
"beginCaptures": {
|
|
1457
1384
|
"0": {
|
|
1458
1385
|
"name": "punctuation.definition.symbol.begin.ruby"
|
|
1459
1386
|
}
|
|
1460
1387
|
},
|
|
1461
|
-
"end": "\\1",
|
|
1462
1388
|
"endCaptures": {
|
|
1463
1389
|
"0": {
|
|
1464
1390
|
"name": "punctuation.definition.symbol.end.ruby"
|
|
1465
1391
|
}
|
|
1466
|
-
}
|
|
1392
|
+
}
|
|
1393
|
+
},
|
|
1394
|
+
{
|
|
1467
1395
|
"name": "constant.other.symbol.ruby",
|
|
1396
|
+
"begin": "%s([^\\w])",
|
|
1397
|
+
"end": "\\1",
|
|
1468
1398
|
"patterns": [
|
|
1469
1399
|
{
|
|
1470
|
-
"comment": "Cant be named because its not neccesarily an escape.",
|
|
1471
1400
|
"match": "\\\\."
|
|
1472
1401
|
}
|
|
1473
|
-
]
|
|
1402
|
+
],
|
|
1403
|
+
"beginCaptures": {
|
|
1404
|
+
"0": {
|
|
1405
|
+
"name": "punctuation.definition.symbol.begin.ruby"
|
|
1406
|
+
}
|
|
1407
|
+
},
|
|
1408
|
+
"endCaptures": {
|
|
1409
|
+
"0": {
|
|
1410
|
+
"name": "punctuation.definition.symbol.end.ruby"
|
|
1411
|
+
}
|
|
1412
|
+
}
|
|
1474
1413
|
},
|
|
1475
1414
|
{
|
|
1415
|
+
"name": "constant.other.symbol.ruby",
|
|
1416
|
+
"match": "(?x)\n(?\u003c!:)(:)\n(?\u003e\n [$a-zA-Z_]\\w*(?\u003e[?!]|=(?![\u003e=]))?\n |\n ===?|\u003c=\u003e|\u003e[\u003e=]?|\u003c[\u003c=]?|[%\u0026`/\\|]|\\*\\*?|=?~|[-+]@?|\\[]=?\n |\n @@?[a-zA-Z_]\\w*\n)",
|
|
1476
1417
|
"captures": {
|
|
1477
1418
|
"1": {
|
|
1478
1419
|
"name": "punctuation.definition.constant.ruby"
|
|
1479
1420
|
}
|
|
1480
|
-
}
|
|
1481
|
-
"comment": "symbols",
|
|
1482
|
-
"match": "(?x)\n(?<!:)(:)\n(?>\n [$a-zA-Z_]\\w*(?>[?!]|=(?![>=]))?\n |\n ===?|<=>|>[>=]?|<[<=]?|[%&`/\\|]|\\*\\*?|=?~|[-+]@?|\\[]=?\n |\n @@?[a-zA-Z_]\\w*\n)",
|
|
1483
|
-
"name": "constant.other.symbol.ruby"
|
|
1421
|
+
}
|
|
1484
1422
|
},
|
|
1485
1423
|
{
|
|
1424
|
+
"name": "comment.block.documentation.ruby",
|
|
1486
1425
|
"begin": "^=begin",
|
|
1426
|
+
"end": "^=end",
|
|
1487
1427
|
"captures": {
|
|
1488
1428
|
"0": {
|
|
1489
1429
|
"name": "punctuation.definition.comment.ruby"
|
|
1490
1430
|
}
|
|
1491
|
-
}
|
|
1492
|
-
"comment": "multiline comments",
|
|
1493
|
-
"end": "^=end",
|
|
1494
|
-
"name": "comment.block.documentation.ruby"
|
|
1431
|
+
}
|
|
1495
1432
|
},
|
|
1496
1433
|
{
|
|
1497
1434
|
"begin": "(^[ \\t]+)?(?=#)",
|
|
1498
|
-
"beginCaptures": {
|
|
1499
|
-
"1": {
|
|
1500
|
-
"name": "punctuation.whitespace.comment.leading.ruby"
|
|
1501
|
-
}
|
|
1502
|
-
},
|
|
1503
1435
|
"end": "(?!\\G)",
|
|
1504
1436
|
"patterns": [
|
|
1505
1437
|
{
|
|
1438
|
+
"name": "comment.line.number-sign.ruby",
|
|
1506
1439
|
"begin": "#",
|
|
1507
|
-
"beginCaptures": {
|
|
1508
|
-
"0": {
|
|
1509
|
-
"name": "punctuation.definition.comment.ruby"
|
|
1510
|
-
}
|
|
1511
|
-
},
|
|
1512
1440
|
"end": "\\n",
|
|
1513
|
-
"name": "comment.line.number-sign.ruby",
|
|
1514
1441
|
"patterns": [
|
|
1515
1442
|
{
|
|
1516
1443
|
"include": "#yard"
|
|
1517
1444
|
}
|
|
1518
|
-
]
|
|
1445
|
+
],
|
|
1446
|
+
"beginCaptures": {
|
|
1447
|
+
"0": {
|
|
1448
|
+
"name": "punctuation.definition.comment.ruby"
|
|
1449
|
+
}
|
|
1450
|
+
}
|
|
1519
1451
|
}
|
|
1520
|
-
]
|
|
1452
|
+
],
|
|
1453
|
+
"beginCaptures": {
|
|
1454
|
+
"1": {
|
|
1455
|
+
"name": "punctuation.whitespace.comment.leading.ruby"
|
|
1456
|
+
}
|
|
1457
|
+
}
|
|
1521
1458
|
},
|
|
1522
1459
|
{
|
|
1523
|
-
"
|
|
1524
|
-
"match": "(
|
|
1525
|
-
"name": "constant.numeric.ruby"
|
|
1460
|
+
"name": "constant.numeric.ruby",
|
|
1461
|
+
"match": "(?\u003c!\\w)\\?(\\\\(x[[:xdigit:]]{1,2}(?![[:xdigit:]])\\b|0[0-7]{0,2}(?![0-7])\\b|[^x0MC])|(\\\\[MC]-)+\\w|[^\\s\\\\])"
|
|
1526
1462
|
},
|
|
1527
1463
|
{
|
|
1528
|
-
"begin": "^__END__\\n",
|
|
1529
|
-
"captures": {
|
|
1530
|
-
"0": {
|
|
1531
|
-
"name": "string.unquoted.program-block.ruby"
|
|
1532
|
-
}
|
|
1533
|
-
},
|
|
1534
|
-
"comment": "__END__ marker",
|
|
1535
1464
|
"contentName": "text.plain",
|
|
1465
|
+
"begin": "^__END__\\n",
|
|
1536
1466
|
"end": "(?=not)impossible",
|
|
1537
1467
|
"patterns": [
|
|
1538
1468
|
{
|
|
1539
|
-
"begin": "(?=<?xml|<(?i:html\\b)|!DOCTYPE (?i:html\\b))",
|
|
1540
|
-
"end": "(?=not)impossible",
|
|
1541
1469
|
"name": "text.html.embedded.ruby",
|
|
1470
|
+
"begin": "(?=\u003c?xml|\u003c(?i:html\\b)|!DOCTYPE (?i:html\\b))",
|
|
1471
|
+
"end": "(?=not)impossible",
|
|
1542
1472
|
"patterns": [
|
|
1543
1473
|
{
|
|
1544
1474
|
"include": "text.html.basic"
|
|
1545
1475
|
}
|
|
1546
1476
|
]
|
|
1547
1477
|
}
|
|
1548
|
-
]
|
|
1478
|
+
],
|
|
1479
|
+
"captures": {
|
|
1480
|
+
"0": {
|
|
1481
|
+
"name": "string.unquoted.program-block.ruby"
|
|
1482
|
+
}
|
|
1483
|
+
}
|
|
1549
1484
|
},
|
|
1550
1485
|
{
|
|
1551
|
-
"begin": "(?=(?><<[-~](\"?)((?:[_\\w]+_|)HTML)\\b\\1))",
|
|
1552
|
-
"comment": "Heredoc with embedded html",
|
|
1553
|
-
"end": "(?!\\G)",
|
|
1554
1486
|
"name": "meta.embedded.block.html",
|
|
1487
|
+
"begin": "(?=(?\u003e\u003c\u003c[-~](\"?)((?:[_\\w]+_|)HTML)\\b\\1))",
|
|
1488
|
+
"end": "(?!\\G)",
|
|
1555
1489
|
"patterns": [
|
|
1556
1490
|
{
|
|
1557
|
-
"
|
|
1558
|
-
"beginCaptures": {
|
|
1559
|
-
"0": {
|
|
1560
|
-
"name": "punctuation.definition.string.begin.ruby"
|
|
1561
|
-
}
|
|
1562
|
-
},
|
|
1491
|
+
"name": "string.unquoted.heredoc.ruby",
|
|
1563
1492
|
"contentName": "text.html",
|
|
1493
|
+
"begin": "(?\u003e\u003c\u003c[-~](\"?)((?:[_\\w]+_|)HTML)\\b\\1)",
|
|
1564
1494
|
"end": "^\\s*\\2$\\n?",
|
|
1565
|
-
"endCaptures": {
|
|
1566
|
-
"0": {
|
|
1567
|
-
"name": "punctuation.definition.string.end.ruby"
|
|
1568
|
-
}
|
|
1569
|
-
},
|
|
1570
|
-
"name": "string.unquoted.heredoc.ruby",
|
|
1571
1495
|
"patterns": [
|
|
1572
1496
|
{
|
|
1573
1497
|
"include": "#heredoc"
|
|
@@ -1581,31 +1505,30 @@
|
|
|
1581
1505
|
{
|
|
1582
1506
|
"include": "#escaped_char"
|
|
1583
1507
|
}
|
|
1584
|
-
]
|
|
1585
|
-
}
|
|
1586
|
-
]
|
|
1587
|
-
},
|
|
1588
|
-
{
|
|
1589
|
-
"begin": "(?=(?><<[-~](\"?)((?:[_\\w]+_|)XML)\\b\\1))",
|
|
1590
|
-
"comment": "Heredoc with embedded xml",
|
|
1591
|
-
"end": "(?!\\G)",
|
|
1592
|
-
"name": "meta.embedded.block.xml",
|
|
1593
|
-
"patterns": [
|
|
1594
|
-
{
|
|
1595
|
-
"begin": "(?><<[-~](\"?)((?:[_\\w]+_|)XML)\\b\\1)",
|
|
1508
|
+
],
|
|
1596
1509
|
"beginCaptures": {
|
|
1597
1510
|
"0": {
|
|
1598
1511
|
"name": "punctuation.definition.string.begin.ruby"
|
|
1599
1512
|
}
|
|
1600
1513
|
},
|
|
1601
|
-
"contentName": "text.xml",
|
|
1602
|
-
"end": "^\\s*\\2$\\n?",
|
|
1603
1514
|
"endCaptures": {
|
|
1604
1515
|
"0": {
|
|
1605
1516
|
"name": "punctuation.definition.string.end.ruby"
|
|
1606
1517
|
}
|
|
1607
|
-
}
|
|
1518
|
+
}
|
|
1519
|
+
}
|
|
1520
|
+
]
|
|
1521
|
+
},
|
|
1522
|
+
{
|
|
1523
|
+
"name": "meta.embedded.block.xml",
|
|
1524
|
+
"begin": "(?=(?\u003e\u003c\u003c[-~](\"?)((?:[_\\w]+_|)XML)\\b\\1))",
|
|
1525
|
+
"end": "(?!\\G)",
|
|
1526
|
+
"patterns": [
|
|
1527
|
+
{
|
|
1608
1528
|
"name": "string.unquoted.heredoc.ruby",
|
|
1529
|
+
"contentName": "text.xml",
|
|
1530
|
+
"begin": "(?\u003e\u003c\u003c[-~](\"?)((?:[_\\w]+_|)XML)\\b\\1)",
|
|
1531
|
+
"end": "^\\s*\\2$\\n?",
|
|
1609
1532
|
"patterns": [
|
|
1610
1533
|
{
|
|
1611
1534
|
"include": "#heredoc"
|
|
@@ -1619,31 +1542,30 @@
|
|
|
1619
1542
|
{
|
|
1620
1543
|
"include": "#escaped_char"
|
|
1621
1544
|
}
|
|
1622
|
-
]
|
|
1623
|
-
}
|
|
1624
|
-
]
|
|
1625
|
-
},
|
|
1626
|
-
{
|
|
1627
|
-
"begin": "(?=(?><<[-~](\"?)((?:[_\\w]+_|)SQL)\\b\\1))",
|
|
1628
|
-
"comment": "Heredoc with embedded sql",
|
|
1629
|
-
"end": "(?!\\G)",
|
|
1630
|
-
"name": "meta.embedded.block.sql",
|
|
1631
|
-
"patterns": [
|
|
1632
|
-
{
|
|
1633
|
-
"begin": "(?><<[-~](\"?)((?:[_\\w]+_|)SQL)\\b\\1)",
|
|
1545
|
+
],
|
|
1634
1546
|
"beginCaptures": {
|
|
1635
1547
|
"0": {
|
|
1636
1548
|
"name": "punctuation.definition.string.begin.ruby"
|
|
1637
1549
|
}
|
|
1638
1550
|
},
|
|
1639
|
-
"contentName": "source.sql",
|
|
1640
|
-
"end": "^\\s*\\2$\\n?",
|
|
1641
1551
|
"endCaptures": {
|
|
1642
1552
|
"0": {
|
|
1643
1553
|
"name": "punctuation.definition.string.end.ruby"
|
|
1644
1554
|
}
|
|
1645
|
-
}
|
|
1555
|
+
}
|
|
1556
|
+
}
|
|
1557
|
+
]
|
|
1558
|
+
},
|
|
1559
|
+
{
|
|
1560
|
+
"name": "meta.embedded.block.sql",
|
|
1561
|
+
"begin": "(?=(?\u003e\u003c\u003c[-~](\"?)((?:[_\\w]+_|)SQL)\\b\\1))",
|
|
1562
|
+
"end": "(?!\\G)",
|
|
1563
|
+
"patterns": [
|
|
1564
|
+
{
|
|
1646
1565
|
"name": "string.unquoted.heredoc.ruby",
|
|
1566
|
+
"contentName": "source.sql",
|
|
1567
|
+
"begin": "(?\u003e\u003c\u003c[-~](\"?)((?:[_\\w]+_|)SQL)\\b\\1)",
|
|
1568
|
+
"end": "^\\s*\\2$\\n?",
|
|
1647
1569
|
"patterns": [
|
|
1648
1570
|
{
|
|
1649
1571
|
"include": "#heredoc"
|
|
@@ -1657,31 +1579,30 @@
|
|
|
1657
1579
|
{
|
|
1658
1580
|
"include": "#escaped_char"
|
|
1659
1581
|
}
|
|
1660
|
-
]
|
|
1661
|
-
}
|
|
1662
|
-
]
|
|
1663
|
-
},
|
|
1664
|
-
{
|
|
1665
|
-
"begin": "(?=(?><<[-~](\"?)((?:[_\\w]+_|)GRAPHQL)\\b\\1))",
|
|
1666
|
-
"comment": "Heredoc with embedded GraphQL",
|
|
1667
|
-
"end": "(?!\\G)",
|
|
1668
|
-
"name": "meta.embedded.block.graphql",
|
|
1669
|
-
"patterns": [
|
|
1670
|
-
{
|
|
1671
|
-
"begin": "(?><<[-~](\"?)((?:[_\\w]+_|)GRAPHQL)\\b\\1)",
|
|
1582
|
+
],
|
|
1672
1583
|
"beginCaptures": {
|
|
1673
1584
|
"0": {
|
|
1674
1585
|
"name": "punctuation.definition.string.begin.ruby"
|
|
1675
1586
|
}
|
|
1676
1587
|
},
|
|
1677
|
-
"contentName": "source.graphql",
|
|
1678
|
-
"end": "^\\s*\\2$\\n?",
|
|
1679
1588
|
"endCaptures": {
|
|
1680
1589
|
"0": {
|
|
1681
1590
|
"name": "punctuation.definition.string.end.ruby"
|
|
1682
1591
|
}
|
|
1683
|
-
}
|
|
1592
|
+
}
|
|
1593
|
+
}
|
|
1594
|
+
]
|
|
1595
|
+
},
|
|
1596
|
+
{
|
|
1597
|
+
"name": "meta.embedded.block.graphql",
|
|
1598
|
+
"begin": "(?=(?\u003e\u003c\u003c[-~](\"?)((?:[_\\w]+_|)GRAPHQL)\\b\\1))",
|
|
1599
|
+
"end": "(?!\\G)",
|
|
1600
|
+
"patterns": [
|
|
1601
|
+
{
|
|
1684
1602
|
"name": "string.unquoted.heredoc.ruby",
|
|
1603
|
+
"contentName": "source.graphql",
|
|
1604
|
+
"begin": "(?\u003e\u003c\u003c[-~](\"?)((?:[_\\w]+_|)GRAPHQL)\\b\\1)",
|
|
1605
|
+
"end": "^\\s*\\2$\\n?",
|
|
1685
1606
|
"patterns": [
|
|
1686
1607
|
{
|
|
1687
1608
|
"include": "#heredoc"
|
|
@@ -1695,31 +1616,30 @@
|
|
|
1695
1616
|
{
|
|
1696
1617
|
"include": "#escaped_char"
|
|
1697
1618
|
}
|
|
1698
|
-
]
|
|
1699
|
-
}
|
|
1700
|
-
]
|
|
1701
|
-
},
|
|
1702
|
-
{
|
|
1703
|
-
"begin": "(?=(?><<[-~](\"?)((?:[_\\w]+_|)CSS)\\b\\1))",
|
|
1704
|
-
"comment": "Heredoc with embedded css",
|
|
1705
|
-
"end": "(?!\\G)",
|
|
1706
|
-
"name": "meta.embedded.block.css",
|
|
1707
|
-
"patterns": [
|
|
1708
|
-
{
|
|
1709
|
-
"begin": "(?><<[-~](\"?)((?:[_\\w]+_|)CSS)\\b\\1)",
|
|
1619
|
+
],
|
|
1710
1620
|
"beginCaptures": {
|
|
1711
1621
|
"0": {
|
|
1712
1622
|
"name": "punctuation.definition.string.begin.ruby"
|
|
1713
1623
|
}
|
|
1714
1624
|
},
|
|
1715
|
-
"contentName": "source.css",
|
|
1716
|
-
"end": "^\\s*\\2$\\n?",
|
|
1717
1625
|
"endCaptures": {
|
|
1718
1626
|
"0": {
|
|
1719
1627
|
"name": "punctuation.definition.string.end.ruby"
|
|
1720
1628
|
}
|
|
1721
|
-
}
|
|
1629
|
+
}
|
|
1630
|
+
}
|
|
1631
|
+
]
|
|
1632
|
+
},
|
|
1633
|
+
{
|
|
1634
|
+
"name": "meta.embedded.block.css",
|
|
1635
|
+
"begin": "(?=(?\u003e\u003c\u003c[-~](\"?)((?:[_\\w]+_|)CSS)\\b\\1))",
|
|
1636
|
+
"end": "(?!\\G)",
|
|
1637
|
+
"patterns": [
|
|
1638
|
+
{
|
|
1722
1639
|
"name": "string.unquoted.heredoc.ruby",
|
|
1640
|
+
"contentName": "source.css",
|
|
1641
|
+
"begin": "(?\u003e\u003c\u003c[-~](\"?)((?:[_\\w]+_|)CSS)\\b\\1)",
|
|
1642
|
+
"end": "^\\s*\\2$\\n?",
|
|
1723
1643
|
"patterns": [
|
|
1724
1644
|
{
|
|
1725
1645
|
"include": "#heredoc"
|
|
@@ -1733,31 +1653,30 @@
|
|
|
1733
1653
|
{
|
|
1734
1654
|
"include": "#escaped_char"
|
|
1735
1655
|
}
|
|
1736
|
-
]
|
|
1737
|
-
}
|
|
1738
|
-
]
|
|
1739
|
-
},
|
|
1740
|
-
{
|
|
1741
|
-
"begin": "(?=(?><<[-~](\"?)((?:[_\\w]+_|)CPP)\\b\\1))",
|
|
1742
|
-
"comment": "Heredoc with embedded c++",
|
|
1743
|
-
"end": "(?!\\G)",
|
|
1744
|
-
"name": "meta.embedded.block.cpp",
|
|
1745
|
-
"patterns": [
|
|
1746
|
-
{
|
|
1747
|
-
"begin": "(?><<[-~](\"?)((?:[_\\w]+_|)CPP)\\b\\1)",
|
|
1656
|
+
],
|
|
1748
1657
|
"beginCaptures": {
|
|
1749
1658
|
"0": {
|
|
1750
1659
|
"name": "punctuation.definition.string.begin.ruby"
|
|
1751
1660
|
}
|
|
1752
1661
|
},
|
|
1753
|
-
"contentName": "source.cpp",
|
|
1754
|
-
"end": "^\\s*\\2$\\n?",
|
|
1755
1662
|
"endCaptures": {
|
|
1756
1663
|
"0": {
|
|
1757
1664
|
"name": "punctuation.definition.string.end.ruby"
|
|
1758
1665
|
}
|
|
1759
|
-
}
|
|
1666
|
+
}
|
|
1667
|
+
}
|
|
1668
|
+
]
|
|
1669
|
+
},
|
|
1670
|
+
{
|
|
1671
|
+
"name": "meta.embedded.block.cpp",
|
|
1672
|
+
"begin": "(?=(?\u003e\u003c\u003c[-~](\"?)((?:[_\\w]+_|)CPP)\\b\\1))",
|
|
1673
|
+
"end": "(?!\\G)",
|
|
1674
|
+
"patterns": [
|
|
1675
|
+
{
|
|
1760
1676
|
"name": "string.unquoted.heredoc.ruby",
|
|
1677
|
+
"contentName": "source.cpp",
|
|
1678
|
+
"begin": "(?\u003e\u003c\u003c[-~](\"?)((?:[_\\w]+_|)CPP)\\b\\1)",
|
|
1679
|
+
"end": "^\\s*\\2$\\n?",
|
|
1761
1680
|
"patterns": [
|
|
1762
1681
|
{
|
|
1763
1682
|
"include": "#heredoc"
|
|
@@ -1766,36 +1685,35 @@
|
|
|
1766
1685
|
"include": "#interpolated_ruby"
|
|
1767
1686
|
},
|
|
1768
1687
|
{
|
|
1769
|
-
"include": "source.
|
|
1688
|
+
"include": "source.c++"
|
|
1770
1689
|
},
|
|
1771
1690
|
{
|
|
1772
1691
|
"include": "#escaped_char"
|
|
1773
1692
|
}
|
|
1774
|
-
]
|
|
1775
|
-
}
|
|
1776
|
-
]
|
|
1777
|
-
},
|
|
1778
|
-
{
|
|
1779
|
-
"begin": "(?=(?><<[-~](\"?)((?:[_\\w]+_|)C)\\b\\1))",
|
|
1780
|
-
"comment": "Heredoc with embedded c",
|
|
1781
|
-
"end": "(?!\\G)",
|
|
1782
|
-
"name": "meta.embedded.block.c",
|
|
1783
|
-
"patterns": [
|
|
1784
|
-
{
|
|
1785
|
-
"begin": "(?><<[-~](\"?)((?:[_\\w]+_|)C)\\b\\1)",
|
|
1693
|
+
],
|
|
1786
1694
|
"beginCaptures": {
|
|
1787
1695
|
"0": {
|
|
1788
1696
|
"name": "punctuation.definition.string.begin.ruby"
|
|
1789
1697
|
}
|
|
1790
1698
|
},
|
|
1791
|
-
"contentName": "source.c",
|
|
1792
|
-
"end": "^\\s*\\2$\\n?",
|
|
1793
1699
|
"endCaptures": {
|
|
1794
1700
|
"0": {
|
|
1795
1701
|
"name": "punctuation.definition.string.end.ruby"
|
|
1796
1702
|
}
|
|
1797
|
-
}
|
|
1703
|
+
}
|
|
1704
|
+
}
|
|
1705
|
+
]
|
|
1706
|
+
},
|
|
1707
|
+
{
|
|
1708
|
+
"name": "meta.embedded.block.c",
|
|
1709
|
+
"begin": "(?=(?\u003e\u003c\u003c[-~](\"?)((?:[_\\w]+_|)C)\\b\\1))",
|
|
1710
|
+
"end": "(?!\\G)",
|
|
1711
|
+
"patterns": [
|
|
1712
|
+
{
|
|
1798
1713
|
"name": "string.unquoted.heredoc.ruby",
|
|
1714
|
+
"contentName": "source.c",
|
|
1715
|
+
"begin": "(?\u003e\u003c\u003c[-~](\"?)((?:[_\\w]+_|)C)\\b\\1)",
|
|
1716
|
+
"end": "^\\s*\\2$\\n?",
|
|
1799
1717
|
"patterns": [
|
|
1800
1718
|
{
|
|
1801
1719
|
"include": "#heredoc"
|
|
@@ -1809,31 +1727,30 @@
|
|
|
1809
1727
|
{
|
|
1810
1728
|
"include": "#escaped_char"
|
|
1811
1729
|
}
|
|
1812
|
-
]
|
|
1813
|
-
}
|
|
1814
|
-
]
|
|
1815
|
-
},
|
|
1816
|
-
{
|
|
1817
|
-
"begin": "(?=(?><<[-~](\"?)((?:[_\\w]+_|)(?:JS|JAVASCRIPT))\\b\\1))",
|
|
1818
|
-
"comment": "Heredoc with embedded javascript",
|
|
1819
|
-
"end": "(?!\\G)",
|
|
1820
|
-
"name": "meta.embedded.block.js",
|
|
1821
|
-
"patterns": [
|
|
1822
|
-
{
|
|
1823
|
-
"begin": "(?><<[-~](\"?)((?:[_\\w]+_|)(?:JS|JAVASCRIPT))\\b\\1)",
|
|
1730
|
+
],
|
|
1824
1731
|
"beginCaptures": {
|
|
1825
1732
|
"0": {
|
|
1826
1733
|
"name": "punctuation.definition.string.begin.ruby"
|
|
1827
1734
|
}
|
|
1828
1735
|
},
|
|
1829
|
-
"contentName": "source.js",
|
|
1830
|
-
"end": "^\\s*\\2$\\n?",
|
|
1831
1736
|
"endCaptures": {
|
|
1832
1737
|
"0": {
|
|
1833
1738
|
"name": "punctuation.definition.string.end.ruby"
|
|
1834
1739
|
}
|
|
1835
|
-
}
|
|
1740
|
+
}
|
|
1741
|
+
}
|
|
1742
|
+
]
|
|
1743
|
+
},
|
|
1744
|
+
{
|
|
1745
|
+
"name": "meta.embedded.block.js",
|
|
1746
|
+
"begin": "(?=(?\u003e\u003c\u003c[-~](\"?)((?:[_\\w]+_|)(?:JS|JAVASCRIPT))\\b\\1))",
|
|
1747
|
+
"end": "(?!\\G)",
|
|
1748
|
+
"patterns": [
|
|
1749
|
+
{
|
|
1836
1750
|
"name": "string.unquoted.heredoc.ruby",
|
|
1751
|
+
"contentName": "source.js",
|
|
1752
|
+
"begin": "(?\u003e\u003c\u003c[-~](\"?)((?:[_\\w]+_|)(?:JS|JAVASCRIPT))\\b\\1)",
|
|
1753
|
+
"end": "^\\s*\\2$\\n?",
|
|
1837
1754
|
"patterns": [
|
|
1838
1755
|
{
|
|
1839
1756
|
"include": "#heredoc"
|
|
@@ -1847,31 +1764,30 @@
|
|
|
1847
1764
|
{
|
|
1848
1765
|
"include": "#escaped_char"
|
|
1849
1766
|
}
|
|
1850
|
-
]
|
|
1851
|
-
}
|
|
1852
|
-
]
|
|
1853
|
-
},
|
|
1854
|
-
{
|
|
1855
|
-
"begin": "(?=(?><<[-~](\"?)((?:[_\\w]+_|)JQUERY)\\b\\1))",
|
|
1856
|
-
"comment": "Heredoc with embedded jQuery javascript",
|
|
1857
|
-
"end": "(?!\\G)",
|
|
1858
|
-
"name": "meta.embedded.block.js.jquery",
|
|
1859
|
-
"patterns": [
|
|
1860
|
-
{
|
|
1861
|
-
"begin": "(?><<[-~](\"?)((?:[_\\w]+_|)JQUERY)\\b\\1)",
|
|
1767
|
+
],
|
|
1862
1768
|
"beginCaptures": {
|
|
1863
1769
|
"0": {
|
|
1864
1770
|
"name": "punctuation.definition.string.begin.ruby"
|
|
1865
1771
|
}
|
|
1866
1772
|
},
|
|
1867
|
-
"contentName": "source.js.jquery",
|
|
1868
|
-
"end": "^\\s*\\2$\\n?",
|
|
1869
1773
|
"endCaptures": {
|
|
1870
1774
|
"0": {
|
|
1871
1775
|
"name": "punctuation.definition.string.end.ruby"
|
|
1872
1776
|
}
|
|
1873
|
-
}
|
|
1777
|
+
}
|
|
1778
|
+
}
|
|
1779
|
+
]
|
|
1780
|
+
},
|
|
1781
|
+
{
|
|
1782
|
+
"name": "meta.embedded.block.js.jquery",
|
|
1783
|
+
"begin": "(?=(?\u003e\u003c\u003c[-~](\"?)((?:[_\\w]+_|)JQUERY)\\b\\1))",
|
|
1784
|
+
"end": "(?!\\G)",
|
|
1785
|
+
"patterns": [
|
|
1786
|
+
{
|
|
1874
1787
|
"name": "string.unquoted.heredoc.ruby",
|
|
1788
|
+
"contentName": "source.js.jquery",
|
|
1789
|
+
"begin": "(?\u003e\u003c\u003c[-~](\"?)((?:[_\\w]+_|)JQUERY)\\b\\1)",
|
|
1790
|
+
"end": "^\\s*\\2$\\n?",
|
|
1875
1791
|
"patterns": [
|
|
1876
1792
|
{
|
|
1877
1793
|
"include": "#heredoc"
|
|
@@ -1879,37 +1795,34 @@
|
|
|
1879
1795
|
{
|
|
1880
1796
|
"include": "#interpolated_ruby"
|
|
1881
1797
|
},
|
|
1882
|
-
{
|
|
1883
|
-
"include": "source.js.jquery"
|
|
1884
|
-
},
|
|
1798
|
+
{},
|
|
1885
1799
|
{
|
|
1886
1800
|
"include": "#escaped_char"
|
|
1887
1801
|
}
|
|
1888
|
-
]
|
|
1889
|
-
}
|
|
1890
|
-
]
|
|
1891
|
-
},
|
|
1892
|
-
{
|
|
1893
|
-
"begin": "(?=(?><<[-~](\"?)((?:[_\\w]+_|)(?:SH|SHELL))\\b\\1))",
|
|
1894
|
-
"comment": "Heredoc with embedded shell",
|
|
1895
|
-
"end": "(?!\\G)",
|
|
1896
|
-
"name": "meta.embedded.block.shell",
|
|
1897
|
-
"patterns": [
|
|
1898
|
-
{
|
|
1899
|
-
"begin": "(?><<[-~](\"?)((?:[_\\w]+_|)(?:SH|SHELL))\\b\\1)",
|
|
1802
|
+
],
|
|
1900
1803
|
"beginCaptures": {
|
|
1901
1804
|
"0": {
|
|
1902
1805
|
"name": "punctuation.definition.string.begin.ruby"
|
|
1903
1806
|
}
|
|
1904
1807
|
},
|
|
1905
|
-
"contentName": "source.shell",
|
|
1906
|
-
"end": "^\\s*\\2$\\n?",
|
|
1907
1808
|
"endCaptures": {
|
|
1908
1809
|
"0": {
|
|
1909
1810
|
"name": "punctuation.definition.string.end.ruby"
|
|
1910
1811
|
}
|
|
1911
|
-
}
|
|
1812
|
+
}
|
|
1813
|
+
}
|
|
1814
|
+
]
|
|
1815
|
+
},
|
|
1816
|
+
{
|
|
1817
|
+
"name": "meta.embedded.block.shell",
|
|
1818
|
+
"begin": "(?=(?\u003e\u003c\u003c[-~](\"?)((?:[_\\w]+_|)(?:SH|SHELL))\\b\\1))",
|
|
1819
|
+
"end": "(?!\\G)",
|
|
1820
|
+
"patterns": [
|
|
1821
|
+
{
|
|
1912
1822
|
"name": "string.unquoted.heredoc.ruby",
|
|
1823
|
+
"contentName": "source.shell",
|
|
1824
|
+
"begin": "(?\u003e\u003c\u003c[-~](\"?)((?:[_\\w]+_|)(?:SH|SHELL))\\b\\1)",
|
|
1825
|
+
"end": "^\\s*\\2$\\n?",
|
|
1913
1826
|
"patterns": [
|
|
1914
1827
|
{
|
|
1915
1828
|
"include": "#heredoc"
|
|
@@ -1923,31 +1836,30 @@
|
|
|
1923
1836
|
{
|
|
1924
1837
|
"include": "#escaped_char"
|
|
1925
1838
|
}
|
|
1926
|
-
]
|
|
1927
|
-
}
|
|
1928
|
-
]
|
|
1929
|
-
},
|
|
1930
|
-
{
|
|
1931
|
-
"begin": "(?=(?><<[-~](\"?)((?:[_\\w]+_|)LUA)\\b\\1))",
|
|
1932
|
-
"comment": "Heredoc with embedded lua",
|
|
1933
|
-
"end": "(?!\\G)",
|
|
1934
|
-
"name": "meta.embedded.block.lua",
|
|
1935
|
-
"patterns": [
|
|
1936
|
-
{
|
|
1937
|
-
"begin": "(?><<[-~](\"?)((?:[_\\w]+_|)LUA)\\b\\1)",
|
|
1839
|
+
],
|
|
1938
1840
|
"beginCaptures": {
|
|
1939
1841
|
"0": {
|
|
1940
1842
|
"name": "punctuation.definition.string.begin.ruby"
|
|
1941
1843
|
}
|
|
1942
1844
|
},
|
|
1943
|
-
"contentName": "source.lua",
|
|
1944
|
-
"end": "^\\s*\\2$\\n?",
|
|
1945
1845
|
"endCaptures": {
|
|
1946
1846
|
"0": {
|
|
1947
1847
|
"name": "punctuation.definition.string.end.ruby"
|
|
1948
1848
|
}
|
|
1949
|
-
}
|
|
1849
|
+
}
|
|
1850
|
+
}
|
|
1851
|
+
]
|
|
1852
|
+
},
|
|
1853
|
+
{
|
|
1854
|
+
"name": "meta.embedded.block.lua",
|
|
1855
|
+
"begin": "(?=(?\u003e\u003c\u003c[-~](\"?)((?:[_\\w]+_|)LUA)\\b\\1))",
|
|
1856
|
+
"end": "(?!\\G)",
|
|
1857
|
+
"patterns": [
|
|
1858
|
+
{
|
|
1950
1859
|
"name": "string.unquoted.heredoc.ruby",
|
|
1860
|
+
"contentName": "source.lua",
|
|
1861
|
+
"begin": "(?\u003e\u003c\u003c[-~](\"?)((?:[_\\w]+_|)LUA)\\b\\1)",
|
|
1862
|
+
"end": "^\\s*\\2$\\n?",
|
|
1951
1863
|
"patterns": [
|
|
1952
1864
|
{
|
|
1953
1865
|
"include": "#heredoc"
|
|
@@ -1961,31 +1873,30 @@
|
|
|
1961
1873
|
{
|
|
1962
1874
|
"include": "#escaped_char"
|
|
1963
1875
|
}
|
|
1964
|
-
]
|
|
1965
|
-
}
|
|
1966
|
-
]
|
|
1967
|
-
},
|
|
1968
|
-
{
|
|
1969
|
-
"begin": "(?=(?><<[-~](\"?)((?:[_\\w]+_|)RUBY)\\b\\1))",
|
|
1970
|
-
"comment": "Heredoc with embedded ruby",
|
|
1971
|
-
"end": "(?!\\G)",
|
|
1972
|
-
"name": "meta.embedded.block.ruby",
|
|
1973
|
-
"patterns": [
|
|
1974
|
-
{
|
|
1975
|
-
"begin": "(?><<[-~](\"?)((?:[_\\w]+_|)RUBY)\\b\\1)",
|
|
1876
|
+
],
|
|
1976
1877
|
"beginCaptures": {
|
|
1977
1878
|
"0": {
|
|
1978
1879
|
"name": "punctuation.definition.string.begin.ruby"
|
|
1979
1880
|
}
|
|
1980
1881
|
},
|
|
1981
|
-
"contentName": "source.ruby",
|
|
1982
|
-
"end": "^\\s*\\2$\\n?",
|
|
1983
1882
|
"endCaptures": {
|
|
1984
1883
|
"0": {
|
|
1985
1884
|
"name": "punctuation.definition.string.end.ruby"
|
|
1986
1885
|
}
|
|
1987
|
-
}
|
|
1886
|
+
}
|
|
1887
|
+
}
|
|
1888
|
+
]
|
|
1889
|
+
},
|
|
1890
|
+
{
|
|
1891
|
+
"name": "meta.embedded.block.ruby",
|
|
1892
|
+
"begin": "(?=(?\u003e\u003c\u003c[-~](\"?)((?:[_\\w]+_|)RUBY)\\b\\1))",
|
|
1893
|
+
"end": "(?!\\G)",
|
|
1894
|
+
"patterns": [
|
|
1895
|
+
{
|
|
1988
1896
|
"name": "string.unquoted.heredoc.ruby",
|
|
1897
|
+
"contentName": "source.ruby",
|
|
1898
|
+
"begin": "(?\u003e\u003c\u003c[-~](\"?)((?:[_\\w]+_|)RUBY)\\b\\1)",
|
|
1899
|
+
"end": "^\\s*\\2$\\n?",
|
|
1989
1900
|
"patterns": [
|
|
1990
1901
|
{
|
|
1991
1902
|
"include": "#heredoc"
|
|
@@ -1999,24 +1910,24 @@
|
|
|
1999
1910
|
{
|
|
2000
1911
|
"include": "#escaped_char"
|
|
2001
1912
|
}
|
|
2002
|
-
]
|
|
1913
|
+
],
|
|
1914
|
+
"beginCaptures": {
|
|
1915
|
+
"0": {
|
|
1916
|
+
"name": "punctuation.definition.string.begin.ruby"
|
|
1917
|
+
}
|
|
1918
|
+
},
|
|
1919
|
+
"endCaptures": {
|
|
1920
|
+
"0": {
|
|
1921
|
+
"name": "punctuation.definition.string.end.ruby"
|
|
1922
|
+
}
|
|
1923
|
+
}
|
|
2003
1924
|
}
|
|
2004
1925
|
]
|
|
2005
1926
|
},
|
|
2006
1927
|
{
|
|
2007
|
-
"begin": "(?>=\\s*<<(\\w+))",
|
|
2008
|
-
"beginCaptures": {
|
|
2009
|
-
"0": {
|
|
2010
|
-
"name": "punctuation.definition.string.begin.ruby"
|
|
2011
|
-
}
|
|
2012
|
-
},
|
|
2013
|
-
"end": "^\\1$",
|
|
2014
|
-
"endCaptures": {
|
|
2015
|
-
"0": {
|
|
2016
|
-
"name": "punctuation.definition.string.end.ruby"
|
|
2017
|
-
}
|
|
2018
|
-
},
|
|
2019
1928
|
"name": "string.unquoted.heredoc.ruby",
|
|
1929
|
+
"begin": "(?\u003e=\\s*\u003c\u003c(\\w+))",
|
|
1930
|
+
"end": "^\\1$",
|
|
2020
1931
|
"patterns": [
|
|
2021
1932
|
{
|
|
2022
1933
|
"include": "#heredoc"
|
|
@@ -2027,23 +1938,22 @@
|
|
|
2027
1938
|
{
|
|
2028
1939
|
"include": "#escaped_char"
|
|
2029
1940
|
}
|
|
2030
|
-
]
|
|
2031
|
-
},
|
|
2032
|
-
{
|
|
2033
|
-
"begin": "(?>((<<[-~](\\w+),\\s?)*<<[-~](\\w+)))",
|
|
1941
|
+
],
|
|
2034
1942
|
"beginCaptures": {
|
|
2035
1943
|
"0": {
|
|
2036
1944
|
"name": "punctuation.definition.string.begin.ruby"
|
|
2037
1945
|
}
|
|
2038
1946
|
},
|
|
2039
|
-
"comment": "heredoc with multiple inputs and indented terminator",
|
|
2040
|
-
"end": "^\\s*\\4$",
|
|
2041
1947
|
"endCaptures": {
|
|
2042
1948
|
"0": {
|
|
2043
1949
|
"name": "punctuation.definition.string.end.ruby"
|
|
2044
1950
|
}
|
|
2045
|
-
}
|
|
1951
|
+
}
|
|
1952
|
+
},
|
|
1953
|
+
{
|
|
2046
1954
|
"name": "string.unquoted.heredoc.ruby",
|
|
1955
|
+
"begin": "(?\u003e((\u003c\u003c[-~](\\w+),\\s?)*\u003c\u003c[-~](\\w+)))",
|
|
1956
|
+
"end": "^\\s*\\4$",
|
|
2047
1957
|
"patterns": [
|
|
2048
1958
|
{
|
|
2049
1959
|
"include": "#heredoc"
|
|
@@ -2054,57 +1964,66 @@
|
|
|
2054
1964
|
{
|
|
2055
1965
|
"include": "#escaped_char"
|
|
2056
1966
|
}
|
|
2057
|
-
]
|
|
1967
|
+
],
|
|
1968
|
+
"beginCaptures": {
|
|
1969
|
+
"0": {
|
|
1970
|
+
"name": "punctuation.definition.string.begin.ruby"
|
|
1971
|
+
}
|
|
1972
|
+
},
|
|
1973
|
+
"endCaptures": {
|
|
1974
|
+
"0": {
|
|
1975
|
+
"name": "punctuation.definition.string.end.ruby"
|
|
1976
|
+
}
|
|
1977
|
+
}
|
|
2058
1978
|
},
|
|
2059
1979
|
{
|
|
2060
|
-
"begin": "(
|
|
2061
|
-
"
|
|
2062
|
-
"1": {
|
|
2063
|
-
"name": "punctuation.separator.variable.ruby"
|
|
2064
|
-
}
|
|
2065
|
-
},
|
|
2066
|
-
"end": "(?<!\\|)(\\|)(?!\\|)",
|
|
1980
|
+
"begin": "(?\u003c={|{\\s|[^A-Za-z0-9_]do|^do|[^A-Za-z0-9_]do\\s|^do\\s)(\\|)",
|
|
1981
|
+
"end": "(?\u003c!\\|)(\\|)(?!\\|)",
|
|
2067
1982
|
"patterns": [
|
|
2068
1983
|
{
|
|
2069
1984
|
"include": "source.ruby"
|
|
2070
1985
|
},
|
|
2071
1986
|
{
|
|
2072
|
-
"
|
|
2073
|
-
"
|
|
1987
|
+
"name": "variable.other.block.ruby",
|
|
1988
|
+
"match": "[_a-zA-Z][_a-zA-Z0-9]*"
|
|
2074
1989
|
},
|
|
2075
1990
|
{
|
|
2076
|
-
"
|
|
1991
|
+
"name": "punctuation.separator.variable.ruby",
|
|
1992
|
+
"match": ","
|
|
1993
|
+
}
|
|
1994
|
+
],
|
|
1995
|
+
"captures": {
|
|
1996
|
+
"1": {
|
|
2077
1997
|
"name": "punctuation.separator.variable.ruby"
|
|
2078
1998
|
}
|
|
2079
|
-
|
|
1999
|
+
}
|
|
2080
2000
|
},
|
|
2081
2001
|
{
|
|
2082
|
-
"
|
|
2083
|
-
"
|
|
2002
|
+
"name": "punctuation.separator.key-value",
|
|
2003
|
+
"match": "=\u003e"
|
|
2084
2004
|
},
|
|
2085
2005
|
{
|
|
2086
|
-
"
|
|
2087
|
-
"
|
|
2006
|
+
"name": "support.function.kernel.ruby",
|
|
2007
|
+
"match": "-\u003e"
|
|
2088
2008
|
},
|
|
2089
2009
|
{
|
|
2090
|
-
"
|
|
2091
|
-
"
|
|
2010
|
+
"name": "keyword.operator.assignment.augmented.ruby",
|
|
2011
|
+
"match": "\u003c\u003c=|%=|\u0026{1,2}=|\\*=|\\*\\*=|\\+=|-=|\\^=|\\|{1,2}=|\u003c\u003c"
|
|
2092
2012
|
},
|
|
2093
2013
|
{
|
|
2094
|
-
"
|
|
2095
|
-
"
|
|
2014
|
+
"name": "keyword.operator.comparison.ruby",
|
|
2015
|
+
"match": "\u003c=\u003e|\u003c(?!\u003c|=)|\u003e(?!\u003c|=|\u003e)|\u003c=|\u003e=|===|==|=~|!=|!~|(?\u003c=[ \\t])\\?"
|
|
2096
2016
|
},
|
|
2097
2017
|
{
|
|
2098
|
-
"
|
|
2099
|
-
"
|
|
2018
|
+
"name": "keyword.operator.logical.ruby",
|
|
2019
|
+
"match": "(?\u003c!\\.)\\b(and|not|or)\\b(?![?!])"
|
|
2100
2020
|
},
|
|
2101
2021
|
{
|
|
2102
|
-
"
|
|
2103
|
-
"
|
|
2022
|
+
"name": "keyword.operator.logical.ruby",
|
|
2023
|
+
"match": "(?\u003c=^|[ \\t])!|\u0026\u0026|\\|\\||\\^"
|
|
2104
2024
|
},
|
|
2105
2025
|
{
|
|
2106
|
-
"
|
|
2107
|
-
"match": "(&\\.)\\s*(?![A-Z])",
|
|
2026
|
+
"match": "(\u0026\\.)\\s*(?![A-Z])",
|
|
2108
2027
|
"captures": {
|
|
2109
2028
|
"1": {
|
|
2110
2029
|
"name": "punctuation.separator.method.ruby"
|
|
@@ -2112,27 +2031,26 @@
|
|
|
2112
2031
|
}
|
|
2113
2032
|
},
|
|
2114
2033
|
{
|
|
2115
|
-
"
|
|
2116
|
-
"
|
|
2034
|
+
"name": "keyword.operator.arithmetic.ruby",
|
|
2035
|
+
"match": "(%|\u0026|\\*\\*|\\*|\\+|-|/)"
|
|
2117
2036
|
},
|
|
2118
2037
|
{
|
|
2119
|
-
"
|
|
2120
|
-
"
|
|
2038
|
+
"name": "keyword.operator.assignment.ruby",
|
|
2039
|
+
"match": "="
|
|
2121
2040
|
},
|
|
2122
2041
|
{
|
|
2123
|
-
"
|
|
2124
|
-
"
|
|
2042
|
+
"name": "keyword.operator.other.ruby",
|
|
2043
|
+
"match": "\\||~|\u003e\u003e"
|
|
2125
2044
|
},
|
|
2126
2045
|
{
|
|
2127
|
-
"
|
|
2128
|
-
"
|
|
2046
|
+
"name": "punctuation.separator.statement.ruby",
|
|
2047
|
+
"match": ";"
|
|
2129
2048
|
},
|
|
2130
2049
|
{
|
|
2131
|
-
"
|
|
2132
|
-
"
|
|
2050
|
+
"name": "punctuation.separator.object.ruby",
|
|
2051
|
+
"match": ","
|
|
2133
2052
|
},
|
|
2134
2053
|
{
|
|
2135
|
-
"comment": "Mark as namespace separator if double colons followed by capital letter",
|
|
2136
2054
|
"match": "(::)\\s*(?=[A-Z])",
|
|
2137
2055
|
"captures": {
|
|
2138
2056
|
"1": {
|
|
@@ -2141,7 +2059,6 @@
|
|
|
2141
2059
|
}
|
|
2142
2060
|
},
|
|
2143
2061
|
{
|
|
2144
|
-
"comment": "Mark as method separator if double colons not followed by capital letter",
|
|
2145
2062
|
"match": "(\\.|::)\\s*(?![A-Z])",
|
|
2146
2063
|
"captures": {
|
|
2147
2064
|
"1": {
|
|
@@ -2150,38 +2067,37 @@
|
|
|
2150
2067
|
}
|
|
2151
2068
|
},
|
|
2152
2069
|
{
|
|
2153
|
-
"
|
|
2154
|
-
"match": ":"
|
|
2155
|
-
"name": "punctuation.separator.other.ruby"
|
|
2070
|
+
"name": "punctuation.separator.other.ruby",
|
|
2071
|
+
"match": ":"
|
|
2156
2072
|
},
|
|
2157
2073
|
{
|
|
2158
|
-
"
|
|
2159
|
-
"
|
|
2074
|
+
"name": "punctuation.section.scope.begin.ruby",
|
|
2075
|
+
"match": "{"
|
|
2160
2076
|
},
|
|
2161
2077
|
{
|
|
2162
|
-
"
|
|
2163
|
-
"
|
|
2078
|
+
"name": "punctuation.section.scope.end.ruby",
|
|
2079
|
+
"match": "}"
|
|
2164
2080
|
},
|
|
2165
2081
|
{
|
|
2166
|
-
"
|
|
2167
|
-
"
|
|
2082
|
+
"name": "punctuation.section.array.begin.ruby",
|
|
2083
|
+
"match": "\\["
|
|
2168
2084
|
},
|
|
2169
2085
|
{
|
|
2170
|
-
"
|
|
2171
|
-
"
|
|
2086
|
+
"name": "punctuation.section.array.end.ruby",
|
|
2087
|
+
"match": "]"
|
|
2172
2088
|
},
|
|
2173
2089
|
{
|
|
2174
|
-
"
|
|
2175
|
-
"
|
|
2090
|
+
"name": "punctuation.section.function.ruby",
|
|
2091
|
+
"match": "\\(|\\)"
|
|
2176
2092
|
}
|
|
2177
2093
|
],
|
|
2178
2094
|
"repository": {
|
|
2179
2095
|
"escaped_char": {
|
|
2180
|
-
"
|
|
2181
|
-
"
|
|
2096
|
+
"name": "constant.character.escape.ruby",
|
|
2097
|
+
"match": "\\\\(?:[0-7]{1,3}|x[\\da-fA-F]{1,2}|.)"
|
|
2182
2098
|
},
|
|
2183
2099
|
"heredoc": {
|
|
2184
|
-
"begin": "
|
|
2100
|
+
"begin": "^\u003c\u003c[-~]?\\w+",
|
|
2185
2101
|
"end": "$",
|
|
2186
2102
|
"patterns": [
|
|
2187
2103
|
{
|
|
@@ -2192,79 +2108,74 @@
|
|
|
2192
2108
|
"interpolated_ruby": {
|
|
2193
2109
|
"patterns": [
|
|
2194
2110
|
{
|
|
2111
|
+
"name": "meta.embedded.line.ruby",
|
|
2112
|
+
"contentName": "source.ruby",
|
|
2195
2113
|
"begin": "#{",
|
|
2114
|
+
"end": "}",
|
|
2115
|
+
"patterns": [
|
|
2116
|
+
{
|
|
2117
|
+
"include": "#nest_curly_and_self"
|
|
2118
|
+
},
|
|
2119
|
+
{
|
|
2120
|
+
"include": "$self"
|
|
2121
|
+
}
|
|
2122
|
+
],
|
|
2196
2123
|
"beginCaptures": {
|
|
2197
2124
|
"0": {
|
|
2198
2125
|
"name": "punctuation.section.embedded.begin.ruby"
|
|
2199
2126
|
}
|
|
2200
2127
|
},
|
|
2201
|
-
"contentName": "source.ruby",
|
|
2202
|
-
"end": "}",
|
|
2203
2128
|
"endCaptures": {
|
|
2204
2129
|
"0": {
|
|
2205
2130
|
"name": "punctuation.section.embedded.end.ruby"
|
|
2206
2131
|
}
|
|
2207
|
-
}
|
|
2208
|
-
"name": "meta.embedded.line.ruby",
|
|
2209
|
-
"patterns": [
|
|
2210
|
-
{
|
|
2211
|
-
"include": "#nest_curly_and_self"
|
|
2212
|
-
},
|
|
2213
|
-
{
|
|
2214
|
-
"include": "$self"
|
|
2215
|
-
}
|
|
2216
|
-
]
|
|
2132
|
+
}
|
|
2217
2133
|
},
|
|
2218
2134
|
{
|
|
2135
|
+
"name": "variable.other.readwrite.instance.ruby",
|
|
2136
|
+
"match": "(#@)[a-zA-Z_]\\w*",
|
|
2219
2137
|
"captures": {
|
|
2220
2138
|
"1": {
|
|
2221
2139
|
"name": "punctuation.definition.variable.ruby"
|
|
2222
2140
|
}
|
|
2223
|
-
}
|
|
2224
|
-
"match": "(#@)[a-zA-Z_]\\w*",
|
|
2225
|
-
"name": "variable.other.readwrite.instance.ruby"
|
|
2141
|
+
}
|
|
2226
2142
|
},
|
|
2227
2143
|
{
|
|
2144
|
+
"name": "variable.other.readwrite.class.ruby",
|
|
2145
|
+
"match": "(#@@)[a-zA-Z_]\\w*",
|
|
2228
2146
|
"captures": {
|
|
2229
2147
|
"1": {
|
|
2230
2148
|
"name": "punctuation.definition.variable.ruby"
|
|
2231
2149
|
}
|
|
2232
|
-
}
|
|
2233
|
-
"match": "(#@@)[a-zA-Z_]\\w*",
|
|
2234
|
-
"name": "variable.other.readwrite.class.ruby"
|
|
2150
|
+
}
|
|
2235
2151
|
},
|
|
2236
2152
|
{
|
|
2153
|
+
"name": "variable.other.readwrite.global.ruby",
|
|
2154
|
+
"match": "(#\\$)[a-zA-Z_]\\w*",
|
|
2237
2155
|
"captures": {
|
|
2238
2156
|
"1": {
|
|
2239
2157
|
"name": "punctuation.definition.variable.ruby"
|
|
2240
2158
|
}
|
|
2241
|
-
}
|
|
2242
|
-
"match": "(#\\$)[a-zA-Z_]\\w*",
|
|
2243
|
-
"name": "variable.other.readwrite.global.ruby"
|
|
2159
|
+
}
|
|
2244
2160
|
}
|
|
2245
2161
|
]
|
|
2246
2162
|
},
|
|
2247
2163
|
"nest_brackets": {
|
|
2248
2164
|
"begin": "\\[",
|
|
2249
|
-
"captures": {
|
|
2250
|
-
"0": {
|
|
2251
|
-
"name": "punctuation.section.scope.ruby"
|
|
2252
|
-
}
|
|
2253
|
-
},
|
|
2254
2165
|
"end": "]",
|
|
2255
2166
|
"patterns": [
|
|
2256
2167
|
{
|
|
2257
2168
|
"include": "#nest_brackets"
|
|
2258
2169
|
}
|
|
2259
|
-
]
|
|
2260
|
-
},
|
|
2261
|
-
"nest_brackets_i": {
|
|
2262
|
-
"begin": "\\[",
|
|
2170
|
+
],
|
|
2263
2171
|
"captures": {
|
|
2264
2172
|
"0": {
|
|
2265
2173
|
"name": "punctuation.section.scope.ruby"
|
|
2266
2174
|
}
|
|
2267
|
-
}
|
|
2175
|
+
}
|
|
2176
|
+
},
|
|
2177
|
+
"nest_brackets_i": {
|
|
2178
|
+
"begin": "\\[",
|
|
2268
2179
|
"end": "]",
|
|
2269
2180
|
"patterns": [
|
|
2270
2181
|
{
|
|
@@ -2276,15 +2187,15 @@
|
|
|
2276
2187
|
{
|
|
2277
2188
|
"include": "#nest_brackets_i"
|
|
2278
2189
|
}
|
|
2279
|
-
]
|
|
2280
|
-
},
|
|
2281
|
-
"nest_brackets_r": {
|
|
2282
|
-
"begin": "\\[",
|
|
2190
|
+
],
|
|
2283
2191
|
"captures": {
|
|
2284
2192
|
"0": {
|
|
2285
2193
|
"name": "punctuation.section.scope.ruby"
|
|
2286
2194
|
}
|
|
2287
|
-
}
|
|
2195
|
+
}
|
|
2196
|
+
},
|
|
2197
|
+
"nest_brackets_r": {
|
|
2198
|
+
"begin": "\\[",
|
|
2288
2199
|
"end": "]",
|
|
2289
2200
|
"patterns": [
|
|
2290
2201
|
{
|
|
@@ -2293,37 +2204,42 @@
|
|
|
2293
2204
|
{
|
|
2294
2205
|
"include": "#nest_brackets_r"
|
|
2295
2206
|
}
|
|
2296
|
-
]
|
|
2297
|
-
},
|
|
2298
|
-
"nest_curly": {
|
|
2299
|
-
"begin": "{",
|
|
2207
|
+
],
|
|
2300
2208
|
"captures": {
|
|
2301
2209
|
"0": {
|
|
2302
2210
|
"name": "punctuation.section.scope.ruby"
|
|
2303
2211
|
}
|
|
2304
|
-
}
|
|
2212
|
+
}
|
|
2213
|
+
},
|
|
2214
|
+
"nest_curly": {
|
|
2215
|
+
"begin": "{",
|
|
2305
2216
|
"end": "}",
|
|
2306
2217
|
"patterns": [
|
|
2307
2218
|
{
|
|
2308
2219
|
"include": "#nest_curly"
|
|
2309
2220
|
}
|
|
2310
|
-
]
|
|
2221
|
+
],
|
|
2222
|
+
"captures": {
|
|
2223
|
+
"0": {
|
|
2224
|
+
"name": "punctuation.section.scope.ruby"
|
|
2225
|
+
}
|
|
2226
|
+
}
|
|
2311
2227
|
},
|
|
2312
2228
|
"nest_curly_and_self": {
|
|
2313
2229
|
"patterns": [
|
|
2314
2230
|
{
|
|
2315
2231
|
"begin": "{",
|
|
2316
|
-
"captures": {
|
|
2317
|
-
"0": {
|
|
2318
|
-
"name": "punctuation.section.scope.ruby"
|
|
2319
|
-
}
|
|
2320
|
-
},
|
|
2321
2232
|
"end": "}",
|
|
2322
2233
|
"patterns": [
|
|
2323
2234
|
{
|
|
2324
2235
|
"include": "#nest_curly_and_self"
|
|
2325
2236
|
}
|
|
2326
|
-
]
|
|
2237
|
+
],
|
|
2238
|
+
"captures": {
|
|
2239
|
+
"0": {
|
|
2240
|
+
"name": "punctuation.section.scope.ruby"
|
|
2241
|
+
}
|
|
2242
|
+
}
|
|
2327
2243
|
},
|
|
2328
2244
|
{
|
|
2329
2245
|
"include": "$self"
|
|
@@ -2332,11 +2248,6 @@
|
|
|
2332
2248
|
},
|
|
2333
2249
|
"nest_curly_i": {
|
|
2334
2250
|
"begin": "{",
|
|
2335
|
-
"captures": {
|
|
2336
|
-
"0": {
|
|
2337
|
-
"name": "punctuation.section.scope.ruby"
|
|
2338
|
-
}
|
|
2339
|
-
},
|
|
2340
2251
|
"end": "}",
|
|
2341
2252
|
"patterns": [
|
|
2342
2253
|
{
|
|
@@ -2348,15 +2259,15 @@
|
|
|
2348
2259
|
{
|
|
2349
2260
|
"include": "#nest_curly_i"
|
|
2350
2261
|
}
|
|
2351
|
-
]
|
|
2352
|
-
},
|
|
2353
|
-
"nest_curly_r": {
|
|
2354
|
-
"begin": "{",
|
|
2262
|
+
],
|
|
2355
2263
|
"captures": {
|
|
2356
2264
|
"0": {
|
|
2357
2265
|
"name": "punctuation.section.scope.ruby"
|
|
2358
2266
|
}
|
|
2359
|
-
}
|
|
2267
|
+
}
|
|
2268
|
+
},
|
|
2269
|
+
"nest_curly_r": {
|
|
2270
|
+
"begin": "{",
|
|
2360
2271
|
"end": "}",
|
|
2361
2272
|
"patterns": [
|
|
2362
2273
|
{
|
|
@@ -2365,30 +2276,30 @@
|
|
|
2365
2276
|
{
|
|
2366
2277
|
"include": "#nest_curly_r"
|
|
2367
2278
|
}
|
|
2368
|
-
]
|
|
2369
|
-
},
|
|
2370
|
-
"nest_ltgt": {
|
|
2371
|
-
"begin": "<",
|
|
2279
|
+
],
|
|
2372
2280
|
"captures": {
|
|
2373
2281
|
"0": {
|
|
2374
2282
|
"name": "punctuation.section.scope.ruby"
|
|
2375
2283
|
}
|
|
2376
|
-
}
|
|
2377
|
-
|
|
2284
|
+
}
|
|
2285
|
+
},
|
|
2286
|
+
"nest_ltgt": {
|
|
2287
|
+
"begin": "\u003c",
|
|
2288
|
+
"end": "\u003e",
|
|
2378
2289
|
"patterns": [
|
|
2379
2290
|
{
|
|
2380
2291
|
"include": "#nest_ltgt"
|
|
2381
2292
|
}
|
|
2382
|
-
]
|
|
2383
|
-
},
|
|
2384
|
-
"nest_ltgt_i": {
|
|
2385
|
-
"begin": "<",
|
|
2293
|
+
],
|
|
2386
2294
|
"captures": {
|
|
2387
2295
|
"0": {
|
|
2388
2296
|
"name": "punctuation.section.scope.ruby"
|
|
2389
2297
|
}
|
|
2390
|
-
}
|
|
2391
|
-
|
|
2298
|
+
}
|
|
2299
|
+
},
|
|
2300
|
+
"nest_ltgt_i": {
|
|
2301
|
+
"begin": "\u003c",
|
|
2302
|
+
"end": "\u003e",
|
|
2392
2303
|
"patterns": [
|
|
2393
2304
|
{
|
|
2394
2305
|
"include": "#interpolated_ruby"
|
|
@@ -2399,16 +2310,16 @@
|
|
|
2399
2310
|
{
|
|
2400
2311
|
"include": "#nest_ltgt_i"
|
|
2401
2312
|
}
|
|
2402
|
-
]
|
|
2403
|
-
},
|
|
2404
|
-
"nest_ltgt_r": {
|
|
2405
|
-
"begin": "<",
|
|
2313
|
+
],
|
|
2406
2314
|
"captures": {
|
|
2407
2315
|
"0": {
|
|
2408
2316
|
"name": "punctuation.section.scope.ruby"
|
|
2409
2317
|
}
|
|
2410
|
-
}
|
|
2411
|
-
|
|
2318
|
+
}
|
|
2319
|
+
},
|
|
2320
|
+
"nest_ltgt_r": {
|
|
2321
|
+
"begin": "\u003c",
|
|
2322
|
+
"end": "\u003e",
|
|
2412
2323
|
"patterns": [
|
|
2413
2324
|
{
|
|
2414
2325
|
"include": "#regex_sub"
|
|
@@ -2416,29 +2327,29 @@
|
|
|
2416
2327
|
{
|
|
2417
2328
|
"include": "#nest_ltgt_r"
|
|
2418
2329
|
}
|
|
2419
|
-
]
|
|
2420
|
-
},
|
|
2421
|
-
"nest_parens": {
|
|
2422
|
-
"begin": "\\(",
|
|
2330
|
+
],
|
|
2423
2331
|
"captures": {
|
|
2424
2332
|
"0": {
|
|
2425
2333
|
"name": "punctuation.section.scope.ruby"
|
|
2426
2334
|
}
|
|
2427
|
-
}
|
|
2335
|
+
}
|
|
2336
|
+
},
|
|
2337
|
+
"nest_parens": {
|
|
2338
|
+
"begin": "\\(",
|
|
2428
2339
|
"end": "\\)",
|
|
2429
2340
|
"patterns": [
|
|
2430
2341
|
{
|
|
2431
2342
|
"include": "#nest_parens"
|
|
2432
2343
|
}
|
|
2433
|
-
]
|
|
2434
|
-
},
|
|
2435
|
-
"nest_parens_i": {
|
|
2436
|
-
"begin": "\\(",
|
|
2344
|
+
],
|
|
2437
2345
|
"captures": {
|
|
2438
2346
|
"0": {
|
|
2439
2347
|
"name": "punctuation.section.scope.ruby"
|
|
2440
2348
|
}
|
|
2441
|
-
}
|
|
2349
|
+
}
|
|
2350
|
+
},
|
|
2351
|
+
"nest_parens_i": {
|
|
2352
|
+
"begin": "\\(",
|
|
2442
2353
|
"end": "\\)",
|
|
2443
2354
|
"patterns": [
|
|
2444
2355
|
{
|
|
@@ -2450,15 +2361,15 @@
|
|
|
2450
2361
|
{
|
|
2451
2362
|
"include": "#nest_parens_i"
|
|
2452
2363
|
}
|
|
2453
|
-
]
|
|
2454
|
-
},
|
|
2455
|
-
"nest_parens_r": {
|
|
2456
|
-
"begin": "\\(",
|
|
2364
|
+
],
|
|
2457
2365
|
"captures": {
|
|
2458
2366
|
"0": {
|
|
2459
2367
|
"name": "punctuation.section.scope.ruby"
|
|
2460
2368
|
}
|
|
2461
|
-
}
|
|
2369
|
+
}
|
|
2370
|
+
},
|
|
2371
|
+
"nest_parens_r": {
|
|
2372
|
+
"begin": "\\(",
|
|
2462
2373
|
"end": "\\)",
|
|
2463
2374
|
"patterns": [
|
|
2464
2375
|
{
|
|
@@ -2467,7 +2378,12 @@
|
|
|
2467
2378
|
{
|
|
2468
2379
|
"include": "#nest_parens_r"
|
|
2469
2380
|
}
|
|
2470
|
-
]
|
|
2381
|
+
],
|
|
2382
|
+
"captures": {
|
|
2383
|
+
"0": {
|
|
2384
|
+
"name": "punctuation.section.scope.ruby"
|
|
2385
|
+
}
|
|
2386
|
+
}
|
|
2471
2387
|
},
|
|
2472
2388
|
"regex_sub": {
|
|
2473
2389
|
"patterns": [
|
|
@@ -2478,6 +2394,8 @@
|
|
|
2478
2394
|
"include": "#escaped_char"
|
|
2479
2395
|
},
|
|
2480
2396
|
{
|
|
2397
|
+
"name": "string.regexp.arbitrary-repetition.ruby",
|
|
2398
|
+
"match": "({)\\d+(,\\d+)?(})",
|
|
2481
2399
|
"captures": {
|
|
2482
2400
|
"1": {
|
|
2483
2401
|
"name": "punctuation.definition.arbitrary-repetition.ruby"
|
|
@@ -2485,75 +2403,72 @@
|
|
|
2485
2403
|
"3": {
|
|
2486
2404
|
"name": "punctuation.definition.arbitrary-repetition.ruby"
|
|
2487
2405
|
}
|
|
2488
|
-
}
|
|
2489
|
-
"match": "({)\\d+(,\\d+)?(})",
|
|
2490
|
-
"name": "string.regexp.arbitrary-repetition.ruby"
|
|
2406
|
+
}
|
|
2491
2407
|
},
|
|
2492
2408
|
{
|
|
2409
|
+
"name": "string.regexp.character-class.ruby",
|
|
2493
2410
|
"begin": "\\[(?:\\^?])?",
|
|
2494
|
-
"captures": {
|
|
2495
|
-
"0": {
|
|
2496
|
-
"name": "punctuation.definition.character-class.ruby"
|
|
2497
|
-
}
|
|
2498
|
-
},
|
|
2499
2411
|
"end": "]",
|
|
2500
|
-
"name": "string.regexp.character-class.ruby",
|
|
2501
2412
|
"patterns": [
|
|
2502
2413
|
{
|
|
2503
2414
|
"include": "#escaped_char"
|
|
2504
2415
|
}
|
|
2505
|
-
]
|
|
2416
|
+
],
|
|
2417
|
+
"captures": {
|
|
2418
|
+
"0": {
|
|
2419
|
+
"name": "punctuation.definition.character-class.ruby"
|
|
2420
|
+
}
|
|
2421
|
+
}
|
|
2506
2422
|
},
|
|
2507
2423
|
{
|
|
2424
|
+
"name": "comment.line.number-sign.ruby",
|
|
2508
2425
|
"begin": "\\(\\?#",
|
|
2426
|
+
"end": "\\)",
|
|
2427
|
+
"patterns": [
|
|
2428
|
+
{
|
|
2429
|
+
"include": "#escaped_char"
|
|
2430
|
+
}
|
|
2431
|
+
],
|
|
2509
2432
|
"beginCaptures": {
|
|
2510
2433
|
"0": {
|
|
2511
2434
|
"name": "punctuation.definition.comment.begin.ruby"
|
|
2512
2435
|
}
|
|
2513
2436
|
},
|
|
2514
|
-
"end": "\\)",
|
|
2515
2437
|
"endCaptures": {
|
|
2516
2438
|
"0": {
|
|
2517
2439
|
"name": "punctuation.definition.comment.end.ruby"
|
|
2518
2440
|
}
|
|
2519
|
-
}
|
|
2520
|
-
"name": "comment.line.number-sign.ruby",
|
|
2521
|
-
"patterns": [
|
|
2522
|
-
{
|
|
2523
|
-
"include": "#escaped_char"
|
|
2524
|
-
}
|
|
2525
|
-
]
|
|
2441
|
+
}
|
|
2526
2442
|
},
|
|
2527
2443
|
{
|
|
2444
|
+
"name": "string.regexp.group.ruby",
|
|
2528
2445
|
"begin": "\\(",
|
|
2529
|
-
"captures": {
|
|
2530
|
-
"0": {
|
|
2531
|
-
"name": "punctuation.definition.group.ruby"
|
|
2532
|
-
}
|
|
2533
|
-
},
|
|
2534
2446
|
"end": "\\)",
|
|
2535
|
-
"name": "string.regexp.group.ruby",
|
|
2536
2447
|
"patterns": [
|
|
2537
2448
|
{
|
|
2538
2449
|
"include": "#regex_sub"
|
|
2539
2450
|
}
|
|
2540
|
-
]
|
|
2451
|
+
],
|
|
2452
|
+
"captures": {
|
|
2453
|
+
"0": {
|
|
2454
|
+
"name": "punctuation.definition.group.ruby"
|
|
2455
|
+
}
|
|
2456
|
+
}
|
|
2541
2457
|
},
|
|
2542
2458
|
{
|
|
2543
|
-
"
|
|
2459
|
+
"name": "comment.line.number-sign.ruby",
|
|
2460
|
+
"begin": "(?\u003c=^|\\s)(#)\\s(?=[[a-zA-Z0-9,. \\t?!-][^\\x{00}-\\x{7F}]]*$)",
|
|
2461
|
+
"end": "$\\n?",
|
|
2544
2462
|
"beginCaptures": {
|
|
2545
2463
|
"1": {
|
|
2546
2464
|
"name": "punctuation.definition.comment.ruby"
|
|
2547
2465
|
}
|
|
2548
2466
|
},
|
|
2549
|
-
"comment": "We are restrictive in what we allow to go after the comment character to avoid false positives, since the availability of comments depend on regexp flags.",
|
|
2550
|
-
"end": "$\\n?",
|
|
2551
2467
|
"endCaptures": {
|
|
2552
2468
|
"0": {
|
|
2553
2469
|
"name": "punctuation.definition.comment.ruby"
|
|
2554
2470
|
}
|
|
2555
|
-
}
|
|
2556
|
-
"name": "comment.line.number-sign.ruby"
|
|
2471
|
+
}
|
|
2557
2472
|
}
|
|
2558
2473
|
]
|
|
2559
2474
|
},
|
|
@@ -2578,7 +2493,6 @@
|
|
|
2578
2493
|
]
|
|
2579
2494
|
},
|
|
2580
2495
|
"yard_comment": {
|
|
2581
|
-
"comment": "For YARD tags that follow the tag-comment pattern",
|
|
2582
2496
|
"match": "(@)(abstract|api|author|deprecated|example|note|overload|since|todo|version)(?=\\s)(.*)$",
|
|
2583
2497
|
"captures": {
|
|
2584
2498
|
"1": {
|
|
@@ -2592,8 +2506,33 @@
|
|
|
2592
2506
|
}
|
|
2593
2507
|
}
|
|
2594
2508
|
},
|
|
2509
|
+
"yard_directive": {
|
|
2510
|
+
"match": "(@!)(attribute|endgroup|group|macro|method|parse|scope|visibility)(\\s+((\\[).+(])))?(?=\\s)(.*)$",
|
|
2511
|
+
"captures": {
|
|
2512
|
+
"1": {
|
|
2513
|
+
"name": "comment.line.keyword.punctuation.yard.ruby"
|
|
2514
|
+
},
|
|
2515
|
+
"2": {
|
|
2516
|
+
"name": "comment.line.keyword.yard.ruby"
|
|
2517
|
+
},
|
|
2518
|
+
"3": {
|
|
2519
|
+
"name": "comment.line.yard.ruby"
|
|
2520
|
+
},
|
|
2521
|
+
"4": {
|
|
2522
|
+
"name": "comment.line.type.yard.ruby"
|
|
2523
|
+
},
|
|
2524
|
+
"5": {
|
|
2525
|
+
"name": "comment.line.punctuation.yard.ruby"
|
|
2526
|
+
},
|
|
2527
|
+
"6": {
|
|
2528
|
+
"name": "comment.line.punctuation.yard.ruby"
|
|
2529
|
+
},
|
|
2530
|
+
"7": {
|
|
2531
|
+
"name": "comment.line.string.yard.ruby"
|
|
2532
|
+
}
|
|
2533
|
+
}
|
|
2534
|
+
},
|
|
2595
2535
|
"yard_name_types": {
|
|
2596
|
-
"comment": "For YARD tags that follow the tag-name-types-comment pattern",
|
|
2597
2536
|
"match": "(@)(attr|attr_reader|attr_writer|option|param|see|yieldparam)(?=\\s)(\\s+([a-z_][a-zA-Z_]*))?(\\s+((\\[).+(])))?(.*)$",
|
|
2598
2537
|
"captures": {
|
|
2599
2538
|
"1": {
|
|
@@ -2626,7 +2565,6 @@
|
|
|
2626
2565
|
}
|
|
2627
2566
|
},
|
|
2628
2567
|
"yard_tag": {
|
|
2629
|
-
"comment": "For YARD tags that are just the tag",
|
|
2630
2568
|
"match": "(@)(private)$",
|
|
2631
2569
|
"captures": {
|
|
2632
2570
|
"1": {
|
|
@@ -2638,7 +2576,6 @@
|
|
|
2638
2576
|
}
|
|
2639
2577
|
},
|
|
2640
2578
|
"yard_types": {
|
|
2641
|
-
"comment": "For YARD tags that follow the tag-types-comment pattern",
|
|
2642
2579
|
"match": "(@)(raise|return|yield(?:return)?)(?=\\s)(\\s+((\\[).+(])))?(.*)$",
|
|
2643
2580
|
"captures": {
|
|
2644
2581
|
"1": {
|
|
@@ -2663,33 +2600,6 @@
|
|
|
2663
2600
|
"name": "comment.line.string.yard.ruby"
|
|
2664
2601
|
}
|
|
2665
2602
|
}
|
|
2666
|
-
},
|
|
2667
|
-
"yard_directive": {
|
|
2668
|
-
"comment": "For YARD directives",
|
|
2669
|
-
"match": "(@!)(attribute|endgroup|group|macro|method|parse|scope|visibility)(\\s+((\\[).+(])))?(?=\\s)(.*)$",
|
|
2670
|
-
"captures": {
|
|
2671
|
-
"1": {
|
|
2672
|
-
"name": "comment.line.keyword.punctuation.yard.ruby"
|
|
2673
|
-
},
|
|
2674
|
-
"2": {
|
|
2675
|
-
"name": "comment.line.keyword.yard.ruby"
|
|
2676
|
-
},
|
|
2677
|
-
"3": {
|
|
2678
|
-
"name": "comment.line.yard.ruby"
|
|
2679
|
-
},
|
|
2680
|
-
"4": {
|
|
2681
|
-
"name": "comment.line.type.yard.ruby"
|
|
2682
|
-
},
|
|
2683
|
-
"5": {
|
|
2684
|
-
"name": "comment.line.punctuation.yard.ruby"
|
|
2685
|
-
},
|
|
2686
|
-
"6": {
|
|
2687
|
-
"name": "comment.line.punctuation.yard.ruby"
|
|
2688
|
-
},
|
|
2689
|
-
"7": {
|
|
2690
|
-
"name": "comment.line.string.yard.ruby"
|
|
2691
|
-
}
|
|
2692
|
-
}
|
|
2693
2603
|
}
|
|
2694
2604
|
}
|
|
2695
|
-
}
|
|
2605
|
+
}
|