github-linguist 7.30.0 → 8.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (82) hide show
  1. checksums.yaml +4 -4
  2. data/grammars/inline.edgeql.json +1 -1
  3. data/grammars/inline.peggy.json +1 -0
  4. data/grammars/markdown.move.codeblock.json +1 -1
  5. data/grammars/mdx.move.codeblock.json +1 -0
  6. data/grammars/source.abl.json +1 -1
  7. data/grammars/source.bicep.json +1 -1
  8. data/grammars/source.cairo.json +1 -1
  9. data/grammars/source.cairo0.json +1 -0
  10. data/grammars/source.cl.json +1 -1
  11. data/grammars/source.clar.json +1 -1
  12. data/grammars/source.clarion.json +1 -1
  13. data/grammars/source.cmd.json +1 -1
  14. data/grammars/source.commonlisp.json +1 -1
  15. data/grammars/source.cs.json +1 -1
  16. data/grammars/source.curlrc.json +1 -1
  17. data/grammars/source.curry.json +1 -1
  18. data/grammars/source.cylc.json +1 -0
  19. data/grammars/source.dart.json +1 -1
  20. data/grammars/source.dds.dspf.json +1 -1
  21. data/grammars/source.dds.icff.json +1 -1
  22. data/grammars/source.dds.lf.json +1 -1
  23. data/grammars/source.dds.pf.json +1 -1
  24. data/grammars/source.dds.prtf.json +1 -1
  25. data/grammars/source.dune.json +1 -0
  26. data/grammars/source.elvish.json +1 -1
  27. data/grammars/source.fsharp.json +1 -1
  28. data/grammars/source.gdscript.json +1 -1
  29. data/grammars/source.gitconfig.json +1 -1
  30. data/grammars/source.gleam.json +1 -1
  31. data/grammars/source.hgignore.json +1 -1
  32. data/grammars/source.hosts.json +1 -1
  33. data/grammars/source.iCalendar.json +1 -0
  34. data/grammars/source.ice.json +1 -1
  35. data/grammars/source.julia.json +1 -1
  36. data/grammars/source.just.json +1 -1
  37. data/grammars/source.lcb.json +1 -0
  38. data/grammars/source.lilypond.json +1 -1
  39. data/grammars/source.livecodescript.json +1 -0
  40. data/grammars/source.luau.json +1 -1
  41. data/grammars/source.matlab.json +1 -1
  42. data/grammars/source.mcfunction.json +1 -1
  43. data/grammars/source.mdx.json +1 -1
  44. data/grammars/source.mo.json +1 -1
  45. data/grammars/source.move.json +1 -1
  46. data/grammars/source.nanorc.json +1 -1
  47. data/grammars/source.nr.json +1 -0
  48. data/grammars/source.p4.json +1 -1
  49. data/grammars/source.peggy.json +1 -0
  50. data/grammars/source.polar.json +1 -1
  51. data/grammars/source.powerbuilder.json +1 -0
  52. data/grammars/source.qsharp.json +1 -1
  53. data/grammars/source.rpgle.json +1 -1
  54. data/grammars/source.rust.json +1 -1
  55. data/grammars/source.sentinel.json +1 -1
  56. data/grammars/source.sourcepawn.json +1 -1
  57. data/grammars/source.stan.json +1 -1
  58. data/grammars/source.swift.json +1 -1
  59. data/grammars/source.sy.json +1 -1
  60. data/grammars/source.vba.json +1 -1
  61. data/grammars/source.vcard.json +1 -0
  62. data/grammars/source.wdl.json +1 -1
  63. data/grammars/text.adblock.json +1 -1
  64. data/grammars/text.html.jte.json +1 -0
  65. data/grammars/text.html.statamic.json +1 -1
  66. data/grammars/text.md.json +1 -1
  67. data/grammars/text.mdx.astro.codeblock.json +1 -0
  68. data/grammars/version +1 -1
  69. data/lib/linguist/VERSION +1 -1
  70. data/lib/linguist/classifier.rb +315 -106
  71. data/lib/linguist/generated.rb +17 -4
  72. data/lib/linguist/generic.yml +1 -0
  73. data/lib/linguist/heuristics.rb +6 -6
  74. data/lib/linguist/heuristics.yml +54 -4
  75. data/lib/linguist/languages.json +1 -1
  76. data/lib/linguist/languages.yml +123 -7
  77. data/lib/linguist/samples.json +1 -1
  78. data/lib/linguist/samples.rb +9 -1
  79. data/lib/linguist/sha256.rb +1 -1
  80. metadata +17 -5
  81. data/grammars/markdown.mcfunction.codeblock.json +0 -1
  82. data/grammars/mdx.LANGUAGE.codeblock.json +0 -1
@@ -1 +1 @@
1
- {"name":"LilyPond","scopeName":"source.lilypond","patterns":[{"include":"#expression"},{"include":"#general_operators"},{"include":"#note_name"}],"repository":{"chord_expression":{"patterns":[{"name":"meta.chord-expression.lilypond","begin":"{","end":"}","patterns":[{"include":"#chord_mode_notation"},{"include":"#octave_transpose_operators"},{"name":"keyword.operator.chord.modifier-indicator.lilypond","match":":"},{"name":"keyword.other.chord.modifier.lilypond","match":"\\b(?:aug|dim|m(?:aj)?|sus)"},{"name":"keyword.operator.chord.alter-note.flat.lilypond","match":"-"},{"name":"keyword.operator.chord.alter-note.sharp.lilypond","match":"\\+"},{"name":"keyword.operator.chord.remove-note.lilypond","match":"\\^"},{"name":"keyword.operator.chord.add-bass-note.lilypond","match":"/\\+"},{"include":"#chord_expression"},{"include":"$self"}]}]},"chord_mode_notation":{"patterns":[{"name":"keyword.operator.forward-slash.lilypond","match":"/(?!\\+)"},{"name":"meta.duration-scale.lilypond","begin":"\\*","end":"(\\d+)(?:(/)(\\d+))?","patterns":[{"include":"#comments"}],"beginCaptures":{"0":{"name":"keyword.operator.scale-duration.lilypond"}},"endCaptures":{"1":{"name":"constant.numeric.integer.lilypond"},"2":{"name":"keyword.operator.forward-slash.lilypond"},"3":{"name":"constant.numeric.integer.lilypond"}}},{"name":"keyword.operator.tie.lilypond","match":"~"},{"name":"support.variable.rest.lilypond","match":"\\b[rRs](?!-?[[:alpha:]])"},{"name":"keyword.operator.beam.begin.lilypond","match":"\\["},{"name":"keyword.operator.beam.end.lilypond","match":"\\]"},{"name":"keyword.operator.bar-check.lilypond","match":"\\|"},{"name":"keyword.operator.dynamic-mark.begin.crescendo.lilypond","match":"\\\\\u003c"},{"name":"keyword.operator.dynamic-mark.begin.decrescendo.lilypond","match":"\\\\\u003e"},{"name":"keyword.operator.dynamic-mark.end.lilypond","match":"\\\\!"},{"name":"keyword.operator.slur.begin.lilypond","match":"\\("},{"name":"keyword.operator.slur.end.lilypond","match":"\\)"},{"name":"keyword.operator.phrasing-slur.begin.lilypond","match":"\\\\\\("},{"name":"keyword.operator.phrasing-slur.end.lilypond","match":"\\\\\\)"},{"name":"meta.slur-label.lilypond","begin":"\\\\=","end":"(?=\\\\?[()])","patterns":[{"include":"#comments"},{"name":"entity.name.slur-label.lilypond","match":"[-\\w]+"},{"name":"string.lilypond","contentName":"entity.name.slur-label.lilypond","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.lilypond","match":"\\\\[nt\"'\\\\]"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.lilypond"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.lilypond"}}}],"beginCaptures":{"0":{"name":"entity.punctuation.slur-label.lilypond"}}},{"name":"meta.chord.lilypond","begin":"\u003c(?!\u003c)","end":"(?\u003c![-\u003e])\u003e","patterns":[{"name":"invalid.illegal.lilypond","match":"\u003c"},{"include":"#music_expression_contents"}],"beginCaptures":{"0":{"name":"punctuation.definition.chord.begin.lilypond"}},"endCaptures":{"0":{"name":"punctuation.definition.chord.end.lilypond"}}},{"name":"keyword.operator.chord-repetition.lilypond","match":"(?\u003c![[:alpha:]])q(?!-?[[:alpha:]])"},{"name":"invalid.deprecated.ligature.begin.lilypond","match":"\\\\\\["},{"name":"invalid.deprecated.ligature.end.lilypond","match":"\\\\\\]"},{"name":"keyword.operator.articulation-direction-indicator.down.lilypond","match":"_"},{"name":"keyword.operator.string-number-indicator.lilypond","match":"\\\\(?=\\d)"}]},"comments":{"patterns":[{"name":"comment.block.lilypond","begin":"%{","end":"%}","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.lilypond"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.end.lilypond"}}},{"name":"comment.line.lilypond","begin":"%","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.lilypond"}}}]},"drum_expression":{"patterns":[{"name":"meta.drum-expression.lilypond","begin":"{","end":"}","patterns":[{"name":"support.variable.percussion-note.lilypond","match":"\\b(a(?:coustic(?:bassdrum|snare)|g(?:[hl]))|b(?:assdrum|d(?:(?:a)?)|o(?:h(?:[mo])|l(?:[mo])|[hl]))|c(?:ab(?:(?:asa)?)|g(?:h(?:[mo])|l(?:[mo])|[hl])|hinesecymbal|l(?:aves|osedhihat)|owbell|rashcymbal(?:(?:[ab])?)|ui(?:[mo])|ym(?:c(?:[abh])|r(?:[ab])|[crs])|[bl])|d(?:[abcde])|electricsnare|f(?:ive(?:down|up)|our(?:down|up))|gui(?:(?:ro|[ls])?)|h(?:a(?:lfopenhihat|ndclap)|h(?:ho|[cop])|i(?:agogo|bongo|conga|gh(?:(?:(?:floor)?)tom)|hat|midtom|sidestick|timbale|woodblock)|[ch])|lo(?:agogo|bongo|conga|ng(?:guiro|whistle)|sidestick|timbale|w(?:floortom|midtom|oodblock|tom))|m(?:ar(?:(?:acas)?)|ute(?:cuica|hi(?:bongo|conga)|lo(?:bongo|conga)|triangle))|o(?:ne(?:down|up)|pen(?:cuica|hi(?:bongo|conga|hat)|lo(?:bongo|conga)|triangle))|pedalhihat|r(?:b|ide(?:bell|cymbal(?:(?:[ab])?)))|s(?:hort(?:guiro|whistle)|idestick|n(?:are|[ae])|plashcymbal|s(?:[hl])|[ns])|t(?:amb(?:(?:ourine)?)|hree(?:down|up)|im(?:[hl])|om(?:f(?:[hl])|m(?:[hl])|[hl])|ri(?:(?:angle|[mo])?)|t|wo(?:down|up))|u(?:[abcde])|vib(?:raslap|s)|w(?:b(?:[hl])|h(?:[ls])))(?!-?[[:alpha:]])"},{"include":"#music_notation"},{"include":"#percussion_expression"},{"include":"#expression"},{"include":"#general_operators"}]}]},"expression":{"patterns":[{"include":"#comments"},{"include":"#integer"},{"name":"string.lilypond","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.lilypond","match":"\\\\[nt\"'\\\\]"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.lilypond"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.lilypond"}}},{"name":"meta.simultaneous-expressions.lilypond","begin":"\u003c\u003c","end":"\u003e\u003e","patterns":[{"include":"#music_expression_contents"},{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.simultaneous-expressions.begin.lilypond"}},"endCaptures":{"0":{"name":"punctuation.simultaneous-expressions.end.lilypond"}}},{"name":"meta.separator.simultaneous-expressions.lilypond","match":"\\\\\\\\"},{"name":"meta.$1.lilypond","begin":"\\\\(fixed|relative)(?!-?[[:alpha:]])","end":"(?\u003c=[^%]})|(?\u003c=^})","patterns":[{"include":"#octave_transpose_operators"},{"include":"$self"}],"beginCaptures":{"0":{"name":"support.function.lilypond"}}},{"name":"meta.note-mode.lilypond","begin":"\\\\notemode(?!-?[[:alpha:]])","end":"(?\u003c=[^%]})|(?\u003c=^})","patterns":[{"include":"#music_expression"},{"include":"$self"}],"beginCaptures":{"0":{"name":"keyword.other.lilypond"}}},{"name":"meta.markup-block.lilypond","begin":"\\\\markup(?:list)?(?!-?[[:alpha:]])","end":"(?\u003c!\\\\)([-\\w]+)|(?\u003c=[^%]})|(?\u003c=^})","patterns":[{"include":"#markup_command"},{"include":"#markup_expression"},{"include":"$self"}],"beginCaptures":{"0":{"name":"keyword.other.lilypond"}},"endCaptures":{"1":{"name":"meta.markup-expression.lilypond"}}},{"name":"meta.lyric-mode.lilypond","begin":"\\\\(?:addlyrics|lyric(?:mode|s(?:to)?))(?!-?[[:alpha:]])","end":"(?\u003c=[^%]})|(?\u003c=^})","patterns":[{"include":"#lyric_expression"},{"include":"$self"}],"beginCaptures":{"0":{"name":"keyword.other.lilypond"}}},{"name":"meta.drum-mode.lilypond","begin":"\\\\drum(?:mode|s)(?!-?[[:alpha:]])","end":"(?\u003c=[^%]})|(?\u003c=^})","patterns":[{"include":"#drum_expression"},{"include":"$self"}],"beginCaptures":{"0":{"name":"keyword.other.lilypond"}}},{"name":"meta.chord-mode.lilypond","begin":"\\\\chordmode(?!-?[[:alpha:]])","end":"(?\u003c=[^%]})|(?\u003c=^})","patterns":[{"include":"#chord_expression"},{"include":"$self"}],"beginCaptures":{"0":{"name":"keyword.other.lilypond"}}},{"name":"meta.figure-mode.lilypond","begin":"\\\\figure(?:mode|s)(?!-?[[:alpha:]])","end":"(?\u003c=[^%]})|(?\u003c=^})","patterns":[{"include":"#figure_expression"},{"include":"$self"}],"beginCaptures":{"0":{"name":"keyword.other.lilypond"}}},{"name":"meta.paper-block.lilypond","begin":"\\\\paper(?!-?[[:alpha:]])","end":"(?\u003c=[^%]})|(?\u003c=^})","patterns":[{"include":"#paper_expression"},{"include":"$self"}],"beginCaptures":{"0":{"name":"keyword.other.lilypond"}}},{"name":"keyword.other.lilypond","match":"\\\\(a(?:ccepts|ddlyrics|l(?:ias|ternative))|book(?:(?:part)?)|c(?:h(?:ange|ord(?:mode|s))|on(?:sists|text))|d(?:e(?:fault(?:(?:child)?)|nies|scription)|rum(?:mode|s))|etc|figure(?:mode|s)|header|include|l(?:ayout|yric(?:mode|s(?:(?:to)?)))|m(?:a(?:ininput|rkup(?:(?:list)?))|idi)|n(?:ame|ew|otemode)|override|paper|re(?:move|(?:pea|s|ver)t)|s(?:core|e(?:quential|t)|imultaneous)|t(?:empo|ype)|unset|version|with)(?!-?[[:alpha:]])"},{"name":"support.function.lilypond","match":"\\\\(Remove(?:(?:(?:All)?)EmptyStaves)|a(?:bsolute|cc(?:ent|i(?:accatura|dentalStyle))|dd(?:ChordShape|InstrumentDefinition|Quote)|eolian|fterGrace(?:(?:Fraction)?)|iken(?:Heads(?:(?:Minor)?)|ThinHeads(?:(?:Minor)?))|l(?:low(?:PageTurn|VoltaHook)|terBroken)|mbitusAfter|pp(?:endToTag|ly(?:Context|Music|Output)|oggiatura)|r(?:abicStringNumbers|peggio(?:(?:Arrow(?:Down|Up)|Bracket|Normal|Parenthesis(?:(?:Dashed)?))?))|ssertBeam(?:Quant|Slope)|uto(?:B(?:eamO(?:ff|n)|reaksO(?:ff|n))|Change|LineBreaksO(?:ff|n)|PageBreaksO(?:ff|n)))|b(?:a(?:lloon(?:GrobText|LengthO(?:ff|n)|Text)|r(?:(?:NumberCheck)?)|ssFigure(?:ExtendersO(?:ff|n)|StaffAlignment(?:Down|Neutral|Up)))|e(?:amExceptions|ndAfter)|igger|lackTriangleMarkup|ookOutput(?:Name|Suffix)|re(?:a(?:k(?:(?:DynamicSpan)?)|the)|ve))|c(?:adenzaO(?:ff|n)|enter|hord(?:(?:Repeat|modifier)s)|lef|o(?:da|mp(?:oundMeter|ress(?:(?:EmptyMeasure|MMRest)s)))|r(?:(?:esc(?:(?:Hairpin|TextCresc)?)|ossStaff)?)|ue(?:Clef(?:(?:Unset)?)|During(?:(?:WithClef)?)))|d(?:ash(?:Bang|D(?:ash|ot)|Hat|Larger|Plus|Underscore)|e(?:adNote(?:(?:sO(?:ff|n))?)|cr(?:(?:esc)?)|f(?:ault(?:NoteHeads|StringTunings|TimeSignature)|ineBarLine)|precated(?:cresc|dim|end(?:cresc|dim)))|i(?:m(?:(?:Hairpin|TextD(?:ecr(?:(?:esc)?)|im))?)|splay(?:LilyMusic|Music|Scheme))|o(?:rian|ts(?:Down|Neutral|Up)|wn(?:(?:bow|mordent|prall)?))|r(?:opNote|umPitchNames)|ynamic(?:Down|Neutral|Up))|e(?:asyHeadsO(?:ff|n)|nd(?:Spanners|cr(?:(?:esc)?)|d(?:ecr(?:(?:esc)?)|im))|pisem(?:Finis|Initium)|spressivo|(?:ventChord|xpandEmptyMeasure)s)|f(?:e(?:atherDurations|rmata)|ff(?:(?:f(?:(?:f)?))?)|i(?:nger|xed)|lageolet|ootnote|renchChords|unkHeads(?:(?:Minor)?)|[fpz])|g(?:ermanChords|lissando|r(?:ace|obdescriptions))|h(?:a(?:lfopen|rmonic(?:(?:By(?:Fret|Ratio)|Note|sO(?:ff|n))?)|ydnturn)|enze(?:(?:long|short)fermata)|ide(?:(?:Notes|S(?:plitTiedTabNotes|taffSwitch))?)|uge)|i(?:gnatzekException(?:Music|s)|mprovisationO(?:ff|n)|n(?:StaffSegno|cipit|strumentSwitch|ver(?:sion|tChords))|onian|talianChords)|k(?:e(?:epWithTag|y)|i(?:evanO(?:ff|n)|llCues))|l(?:a(?:bel|issezVibrer|(?:nguag(?:(?:e(?:Restor|SaveAndChang))?)|rg)e)|eft|heel|ineprall|o(?:crian|ng(?:(?:(?:fermat)?)a))|toe|ydian)|m(?:a(?:gnify(?:Music|Staff)|jor|ke(?:Clusters|DefaultStringTuning)|r(?:cato|k(?:(?:LengthO(?:ff|n)|upMap)?))|xima)|e(?:lisma(?:(?:End)?)|rgeDifferently(?:DottedO(?:ff|n)|HeadedO(?:ff|n)))|i(?:diDrumPitches|nor|xolydian)|o(?:dal(?:Inversion|Transpose)|rdent)|usicMap|[fp])|n(?:ewSpacingSection|o(?:B(?:eam|reak)|Page(?:Break|Turn)|rmalsize)|umericTimeSignature)|o(?:ctaveCheck|ffset|mit|n(?:(?:(?:eVoi)?)ce)|pen|ttava|verride(?:Property|TimeSignatureSettings))|p(?:a(?:ge(?:Break|Turn)|lmMute(?:(?:O(?:ff|n))?)|r(?:allelMusic|enthesize|t(?:Combine(?:(?:A(?:part|utomatic)|Chords|Down|Force|Listener|SoloI(?:(?:I)?)|U(?:nisono|p))?)|ial)))|hr(?:asingSlur(?:D(?:ash(?:Pattern|ed)|o(?:tted|wn))|Half(?:(?:Dashe|Soli)d)|Neutral|Solid|Up)|ygian)|itchedTrill|o(?:intAndClick(?:O(?:ff|n)|Types)|rtato)|p(?:(?:p(?:(?:p(?:(?:p)?))?))?)|r(?:all(?:(?:down|mordent|prall|up)?)|edefinedFretboardsO(?:ff|n)|operty(?:Override|Revert|Set|Tweak|Unset))|ushToTag)|quoteDuring|r(?:aiseNote|e(?:duceChords|lative|moveWithTag|peatTie|setRelativeOctave|trograde|ver(?:seturn|tTimeSignatureSettings))|fz|heel|ight(?:(?:HandFinger)?)|omanStringNumbers|toe)|s(?:acredHarpHeads(?:(?:Minor)?)|caleDurations|e(?:gno|miGermanChords|t(?:DefaultDurationToQuarter|tingsFrom))|f(?:[fpz])|h(?:ape|ift(?:Durations|O(?:ff|n(?:(?:n(?:(?:n)?))?)))|o(?:rtfermata|wS(?:plitTiedTabNotes|taffSwitch)))|i(?:(?:gnumcongruentia|ngl)e)|kip|l(?:ash(?:edGrace|turn)|ur(?:D(?:ash(?:Pattern|ed)|o(?:tted|wn))|Half(?:(?:Dashe|Soli)d)|Neutral|Solid|Up))|mall(?:(?:er)?)|nappizzicato|o(?:stenutoO(?:ff|n)|uthernHarmonyHeads(?:(?:Minor)?))|p(?:acingTweaks|p)|t(?:a(?:ccat(?:(?:(?:issim)?)o)|rt(?:(?:A(?:(?:cciacc|ppoggi)aturaMusic)|Gr(?:ace(?:Music|Slur)|oup)|Measure(?:Count|Spanner)|S(?:lashedGraceMusic|taff)|T(?:(?:ext|rill)Span))?))|em(?:Down|Neutral|Up)|o(?:p(?:(?:A(?:(?:cciacc|ppoggi)aturaMusic)|Gr(?:ace(?:Music|Slur)|oup)|Measure(?:Count|Spanner)|S(?:lashedGraceMusic|taff)|T(?:(?:ext|rill)Span)|ped)?)|rePredefinedDiagram)|ringTuning|yledNoteHeads)|ustainO(?:ff|n)|[fp])|t(?:a(?:b(?:ChordRepe(?:ats|tition)|FullNotation)|g(?:(?:Group)?))|e(?:eny|mporary|nuto|xt(?:LengthO(?:ff|n)|Spanner(?:Down|Neutral|Up)))|humb|i(?:e(?:D(?:ash(?:Pattern|ed)|o(?:tted|wn))|Half(?:(?:Dashe|Soli)d)|Neutral|Solid|Up)|me(?:(?:s)?)|ny)|ocItem(?:(?:WithDotsMarkup)?)|r(?:anspos(?:e(?:(?:dCueDuring)?)|ition)|eCorde|ill)|u(?:plet(?:(?:Down|Neutral|Span|Up)?)|rn)|weak)|u(?:n(?:HideNotes|aCorda|do|foldRepeats)|p(?:(?:bow|mordent|prall)?))|v(?:arcoda|ery(?:(?:long|short)fermata)|o(?:i(?:ce(?:Four(?:(?:Style)?)|NeutralStyle|One(?:(?:Style)?)|T(?:hree(?:(?:Style)?)|wo(?:(?:Style)?))|s)|d)|welTransition))|w(?:alkerHeads(?:(?:Minor)?)|hite(?:(?:Circ|Triang)leMarkup)|ithMusicProperty)|xNote(?:(?:sO(?:ff|n))?)|[fnp])(?!-?[[:alpha:]])"},{"include":"#music_expression"},{"name":"meta.scheme.lilypond","begin":"(#)|(\\$)|([#$]@)","end":"(?=\\s)|$","patterns":[{"include":"#scheme_expression"},{"include":"source.lisp"}],"beginCaptures":{"1":{"name":"keyword.operator.scheme.embed.lilypond"},"2":{"name":"keyword.operator.scheme.evaluate.lilypond"},"3":{"name":"keyword.operator.scheme.list-splice.lilypond"}}},{"name":"variable.other.lilypond","match":"\\\\[[:alpha:]]+(?:-[[:alpha:]]+)*"}]},"figure_expression":{"patterns":[{"name":"meta.figure-expression.lilypond","begin":"{","end":"}","patterns":[{"name":"meta.figure-group.lilypond","begin":"\u003c","end":"\u003e","patterns":[{"include":"#figure_expression_contents"},{"name":"meta.figure-bracket.lilypond","begin":"\\[","end":"\\]","patterns":[{"name":"invalid.illegal.lilypond","match":"[\u003e\\[]"},{"include":"#figure_expression_contents"}],"beginCaptures":{"0":{"name":"punctuation.definition.figure-bracket.begin.lilypond"}},"endCaptures":{"0":{"name":"punctuation.definition.figure-bracket.end.lilypond"}}}],"beginCaptures":{"0":{"name":"punctuation.definition.figure-group.begin.lilypond"}},"endCaptures":{"0":{"name":"punctuation.definition.figure-group.end.lilypond"}}},{"include":"#figure_expression"},{"include":"$self"}]}]},"figure_expression_contents":{"patterns":[{"name":"invalid.illegal.lilypond","match":"\u003c"},{"include":"#integer"},{"include":"#comments"},{"name":"keyword.operator.figure.accidental.sharp.lilypond","match":"\\+"},{"name":"keyword.operator.figure.accidental.flat.lilypond","match":"-"},{"name":"keyword.operator.figure.accidental.natural.lilypond","match":"!"},{"name":"support.variable.figure.hidden-third.lilypond","match":"_"},{"name":"keyword.operator.figure.augmented.lilypond","match":"\\\\\\+"},{"name":"keyword.operator.figure.diminished.lilypond","match":"/"},{"name":"keyword.operator.figure.raised-sixth.lilypond","match":"\\\\\\\\"},{"name":"keyword.operator.figure.end-continuation-line.lilypond","match":"\\\\!"}]},"general_operators":{"patterns":[{"name":"keyword.operator.dot.lilypond","match":"\\."},{"name":"keyword.operator.equals-sign.lilypond","match":"="}]},"integer":{"patterns":[{"name":"constant.numeric.integer.lilypond","match":"\\d+"}]},"lyric_expression":{"patterns":[{"name":"meta.lyric-expression.lilypond","begin":"{","end":"}","patterns":[{"name":"keyword.operator.lyric.syllable-hyphen.lilypond","match":"(?\u003c=[\\d\\s])--(?=\\s)"},{"name":"keyword.operator.lyric.syllable-space.lilypond","match":"(?\u003c=\\S)_(?=\\S)"},{"name":"keyword.operator.lyric.tie.lilypond","match":"(?\u003c=\\S)~(?=\\S)"},{"name":"keyword.operator.lyric.extender-line.lilypond","match":"(?\u003c=[\\d\\s])__(?=\\s)"},{"name":"keyword.operator.lyric.melisma.lilypond","match":"(?\u003c=[\\d\\s])_(?=\\s)"},{"include":"#lyric_expression"},{"include":"#expression"}]}]},"markup_command":{"patterns":[{"name":"support.function.lilypond","match":"\\\\(a(?:bs-fontsize|rrow-head|uto-footnote)|b(?:ackslashed-digit|eam|o(?:ld|x)|racket)|c(?:aps|enter-(?:(?:alig|colum)n)|har|ircle|o(?:lumn(?:(?:-lines)?)|m(?:(?:bin|mand-nam)e)|ncat))|d(?:ir-column|ouble(?:flat|sharp)|raw-(?:(?:circl|(?:(?:d(?:(?:ash|ott)ed-)|h|squiggle-)?)lin)e)|ynamic)|e(?:llipse|psfile|yeglasses)|f(?:ermata|i(?:ll(?:-(?:line|with-pattern)|ed-box)|nger|rst-visible)|lat|o(?:nt(?:Caps|size)|otnote)|r(?:action|et-diagram(?:(?:-(?:(?:ter|verbo)se))?)|omproperty))|general-align|h(?:a(?:lign|rp-pedal)|bracket|center-in|(?:spac|ug)e)|italic|justif(?:ied-lines|y(?:(?:-(?:field|line|string))?))|l(?:arge(?:(?:r)?)|eft-(?:align|brace|column)|ine|o(?:okup|wer))|m(?:a(?:gnify|p-markup-commands|rk(?:alphabet|letter))|edium|usicglyph)|n(?:atural|o(?:rmal(?:-(?:size-su(?:b|per)|text)|size)|te(?:(?:-by-number)?))|u(?:ll|mber))|o(?:n-the-fly|v(?:al|er(?:lay|ride(?:(?:-lines)?)|tie)))|p(?:a(?:d-(?:around|markup|(?:(?:to-bo)?)x)|ge-(?:link|ref)|renthesize|t(?:h|tern))|ostscript|roperty-recursive|ut-adjacent)|r(?:aise|e(?:place|st(?:(?:-by-number)?))|ight-(?:align|brace|column)|o(?:man|tate|unded-box))|s(?:ans|c(?:ale|ore(?:(?:-lines)?))|e(?:mi(?:flat|sharp)|squi(?:flat|sharp))|harp|imple|lashed-digit|mall(?:(?:Caps|er)?)|t(?:encil|rut)|u(?:b|per))|t(?:able(?:(?:-of-contents)?)|e(?:eny|xt)|i(?:e(?:(?:d-lyric)?)|ny)|r(?:ans(?:late(?:(?:-scaled)?)|parent)|iangle)|ypewriter)|u(?:nder(?:(?:lin|ti)e)|pright)|v(?:center|(?:erbatim-fil|spac)e)|w(?:hiteout|ith-(?:color|dimensions(?:(?:-from)?)|link|outline|url)|ordwrap(?:(?:-(?:field|internal|lines|string(?:(?:-internal)?)))?)))(?!-?[[:alpha:]])"}]},"markup_expression":{"patterns":[{"name":"meta.markup-expression.lilypond","begin":"{","end":"}","patterns":[{"include":"#markup_command"},{"include":"#markup_expression"},{"include":"#expression"}]}]},"music_expression":{"patterns":[{"name":"meta.music-expression.lilypond","begin":"{","end":"}","patterns":[{"include":"#music_expression_contents"}]}]},"music_expression_contents":{"patterns":[{"include":"#music_notation"},{"include":"#octave_transpose_operators"},{"name":"keyword.operator.accidental.reminder.lilypond","match":"!"},{"name":"keyword.operator.accidental.cautionary.lilypond","match":"\\?"},{"include":"$self"}]},"music_notation":{"patterns":[{"begin":"(\\^)|(_)|(-)","end":"(\\^)|(\\+)|(-)|(!)|(\u003e)|(\\.)|(_)|(?=[^\\s%])","patterns":[{"include":"#comments"}],"beginCaptures":{"1":{"name":"keyword.operator.articulation-direction-indicator.up.lilypond"},"2":{"name":"keyword.operator.articulation-direction-indicator.down.lilypond"},"3":{"name":"keyword.operator.articulation-direction-indicator.default.lilypond"}},"endCaptures":{"1":{"name":"keyword.operator.articulation.marcato.lilypond"},"2":{"name":"keyword.operator.articulation.stopped.lilypond"},"3":{"name":"keyword.operator.articulation.tenuto.lilypond"},"4":{"name":"keyword.operator.articulation.staccatissimo.lilypond"},"5":{"name":"keyword.operator.articulation.accent.lilypond"},"6":{"name":"keyword.operator.articulation.staccato.lilypond"},"7":{"name":"keyword.operator.articulation.portato.lilypond"}}},{"include":"#chord_mode_notation"},{"name":"keyword.operator.articulation-direction-indicator.up.lilypond","match":"\\^"},{"name":"keyword.operator.articulation-direction-indicator.default.lilypond","match":"(?\u003c![[:alpha:]])-|-(?![[:alpha:]])"}]},"note_name":{"patterns":[{"name":"support.variable.note-name.lilypond","match":"\\b(a(?:-(?:flat(?:(?:flat)?)|natural|sharp(?:(?:sharp)?))|e(?:s(?:e(?:[hs])|s(?:(?:e(?:h|ss))?))|[hs])|ff|i(?:s(?:i(?:[hs])|s(?:(?:i(?:h|ss))?))|[hs])|q(?:[fs])|s(?:a(?:[hs])|e(?:[hs])|s(?:(?:e(?:h|ss))?))|tq(?:[fs])|[fhsx])|b(?:-(?:flat(?:(?:flat)?)|natural|sharp(?:(?:sharp)?))|e(?:s(?:e(?:[hs])|s)|[hs])|ff|i(?:si(?:[hs])|[hs])|q(?:[fs])|ss|tq(?:[fs])|[bfsx])|c(?:-(?:flat(?:(?:flat)?)|natural|sharp(?:(?:sharp)?))|e(?:s(?:e(?:[hs])|s(?:(?:e(?:h|ss))?))|[hs])|ff|i(?:s(?:i(?:[hs])|s(?:(?:i(?:h|ss))?))|[hs])|q(?:[fs])|ss|tq(?:[fs])|[fsx])|d(?:-(?:flat(?:(?:flat)?)|natural|sharp(?:(?:sharp)?))|e(?:s(?:e(?:[hs])|s(?:(?:e(?:h|ss))?))|[hs])|ff|i(?:s(?:i(?:[hs])|s(?:(?:i(?:h|ss))?))|[hs])|o(?:b(?:b|hb|qt|sb|tqt)|c(?:[bs])|d(?:(?:(?:s)?)d)|h(?:[bk])|k(?:(?:(?:h)?)k)|q(?:[bds])|s(?:(?:(?:t)?)qt|[bds])|t(?:c(?:[bs])|q(?:[bds]))|[bdksx])|q(?:[fs])|ss|tq(?:[fs])|[fosx])|e(?:-(?:flat(?:(?:flat)?)|natural|sharp(?:(?:sharp)?))|e(?:s(?:e(?:[hs])|s(?:(?:e(?:h|ss))?))|[hs])|ff|i(?:s(?:i(?:[hs])|s(?:(?:i(?:h|ss))?))|[hs])|q(?:[fs])|s(?:e(?:[hs])|s(?:(?:e(?:h|ss))?))|tq(?:[fs])|[fhsx])|f(?:-(?:flat(?:(?:flat)?)|natural|sharp(?:(?:sharp)?))|a(?:b(?:b|hb|qt|sb|tqt)|c(?:[bs])|d(?:(?:(?:s)?)d)|h(?:[bk])|k(?:(?:(?:h)?)k)|q(?:[bds])|s(?:(?:(?:t)?)qt|[bds])|t(?:c(?:[bs])|q(?:[bds]))|[bdksx])|e(?:s(?:e(?:[hs])|s(?:(?:e(?:h|ss))?))|[hs])|ff|i(?:s(?:i(?:[hs])|s(?:(?:i(?:h|ss))?))|[hs])|q(?:[fs])|ss|tq(?:[fs])|[afsx])|g(?:-(?:flat(?:(?:flat)?)|natural|sharp(?:(?:sharp)?))|e(?:s(?:e(?:[hs])|s(?:(?:e(?:h|ss))?))|[hs])|ff|i(?:s(?:i(?:[hs])|s(?:(?:i(?:h|ss))?))|[hs])|q(?:[fs])|ss|tq(?:[fs])|[fsx])|h(?:e(?:h|s(?:e(?:[hs])|se(?:h|ss)))|i(?:s(?:i(?:[hs])|s(?:(?:i(?:h|ss))?))|[hs]))|la(?:(?:b(?:b|hb|qt|sb|tqt)|c(?:[bs])|d(?:(?:(?:s)?)d)|h(?:[bk])|k(?:(?:(?:h)?)k)|q(?:[bds])|s(?:(?:(?:t)?)qt|[bds])|t(?:c(?:[bs])|q(?:[bds]))|[bdksx])?)|mi(?:(?:b(?:b|hb|qt|sb|tqt)|c(?:[bs])|d(?:(?:(?:s)?)d)|h(?:[bk])|k(?:(?:(?:h)?)k)|q(?:[bds])|s(?:(?:(?:t)?)qt|[bds])|t(?:c(?:[bs])|q(?:[bds]))|[bdksx])?)|r(?:e(?:b(?:b|hb|qt|sb|tqt)|c(?:[bs])|d(?:(?:(?:s)?)d)|h(?:[bk])|k(?:(?:(?:h)?)k)|q(?:[bds])|s(?:(?:(?:t)?)qt|[bds])|t(?:c(?:[bs])|q(?:[bds]))|[bdksx])|é(?:b(?:(?:(?:s)?)b)|d(?:(?:(?:s)?)d)|s(?:[bd])|[bdx])|[eé])|s(?:i(?:(?:b(?:b|hb|qt|sb|tqt)|c(?:[bs])|d(?:(?:(?:s)?)d)|h(?:[bk])|k(?:(?:(?:h)?)k)|q(?:[bds])|s(?:(?:(?:t)?)qt|[bds])|t(?:c(?:[bs])|q(?:[bds]))|[bdksx])?)|ol(?:(?:b(?:b|hb|qt|sb|tqt)|c(?:[bs])|d(?:(?:(?:s)?)d)|h(?:[bk])|k(?:(?:(?:h)?)k)|q(?:[bds])|s(?:(?:(?:t)?)qt|[bds])|t(?:c(?:[bs])|q(?:[bds]))|[bdksx])?))|[abcdefgh])(?!-?[[:alpha:]])"}]},"octave_transpose_operators":{"patterns":[{"name":"keyword.operator.transpose-octave.up.lilypond","match":"'"},{"name":"keyword.operator.transpose-octave.down.lilypond","match":","}]},"paper_expression":{"patterns":[{"name":"meta.paper-expression.lilypond","begin":"{","end":"}","patterns":[{"name":"support.constant.lilypond","match":"\\\\(?:[cm]m|in|pt)(?!-?[[:alpha:]])"},{"include":"#paper_expression"},{"include":"$self"}]}]},"scheme_expression":{"patterns":[{"name":"meta.scheme-expression.lilypond","begin":"\\(","end":"\\)","patterns":[{"begin":"#\\{","end":"#}","patterns":[{"include":"source.lilypond"}]},{"include":"#scheme_expression"},{"include":"source.lisp"}]}]}}}
1
+ {"name":"LilyPond","scopeName":"source.lilypond","patterns":[{"include":"#comments"},{"include":"#expression_component"}],"repository":{"chord_expression":{"patterns":[{"name":"meta.chord-expression.lilypond","begin":"{","end":"}","patterns":[{"include":"#chord_mode_notation"},{"include":"#octave_transpose_operators"},{"name":"keyword.operator.chord.modifier-indicator.lilypond","match":":"},{"name":"keyword.other.chord.modifier.lilypond","match":"\\b(?:aug|dim|m(?:aj)?|sus)"},{"name":"keyword.operator.chord.alter-note.flat.lilypond","match":"-"},{"name":"keyword.operator.chord.alter-note.sharp.lilypond","match":"\\+"},{"name":"keyword.operator.chord.remove-note.lilypond","match":"\\^"},{"name":"keyword.operator.chord.add-bass-note.lilypond","match":"/\\+"},{"include":"#chord_expression"},{"include":"$self"}]}]},"comments":{"patterns":[{"name":"comment.block.lilypond","begin":"%{","end":"%}","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.lilypond"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.end.lilypond"}}},{"name":"comment.line.lilypond","begin":"%","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.lilypond"}}}]},"expression_component":{"patterns":[{"name":"meta.expression-block.lilypond","begin":"{","end":"}","patterns":[{"include":"#comments"},{"include":"#expression_component"}]},{"include":"#integer"},{"name":"string.lilypond","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.lilypond","match":"\\\\[nt\"'\\\\]"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.lilypond"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.lilypond"}}},{"name":"meta.simultaneous-expressions.lilypond","begin":"\u003c\u003c","end":"\u003e\u003e","patterns":[{"include":"#comments"},{"include":"#expression_component"}],"beginCaptures":{"0":{"name":"punctuation.simultaneous-expressions.begin.lilypond"}},"endCaptures":{"0":{"name":"punctuation.simultaneous-expressions.end.lilypond"}}},{"name":"meta.separator.simultaneous-expressions.lilypond","match":"\\\\\\\\"},{"name":"meta.chord.lilypond","begin":"\u003c(?!\u003c)","end":"(?\u003c![-\u003e])\u003e","patterns":[{"name":"invalid.illegal.lilypond","match":"\u003c"},{"include":"#comments"},{"include":"#expression_component"}],"beginCaptures":{"0":{"name":"punctuation.definition.chord.begin.lilypond"}},"endCaptures":{"0":{"name":"punctuation.definition.chord.end.lilypond"}}},{"name":"keyword.operator.chord-repetition.lilypond","match":"(?\u003c![[:alpha:]])q(?!-?[[:alpha:]])"},{"name":"text.note-name.lilypond","match":"\\b(a(?:-(?:flat(?:(?:flat)?)|natural|sharp(?:(?:sharp)?))|e(?:s(?:e(?:[hs])|s(?:(?:e(?:h|ss))?))|[hs])|ff|i(?:s(?:i(?:[hs])|s(?:(?:i(?:h|ss))?))|[hs])|q(?:[fs])|s(?:a(?:[hs])|e(?:[hs])|s(?:(?:e(?:h|ss))?))|tq(?:[fs])|[fhsx])|b(?:-(?:flat(?:(?:flat)?)|natural|sharp(?:(?:sharp)?))|e(?:s(?:e(?:[hs])|s)|[hs])|ff|i(?:si(?:[hs])|[hs])|q(?:[fs])|ss|tq(?:[fs])|[bfsx])|c(?:-(?:flat(?:(?:flat)?)|natural|sharp(?:(?:sharp)?))|e(?:s(?:e(?:[hs])|s(?:(?:e(?:h|ss))?))|[hs])|ff|i(?:s(?:i(?:[hs])|s(?:(?:i(?:h|ss))?))|[hs])|q(?:[fs])|ss|tq(?:[fs])|[fsx])|d(?:-(?:flat(?:(?:flat)?)|natural|sharp(?:(?:sharp)?))|e(?:s(?:e(?:[hs])|s(?:(?:e(?:h|ss))?))|[hs])|ff|i(?:s(?:i(?:[hs])|s(?:(?:i(?:h|ss))?))|[hs])|o(?:b(?:b|hb|qt|sb|tqt)|c(?:[bs])|d(?:(?:(?:s)?)d)|h(?:[bk])|k(?:(?:(?:h)?)k)|q(?:[bds])|s(?:(?:(?:t)?)qt|[bds])|t(?:c(?:[bs])|q(?:[bds]))|[bdksx])|q(?:[fs])|ss|tq(?:[fs])|[fosx])|e(?:-(?:flat(?:(?:flat)?)|natural|sharp(?:(?:sharp)?))|e(?:s(?:e(?:[hs])|s(?:(?:e(?:h|ss))?))|[hs])|ff|i(?:s(?:i(?:[hs])|s(?:(?:i(?:h|ss))?))|[hs])|q(?:[fs])|s(?:e(?:[hs])|s(?:(?:e(?:h|ss))?))|tq(?:[fs])|[fhsx])|f(?:-(?:flat(?:(?:flat)?)|natural|sharp(?:(?:sharp)?))|a(?:b(?:b|hb|qt|sb|tqt)|c(?:[bs])|d(?:(?:(?:s)?)d)|h(?:[bk])|k(?:(?:(?:h)?)k)|q(?:[bds])|s(?:(?:(?:t)?)qt|[bds])|t(?:c(?:[bs])|q(?:[bds]))|[bdksx])|e(?:s(?:e(?:[hs])|s(?:(?:e(?:h|ss))?))|[hs])|ff|i(?:s(?:i(?:[hs])|s(?:(?:i(?:h|ss))?))|[hs])|q(?:[fs])|ss|tq(?:[fs])|[afsx])|g(?:-(?:flat(?:(?:flat)?)|natural|sharp(?:(?:sharp)?))|e(?:s(?:e(?:[hs])|s(?:(?:e(?:h|ss))?))|[hs])|ff|i(?:s(?:i(?:[hs])|s(?:(?:i(?:h|ss))?))|[hs])|q(?:[fs])|ss|tq(?:[fs])|[fsx])|h(?:e(?:h|s(?:e(?:[hs])|se(?:h|ss)))|i(?:s(?:i(?:[hs])|s(?:(?:i(?:h|ss))?))|[hs]))|la(?:(?:b(?:b|hb|qt|sb|tqt)|c(?:[bs])|d(?:(?:(?:s)?)d)|h(?:[bk])|k(?:(?:(?:h)?)k)|q(?:[bds])|s(?:(?:(?:t)?)qt|[bds])|t(?:c(?:[bs])|q(?:[bds]))|[bdksx])?)|mi(?:(?:b(?:b|hb|qt|sb|tqt)|c(?:[bs])|d(?:(?:(?:s)?)d)|h(?:[bk])|k(?:(?:(?:h)?)k)|q(?:[bds])|s(?:(?:(?:t)?)qt|[bds])|t(?:c(?:[bs])|q(?:[bds]))|[bdksx])?)|r(?:e(?:b(?:b|hb|qt|sb|tqt)|c(?:[bs])|d(?:(?:(?:s)?)d)|h(?:[bk])|k(?:(?:(?:h)?)k)|q(?:[bds])|s(?:(?:(?:t)?)qt|[bds])|t(?:c(?:[bs])|q(?:[bds]))|[bdksx])|é(?:b(?:(?:(?:s)?)b)|d(?:(?:(?:s)?)d)|s(?:[bd])|[bdx])|[eé])|s(?:i(?:(?:b(?:b|hb|qt|sb|tqt)|c(?:[bs])|d(?:(?:(?:s)?)d)|h(?:[bk])|k(?:(?:(?:h)?)k)|q(?:[bds])|s(?:(?:(?:t)?)qt|[bds])|t(?:c(?:[bs])|q(?:[bds]))|[bdksx])?)|ol(?:(?:b(?:b|hb|qt|sb|tqt)|c(?:[bs])|d(?:(?:(?:s)?)d)|h(?:[bk])|k(?:(?:(?:h)?)k)|q(?:[bds])|s(?:(?:(?:t)?)qt|[bds])|t(?:c(?:[bs])|q(?:[bds]))|[bdksx])?))|[abcdefgh])(?!-?[[:alpha:]])"},{"name":"text.percussion-note.lilypond","match":"\\b(a(?:coustic(?:bassdrum|snare)|g(?:[hl]))|b(?:assdrum|d(?:(?:a)?)|o(?:h(?:[mo])|l(?:[mo])|[hl]))|c(?:ab(?:(?:asa)?)|g(?:h(?:[mo])|l(?:[mo])|[hl])|hinesecymbal|l(?:aves|osedhihat)|owbell|rashcymbal(?:(?:[ab])?)|ui(?:[mo])|ym(?:c(?:[abh])|r(?:[ab])|[crs])|[bl])|d(?:[abcde])|electricsnare|f(?:ive(?:down|up)|our(?:down|up))|gui(?:(?:ro|[ls])?)|h(?:a(?:lfopenhihat|ndclap)|h(?:ho|[cop])|i(?:agogo|bongo|conga|gh(?:(?:(?:floor)?)tom)|hat|midtom|sidestick|timbale|woodblock)|[ch])|lo(?:agogo|bongo|conga|ng(?:guiro|whistle)|sidestick|timbale|w(?:floortom|midtom|oodblock|tom))|m(?:ar(?:(?:acas)?)|ute(?:cuica|hi(?:bongo|conga)|lo(?:bongo|conga)|triangle))|o(?:ne(?:down|up)|pen(?:cuica|hi(?:bongo|conga|hat)|lo(?:bongo|conga)|triangle))|pedalhihat|r(?:b|ide(?:bell|cymbal(?:(?:[ab])?)))|s(?:hort(?:guiro|whistle)|idestick|n(?:are|[ae])|plashcymbal|s(?:[hl])|[ns])|t(?:amb(?:(?:ourine)?)|hree(?:down|up)|im(?:[hl])|om(?:f(?:[hl])|m(?:[hl])|[hl])|ri(?:(?:angle|[mo])?)|t|wo(?:down|up))|u(?:[abcde])|vib(?:raslap|s)|w(?:b(?:[hl])|h(?:[ls])))(?!-?[[:alpha:]])"},{"name":"text.rest.lilypond","match":"\\b[rRs](?!-?[[:alpha:]])"},{"name":"meta.chord-mode.lilypond","begin":"\\\\chordmode(?!-?[[:alpha:]])","end":"(?\u003c=[^%]})|(?\u003c=^})","patterns":[{"include":"#chord_expression"},{"include":"$self"}],"beginCaptures":{"0":{"name":"keyword.other.lilypond"}}},{"name":"meta.figure-mode.lilypond","begin":"\\\\figure(?:mode|s)(?!-?[[:alpha:]])","end":"(?\u003c=[^%]})|(?\u003c=^})","patterns":[{"include":"#figure_expression"},{"include":"$self"}],"beginCaptures":{"0":{"name":"keyword.other.lilypond"}}},{"name":"meta.paper-block.lilypond","begin":"\\\\paper(?!-?[[:alpha:]])","end":"(?\u003c=[^%]})|(?\u003c=^})","patterns":[{"include":"#paper_expression"},{"include":"$self"}],"beginCaptures":{"0":{"name":"keyword.other.lilypond"}}},{"name":"keyword.other.lilypond","match":"\\\\(a(?:ccepts|ddlyrics|l(?:ias|ternative))|book(?:(?:part)?)|c(?:h(?:ange|ord(?:mode|s))|on(?:sists|text))|d(?:e(?:fault(?:(?:child)?)|nies|scription)|rum(?:mode|s))|etc|figure(?:mode|s)|header|include|l(?:ayout|yric(?:mode|s(?:(?:to)?)))|m(?:a(?:ininput|rkup(?:(?:list)?))|idi)|n(?:ame|ew|otemode)|override|paper|re(?:move|(?:pea|s|ver)t)|s(?:core|e(?:quential|t)|imultaneous)|t(?:empo|ype)|unset|version|with)(?!-?[[:alpha:]])"},{"name":"support.function.lilypond","match":"\\\\(EnableGregorianDivisiones|Remove(?:(?:(?:All)?)EmptyStaves)|a(?:bsolute|cc(?:ent|i(?:accatura|dentalStyle))|dd(?:ChordShape|InstrumentDefinition|Quote)|eolian|fter(?:(?:Grace(?:(?:Fraction)?))?)|iken(?:Heads(?:(?:Minor)?)|ThinHeads(?:(?:Minor)?))|l(?:low(?:Break|PageTurn|VoltaHook)|terBroken)|mbitusAfter|pp(?:endToTag|ly(?:Context|Music|Output)|oggiatura)|r(?:abicStringNumbers|peggio(?:(?:Arrow(?:Down|Up)|Bracket|Normal|Parenthesis(?:(?:Dashed)?))?))|ssertBeam(?:Quant|Slope)|uto(?:B(?:eamO(?:ff|n)|reaksO(?:ff|n))|Change|LineBreaksO(?:ff|n)|PageBreaksO(?:ff|n)))|b(?:a(?:lloon(?:GrobText|LengthO(?:ff|n)|Text)|r(?:(?:NumberCheck)?)|ssFigure(?:ExtendersO(?:ff|n)|StaffAlignment(?:Down|Neutral|Up)))|e(?:amExceptions|nd(?:After|Hold|StartLevel))|igger|lackTriangleMarkup|ookOutput(?:Name|Suffix)|re(?:a(?:k(?:(?:DynamicSpan)?)|the)|ve))|c(?:a(?:denzaO(?:ff|n)|esura)|enter|hord(?:(?:Repeat|modifier)s)|lef|o(?:da(?:(?:Mark)?)|mp(?:oundMeter|ress(?:(?:EmptyMeasure|MMRest)s)))|r(?:(?:esc(?:(?:Hairpin|TextCresc)?)|ossStaff)?)|ue(?:Clef(?:(?:Unset)?)|During(?:(?:WithClef)?)))|d(?:ash(?:Bang|D(?:ash|ot)|Hat|Larger|Plus|Underscore)|e(?:adNote(?:(?:sO(?:ff|n))?)|cr(?:(?:esc)?)|f(?:ault(?:NoteHeads|StringTunings|TimeSignature)|ineBarLine)|precated(?:cresc|dim|end(?:cresc|dim)))|i(?:m(?:(?:Hairpin|TextD(?:ecr(?:(?:esc)?)|im))?)|splay(?:LilyMusic|Music|Scheme))|o(?:rian|ts(?:Down|Neutral|Up)|wn(?:(?:bow|mordent|prall)?))|r(?:opNote|umPitchNames)|ynamic(?:Down|Neutral|Up))|e(?:asyHeadsO(?:ff|n)|n(?:ablePolymeter|d(?:S(?:(?:kipNC|panner)s)|cr(?:(?:esc)?)|d(?:ecr(?:(?:esc)?)|im)))|pisem(?:Finis|Initium)|spressivo|(?:ventChord|xpandEmptyMeasure)s)|f(?:e(?:atherDurations|rmata)|ff(?:(?:f(?:(?:f)?))?)|i(?:n(?:e|ger)|xed)|lageolet|ootnote|renchChords|unkHeads(?:(?:Minor)?)|[fpz])|g(?:ermanChords|li(?:de|ssando)|r(?:ace|obdescriptions))|h(?:a(?:lfopen|rmonic(?:(?:By(?:Fret|Ratio)|Note|sO(?:ff|n))?)|ydnturn)|enze(?:(?:long|short)fermata)|ide(?:(?:Notes|S(?:plitTiedTabNotes|taffSwitch))?)|uge)|i(?:gnatzekException(?:Music|s)|mprovisationO(?:ff|n)|n(?:StaffSegno|cipit|herit-acceptability|strumentSwitch|ver(?:sion|tChords))|onian|talianChords)|jump|k(?:e(?:epWithTag|y)|i(?:evanO(?:ff|n)|llCues))|l(?:a(?:bel|issezVibrer|(?:nguag(?:(?:e(?:Restor|SaveAndChang))?)|rg)e)|eft|heel|ineprall|o(?:crian|ng(?:(?:(?:fermat)?)a))|toe|ydian)|m(?:a(?:gnify(?:Music|Staff)|jor|ke(?:Clusters|DefaultStringTuning)|r(?:cato|k(?:(?:LengthO(?:ff|n)|upMap)?))|xima)|e(?:dianChordGridStyle|lisma(?:(?:End)?)|rgeDifferently(?:DottedO(?:ff|n)|HeadedO(?:ff|n)))|i(?:diDrumPitches|nor|xolydian)|o(?:dal(?:Inversion|Transpose)|rdent)|usicMap|[fp])|n(?:ewSpacingSection|o(?:B(?:eam|reak)|Page(?:Break|Turn)|rmalsize)|umericTimeSignature)|o(?:ctaveCheck|ffset|mit|n(?:(?:(?:eVoi)?)ce)|pen|ttava|verride(?:Property|TimeSignatureSettings))|p(?:a(?:ge(?:Break|Turn)|lmMute(?:(?:O(?:ff|n))?)|r(?:allelMusic|enthesize|t(?:Combine(?:(?:A(?:part|utomatic)|Chords|Down|Force|Listener|SoloI(?:(?:I)?)|U(?:nisono|p))?)|ial)))|hr(?:asingSlur(?:D(?:ash(?:Pattern|ed)|o(?:tted|wn))|Half(?:(?:Dashe|Soli)d)|Neutral|Solid|Up)|ygian)|itchedTrill|o(?:intAndClick(?:O(?:ff|n)|Types)|rtato)|p(?:(?:p(?:(?:p(?:(?:p)?))?))?)|r(?:all(?:(?:down|mordent|prall|up)?)|e(?:Bend(?:(?:Hold)?)|definedFretboardsO(?:ff|n))|operty(?:Override|Revert|Set|Tweak|Unset))|ushToTag)|quoteDuring|r(?:aiseNote|e(?:duceChords|lative|moveWithTag|peatTie|setRelativeOctave|trograde|ver(?:seturn|tTimeSignatureSettings))|fz|heel|ight(?:(?:HandFinger)?)|omanStringNumbers|toe)|s(?:acredHarpHeads(?:(?:Minor)?)|caleDurations|e(?:ction(?:(?:Label)?)|gno(?:(?:Mark)?)|miGermanChords|t(?:DefaultDurationToQuarter|tingsFrom))|f(?:[fpz])|h(?:ape|ift(?:Durations|O(?:ff|n(?:(?:n(?:(?:n)?))?)))|o(?:rtfermata|wS(?:plitTiedTabNotes|taffSwitch)))|i(?:(?:gnumcongruentia|ngl)e)|kip(?:(?:NC(?:(?:s)?))?)|l(?:ash(?:edGrace|turn)|ur(?:D(?:ash(?:Pattern|ed)|o(?:tted|wn))|Half(?:(?:Dashe|Soli)d)|Neutral|Solid|Up))|mall(?:(?:er)?)|nappizzicato|o(?:stenutoO(?:ff|n)|uthernHarmonyHeads(?:(?:Minor)?))|pp|t(?:a(?:ccat(?:(?:(?:issim)?)o)|ffHighlight|rt(?:(?:A(?:(?:cciacc|ppoggi)aturaMusic)|Gr(?:ace(?:Music|Slur)|oup)|Measure(?:Count|Spanner)|S(?:lashedGraceMusic|taff)|T(?:(?:ext|rill)Span))?))|em(?:Down|Neutral|Up)|o(?:p(?:(?:A(?:(?:cciacc|ppoggi)aturaMusic)|Gr(?:ace(?:Music|Slur)|oup)|Measure(?:Count|Spanner)|S(?:lashedGraceMusic|taff(?:(?:Highlight)?))|T(?:(?:ext|rill)Span)|ped)?)|rePredefinedDiagram)|ringTuning|yledNoteHeads)|ustainO(?:ff|n)|[fp])|t(?:a(?:b(?:ChordRepe(?:ats|tition)|FullNotation)|g(?:(?:Group)?))|e(?:eny|mporary|nuto|xt(?:EndMark|LengthO(?:ff|n)|Mark|Spanner(?:Down|Neutral|Up)))|humb|i(?:e(?:D(?:ash(?:Pattern|ed)|o(?:tted|wn))|Half(?:(?:Dashe|Soli)d)|Neutral|Solid|Up)|me(?:(?:s)?)|ny)|ocItem(?:(?:WithDotsMarkup)?)|r(?:anspos(?:e(?:(?:dCueDuring)?)|ition)|eCorde|ill)|u(?:plet(?:(?:Down|Neutral|Span|Up)?)|rn)|weak)|u(?:n(?:HideNotes|aCorda|do|fold(?:Repeats|ed))|p(?:(?:bow|mordent|prall)?))|v(?:arcoda|ery(?:(?:long|short)fermata)|o(?:i(?:ce(?:Four(?:(?:Style)?)|NeutralStyle|One(?:(?:Style)?)|T(?:hree(?:(?:Style)?)|wo(?:(?:Style)?))|s)|d)|lta|welTransition)|shape)|w(?:alkerHeads(?:(?:Minor)?)|hite(?:(?:Circ|Triang)leMarkup)|ithMusicProperty)|xNote(?:(?:sO(?:ff|n))?)|[fnp])(?!-?[[:alpha:]])"},{"name":"support.function.markup.lilypond","match":"\\\\(a(?:bs-fontsize|ccidental|lign-on-other|rrow-head|uto-footnote)|b(?:ackslashed-digit|eam|o(?:ld|x)|racket)|c(?:aps|enter-(?:(?:alig|colum)n)|har|ircle|o(?:da|lumn(?:(?:-lines)?)|m(?:bine|pound-meter)|n(?:cat|ditional-trill-markup))|ustomTabClef)|d(?:i(?:r-column|scant)|ouble(?:flat|sharp)|raw-(?:(?:circl|(?:(?:d(?:(?:ash|ott)ed-)|h|squiggle-)?)lin)e)|ynamic)|e(?:llipse|psfile|yeglasses)|f(?:ermata|i(?:gured-bass|ll(?:-(?:line|with-pattern)|ed-box)|nger|rst-visible)|lat|o(?:nt(?:Caps|size)|otnote)|r(?:action|e(?:eBass|t-diagram(?:(?:-(?:(?:ter|verbo)se))?))|omproperty))|general-align|h(?:a(?:lign|rp-pedal)|bracket|center-in|(?:spac|ug)e)|i(?:f|talic)|justif(?:ied-lines|y(?:(?:-(?:field|line|string))?))|l(?:arge(?:(?:r)?)|eft-(?:align|brace|column)|ine|o(?:okup|wer))|m(?:a(?:gnify|p-markup-commands|rk(?:alphabet|letter))|edium|u(?:lti-measure-rest-by-number|sicglyph))|n(?:atural|o(?:rmal(?:-(?:size-su(?:b|per)|text)|size)|te(?:(?:-by-number)?))|u(?:ll|mber))|o(?:n-the-fly|v(?:al|er(?:lay|ride-lines|tie)))|p(?:a(?:d-(?:around|markup|(?:(?:to-bo)?)x)|ge-(?:link|ref)|renthesize|t(?:h|tern))|o(?:lygon|stscript)|roperty-recursive|ut-adjacent)|r(?:aise|e(?:place|st(?:(?:-by-number)?))|hythm|ight-(?:align|brace|column)|o(?:man|tate|unded-box))|s(?:ans|c(?:ale|ore-lines)|e(?:gno|mi(?:flat|sharp)|squi(?:flat|sharp))|harp|imple|lashed-digit|mall(?:(?:Caps|er)?)|t(?:dBass(?:(?:IV|V(?:(?:I)?))?)|encil|r(?:ing-lines|ut))|u(?:b|per))|t(?:able(?:(?:-of-contents)?)|e(?:eny|xt)|i(?:e(?:(?:d-lyric)?)|ny)|r(?:ans(?:late(?:(?:-scaled)?)|parent)|iangle)|ypewriter)|u(?:n(?:der(?:(?:lin|ti)e)|less)|pright)|v(?:arcoda|center|(?:erbatim-fil|spac)e)|w(?:hiteout|ith-(?:color|dimension(?:(?:-from|s(?:(?:-from)?))?)|link|outline|string-transformer|true-dimension(?:(?:s)?)|url)|o(?:odwind-diagram|rdwrap(?:(?:-(?:field|internal|lines|string(?:(?:-internal)?)))?))))(?!-?[[:alpha:]])"},{"name":"variable.other.lilypond","match":"\\\\[[:alpha:]]+(?:-[[:alpha:]]+)*"},{"name":"support.type.lilypond","match":"(?\u003c!-)\\b(A(?:ccidental(?:(?:Cautionary|Placement|Suggestion|_engraver)?)|lteration_glyph_engraver|mbitus(?:(?:Accidental|Line|NoteHead|_engraver)?)|rpeggio(?:(?:_engraver)?)|(?:uto_beam|xis_group)_engraver)|B(?:a(?:lloon(?:Text|_engraver)|r(?:Line|(?:Numb|_(?:(?:(?:number_)?)engrav))er)|ssFigure(?:(?:Alignment(?:(?:Positioning)?)|Bracket|Continuation|Line)?))|e(?:a(?:m(?:(?:_(?:(?:collision_engrav|engrav|perform)er))?)|t_(?:(?:engrav|perform)er))|nd(?:(?:Aft|Spann|_(?:(?:(?:spanner_)?)engrav))er))|rea(?:k(?:Align(?:Group|ment)|_align_engraver)|thing(?:Sign|_sign_engraver)))|C(?:aesura(?:Script|_engraver)|entered(?:(?:BarNumb(?:(?:erLineSpann)?)|_bar_number_align_engrav)er)|ho(?:irStaff|rd(?:Grid(?:(?:Score)?)|Name(?:(?:s)?)|Square|_(?:(?:name|square|tremolo)_engraver)))|l(?:ef(?:(?:(?:Modifi|_engrav)er)?)|uster(?:Spanner(?:(?:Beacon)?)|_spanner_engraver))|o(?:daMark|llision_engraver|m(?:bineTextScript|pletion_(?:(?:heads|rest)_engraver))|n(?:current_hairpin_engraver|trol(?:Po(?:int|lygon)|_track_performer)))|u(?:e(?:Clef|EndClef|Voice|_clef_engraver)|rrent_chord_text_engraver|stos(?:(?:_engraver)?)))|D(?:evnull|ivisio(?:(?:_engraver)?)|o(?:t(?:Column|_column_engraver|s(?:(?:_engraver)?))|uble(?:PercentRepeat(?:(?:Counter)?)|RepeatSlash|_percent_repeat_engraver))|rum(?:Staff|Voice|_note(?:(?:_perform|s_engrav)er))|uration(?:Line|_line_engraver)|ynamic(?:LineSpanner|Text(?:(?:Spanner)?)|_(?:(?:align_engrav|engrav|perform)er)|s))|E(?:pisema(?:(?:_engraver)?)|xtender_engraver)|F(?:i(?:gured(?:Bass|_bass_(?:(?:(?:position_)?)engraver))|nger(?:GlideSpanner|_glide_engraver|ing(?:(?:Column|_(?:(?:(?:column_)?)engraver))?)))|lag|o(?:nt_size_engraver|otnote(?:(?:_engraver)?)|rbid_line_break_engraver)|ret(?:Board(?:(?:s)?)|board_engraver))|G(?:l(?:issando(?:(?:_engraver)?)|obal)|r(?:a(?:ce(?:Spacing|_(?:(?:(?:(?:auto_beam|beam|spacing)_)?)engraver))|ndStaff)|egorianTranscription(?:Lyrics|Staff|Voice)|id(?:ChordName|Line|Point|_(?:(?:chord_name|line_span|point)_engraver))|ob_pq_engraver))|H(?:airpin|orizontal(?:Bracket(?:(?:Text)?)|_bracket_engraver)|yphen_engraver)|In(?:strument(?:Name|Switch|_(?:(?:name|switch)_engraver))|ternalGregorianStaff)|Jump(?:Script|_engraver)|K(?:e(?:ep_alive_together_engraver|y(?:Cancellation|Signature|_(?:(?:engrav|perform)er)))|ievan(?:Ligature|Staff|Voice|_ligature_engraver))|L(?:aissez(?:VibrerTie(?:(?:Column)?)|_vibrer_engraver)|e(?:dger(?:(?:LineSpann|_line_engrav)er)|ftEdge)|igature(?:Bracket|_bracket_engraver)|yric(?:Extender|Hyphen|RepeatCount|Space|Text|_(?:(?:engrav|perform|repeat_count_engrav)er)|s))|M(?:ark_(?:(?:engrave|performe|tracking_translato)r)|e(?:asure(?:Counter|Grouping|(?:Spann|_(?:(?:counter|grouping|spanner)_engrav))er)|lody(?:Item|_engraver)|nsural(?:Ligature|Staff|Voice|_ligature_engraver)|rge_(?:(?:mmrest_number|rest)s_engraver)|tronome(?:Mark|_mark_engraver))|idi_control_change_performer|ulti(?:MeasureRest(?:(?:Number|(?:Scrip|Tex)t)?)|_measure_rest_engraver))|N(?:ew_fingering_engraver|o(?:n(?:MusicalPaperColumn|_musical_script_column_engraver)|te(?:Col(?:(?:lisio|um)n)|Head|Name(?:(?:s)?)|Spacing|_(?:(?:head(?:(?:_line|s)_engrav)|name_engrav|perform|spacing_engrav)er)))|ullVoice)|O(?:neStaff|ttava(?:Bracket|_spanner_engraver)|utput_property_engraver)|P(?:a(?:ge_turn_engraver|per(?:Column|_column_engraver)|r(?:enthes(?:es|is_engraver)|t_combine_engraver))|e(?:rcent(?:Repeat(?:(?:Counter)?)|_repeat_engraver)|trucci(?:Staff|Voice))|hrasing(?:(?:Slu|_slur_engrave)r)|i(?:ano(?:PedalBracket|Staff|_pedal_(?:(?:align_engrav|engrav|perform)er))|tch(?:(?:_squash|ed_trill)_engraver))|ure_from_neighbor_engraver)|R(?:e(?:hearsalMark|peat(?:Slash|Tie(?:(?:Column)?)|_(?:(?:acknowledg|ti)e_engraver))|st(?:(?:Collision|_(?:(?:(?:collision_)?)engraver))?))|hythmic(?:Staff|_column_engraver))|S(?:c(?:ore|ript(?:(?:Column|Row|_(?:(?:(?:(?:column|row)_)?)engraver))?))|e(?:ctionLabel|gnoMark|parating_line_group_engraver)|how_control_points_engraver|ignum(?:Repetitionis|_repetitionis_engraver)|kip_typesetting_engraver|l(?:(?:ash_repeat_engrave|u(?:(?:r_(?:(?:engrav|perform)e))?))r)|ostenutoPedal(?:(?:LineSpanner)?)|pa(?:cing(?:(?:Spann|_engrav)er)|n(?:Bar(?:(?:Stub)?)|(?:_(?:arpeggio|bar(?:(?:_stub)?)|stem)|ner_(?:break_forbid|tracking))_engraver))|t(?:a(?:ff(?:(?:Ellipsis|Group(?:(?:er)?)|Highlight|S(?:pacing|ymbol)|_(?:(?:collecting_engrav|highlight_engrav|perform|symbol_engrav)er))?)|n(?:daloneRhythm(?:S(?:core|taff)|Voice)|za(?:(?:Numb|_number_(?:(?:(?:align_)?)engrav))er)))|em(?:(?:Stub|Tremolo|_engraver)?)|r(?:(?:ingNumb|okeFing)er))|ustainPedal(?:(?:LineSpanner)?)|ystem(?:(?:Start(?:B(?:ar|rac(?:e|ket))|Square)|_start_delimiter_engraver)?))|T(?:ab(?:NoteHead|Staff|Voice|_(?:(?:note_heads|staff_symbol|tie_follow)_engraver))|e(?:mpo_performer|xt(?:Mark|S(?:cript|panner)|_(?:(?:(?:(?:mark|spanner)_)?)engraver)))|i(?:e(?:(?:Column|_(?:(?:engrav|perform)er))?)|m(?:e(?:Signature|_signature_(?:(?:engrav|perform)er))|ing(?:(?:_translator)?)))|rill(?:Pitch(?:Accidental|Group|Head|Parentheses)|(?:Spann|_spanner_engrav)er)|uplet(?:Bracket|(?:Numb|_engrav)er)|weak_engraver)|UnaCordaPedal(?:(?:LineSpanner)?)|V(?:aticana(?:L(?:igature|yrics)|Staff|Voice|_ligature_engraver)|ertical(?:A(?:lignment|xisGroup)|_align_engraver)|o(?:ice(?:(?:Follower)?)|lta(?:Bracket(?:(?:Spanner)?)|_engraver)|welTransition)))(?!-?[[:alpha:]])"},{"name":"punctuation.apostrophe.lilypond","match":"'"},{"name":"punctuation.comma.lilypond","match":","},{"name":"punctuation.question-mark.lilypond","match":"\\?"},{"name":"punctuation.exclamation-point.lilypond","match":"!"},{"name":"punctuation.dot.lilypond","match":"\\."},{"name":"keyword.operator.equals-sign.lilypond","match":"="},{"name":"keyword.operator.multiplication.lilypond","match":"\\*"},{"name":"punctuation.hyphen.lilypond","match":"-"},{"name":"punctuation.caret.lilypond","match":"\\^"},{"name":"punctuation.underscore.lilypond","match":"_"},{"name":"punctuation.greater-than-sign.lilypond","match":"\u003e"},{"name":"punctuation.plus-sign.lilypond","match":"\\+"},{"name":"keyword.operator.forward-slash.lilypond","match":"/(?!\\+)"},{"name":"punctuation.tilde.lilypond","match":"~"},{"name":"keyword.operator.beam.begin.lilypond","match":"\\["},{"name":"keyword.operator.beam.end.lilypond","match":"\\]"},{"name":"keyword.operator.bar-check.lilypond","match":"\\|"},{"name":"keyword.operator.dynamic-mark.begin.crescendo.lilypond","match":"\\\\\u003c"},{"name":"keyword.operator.dynamic-mark.begin.decrescendo.lilypond","match":"\\\\\u003e"},{"name":"keyword.operator.dynamic-mark.end.lilypond","match":"\\\\!"},{"name":"keyword.operator.slur.begin.lilypond","match":"\\("},{"name":"keyword.operator.slur.end.lilypond","match":"\\)"},{"name":"keyword.operator.phrasing-slur.begin.lilypond","match":"\\\\\\("},{"name":"keyword.operator.phrasing-slur.end.lilypond","match":"\\\\\\)"},{"name":"meta.slur-label.lilypond","begin":"\\\\=","end":"(?=\\\\?[()])","patterns":[{"include":"#comments"},{"name":"entity.name.slur-label.lilypond","match":"[-\\w]+"},{"name":"string.lilypond","contentName":"entity.name.slur-label.lilypond","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.lilypond","match":"\\\\[nt\"'\\\\]"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.lilypond"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.lilypond"}}}],"beginCaptures":{"0":{"name":"entity.punctuation.slur-label.lilypond"}}},{"name":"keyword.operator.string-number-indicator.lilypond","match":"\\\\(?=\\d)"},{"name":"invalid.deprecated.ligature.begin.lilypond","match":"\\\\\\["},{"name":"invalid.deprecated.ligature.end.lilypond","match":"\\\\\\]"},{"name":"meta.scheme.lilypond","begin":"(?:(#)|(\\$)|([#$]@))","end":"(?\u003c=[\\w)}])|$","patterns":[{"name":"meta.scheme-comments.lilypond","begin":"\\G(?: +|$)","end":"(?! |$|#?;)","patterns":[{"name":"comment.line.lilypond-scheme","begin":"#?;","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.lilypond"}}}]},{"include":"#scheme_embedded_lilypond"},{"name":"meta.scheme-datum.lilypond","begin":"(?! |$|#?;)","end":"(?=\\s)|$","patterns":[{"include":"#scheme_expression"},{"include":"source.lisp"}]}],"beginCaptures":{"1":{"name":"keyword.operator.scheme.embed.lilypond"},"2":{"name":"keyword.operator.scheme.evaluate.lilypond"},"3":{"name":"keyword.operator.scheme.list-splice.lilypond"}}}]},"figure_expression":{"patterns":[{"name":"meta.figure-expression.lilypond","begin":"{","end":"}","patterns":[{"name":"meta.figure-group.lilypond","begin":"\u003c","end":"\u003e","patterns":[{"include":"#figure_expression_contents"},{"name":"meta.figure-bracket.lilypond","begin":"\\[","end":"\\]","patterns":[{"name":"invalid.illegal.lilypond","match":"[\u003e\\[]"},{"include":"#figure_expression_contents"}],"beginCaptures":{"0":{"name":"punctuation.definition.figure-bracket.begin.lilypond"}},"endCaptures":{"0":{"name":"punctuation.definition.figure-bracket.end.lilypond"}}}],"beginCaptures":{"0":{"name":"punctuation.definition.figure-group.begin.lilypond"}},"endCaptures":{"0":{"name":"punctuation.definition.figure-group.end.lilypond"}}},{"include":"#figure_expression"},{"include":"$self"}]}]},"figure_expression_contents":{"patterns":[{"name":"invalid.illegal.lilypond","match":"\u003c"},{"include":"#integer"},{"include":"#comments"},{"name":"keyword.operator.figure.accidental.sharp.lilypond","match":"\\+"},{"name":"keyword.operator.figure.accidental.flat.lilypond","match":"-"},{"name":"keyword.operator.figure.accidental.natural.lilypond","match":"!"},{"name":"support.variable.figure.hidden-third.lilypond","match":"_"},{"name":"keyword.operator.figure.augmented.lilypond","match":"\\\\\\+"},{"name":"keyword.operator.figure.diminished.lilypond","match":"/"},{"name":"keyword.operator.figure.raised-sixth.lilypond","match":"\\\\\\\\"},{"name":"keyword.operator.figure.end-continuation-line.lilypond","match":"\\\\!"}]},"integer":{"patterns":[{"name":"constant.numeric.integer.lilypond","match":"\\d+"}]},"paper_expression":{"patterns":[{"name":"meta.paper-expression.lilypond","begin":"{","end":"}","patterns":[{"name":"support.constant.lilypond","match":"\\\\(?:[cm]m|in|pt)(?!-?[[:alpha:]])"},{"include":"#paper_expression"},{"include":"$self"}]}]},"scheme_embedded_lilypond":{"patterns":[{"name":"meta.embedded-lilypond.lilypond","begin":"#\\{","end":"#}","patterns":[{"include":"source.lilypond"}],"beginCaptures":{"0":{"name":"punctuation.definition.embedded-lilypond.begin.lilypond"}},"endCaptures":{"0":{"name":"punctuation.definition.embedded-lilypond.end.lilypond"}}}]},"scheme_expression":{"patterns":[{"name":"meta.scheme-expression.lilypond","begin":"\\(","end":"\\)","patterns":[{"name":"support.function.lilypond-scheme"},{"include":"#scheme_embedded_lilypond"},{"include":"#scheme_expression"},{"include":"source.lisp"}]}]}}}
@@ -0,0 +1 @@
1
+ {"name":"LiveCode Script","scopeName":"source.livecodescript","patterns":[{"include":"#language"},{"include":"#line-continuation"}],"repository":{"constants":{"patterns":[{"name":"constant.language.livecodescript","match":"(?i)\\b(SIX|TEN|FORMFEED|NINE|ZERO|NONE|SPACE|FOUR|FALSE|COLON|CRLF|PI|COMMA|ENDOFFILE|EOF|EIGHT|FIVE|QUOTE|EMPTY|ONE|TRUE|((?\u003c=\\w\\s)RETURN)|CR|LINEFEED|RIGHT|BACKSLASH|NULL|SEVEN|TAB|THREE|TWO)\\b"},{"name":"constant.language.livecodescript","match":"\\bk[A-Z]{1}.*?\\b"},{"name":"string.quoted.double.livecodescript","begin":"\"","end":"\""}]},"language":{"patterns":[{"name":"comment.block.livecodescript","begin":"/\\*","end":"\\*/","captures":{"0":{"name":"punctuation.definition.comment.livecodescript"}}},{"name":"comment.line.livecodescript","begin":"--","end":"\\n","beginCaptures":{"0":{"name":"punctuation.definition.comment.double-dash.livecodescript"}}},{"name":"comment.line.livecodescript","begin":"#","end":"\\n","beginCaptures":{"0":{"name":"punctuation.definition.comment.number-sign.livecodescript"}}},{"name":"comment.line.livecodescript","begin":"//","end":"\\n","beginCaptures":{"0":{"name":"punctuation.definition.comment.double-slash.livecodescript"}}},{"name":"keyword.control.livecodescript","match":"\\b(after|byte(s)*|codepoint(s)*|codeunit(s)*|english|segment(s)*|sentence(s)*|paragraph|the|trueWord(s)*|until|word(s)*|http|forever|descending|using|line|real8|with|seventh|for|stdout|finally|element|word|fourth|before|black|ninth|sixth|characters|chars|stderr|uInt(1|1s|2|2s)|stdin|string|lines|relative|rel|any|fifth|items|from|middle|mid|at|else|of|catch|then|third|it|file|milli(seconds|second|secs|sec)|int(1|1s|4|4s|ernet|2|2s)|normal|text|item|last|long|detailed|effective|uInt4|uInt4s|se(conds|cond|cs|c)|repeat|end\\s+repeat|URL|in|end\\s+try|into|switch|end\\s+switch|to|words|https|token|binfile|each|tenth|as|ticks|tick|system|real4|by|dateItems|without|cha(r|racter)|ascending|eighth|whole|dateTime|numeric|short|first|ftp|integer|abbreviated|abb(r|rev)|private|case|default|while|if|end\\s+if)\\b"},{"name":"meta.catch.livecodescript","match":"\\b(catch)\\b\\s*([A-Za-z_][A-Za-z_0-9]*)","captures":{"1":{"name":"keyword.control.exception.livecodescript"}}},{"name":"keyword.control.exception.livecodescript","match":"\\b(catch|try|throw)\\b"},{"name":"comment.block.livecodescript","begin":"/\\*","end":"\\*/","captures":{"0":{"name":"punctuation.definition.comment.livecodescript"}}},{"name":"meta.function.livecodescript","match":"(private\\s+)*(\\b(?i)function|getprop|setprop|after|before|on|command|before|after)\\s+([A-Za-z_0-9-.]+)(\\s+@*[A-Za-z_0-9-]+,*?\\s+.*)*","captures":{"1":{"name":"storage.type.function.livecodescript"},"2":{"name":"storage.type.function.livecodescript"},"3":{"name":"entity.name.function.livecodescript"},"4":{"name":"punctuation.definition.variable.livecodescript"}}},{"name":"meta.function.end.livecodescript","match":"((?i)end){1}\\s+?([A-Za-z_0-9-.]+)?","captures":{"1":{"name":"storage.type.function.end.livecodescript"},"2":{"name":"entity.name.function.livecodescript"}}},{"name":"keyword.operator.arithmetic.livecodescript","match":"(\\-|\\+|\\*|/|%)"},{"name":"keyword.operator.logical.livecodescript","match":"(?i)\\b(and|or)\\b"},{"name":"keyword.operator.bitwise.livecodescript","match":"(?i)\\b(bitAnd|bitNot|bitOr|bitXor)\\b"},{"name":"keyword.operator.comparison.livecodescript","match":"(?i)(=|\u003c\u003e|\u003e=|\u003c=|\u003c|\u003e)|\\b(is( among| not among| not in| a| an| not| in| not within| within| not a| not an)*|there is( no| not a| not an| a| an)|contains|ends with|begins with|is among the keys of|is not among the keys of)\\b"},{"name":"keyword.operator.string.livecodescript","match":"(\u0026|\u0026\u0026)"},{"name":"keyword.operator.other.livecodescript","match":"(\\^)|\\b(div|mod|wrap)\\b"},{"name":"storage.type.function.livecodescript","match":"(?i)(\\^)|\\b(abs|acos|aliasReference|annuity|arrayDecode|arrayEncode|asin|atan(2)*|average(Deviation)*|avg(Dev)*|base64Decode|base64Encode|baseConvert|binaryDecode|binaryEncode|byte(Offset|ToNum)+|cachedURL(s)*|charToNum|cipherNames|codepoint(Offset|Property|ToNum)+|codeunitOffset|commandNames|compound|compress|constantNames|cos|date(Format)*|decompress|directories|diskSpace|DNSServers|exp(1|2|10)*|extents|files|flushEvents|folders|format|functionNames|geometricMean|global(s|Names)+|harmonicMean|hasMemory|hostAddress|hostAddressToName|hostName(ToAddress)*|isNumber|ISOToMac|itemOffset|keys|len(gth)*|libURLErrorData|libUrlFormData|libURLftpCommand|libURLLastHTTPHeaders|libURLLastRHHeaders|libUrlMultipartFormAddPart|libUrlMultipartFormData|libURLVersion|lineOffset|ln(1)*|localNames|log(2|10)*|longFilePath|lower|macToISO|matchChunk|matchText|matrixMultiply|max|md5Digest|median|merge|milli(sec|secs|second|seconds)+|min|monthNames|nativeCharToNum|normalizeText|num(ber|ToByte|ToChar|ToCodepoint|ToNativeChar)*|offset|open(files|Processes)*|openProcessIDs|openSockets|paragraphOffset|paramCount|param(s)*|peerAddress|pendingMessages|platform|popStdDev|populationStandardDeviation|popVariance|populationVariance|processID|random(Bytes)*|replaceText|result|revCreateXMLTree|revCreateXMLTreeFromFile|revCurrentRecord|revCurrentRecordIsFirst|revCurrentRecordIsLast|revDatabaseColumnCount|revDatabaseColumnIsNull|revDatabaseColumnLengths|revDatabaseColumnName(s|d)+|revDatabaseColumnNumbered|revDatabaseColumnTypes|revDatabaseConnectResult|revDatabaseCursors|revDatabaseID|revDatabaseTableNames|revDatabaseType|revDataFromQuery|revdb_closeCursor|revdb_columnbynumber|revdb_columncount|revdb_columnisnull|revdb_columnlengths|revdb_columnnames|revdb_columntypes|revdb_commit|revdb_connect(ions)*|revdb_connectionerr|revdb_currentrecord|revdb_cursorconnection|revdb_cursorerr|revdb_cursors|revdb_dbtype|revdb_disconnect|revdb_execute|revdb_is(eof|bof)+|revdb_movefirst|revdb_movelast|revdb_movenext|revdb_moveprev|revdb_query|revdb_querylist|revdb_recordcount|revdb_rollback|revdb_tablenames|revGetDatabaseDriverPath|revNumberOfRecords|revOpenDatabase(s)*|revQueryDatabase(Blob)*|revQuery(Result|IsAtStart|IsAtEnd)+|revUnixFromMacPath|revXMLAttribute(s)*|revXMLAttributeValues|revXMLChildContents|revXMLChildNames|revXMLCreateTreeFromFileWithNamespaces|revXMLCreateTreeWithNamespaces|revXMLDataFromXPathQuery|revXMLEvaluateXPath|revXMLFirstChild|revXMLMatchingNode|revXMLNextSibling|revXMLNodeContents|revXMLNumberOfChildren|revXMLParent|revXMLPreviousSibling|revXMLRootNode|revXMLRPC_CreateRequest|revXMLRPC_Documents|revXMLRPC_Error|revXMLRPC_Execute|revXMLRPC_GetHost|revXMLRPC_GetMethod|revXMLRPC_GetParam|revXMLText|revXMLRPC_GetParamCount|revXMLRPC_GetParamNode|revXMLRPC_GetParamType|revXMLRPC_GetPath|revXMLRPC_GetPort|revXMLRPC_GetProtocol|revXMLRPC_GetRequest|revXMLRPC_GetResponse|revXMLRPC_GetSocket|revXMLTree(s)*|revXMLValidateDTD|revZipDescribeItem|revZipEnumerateItems|revZipOpenArchives|round|sampVariance|sec(s|onds)*|sentenceOffset|sha1Digest|shell|shortFilePath|sin|specialFolderPath|sqrt|standardDeviation|statRound|stdDev|sum|sysError|systemVersion|tan|tempName|textDecode|textEncode|tick(s)*|time|to(Lower|Upper)*|tokenOffset|transpose|truewordOffset|trunc|uniDecode|uniEncode|upper|urlDecode|urlEncode|urlStatus|uuid|value|variableNames|variance|version|waitDepth|weekdayNames|wordOffset|xsltApplyStylesheet|xsltApplyStylesheetFromFile|xsltLoadStylesheet|xsltLoadStylesheetFromFile)\\b"},{"name":"storage.type.comnd.livecodescript","match":"(?i)(\\^)|\\b(add|breakpoint|cancel|clear( local| global| variable| file| word| line| folder| directory| URL)*|close( file| socket| process)*|combine|constant|convert|(create|new)( alias| folder| directory)*|decrypt( using rsa)*|delete( directory| file| folder| global| line| local| session| URL| variable| word)*|dispatch|divide|do|encrypt( using rsa)*|filter|get|global|include|intersect|kill|libURLDownloadToFile|libURLFollowHttpRedirects|libURLftpUpload(File)*|libURLresetAll|libUrlSetAuthCallback|libURLSetCustomHTTPHeaders|libUrlSetExpect100|libURLSetFTPListCommand|libURLSetFTPMode|libURLSetFTPStopTime|libURLSetStatusCallback|load URL|local|multiply|open( socket| file| process)*|post|prepare|put( binary| content| cookie| header| markup| unicode)*|read( from process| from socket| from file)*|rename|replace|require|resetAll|resolve|revAddXMLNode|revAppendXML|revCloseCursor|revCloseDatabase|revCommitDatabase|revCopyFile|revCopyFolder|revCopyXMLNode|revDeleteFolder|revDeleteXMLNode|revDeleteAllXMLTrees|revDeleteXMLTree|revExecuteSQL|revGoURL|revInsertXMLNode|revMoveFolder|revMoveToFirstRecord|revMoveToLastRecord|revMoveToNextRecord|revMoveToPreviousRecord|revMoveToRecord|revMoveXMLNode|revPutIntoXMLNode|revRollBackDatabase|revSetDatabaseDriverPath|revSetXMLAttribute|revXMLRPC_AddParam|revXMLRPC_DeleteAllDocuments|revXMLAddDTD|revXMLRPC_Free|revXMLRPC_FreeAll|revXMLRPC_DeleteDocument|revXMLRPC_DeleteParam|revXMLRPC_SetHost|revXMLRPC_SetMethod|revXMLRPC_SetPort|revXMLRPC_SetProtocol|revXMLRPC_SetSocket|revZipAddItemWithData|revZipAddItemWithFile|revZipAddUncompressedItemWithData|revZipAddUncompressedItemWithFile|revZipCancel|revZipCloseArchive|revZipDeleteItem|revZipExtractItemToFile|revZipExtractItemToVariable|revZipSetProgressCallback|revZipRenameItem|revZipReplaceItemWithData|revZipReplaceItemWithFile|revZipOpenArchive|seek( to| rel| relative)*|send|set|sort|split|start( session)*|stop( session)*|subtract|union|unload( URL)*|wait|write)\\b"},{"include":"#constants"},{"include":"#support"},{"include":"#numbers"},{"include":"#variables"}]},"line-continuation":{"patterns":[{"match":"(\\\\)\\s*(\\S.*$\\n?)","captures":{"1":{"name":"punctuation.separator.continuation.line.livecodescript"},"2":{"name":"invalid.illegal.line.continuation.livecodescript"}}}]},"numbers":{"name":"constant.numeric.livecodescript","match":"\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\.?[0-9]*)|(\\.[0-9]+))((e|E)(\\+|-)?[0-9]+)?)\\b"},"var_global":{"name":"variable.other.global.livecodescript","match":"\\bg[A-Z]{1}.*?\\b"},"var_local":{"name":"variable.other.local.livecodescript","match":"\\bt[he]*[A-Z]{1}.*?\\b"},"var_parameter":{"name":"variable.other.param.livecodescript","match":"\\bp[A-Z]{1}.*?\\b"},"var_scriptLocal":{"name":"variable.other.scriptlocal.livecodescript","match":"\\bs[A-Z]{1}.*?\\b"},"var_server":{"name":"variable.other.server.livecodescript","match":"\\$_[A-Z]+"},"variables":{"patterns":[{"include":"#var_global"},{"include":"#var_scriptLocal"},{"include":"#var_local"},{"include":"#var_parameter"},{"include":"#var_server"}]}}}
@@ -1 +1 @@
1
- {"name":"Luau","scopeName":"source.luau","patterns":[{"include":"#function-definition"},{"include":"#number"},{"include":"#string"},{"include":"#shebang"},{"include":"#comment"},{"include":"#local-declaration"},{"include":"#for-loop"},{"include":"#type-alias-declaration"},{"include":"#keyword"},{"include":"#language_constant"},{"include":"#standard_library"},{"include":"#identifier"},{"include":"#operator"},{"include":"#parentheses"},{"include":"#table"},{"include":"#type_cast"},{"include":"#type_annotation"}],"repository":{"comment":{"patterns":[{"name":"comment.block.luau","begin":"--\\[(=*)\\[","end":"\\]\\1\\]","patterns":[{"name":"keyword.operator.other.luau","begin":"(```lua)\\s+","end":"(```)","patterns":[{"include":"source.luau"}],"beginCaptures":{"1":{"name":"comment.luau"}},"endCaptures":{"1":{"name":"comment.luau"}}},{"include":"#doc_comment_tags"}]},{"name":"comment.line.double-dash.documentation.luau","begin":"---","end":"\\n","patterns":[{"include":"#doc_comment_tags"}]},{"name":"comment.line.double-dash.luau","begin":"--","end":"\\n"}]},"doc_comment_tags":{"patterns":[{"name":"storage.type.class.luadoc.luau","match":"@\\w+"},{"match":"((?\u003c=[\\s*!\\/])[\\\\@]param)(?:\\s)+(\\b\\w+\\b)","captures":{"1":{"name":"storage.type.class.luadoc.luau"},"2":{"name":"variable.parameter.luau"}}}]},"for-loop":{"begin":"\\b(for)\\b","end":"\\b(in)\\b|(=)","patterns":[{"begin":"(:)","end":"(?=\\s*in\\b|\\s*[=,]|\\s*$)","patterns":[{"include":"#type_literal"}],"beginCaptures":{"1":{"name":"keyword.operator.type.luau"}}},{"name":"variable.parameter.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"}],"beginCaptures":{"1":{"name":"keyword.control.luau"}},"endCaptures":{"1":{"name":"keyword.control.luau"},"2":{"name":"keyword.operator.assignment.luau"}}},"function-definition":{"name":"meta.function.luau","begin":"\\b(?:(local)\\s+)?(function)\\b(?![,:])","end":"(?\u003c=[\\)\\-{}\\[\\]\"'])","patterns":[{"include":"#comment"},{"include":"#generics-declaration"},{"name":"meta.parameter.luau","begin":"(\\()","end":"(\\))","patterns":[{"include":"#comment"},{"name":"variable.parameter.function.varargs.luau","match":"\\.\\.\\."},{"name":"variable.parameter.function.luau","match":"[a-zA-Z_][a-zA-Z0-9_]*"},{"name":"punctuation.separator.arguments.luau","match":","},{"begin":":","end":"(?=[\\),])","patterns":[{"include":"#type_literal"}],"beginCaptures":{"0":{"name":"keyword.operator.type.luau"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.luau"}},"endCaptures":{"1":{"name":"punctuation.definition.parameters.end.luau"}}},{"name":"variable.language.metamethod.luau","match":"\\b(__add|__call|__concat|__div|__eq|__index|__le|__len|__lt|__metatable|__mod|__mode|__mul|__newindex|__pow|__sub|__tostring|__unm|__iter|__idiv)\\b"},{"name":"entity.name.function.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"}],"beginCaptures":{"1":{"name":"storage.modifier.local.luau"},"2":{"name":"keyword.control.luau"}}},"generics-declaration":{"begin":"(\u003c)","end":"(\u003e)","patterns":[{"name":"entity.name.type.luau","match":"[a-zA-Z_][a-zA-Z0-9_]*"},{"name":"keyword.operator.assignment.luau","match":"="},{"include":"#type_literal"}]},"identifier":{"patterns":[{"name":"entity.name.function.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b(?=\\s*(?:[({\"']|\\[\\[))"},{"name":"variable.other.property.luau","match":"(?\u003c=[^.]\\.|:)\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"},{"name":"variable.other.constant.luau","match":"\\b([A-Z_][A-Z0-9_]*)\\b"},{"name":"variable.other.readwrite.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"}]},"interpolated_string_expression":{"name":"meta.template.expression.luau","contentName":"meta.embedded.line.luau","begin":"\\{","end":"\\}","patterns":[{"include":"source.luau"}],"beginCaptures":{"0":{"name":"punctuation.definition.interpolated-string-expression.begin.luau"}},"endCaptures":{"0":{"name":"punctuation.definition.interpolated-string-expression.end.luau"}}},"keyword":{"patterns":[{"name":"keyword.control.luau","match":"\\b(break|do|else|for|if|elseif|return|then|repeat|while|until|end|in|continue)\\b"},{"name":"storage.modifier.local.luau","match":"\\b(local)\\b"},{"name":"keyword.control.luau","match":"\\b(function)\\b(?![,:])"},{"name":"variable.language.self.luau","match":"(?\u003c![^.]\\.|:)\\b(self)\\b"},{"name":"keyword.operator.logical.luau keyword.operator.wordlike.luau","match":"\\b(and|or|not)\\b"},{"name":"variable.language.metamethod.luau","match":"(?\u003c=[^.]\\.|:)\\b(__add|__call|__concat|__div|__eq|__index|__le|__len|__lt|__metatable|__mod|__mode|__mul|__newindex|__pow|__sub|__tostring|__unm)\\b"},{"name":"keyword.other.unit.luau","match":"(?\u003c![.])\\.{3}(?!\\.)"}]},"language_constant":{"patterns":[{"name":"constant.language.boolean.false.luau","match":"(?\u003c![^.]\\.|:)\\b(false)\\b"},{"name":"constant.language.boolean.true.luau","match":"(?\u003c![^.]\\.|:)\\b(true)\\b"},{"name":"constant.language.nil.luau","match":"(?\u003c![^.]\\.|:)\\b(nil(?!:))\\b"}]},"local-declaration":{"begin":"\\b(local)\\b","end":"(?=\\s*do\\b|\\s*[=;]|\\s*$)","patterns":[{"include":"#comment"},{"begin":"(:)","end":"(?=\\s*do\\b|\\s*[=;,]|\\s*$)","patterns":[{"include":"#type_literal"}],"beginCaptures":{"1":{"name":"keyword.operator.type.luau"}}},{"name":"variable.other.constant.luau","match":"\\b([A-Z_][A-Z0-9_]*)\\b"},{"name":"variable.other.readwrite.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"}],"beginCaptures":{"1":{"name":"storage.modifier.local.luau"}}},"number":{"patterns":[{"name":"constant.numeric.hex.luau","match":"\\b0_*[xX]_*[\\da-fA-F_]*(?:[eE][\\+\\-]?_*\\d[\\d_]*(?:\\.[\\d_]*)?)?"},{"name":"constant.numeric.binary.luau","match":"\\b0_*[bB][01_]+(?:[eE][\\+\\-]?_*\\d[\\d_]*(?:\\.[\\d_]*)?)?"},{"name":"constant.numeric.decimal.luau","match":"(?:\\d[\\d_]*(?:\\.[\\d_]*)?|\\.\\d[\\d_]*)(?:[eE][\\+\\-]?_*\\d[\\d_]*(?:\\.[\\d_]*)?)?"}]},"operator":{"patterns":[{"name":"keyword.operator.comparison.luau","match":"==|~=|!=|\u003c=?|\u003e=?"},{"name":"keyword.operator.assignment.luau","match":"\\+=|-=|/=|//=|\\*=|%=|\\^=|\\.\\.=|="},{"name":"keyword.operator.arithmetic.luau","match":"\\+|-|%|\\*|\\/\\/|\\/|\\^"},{"name":"keyword.operator.other.luau","match":"#|(?\u003c!\\.)\\.{2}(?!\\.)"}]},"parentheses":{"begin":"(\\()","end":"(\\))","patterns":[{"name":"punctuation.separator.arguments.luau","match":","},{"include":"source.luau"}],"beginCaptures":{"1":{"name":"punctuation.arguments.begin.luau"}},"endCaptures":{"1":{"name":"punctuation.arguments.end.luau"}}},"shebang":{"name":"comment.line.shebang.luau","match":"\\A(#!).*$\\n?","captures":{"1":{"name":"punctuation.definition.comment.luau"}}},"standard_library":{"patterns":[{"name":"support.function.luau","match":"(?\u003c![^.]\\.|:)\\b(assert|collectgarbage|error|gcinfo|getfenv|getmetatable|ipairs|loadstring|newproxy|next|pairs|pcall|print|rawequal|rawset|require|select|setfenv|setmetatable|tonumber|tostring|type|typeof|unpack|xpcall)\\b"},{"name":"constant.language.luau","match":"(?\u003c![^.]\\.|:)\\b(_G|_VERSION)\\b"},{"name":"support.function.luau","match":"(?\u003c![^.]\\.|:)\\b(bit32\\.(?:arshift|band|bnot|bor|btest|bxor|extract|lrotate|lshift|replace|rrotate|rshift|countlz|countrz|byteswap)|coroutine\\.(?:create|isyieldable|resume|running|status|wrap|yield|close)|debug\\.(?:info|loadmodule|profilebegin|profileend|traceback)|math\\.(?:abs|acos|asin|atan|atan2|ceil|clamp|cos|cosh|deg|exp|floor|fmod|frexp|ldexp|log|log10|max|min|modf|noise|pow|rad|random|randomseed|round|sign|sin|sinh|sqrt|tan|tanh)|os\\.(?:clock|date|difftime|time)|string\\.(?:byte|char|find|format|gmatch|gsub|len|lower|match|pack|packsize|rep|reverse|split|sub|unpack|upper)|table\\.(?:concat|create|find|foreach|foreachi|getn|insert|maxn|move|pack|remove|sort|unpack|clear|freeze|isfrozen|clone)|task\\.(?:spawn|synchronize|desynchronize|wait|defer|delay)|utf8\\.(?:char|codepoint|codes|graphemes|len|nfcnormalize|nfdnormalize|offset)|buffer\\.(?:create|fromstring|tostring|len|readi8|readu8|readi16|readu16|readi32|readu32|readf32|readf64|writei8|writeu8|writei16|writeu16|writei32|writeu32|writef32|writef64|readstring|writestring|copy|fill))\\b"},{"name":"support.constant.luau","match":"(?\u003c![^.]\\.|:)\\b(bit32|buffer|coroutine|debug|math(\\.(huge|pi))?|os|string|table|task|utf8(\\.charpattern)?)\\b"},{"name":"support.function.luau","match":"(?\u003c![^.]\\.|:)\\b(delay|DebuggerManager|elapsedTime|PluginManager|printidentity|settings|spawn|stats|tick|time|UserSettings|version|wait|warn)\\b"},{"name":"constant.language.luau","match":"(?\u003c![^.]\\.|:)\\b(game|plugin|shared|script|workspace|Enum(?:\\.\\w+){0,2})\\b"}]},"string":{"patterns":[{"name":"string.quoted.double.luau","begin":"\"","end":"\"","patterns":[{"include":"#string_escape"}]},{"name":"string.quoted.single.luau","begin":"'","end":"'","patterns":[{"include":"#string_escape"}]},{"name":"string.other.multiline.luau","begin":"\\[(=*)\\[","end":"\\]\\1\\]"},{"name":"string.interpolated.luau","begin":"`","end":"`","patterns":[{"include":"#interpolated_string_expression"},{"include":"#string_escape"}]}]},"string_escape":{"patterns":[{"name":"constant.character.escape.luau","match":"\\\\[abfnrtvz'\"`{\\\\]"},{"name":"constant.character.escape.luau","match":"\\\\\\d{1,3}"},{"name":"constant.character.escape.luau","match":"\\\\x[0-9a-fA-F]{2}"},{"name":"constant.character.escape.luau","match":"\\\\u\\{[0-9a-fA-F]*\\}"},{"name":"constant.character.escape.luau","match":"\\\\$"}]},"table":{"begin":"(\\{)","end":"(\\})","patterns":[{"name":"punctuation.separator.fields.luau","match":"[,;]"},{"include":"source.luau"}],"beginCaptures":{"1":{"name":"punctuation.table.begin.luau"}},"endCaptures":{"1":{"name":"punctuation.table.end.luau"}}},"type-alias-declaration":{"begin":"^\\b(?:(export)\\s+)?(type)\\b","end":"(?=\\s*$)|(?=\\s*;)","patterns":[{"include":"#type_literal"},{"name":"keyword.operator.assignment.luau","match":"="}],"beginCaptures":{"1":{"name":"storage.modifier.visibility.luau"},"2":{"name":"storage.type.luau"}}},"type_annotation":{"begin":":(?!\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b(?=\\s*(?:[({\"']|\\[\\[)))","end":"(?\u003c=\\))(?!\\s*-\u003e)|=|;|$|(?=\\breturn\\b)|(?=\\bend\\b)","patterns":[{"include":"#comment"},{"include":"#type_literal"}]},"type_cast":{"begin":"(::)","end":"(?=^|[;),}\\]:?\\-\\+\\\u003e](?!\\s*[\u0026\\|])|$|\\b(break|do|else|for|if|elseif|return|then|repeat|while|until|end|in|continue)\\b)","patterns":[{"include":"#type_literal"}],"beginCaptures":{"1":{"name":"keyword.operator.typecast.luau"}}},"type_literal":{"patterns":[{"include":"#comment"},{"include":"#string"},{"name":"keyword.operator.type.luau","match":"\\?|\\\u0026|\\|"},{"name":"keyword.operator.type.luau","match":"-\u003e"},{"name":"constant.language.boolean.false.luau","match":"\\b(false)\\b"},{"name":"constant.language.boolean.true.luau","match":"\\b(true)\\b"},{"name":"support.type.primitive.luau","match":"\\b(nil|string|number|boolean|thread|userdata|symbol|any)\\b"},{"begin":"\\b(typeof)\\b(\\()","end":"(\\))","patterns":[{"include":"source.luau"}],"beginCaptures":{"1":{"name":"support.function.luau"},"2":{"name":"punctuation.arguments.begin.typeof.luau"}},"endCaptures":{"1":{"name":"punctuation.arguments.end.typeof.luau"}}},{"begin":"(\u003c)","end":"(\u003e)","patterns":[{"name":"keyword.operator.assignment.luau","match":"="},{"include":"#type_literal"}],"beginCaptures":{"1":{"name":"keyword.operator.type.luau"}},"endCaptures":{"1":{"name":"keyword.operator.type.luau"}}},{"name":"entity.name.type.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"},{"begin":"\\{","end":"\\}","patterns":[{"begin":"\\[","end":"\\]","patterns":[{"include":"#type_literal"}]},{"match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b(:)","captures":{"1":{"name":"variable.property.luau"},"2":{"name":"keyword.operator.type.luau"}}},{"include":"#type_literal"},{"name":"punctuation.separator.fields.type.luau","match":"[,;]"}]},{"begin":"\\(","end":"\\)","patterns":[{"name":"variable.parameter.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b(:)","captures":{"1":{"name":"variable.parameter.luau"},"2":{"name":"keyword.operator.type.luau"}}},{"include":"#type_literal"}]}]}}}
1
+ {"name":"Luau","scopeName":"source.luau","patterns":[{"include":"#function-definition"},{"include":"#number"},{"include":"#string"},{"include":"#shebang"},{"include":"#comment"},{"include":"#local-declaration"},{"include":"#for-loop"},{"include":"#type-alias-declaration"},{"include":"#keyword"},{"include":"#language_constant"},{"include":"#standard_library"},{"include":"#identifier"},{"include":"#operator"},{"include":"#parentheses"},{"include":"#table"},{"include":"#type_cast"},{"include":"#type_annotation"},{"include":"#attribute"}],"repository":{"attribute":{"patterns":[{"name":"meta.attribute.luau","match":"(@)([a-zA-Z_][a-zA-Z0-9_]*)","captures":{"1":{"name":"keyword.operator.attribute.luau"},"2":{"name":"storage.type.attribute.luau"}}}]},"comment":{"patterns":[{"name":"comment.block.luau","begin":"--\\[(=*)\\[","end":"\\]\\1\\]","patterns":[{"name":"keyword.operator.other.luau","begin":"(```lua)\\s+","end":"(```)","patterns":[{"include":"source.luau"}],"beginCaptures":{"1":{"name":"comment.luau"}},"endCaptures":{"1":{"name":"comment.luau"}}},{"include":"#doc_comment_tags"}]},{"name":"comment.line.double-dash.documentation.luau","begin":"---","end":"\\n","patterns":[{"include":"#doc_comment_tags"}]},{"name":"comment.line.double-dash.luau","begin":"--","end":"\\n"}]},"doc_comment_tags":{"patterns":[{"name":"storage.type.class.luadoc.luau","match":"@\\w+"},{"match":"((?\u003c=[\\s*!\\/])[\\\\@]param)(?:\\s)+(\\b\\w+\\b)","captures":{"1":{"name":"storage.type.class.luadoc.luau"},"2":{"name":"variable.parameter.luau"}}}]},"for-loop":{"begin":"\\b(for)\\b","end":"\\b(in)\\b|(=)","patterns":[{"begin":"(:)","end":"(?=\\s*in\\b|\\s*[=,]|\\s*$)","patterns":[{"include":"#type_literal"}],"beginCaptures":{"1":{"name":"keyword.operator.type.luau"}}},{"name":"variable.parameter.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"}],"beginCaptures":{"1":{"name":"keyword.control.luau"}},"endCaptures":{"1":{"name":"keyword.control.luau"},"2":{"name":"keyword.operator.assignment.luau"}}},"function-definition":{"name":"meta.function.luau","begin":"\\b(?:(local)\\s+)?(function)\\b(?![,:])","end":"(?\u003c=[\\)\\-{}\\[\\]\"'])","patterns":[{"include":"#comment"},{"include":"#generics-declaration"},{"name":"meta.parameter.luau","begin":"(\\()","end":"(\\))","patterns":[{"include":"#comment"},{"name":"variable.parameter.function.varargs.luau","match":"\\.\\.\\."},{"name":"variable.parameter.function.luau","match":"[a-zA-Z_][a-zA-Z0-9_]*"},{"name":"punctuation.separator.arguments.luau","match":","},{"begin":":","end":"(?=[\\),])","patterns":[{"include":"#type_literal"}],"beginCaptures":{"0":{"name":"keyword.operator.type.luau"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.luau"}},"endCaptures":{"1":{"name":"punctuation.definition.parameters.end.luau"}}},{"name":"variable.language.metamethod.luau","match":"\\b(__add|__call|__concat|__div|__eq|__index|__le|__len|__lt|__metatable|__mod|__mode|__mul|__newindex|__pow|__sub|__tostring|__unm|__iter|__idiv)\\b"},{"name":"entity.name.function.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"}],"beginCaptures":{"1":{"name":"storage.modifier.local.luau"},"2":{"name":"keyword.control.luau"}}},"generics-declaration":{"begin":"(\u003c)","end":"(\u003e)","patterns":[{"name":"entity.name.type.luau","match":"[a-zA-Z_][a-zA-Z0-9_]*"},{"name":"keyword.operator.assignment.luau","match":"="},{"include":"#type_literal"}]},"identifier":{"patterns":[{"name":"entity.name.function.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b(?=\\s*(?:[({\"']|\\[\\[))"},{"name":"variable.other.property.luau","match":"(?\u003c=[^.]\\.|:)\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"},{"name":"variable.other.constant.luau","match":"\\b([A-Z_][A-Z0-9_]*)\\b"},{"name":"variable.other.readwrite.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"}]},"interpolated_string_expression":{"name":"meta.template.expression.luau","contentName":"meta.embedded.line.luau","begin":"\\{","end":"\\}","patterns":[{"include":"source.luau"}],"beginCaptures":{"0":{"name":"punctuation.definition.interpolated-string-expression.begin.luau"}},"endCaptures":{"0":{"name":"punctuation.definition.interpolated-string-expression.end.luau"}}},"keyword":{"patterns":[{"name":"keyword.control.luau","match":"\\b(break|do|else|for|if|elseif|return|then|repeat|while|until|end|in|continue)\\b"},{"name":"storage.modifier.local.luau","match":"\\b(local)\\b"},{"name":"keyword.control.luau","match":"\\b(function)\\b(?![,:])"},{"name":"variable.language.self.luau","match":"(?\u003c![^.]\\.|:)\\b(self)\\b"},{"name":"keyword.operator.logical.luau keyword.operator.wordlike.luau","match":"\\b(and|or|not)\\b"},{"name":"variable.language.metamethod.luau","match":"(?\u003c=[^.]\\.|:)\\b(__add|__call|__concat|__div|__eq|__index|__le|__len|__lt|__metatable|__mod|__mode|__mul|__newindex|__pow|__sub|__tostring|__unm)\\b"},{"name":"keyword.other.unit.luau","match":"(?\u003c![.])\\.{3}(?!\\.)"}]},"language_constant":{"patterns":[{"name":"constant.language.boolean.false.luau","match":"(?\u003c![^.]\\.|:)\\b(false)\\b"},{"name":"constant.language.boolean.true.luau","match":"(?\u003c![^.]\\.|:)\\b(true)\\b"},{"name":"constant.language.nil.luau","match":"(?\u003c![^.]\\.|:)\\b(nil(?!:))\\b"}]},"local-declaration":{"begin":"\\b(local)\\b","end":"(?=\\s*do\\b|\\s*[=;]|\\s*$)","patterns":[{"include":"#comment"},{"include":"#attribute"},{"begin":"(:)","end":"(?=\\s*do\\b|\\s*[=;,]|\\s*$)","patterns":[{"include":"#type_literal"}],"beginCaptures":{"1":{"name":"keyword.operator.type.luau"}}},{"name":"variable.other.constant.luau","match":"\\b([A-Z_][A-Z0-9_]*)\\b"},{"name":"variable.other.readwrite.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"}],"beginCaptures":{"1":{"name":"storage.modifier.local.luau"}}},"number":{"patterns":[{"name":"constant.numeric.hex.luau","match":"\\b0_*[xX]_*[\\da-fA-F_]*(?:[eE][\\+\\-]?_*\\d[\\d_]*(?:\\.[\\d_]*)?)?"},{"name":"constant.numeric.binary.luau","match":"\\b0_*[bB][01_]+(?:[eE][\\+\\-]?_*\\d[\\d_]*(?:\\.[\\d_]*)?)?"},{"name":"constant.numeric.decimal.luau","match":"(?:\\d[\\d_]*(?:\\.[\\d_]*)?|\\.\\d[\\d_]*)(?:[eE][\\+\\-]?_*\\d[\\d_]*(?:\\.[\\d_]*)?)?"}]},"operator":{"patterns":[{"name":"keyword.operator.comparison.luau","match":"==|~=|!=|\u003c=?|\u003e=?"},{"name":"keyword.operator.assignment.luau","match":"\\+=|-=|/=|//=|\\*=|%=|\\^=|\\.\\.=|="},{"name":"keyword.operator.arithmetic.luau","match":"\\+|-|%|\\*|\\/\\/|\\/|\\^"},{"name":"keyword.operator.other.luau","match":"#|(?\u003c!\\.)\\.{2}(?!\\.)"}]},"parentheses":{"begin":"(\\()","end":"(\\))","patterns":[{"name":"punctuation.separator.arguments.luau","match":","},{"include":"source.luau"}],"beginCaptures":{"1":{"name":"punctuation.arguments.begin.luau"}},"endCaptures":{"1":{"name":"punctuation.arguments.end.luau"}}},"shebang":{"name":"comment.line.shebang.luau","match":"\\A(#!).*$\\n?","captures":{"1":{"name":"punctuation.definition.comment.luau"}}},"standard_library":{"patterns":[{"name":"support.function.luau","match":"(?\u003c![^.]\\.|:)\\b(assert|collectgarbage|error|gcinfo|getfenv|getmetatable|ipairs|loadstring|newproxy|next|pairs|pcall|print|rawequal|rawset|require|select|setfenv|setmetatable|tonumber|tostring|type|typeof|unpack|xpcall)\\b"},{"name":"constant.language.luau","match":"(?\u003c![^.]\\.|:)\\b(_G|_VERSION)\\b"},{"name":"support.function.luau","match":"(?\u003c![^.]\\.|:)\\b(bit32\\.(?:arshift|band|bnot|bor|btest|bxor|extract|lrotate|lshift|replace|rrotate|rshift|countlz|countrz|byteswap)|coroutine\\.(?:create|isyieldable|resume|running|status|wrap|yield|close)|debug\\.(?:info|loadmodule|profilebegin|profileend|traceback)|math\\.(?:abs|acos|asin|atan|atan2|ceil|clamp|cos|cosh|deg|exp|floor|fmod|frexp|ldexp|log|log10|max|min|modf|noise|pow|rad|random|randomseed|round|sign|sin|sinh|sqrt|tan|tanh)|os\\.(?:clock|date|difftime|time)|string\\.(?:byte|char|find|format|gmatch|gsub|len|lower|match|pack|packsize|rep|reverse|split|sub|unpack|upper)|table\\.(?:concat|create|find|foreach|foreachi|getn|insert|maxn|move|pack|remove|sort|unpack|clear|freeze|isfrozen|clone)|task\\.(?:spawn|synchronize|desynchronize|wait|defer|delay)|utf8\\.(?:char|codepoint|codes|graphemes|len|nfcnormalize|nfdnormalize|offset)|buffer\\.(?:create|fromstring|tostring|len|readi8|readu8|readi16|readu16|readi32|readu32|readf32|readf64|writei8|writeu8|writei16|writeu16|writei32|writeu32|writef32|writef64|readstring|writestring|copy|fill))\\b"},{"name":"support.constant.luau","match":"(?\u003c![^.]\\.|:)\\b(bit32|buffer|coroutine|debug|math(\\.(huge|pi))?|os|string|table|task|utf8(\\.charpattern)?)\\b"},{"name":"support.function.luau","match":"(?\u003c![^.]\\.|:)\\b(delay|DebuggerManager|elapsedTime|PluginManager|printidentity|settings|spawn|stats|tick|time|UserSettings|version|wait|warn)\\b"},{"name":"constant.language.luau","match":"(?\u003c![^.]\\.|:)\\b(game|plugin|shared|script|workspace|Enum(?:\\.\\w+){0,2})\\b"}]},"string":{"patterns":[{"name":"string.quoted.double.luau","begin":"\"","end":"\"","patterns":[{"include":"#string_escape"}]},{"name":"string.quoted.single.luau","begin":"'","end":"'","patterns":[{"include":"#string_escape"}]},{"name":"string.other.multiline.luau","begin":"\\[(=*)\\[","end":"\\]\\1\\]"},{"name":"string.interpolated.luau","begin":"`","end":"`","patterns":[{"include":"#interpolated_string_expression"},{"include":"#string_escape"}]}]},"string_escape":{"patterns":[{"name":"constant.character.escape.luau","match":"\\\\[abfnrtvz'\"`{\\\\]"},{"name":"constant.character.escape.luau","match":"\\\\\\d{1,3}"},{"name":"constant.character.escape.luau","match":"\\\\x[0-9a-fA-F]{2}"},{"name":"constant.character.escape.luau","match":"\\\\u\\{[0-9a-fA-F]*\\}"},{"name":"constant.character.escape.luau","match":"\\\\$"}]},"table":{"begin":"(\\{)","end":"(\\})","patterns":[{"name":"punctuation.separator.fields.luau","match":"[,;]"},{"include":"source.luau"}],"beginCaptures":{"1":{"name":"punctuation.table.begin.luau"}},"endCaptures":{"1":{"name":"punctuation.table.end.luau"}}},"type-alias-declaration":{"begin":"^\\b(?:(export)\\s+)?(type)\\b","end":"(?=\\s*$)|(?=\\s*;)","patterns":[{"include":"#type_literal"},{"name":"keyword.operator.assignment.luau","match":"="}],"beginCaptures":{"1":{"name":"storage.modifier.visibility.luau"},"2":{"name":"storage.type.luau"}}},"type_annotation":{"begin":":(?!\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b(?=\\s*(?:[({\"']|\\[\\[)))","end":"(?\u003c=\\))(?!\\s*-\u003e)|=|;|$|(?=\\breturn\\b)|(?=\\bend\\b)","patterns":[{"include":"#comment"},{"include":"#type_literal"}]},"type_cast":{"begin":"(::)","end":"(?=^|[;),}\\]:?\\-\\+\\\u003e](?!\\s*[\u0026\\|])|$|\\b(break|do|else|for|if|elseif|return|then|repeat|while|until|end|in|continue)\\b)","patterns":[{"include":"#type_literal"}],"beginCaptures":{"1":{"name":"keyword.operator.typecast.luau"}}},"type_literal":{"patterns":[{"include":"#comment"},{"include":"#string"},{"name":"keyword.operator.type.luau","match":"\\?|\\\u0026|\\|"},{"name":"keyword.operator.type.luau","match":"-\u003e"},{"name":"constant.language.boolean.false.luau","match":"\\b(false)\\b"},{"name":"constant.language.boolean.true.luau","match":"\\b(true)\\b"},{"name":"support.type.primitive.luau","match":"\\b(nil|string|number|boolean|thread|userdata|symbol|any)\\b"},{"begin":"\\b(typeof)\\b(\\()","end":"(\\))","patterns":[{"include":"source.luau"}],"beginCaptures":{"1":{"name":"support.function.luau"},"2":{"name":"punctuation.arguments.begin.typeof.luau"}},"endCaptures":{"1":{"name":"punctuation.arguments.end.typeof.luau"}}},{"begin":"(\u003c)","end":"(\u003e)","patterns":[{"name":"keyword.operator.assignment.luau","match":"="},{"include":"#type_literal"}],"beginCaptures":{"1":{"name":"keyword.operator.type.luau"}},"endCaptures":{"1":{"name":"keyword.operator.type.luau"}}},{"name":"entity.name.type.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"},{"begin":"\\{","end":"\\}","patterns":[{"begin":"\\[","end":"\\]","patterns":[{"include":"#type_literal"}]},{"match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b(:)","captures":{"1":{"name":"variable.property.luau"},"2":{"name":"keyword.operator.type.luau"}}},{"include":"#type_literal"},{"name":"punctuation.separator.fields.type.luau","match":"[,;]"}]},{"begin":"\\(","end":"\\)","patterns":[{"name":"variable.parameter.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b(:)","captures":{"1":{"name":"variable.parameter.luau"},"2":{"name":"keyword.operator.type.luau"}}},{"include":"#type_literal"}]}]}}}
@@ -1 +1 @@
1
- {"name":"MATLAB","scopeName":"source.matlab","patterns":[{"include":"#rules_before_command_dual"},{"include":"#command_dual"},{"include":"#rules_after_command_dual"}],"repository":{"anonymous_function":{"name":"meta.function.anonymous.matlab","begin":"(@)[^\\S\\n]*(?=\\()","patterns":[{"name":"meta.parameters.matlab","begin":"\\G(\\()","end":"\\)","patterns":[{"name":"variable.parameter.input.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"name":"punctuation.separator.parameter.comma.matlab","match":","},{"include":"#line_continuation"}],"beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.definition.parameters.end.matlab"}}},{"name":"meta.parameters.matlab","begin":"(?\u003c=\\))[^\\S\\n]*(\\()?","patterns":[{"include":"$self"},{"include":"#line_continuation"}],"beginCaptures":{"1":{"name":"punctuation.section.group.begin.matlab"}},"endCaptures":{"1":{"name":"punctuation.section.group.end.matlab"}}},{"include":"#line_continuation"}],"beginCaptures":{"1":{"name":"punctuation.definition.function.anonymous.matlab"}}},"blocks":{"patterns":[{"name":"meta.for.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(for)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.for.declaration.matlab","begin":"\\G(?!$)","end":"(?\u003c!\\.{3})(?:(?=([,;])(?![^(]*\\)))|$)","patterns":[{"include":"$self"}]},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.for.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.for.matlab"}}},{"name":"meta.if.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(if)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.if.declaration.matlab","begin":"\\G(?!$)","end":"(?\u003c!\\.{3})(?:(?=([,;])(?![^(]*\\)))|$)","patterns":[{"include":"$self"}]},{"name":"meta.elseif.matlab","match":"(?:\\s*)(?\u003c=^|[\\s,;])(elseif)\\b","patterns":[{"name":"meta.elseif.declaration.matlab","begin":"\\G(?!$)","end":"(?\u003c!\\.{3})(?:(?=([,;])(?![^(]*\\)))|$)","patterns":[{"include":"$self"}]}],"captures":{"1":{"name":"keyword.control.elseif.matlab"}}},{"name":"meta.else.matlab","match":"(?:\\s*)(?\u003c=^|[\\s,;])(else)\\b","end":"^","captures":{"1":{"name":"keyword.control.else.matlab"}}},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.if.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.if.matlab"},"2":{"patterns":[{"include":"$self"}]}}},{"name":"meta.for.parallel.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(parfor)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.for.parallel.declaration.matlab","begin":"\\G(?!$)","end":"(?\u003c!\\.{3})(?:(?=([,;])(?![^(]*\\)))|$)","patterns":[{"include":"$self"}]},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.for.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.for.matlab"}}},{"name":"meta.repeat.parallel.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(spmd)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.repeat.parallel.declaration.matlab","begin":"\\G(?!$)","end":"(?\u003c!\\.{3})(?:(?=([,;])(?![^(]*\\)))|$)","patterns":[{"include":"$self"}]},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.repeat.parallel.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.repeat.parallel.matlab"}}},{"name":"meta.switch.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(switch)\\s+([a-zA-Z0-9][a-zA-Z0-9_]*)","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.case.matlab","match":"(\\s*)(?\u003c=^|[\\s,;])(case)\\b(.*?)(?\u003c!\\.{3})(?:(?=([,;])(?![^(]*\\)))|$)","captures":{"2":{"name":"keyword.control.switch.case.matlab"},"3":{"name":"meta.case.declaration.matlab","begin":"\\G(?!$)","end":"(?\u003c!\\.{3})(?:(?=([,;])(?![^(]*\\)))|$)","patterns":[{"include":"$self"}]}}},{"name":"meta.otherwise.matlab","match":"(\\s*)(?\u003c=^|[\\s,;])(otherwise)\\b","captures":{"2":{"name":"keyword.control.switch.otherwise.matlab"},"3":{"patterns":[{"include":"$self"}]}}},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.switch.matlab"},"2":{"name":"variable.other.constant.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.switch.matlab"}}},{"name":"meta.try.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(try)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.catch.matlab","match":"(\\s*)(?\u003c=^|[\\s,;])(catch)\\b\\s*(\\w+)?","captures":{"2":{"name":"keyword.control.catch.matlab"},"3":{"name":"variable.other.constant.matlab"}}},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.try.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.try.matlab"}}},{"name":"meta.while.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(while)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.while.declaration.matlab","begin":"\\G","end":"(?\u003c!\\.{3})(?:(?=([,;])(?![^(]*\\)))|$)","endCaptures":{"1":{"include":"$self"}}},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.while.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.while.matlab"}}}]},"braced_validator_list":{"contentName":"meta.block.validation.matlab","begin":"\\s*({)\\s*","end":"}","patterns":[{"include":"#braced_validator_list"},{"include":"#validator_strings"},{"include":"#line_continuation"},{"name":"punctuation.accessor.dot.matlab","match":"\\."}],"beginCaptures":{"1":{"name":"punctuation.section.block.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.block.end.matlab"}}},"classdef":{"patterns":[{"name":"meta.class.matlab","begin":"(?x)\n\t\t\t\t\t\t\t^\\s* \t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t(classdef)\n\t\t\t\t\t\t\t\\s*\n\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.class.declaration.matlab","begin":"\\G","end":"(?\u003c!\\.{3})(?=\\n)","patterns":[{"begin":"\\G(\\([^)]*\\))?\\s*","end":"(?\u003c!\\.{3})(?=\\s*%|\\n)","patterns":[{"begin":"\\G\\s*([a-zA-Z][a-zA-Z0-9_]*)","end":"(?\u003c!\\.{3})(?=\\n)","patterns":[{"name":"punctuation.separator.lt.inheritance.matlab","match":"\u003c"},{"name":"meta.inherited-class.matlab","begin":"(?\u003c!\\.)\\b(?=[a-zA-Z])","end":"(?\u003c=[a-zA-Z0-9_])(?!\\.)","patterns":[{"name":"entity.other.inherited-class.matlab","match":"(?\u003c=[\\s.\u003c])[a-zA-Z][a-zA-Z0-9_]*(?=\\s|$)"},{"name":"entity.name.namespace.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"name":"punctuation.accessor.dot.matlab","match":"\\."}]},{"name":"keyword.operator.type.matlab","match":"\u0026"},{"include":"#comments"},{"include":"#line_continuation"}],"beginCaptures":{"1":{"name":"entity.name.type.class.matlab"}}},{"include":"#comments"},{"include":"#line_continuation"}],"beginCaptures":{"1":{"patterns":[{"name":"punctuation.section.parens.begin.matlab","match":"(?\u003c=\\s)\\("},{"name":"punctuation.section.parens.end.matlab","match":"\\)\\z"},{"name":"punctuation.separator.modifier.comma.matlab","match":","},{"name":"storage.modifier.class.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"begin":"(=)\\s*","end":"(?=\\)|,)","patterns":[{"name":"constant.language.boolean.matlab","match":"true|false"},{"include":"#string"}],"beginCaptures":{"1":{"name":"keyword.operator.assignment.matlab"}}},{"include":"#comments"},{"include":"#line_continuation"}]}}}]},{"name":"meta.properties.matlab","begin":"(?x)\n\t\t\t\t\t\t\t\t\t(^\\s*)\t\t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t\t\t(properties)\\b([^%]*)\n\t\t\t\t\t\t\t\t\t\\s*\n\t\t\t\t\t\t\t\t\t(\t\t\t\t\t\t\t\t\t# Optional attributes\n\t\t\t\t\t\t\t\t\t\t\\( [^)]* \\)\n\t\t\t\t\t\t\t\t\t)?\n\t\t\t\t\t\t\t\t\t\\s*($|(?=%))\n\t\t\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"include":"#validators"},{"include":"$self"}],"beginCaptures":{"2":{"name":"keyword.control.properties.matlab"},"3":{"patterns":[{"name":"storage.modifier.properties.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"begin":"(=)\\s*","end":",|(?=\\))","patterns":[{"name":"constant.language.boolean.matlab","match":"true|false"},{"name":"storage.modifier.access.matlab","match":"public|protected|private"}],"beginCaptures":{"1":{"name":"keyword.operator.assignment.matlab"}}}]}},"endCaptures":{"1":{"name":"keyword.control.end.properties.matlab"}}},{"name":"meta.methods.matlab","begin":"(?x)\n\t\t\t\t\t\t\t\t\t(^\\s*)\t\t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t\t\t(methods)\\b([^%]*)\n\t\t\t\t\t\t\t\t\t\\s*\n\t\t\t\t\t\t\t\t\t(\t\t\t\t\t\t\t\t\t# Optional attributes\n\t\t\t\t\t\t\t\t\t\t\\( [^)]* \\)\n\t\t\t\t\t\t\t\t\t)?\n\t\t\t\t\t\t\t\t\t\\s*($|(?=%))\n\t\t\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"include":"$self"}],"beginCaptures":{"2":{"name":"keyword.control.methods.matlab"},"3":{"patterns":[{"name":"storage.modifier.methods.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"begin":"=\\s*","end":",|(?=\\))","patterns":[{"name":"constant.language.boolean.matlab","match":"true|false"},{"name":"storage.modifier.access.matlab","match":"public|protected|private"}]}]}},"endCaptures":{"1":{"name":"keyword.control.end.methods.matlab"}}},{"name":"meta.events.matlab","begin":"(?x)\n\t\t\t\t\t\t\t\t\t(^\\s*)\t\t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t\t\t(events)\\b([^%]*)\n\t\t\t\t\t\t\t\t\t\\s*\n\t\t\t\t\t\t\t\t\t(\t\t\t\t\t\t\t\t\t# Optional attributes\n\t\t\t\t\t\t\t\t\t\t\\( [^)]* \\)\n\t\t\t\t\t\t\t\t\t)?\n\t\t\t\t\t\t\t\t\t\\s*($|(?=%))\n\t\t\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.assignment.definition.event.matlab","match":"(?:^\\s*|,\\s*)([a-zA-Z0-9_]+)","captures":{"1":{"name":"entity.name.type.event.matlab"}}},{"include":"$self"}],"beginCaptures":{"2":{"name":"keyword.control.events.matlab"},"3":{"patterns":[{"name":"variable.parameter.events.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"begin":"=\\s*","end":",|(?=\\))","patterns":[{"name":"constant.language.boolean.matlab","match":"true|false"},{"name":"storage.modifier.access.matlab","match":"public|protected|private"}]}]}},"endCaptures":{"1":{"name":"keyword.control.end.events.matlab"}}},{"name":"meta.enum.matlab","begin":"(?x)\n\t\t\t\t\t\t\t\t\t(^\\s*)\t\t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t\t\t(enumeration)\\b([^%]*)\n\t\t\t\t\t\t\t\t\t\\s*($|(?=%))\n\t\t\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.assignment.definition.enummember.matlab","match":"(?:^\\s*|,\\s*)([a-zA-Z0-9_]+)","captures":{"1":{"name":"variable.other.enummember.matlab"}}},{"name":"punctuation.separator.comma.matlab","match":","},{"include":"#parentheses"},{"include":"#comments"}],"beginCaptures":{"2":{"name":"keyword.control.enum.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.enum.matlab"}}},{"include":"#comments"}],"beginCaptures":{"1":{"name":"storage.type.class.matlab"}},"endCaptures":{"1":{"name":"storage.type.class.end.matlab"}}}]},"command_dual":{"name":"meta.function-call.command.matlab","match":"(?\u003c=^|[^.]\\n|;|,|=)([^\\S\\n]*)(?# A\u003e )(\\b\\w+\\b)([^\\S\\n]+)(?# B\u003e )((?!(\\+|-|\\*|\\.\\*|\\/|\\.\\/|\\\\|\\.\\\\|\\^|\\.\\^|==|~=|\u0026|\u0026\u0026|\\||\\|\\||=|:|\u003e|\u003e=|\u003c|\u003c=|\\.{3})[^\\S\\n]?)[^\\s({=;%][^\\n;%]*)","captures":{"2":{"name":"entity.name.function.command.matlab","patterns":[{"include":"$self"}]},"4":{"name":"string.unquoted.matlab","patterns":[{"include":"#string_quoted_single"}]}}},"comment_block":{"name":"comment.block.percentage.matlab","begin":"(^[\\s]*)(%\\{)[^\\S\\n]*+\\n","end":"(^[\\s]*)(%\\})[^\\S\\n]*+(?:\\n|$)","patterns":[{"include":"#comment_block"},{"match":"^[^\\n]*\\n"}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.matlab"},"2":{"name":"punctuation.definition.comment.begin.matlab"}},"endCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.matlab"},"2":{"name":"punctuation.definition.comment.end.matlab"}}},"comments":{"patterns":[{"begin":"(^[ \\t]+)?(?=%%\\s)","end":"\\Z","patterns":[{"name":"comment.line.double-percentage.matlab","begin":"%%","end":"\\n","patterns":[{"contentName":"entity.name.section.matlab","begin":"\\G[^\\S\\n]*(?![\\n\\s])","end":"(?=\\n)","beginCaptures":{"0":{"name":"punctuation.whitespace.comment.leading.matlab"}}}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.matlab"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.matlab"}}},{"include":"#comment_block"},{"begin":"(^[ \\t]+)?(?=%)","end":"\\Z","patterns":[{"name":"comment.line.percentage.matlab","begin":"%","end":"\\Z","beginCaptures":{"0":{"name":"punctuation.definition.comment.matlab"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.matlab"}}}]},"conjugate_transpose":{"name":"keyword.operator.transpose.matlab","match":"((?\u003c=[^\\s])|(?\u003c=\\])|(?\u003c=\\))|(?\u003c=\\}))'"},"constants":{"patterns":[{"name":"constant.numeric.matlab","match":"(?\u003c!\\.)\\b(eps|Inf|inf|intmax|intmin|namelengthmax|realmax|realmin|pi)\\b"},{"name":"constant.language.nan.matlab","match":"(?\u003c!\\.)\\b(NaN|nan|NaT|nat)\\b"},{"name":"constant.language.boolean.matlab","match":"(?\u003c!\\.)\\b(on|off|false|true)\\b"}]},"control_statements":{"name":"meta.control.matlab","match":"\\s*(?\u003c=^|[\\s,;])(break|continue|return)\\b","captures":{"1":{"name":"keyword.control.flow.matlab"}}},"curly_brackets":{"contentName":"meta.cell.literal.matlab","begin":"\\{","end":"\\}","patterns":[{"include":"#end_in_parentheses"},{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"0":{"name":"punctuation.section.braces.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.braces.end.matlab"}}},"end_in_parentheses":{"name":"keyword.operator.word.matlab","match":"\\bend\\b"},"function":{"patterns":[{"name":"meta.function.matlab","begin":"(?x)\n\t\t\t\t\t\t\t(^\\s*)\t\t\t\t\t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t(function)\n\t\t\t\t\t\t\t\\s+\n\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b(\\s*\\n)?","patterns":[{"name":"meta.function.declaration.matlab","begin":"\\G","patterns":[{"contentName":"meta.assignment.variable.output.matlab","begin":"\\G(?=[^\\(]*?(?:=|\\[|\\.{3}))","end":"\\s*(=)\\s*","patterns":[{"name":"punctuation.section.assignment.group.begin.matlab","match":"\\G\\["},{"match":"(\\])\\s*","captures":{"1":{"name":"punctuation.section.assignment.group.end.matlab"}}},{"name":"variable.parameter.output.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"name":"punctuation.separator.parameter.comma.matlab","match":","},{"include":"#line_continuation"},{"include":"#comments"}],"endCaptures":{"1":{"name":"keyword.operator.assignment.matlab"}}},{"name":"entity.name.function.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*(?\u003e\\.[a-zA-Z0-9_]+)*","patterns":[{"name":"punctuation.accessor.dot.matlab","match":"\\."},{"include":"#line_continuation"}]},{"name":"meta.parameters.matlab","begin":"\\s*\\(","end":"\\)","patterns":[{"name":"variable.parameter.input.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"name":"variable.language.anonymous.matlab","match":"~"},{"name":"punctuation.separator.parameter.comma.matlab","match":","},{"include":"#comments"},{"include":"#line_continuation"}],"beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.definition.parameters.end.matlab"}}},{"include":"#line_continuation"},{"include":"#comments"}]},{"name":"meta.arguments.matlab","begin":"(?x)\n\t\t\t\t\t\t\t\t\t(^\\s*)\t\t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t\t\t(arguments)\\b([^%]*)\n\t\t\t\t\t\t\t\t\t\\s*\n\t\t\t\t\t\t\t\t\t(\t\t\t\t\t\t\t\t\t# Optional attributes\n\t\t\t\t\t\t\t\t\t\t\\( [^)]* \\)\n\t\t\t\t\t\t\t\t\t)?\n\t\t\t\t\t\t\t\t\t\\s*($|(?=%))\n\t\t\t\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"keyword.operator.other.matlab","match":"(?\u003c=\\w)\\.\\?(?=\\w)"},{"include":"#validators"},{"include":"$self"}],"beginCaptures":{"2":{"name":"keyword.control.arguments.matlab"},"3":{"name":"meta.arguments.declaration.matlab","patterns":[{"name":"punctuation.section.parens.begin.matlab","match":"\\("},{"name":"storage.modifier.arguments.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"name":"punctuation.section.parens.end.matlab","match":"\\)"}]}},"endCaptures":{"1":{"name":"keyword.control.end.arguments.matlab"}}},{"include":"$self"}],"beginCaptures":{"2":{"name":"storage.type.function.matlab"}},"endCaptures":{"1":{"name":"storage.type.function.end.matlab"}}}]},"function_call":{"name":"meta.function-call.parens.matlab","begin":"([a-zA-Z][a-zA-Z0-9_]*)\\s*(\\()","patterns":[{"include":"#end_in_parentheses"},{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"1":{"name":"entity.name.function.matlab","patterns":[{"include":"$self"}]},"2":{"name":"punctuation.section.parens.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.parens.end.matlab"}}},"global_persistent":{"match":"^\\s*(global|persistent)\\b","captures":{"1":{"name":"storage.modifier.matlab"}}},"import":{"name":"meta.import.matlab","match":"\\b(import)\\b[^\\S\\n]+([a-zA-Z0-9.\\*]*)[^\\S\\n]*(?=;|%|$)","captures":{"1":{"name":"keyword.other.import.matlab"},"2":{"name":"entity.name.namespace.matlab","patterns":[{"name":"entity.name.module.matlab","match":"\\w+"},{"name":"punctuation.separator.matlab","match":"\\."},{"name":"variable.language.wildcard.matlab","match":"\\*"}]}}},"indexing_by_expression":{"contentName":"meta.parens.matlab","begin":"([a-zA-Z][a-zA-Z0-9_]*)\\s*(\\.)(\\()","patterns":[{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"1":{"name":"variable.other.readwrite.matlab"},"2":{"name":"punctuation.accessor.dot.matlab"},"3":{"name":"punctuation.section.parens.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.parens.end.matlab"}}},"indexing_curly_brackets":{"begin":"([a-zA-Z][a-zA-Z0-9_\\.]*\\s*)\\{","patterns":[{"include":"#end_in_parentheses"},{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"1":{"patterns":[{"include":"#variables"}]}}},"line_continuation":{"name":"meta.continuation.line.matlab","match":"(\\.{3})(.*)$","captures":{"1":{"name":"punctuation.separator.continuation.line.matlab"},"2":{"name":"comment.continuation.line.matlab"}}},"multiple_assignment":{"contentName":"meta.assignment.variable.group.matlab","begin":"\\[(?=[^\\]]+\\]\\s*=[a-zA-Z0-9_\\s(])","end":"\\]","patterns":[{"name":"variable.language.anonymous.matlab","match":"(?\u003c=[\\[,])\\s{0,4}~\\s{0,4}(?=[\\],])"},{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"0":{"name":"punctuation.section.assignment.group.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.assignment.group.end.matlab"}}},"numbers":{"patterns":[{"name":"constant.numeric.decimal.matlab","match":"(?\u003c=[\\s\\+\\-\\*\\/\\\\=:\\[\\(\\{,^]|^)\\d*\\.?\\d+([eE][+-]?\\d)?([0-9\u0026\u0026[^\\.]])*(i|j)?\\b","captures":{"3":{"name":"storage.type.number.imaginary.matlab"}}},{"name":"constant.numeric.hex.matlab","match":"(?\u003c=[\\s\\+\\-\\*\\/\\\\=:\\[\\(\\{,^]|^)0[xX][[:xdigit:]]+([su](?:8|16|32|64))?\\b","captures":{"1":{"name":"storage.type.number.hex.matlab"}}},{"name":"constant.numeric.binary.matlab","match":"(?\u003c=[\\s\\+\\-\\*\\/\\\\=:\\[\\(\\{,^]|^)0[bB][10]+([su](?:8|16|32|64))?\\b","captures":{"1":{"name":"storage.type.number.binary.matlab"}}}]},"operators":{"patterns":[{"name":"keyword.operator.storage.at.matlab","match":"(?\u003c!\\w)@(?=\\s{,4}\\w)"},{"name":"keyword.operator.other.question.matlab","match":"(?\u003c!\\w)\\?(?=\\w)"},{"name":"keyword.operator.arithmetic.matlab","match":"(?\u003c=[a-zA-Z0-9\\s])(\\+|-|\\*|\\.\\*|/|\\./|\\\\|\\.\\\\|\\^|\\.\\^)(?=[a-zA-Z0-9\\s]|(?:\\.{3}))"},{"name":"keyword.operator.logical.matlab","match":"(?\u003c=[a-zA-Z0-9\\s])(==|~=|\u0026|\u0026\u0026|\\||\\|\\|)(?=[a-zA-Z0-9\\s]|(?:\\.{3}))"},{"name":"keyword.operator.assignment.matlab","match":"(?\u003c=[a-zA-Z0-9\\s])(=)(?!=)"},{"name":"keyword.operator.vector.colon.matlab","match":"(?\u003c=[a-zA-Z0-9_\\s(){,]|^):(?=[a-zA-Z0-9_\\s()},]|$||(?:\\.{3}))"},{"name":"keyword.operator.relational.matlab","match":"(?\u003c=[a-zA-Z0-9\\s])(\u003e|\u003e=|\u003c|\u003c=)(?=[a-zA-Z0-9\\s]|(?:\\.{3}))"}]},"parentheses":{"contentName":"meta.parens.matlab","begin":"\\(","patterns":[{"include":"#end_in_parentheses"},{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"0":{"name":"punctuation.section.parens.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.parens.end.matlab"}}},"property":{"name":"variable.other.property.matlab","match":"(?\u003c=\\.)[a-zA-Z][a-zA-Z0-9_]*(?![a-zA-Z0-9_]|(?:\\(|\\{|\\.\\())"},"property_access":{"name":"punctuation.accessor.dot.matlab","match":"\\."},"punctuation":{"patterns":[{"name":"punctuation.accessor.dot.matlab","match":"(?\u003c=\\w)\\.(?!\\()"},{"name":"punctuation.separator.comma.matlab","match":","},{"name":"punctuation.terminator.semicolon.matlab","match":";(?=\\s|$)"}]},"readwrite_operations":{"match":"(?\u003c![a-zA-Z0-9_]|\\.)[a-zA-Z][a-zA-Z0-9_]*(?:\\.[a-zA-Z][a-zA-Z0-9_]*)*(?![a-zA-Z0-9_]|(?:\\(|\\{|\\.\\())","captures":{"0":{"patterns":[{"include":"#property"},{"include":"#readwrite_variable"},{"include":"#property_access"}]}}},"readwrite_variable":{"name":"variable.other.readwrite.matlab","match":"(?\u003c![a-zA-Z0-9_]|\\.)[a-zA-Z][a-zA-Z0-9_]*(?![a-zA-Z0-9_]|(?:\\(|\\{|\\.\\())"},"rules_after_command_dual":{"patterns":[{"include":"#string"},{"include":"#line_continuation"},{"include":"#comments"},{"include":"#conjugate_transpose"},{"include":"#transpose"},{"include":"#constants"},{"include":"#variables"},{"include":"#numbers"},{"include":"#operators"},{"include":"#punctuation"}]},"rules_before_command_dual":{"patterns":[{"include":"#classdef"},{"include":"#function"},{"include":"#blocks"},{"include":"#control_statements"},{"include":"#global_persistent"},{"include":"#import"},{"include":"#superclass_method_call"},{"include":"#anonymous_function"},{"include":"#function_call"},{"include":"#parentheses"},{"include":"#indexing_curly_brackets"},{"include":"#indexing_by_expression"},{"include":"#multiple_assignment"},{"include":"#single_assignment"},{"include":"#square_brackets"},{"include":"#curly_brackets"}]},"shell_string":{"match":"^\\s*((!)(.*)$\\n?)","captures":{"1":{"name":"meta.interpolation.shell.matlab"},"2":{"name":"punctuation.section.interpolation.begin.matlab"},"3":{"name":"source.shell.embedded.matlab","patterns":[{"include":"source.shell"}]}}},"single_assignment":{"match":"(?\u003c=^|,|;|for)\\s*([a-zA-Z][a-zA-Z0-9_.]*)(?=\\s*=)","captures":{"1":{"name":"meta.assignment.variable.single.matlab","patterns":[{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}]}}},"square_brackets":{"contentName":"meta.brackets.matlab","begin":"\\[(?![^\\]]+\\]\\s{,4}=)","end":"\\]","patterns":[{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"0":{"name":"punctuation.section.brackets.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.brackets.end.matlab"}}},"string":{"patterns":[{"include":"#shell_string"},{"include":"#string_quoted_single"},{"include":"#string_quoted_double"}]},"string_quoted_double":{"name":"string.quoted.double.matlab","begin":"((?\u003c=(\\[|\\(|\\{|=|\\s|;|:|,|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|\\/|\\\\|\\.|\\^))|^)\"","end":"\"(?=(\\[|\\(|\\{|\\]|\\)|\\}|=|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|\\/|\\\\|\\.|\\^|\\||\\s|;|:|,)|$)","patterns":[{"name":"constant.character.escape.matlab","match":"\"\""},{"name":"invalid.illegal.unescaped-quote.matlab","match":"\"(?=.)"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.matlab"}}},"string_quoted_single":{"name":"string.quoted.single.matlab","begin":"((?\u003c=(\\[|\\(|\\{|=|\\s|;|:|,|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|/|\\\\|\\.|\\^))|^)'","end":"'(?=(\\[|\\(|\\{|\\]|\\)|\\}|=|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|/|\\\\|\\.|\\^|\\s|;|:|,)|$)","patterns":[{"name":"constant.character.escape.matlab","match":"''"},{"name":"invalid.illegal.unescaped-quote.matlab","match":"'(?=.)"},{"name":"constant.character.escape.matlab","match":"((\\%([\\+\\-0]?\\d{0,3}(\\.\\d{1,3})?)(c|d|e|E|f|g|i|G|s|((b|t)?(o|u|x|X))))|\\%\\%|\\\\(b|f|n|r|t|\\\\))"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.matlab"}}},"superclass_method_call":{"name":"meta.method-call.parens.matlab","begin":"([a-zA-Z][a-zA-Z0-9_]*)(@)\\s*([a-zA-Z][a-zA-Z0-9_]*(?:\\.[a-zA-Z][a-zA-Z0-9_]*)*)(\\()","patterns":[{"include":"#end_in_parentheses"},{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"1":{"name":"entity.name.function.matlab","patterns":[{"include":"$self"}]},"2":{"name":"punctuation.accessor.scope-resolution.superclass.matlab"},"3":{"patterns":[{"name":"entity.name.type.class.matlab","match":"(\\w+)(?=\\s*\\z)"},{"match":"([a-zA-Z][a-zA-Z0-9_]*)(\\.)","captures":{"1":{"name":"entity.name.module.matlab"},"2":{"name":"punctuation.accessor.dot.matlab"}}},{"include":"$self"}]},"4":{"name":"punctuation.section.parens.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.parens.end.matlab"}}},"transpose":{"name":"keyword.operator.transpose.matlab","match":"\\.'"},"validator_strings":{"patterns":[{"patterns":[{"name":"string.quoted.single.matlab","begin":"((?\u003c=(\\[|\\(|\\{|=|\\s|;|:|,|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|\\/|\\\\|\\.|\\^))|^)'","end":"'(?=(\\[|\\(|\\{|\\]|\\)|\\}|=|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|\\/|\\\\|\\.|\\^|\\s|;|:|,)|$)","patterns":[{"match":"''"},{"match":"'(?=.)"},{"match":"([^']+)"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.matlab"}}},{"name":"string.quoted.double.matlab","begin":"((?\u003c=(\\[|\\(|\\{|=|\\s|;|:|,|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|\\/|\\\\|\\.|\\^))|^)\"","end":"\"(?=(\\[|\\(|\\{|\\]|\\)|\\}|=|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|\\/|\\\\|\\.|\\^|\\||\\s|;|:|,)|$|\\z)","patterns":[{"match":"\"\""},{"match":"\"(?=.)"},{"match":"[^\"]+"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.matlab"}}}]}]},"validators":{"name":"meta.assignment.definition.property.matlab","begin":"\\s*[;]?\\s*([a-zA-Z][a-zA-Z0-9_\\.\\?]*)","end":"([;\\n%=].*)","patterns":[{"include":"#line_continuation"},{"match":"\\s*(\\()([^\\)]*)(\\))","captures":{"1":{"name":"punctuation.section.parens.begin.matlab"},"2":{"name":"meta.parens.size.matlab","patterns":[{"include":"#numbers"},{"include":"#operators"},{"include":"#punctuation"}]},"3":{"name":"punctuation.section.parens.end.matlab"}}},{"name":"storage.type.matlab","match":"[a-zA-Z][a-zA-Z0-9_\\.]*"},{"include":"#braced_validator_list"}],"beginCaptures":{"1":{"name":"variable.object.property.matlab"}},"endCaptures":{"1":{"patterns":[{"match":"([%].*)","captures":{"1":{"patterns":[{"include":"$self"}]}}},{"match":"(=[^;]*)","captures":{"1":{"patterns":[{"include":"$self"}]}}},{"match":"([\\n;]\\s*[a-zA-Z].*)","captures":{"1":{"patterns":[{"include":"#validators"}]}}},{"include":"$self"}]}}},"variables":{"name":"variable.language.function.matlab","match":"(?\u003c!\\.)\\b(nargin|nargout|varargin|varargout)\\b"}},"injections":{"source.matlab -comment -entity -support -string -variable -interpolation -source.shell":{"patterns":[{"include":"#readwrite_operations"}]}}}
1
+ {"name":"MATLAB","scopeName":"source.matlab","patterns":[{"include":"#rules_before_command_dual"},{"include":"#command_dual"},{"include":"#rules_after_command_dual"}],"repository":{"anonymous_function":{"name":"meta.function.anonymous.matlab","begin":"(@)[^\\S\\n]*(?=\\()","patterns":[{"name":"meta.parameters.matlab","begin":"\\G(\\()","end":"\\)","patterns":[{"name":"variable.parameter.input.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"name":"punctuation.separator.parameter.comma.matlab","match":","},{"include":"#line_continuation"}],"beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.definition.parameters.end.matlab"}}},{"name":"meta.parameters.matlab","begin":"(?\u003c=\\))[^\\S\\n]*(\\()?","patterns":[{"include":"$self"},{"include":"#line_continuation"}],"beginCaptures":{"1":{"name":"punctuation.section.group.begin.matlab"}},"endCaptures":{"1":{"name":"punctuation.section.group.end.matlab"}}},{"include":"#line_continuation"}],"beginCaptures":{"1":{"name":"punctuation.definition.function.anonymous.matlab"}}},"blocks":{"patterns":[{"name":"meta.for.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(for)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.for.declaration.matlab","begin":"\\G(?!$)","patterns":[{"include":"$self"}]},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.for.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.for.matlab"}}},{"name":"meta.if.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(if)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.if.declaration.matlab","begin":"\\G(?!$)","patterns":[{"include":"$self"}]},{"name":"meta.elseif.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(elseif)\\b","end":"\\s*(?\u003c=^|[\\s,;])(?=elseif|else|end)\\b","patterns":[{"name":"meta.elseif.declaration.matlab","begin":"\\G(?!$)","patterns":[{"include":"$self"}]},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.elseif.matlab"}}},{"name":"meta.else.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(else)\\b","end":"\\s*(?\u003c=^|[\\s,;])(?=end)\\b","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.else.matlab"}}},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.if.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.if.matlab"},"2":{"patterns":[{"include":"$self"}]}}},{"name":"meta.for.parallel.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(parfor)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.for.parallel.declaration.matlab","begin":"\\G(?!$)","patterns":[{"include":"$self"}]},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.for.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.for.matlab"}}},{"name":"meta.repeat.parallel.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(spmd)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.repeat.parallel.declaration.matlab","begin":"\\G(?!$)","patterns":[{"include":"$self"}]},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.repeat.parallel.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.repeat.parallel.matlab"}}},{"name":"meta.switch.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(switch)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.switch.declaration.matlab","begin":"\\G(?!$)","patterns":[{"include":"$self"}]},{"name":"meta.case.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(case)\\b","end":"\\s*(?\u003c=^|[\\s,;])(?=case|otherwise|end)\\b","patterns":[{"name":"meta.case.declaration.matlab","begin":"\\G(?!$)","patterns":[{"include":"$self"}]},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.switch.case.matlab"}}},{"name":"meta.otherwise.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(otherwise)\\b","end":"\\s*(?\u003c=^|[\\s,;])(?=end)\\b","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.switch.otherwise.matlab"}}},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.switch.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.switch.matlab"},"2":{"patterns":[{"include":"$self"}]}}},{"name":"meta.try.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(try)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.catch.matlab","match":"(\\s*)(?\u003c=^|[\\s,;])(catch)\\b\\s*(\\w+)?","captures":{"2":{"name":"keyword.control.catch.matlab"},"3":{"name":"variable.other.constant.matlab"}}},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.try.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.try.matlab"}}},{"name":"meta.while.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(while)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.while.declaration.matlab","begin":"\\G(?!$)","patterns":[{"include":"$self"}]},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.while.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.while.matlab"}}}]},"braced_validator_list":{"contentName":"meta.block.validation.matlab","begin":"\\s*({)\\s*","end":"}","patterns":[{"include":"#function_call"},{"include":"#braced_validator_list"},{"include":"#validator_strings"},{"include":"#line_continuation"},{"name":"punctuation.accessor.dot.matlab","match":"\\."}],"beginCaptures":{"1":{"name":"punctuation.section.block.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.block.end.matlab"}}},"classdef":{"patterns":[{"name":"meta.class.matlab","begin":"(?x)\n\t\t\t\t\t\t\t^\\s* \t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t(classdef)\n\t\t\t\t\t\t\t\\s*\n\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.class.declaration.matlab","begin":"\\G","end":"(?\u003c!\\.{3})(?=\\n)","patterns":[{"name":"storage.modifier.section.class.matlab","begin":"\\G\\(","end":"\\)(?=\\s*\\w+)","patterns":[{"name":"punctuation.separator.modifier.comma.matlab","match":","},{"name":"storage.modifier.class.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"begin":"(=)\\s*","end":"(?=\\)|,)","patterns":[{"name":"constant.language.boolean.matlab","match":"true|false"},{"name":"keyword.operator.other.question.matlab","match":"(?\u003c!\\w)\\?(?=\\w)"},{"include":"#metaclass_literal"},{"include":"#string"},{"include":"#curly_brackets"},{"include":"#line_continuation"}],"beginCaptures":{"1":{"name":"keyword.operator.assignment.matlab"}}},{"include":"#comments"},{"include":"#line_continuation"}]},{"begin":"\\s*(\\w+)","end":"(?\u003c!\\.{3})(?=\\s*%|\\n)","patterns":[{"begin":"\\G","end":"(?\u003c!\\.{3})(?=\\n)","patterns":[{"include":"#comments"},{"include":"#line_continuation"},{"name":"punctuation.separator.lt.inheritance.matlab","match":"\u003c"},{"name":"meta.inherited-class.matlab","begin":"(?\u003c!\\.)\\b(?=[a-zA-Z])","end":"(?\u003c=[a-zA-Z0-9_])(?!\\.)","patterns":[{"name":"entity.other.inherited-class.matlab","match":"(?\u003c=[\\s.\u003c])[a-zA-Z][a-zA-Z0-9_]*(?=\\s|$)"},{"name":"entity.name.namespace.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"name":"punctuation.accessor.dot.matlab","match":"\\."}]},{"name":"keyword.operator.type.matlab","match":"\u0026"}]},{"include":"#comments"},{"include":"#line_continuation"}],"beginCaptures":{"1":{"name":"entity.name.type.class.matlab"}}},{"include":"#comments"}]},{"name":"meta.properties.matlab","begin":"(?x)\n\t\t\t\t\t\t\t\t\t(^\\s*)\t\t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t\t\t(properties)\\b([^%]*)\n\t\t\t\t\t\t\t\t\t\\s*\n\t\t\t\t\t\t\t\t\t(\t\t\t\t\t\t\t\t\t# Optional attributes\n\t\t\t\t\t\t\t\t\t\t\\( [^)]* \\)\n\t\t\t\t\t\t\t\t\t)?\n\t\t\t\t\t\t\t\t\t\\s*($|(?=%))\n\t\t\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"include":"#validators"},{"include":"$self"}],"beginCaptures":{"2":{"name":"keyword.control.properties.matlab"},"3":{"patterns":[{"name":"storage.modifier.properties.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"begin":"(=)\\s*","end":",|(?=\\))","patterns":[{"name":"constant.language.boolean.matlab","match":"true|false"},{"name":"storage.modifier.access.matlab","match":"public|protected|private"}],"beginCaptures":{"1":{"name":"keyword.operator.assignment.matlab"}}}]}},"endCaptures":{"1":{"name":"keyword.control.end.properties.matlab"}}},{"name":"meta.methods.matlab","begin":"(?x)\n\t\t\t\t\t\t\t\t\t(^\\s*)\t\t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t\t\t(methods)\\b([^%]*)\n\t\t\t\t\t\t\t\t\t\\s*\n\t\t\t\t\t\t\t\t\t(\t\t\t\t\t\t\t\t\t# Optional attributes\n\t\t\t\t\t\t\t\t\t\t\\( [^)]* \\)\n\t\t\t\t\t\t\t\t\t)?\n\t\t\t\t\t\t\t\t\t\\s*($|(?=%))\n\t\t\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"include":"$self"}],"beginCaptures":{"2":{"name":"keyword.control.methods.matlab"},"3":{"patterns":[{"name":"storage.modifier.methods.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"begin":"=\\s*","end":",|(?=\\))","patterns":[{"name":"constant.language.boolean.matlab","match":"true|false"},{"name":"storage.modifier.access.matlab","match":"public|protected|private"}]}]}},"endCaptures":{"1":{"name":"keyword.control.end.methods.matlab"}}},{"name":"meta.events.matlab","begin":"(?x)\n\t\t\t\t\t\t\t\t\t(^\\s*)\t\t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t\t\t(events)\\b([^%]*)\n\t\t\t\t\t\t\t\t\t\\s*\n\t\t\t\t\t\t\t\t\t(\t\t\t\t\t\t\t\t\t# Optional attributes\n\t\t\t\t\t\t\t\t\t\t\\( [^)]* \\)\n\t\t\t\t\t\t\t\t\t)?\n\t\t\t\t\t\t\t\t\t\\s*($|(?=%))\n\t\t\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.assignment.definition.event.matlab","match":"(?:^\\s*|,\\s*)([a-zA-Z0-9_]+)","captures":{"1":{"name":"entity.name.type.event.matlab"}}},{"include":"$self"}],"beginCaptures":{"2":{"name":"keyword.control.events.matlab"},"3":{"patterns":[{"name":"variable.parameter.events.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"begin":"=\\s*","end":",|(?=\\))","patterns":[{"name":"constant.language.boolean.matlab","match":"true|false"},{"name":"storage.modifier.access.matlab","match":"public|protected|private"}]}]}},"endCaptures":{"1":{"name":"keyword.control.end.events.matlab"}}},{"name":"meta.enum.matlab","begin":"(?x)\n\t\t\t\t\t\t\t\t\t(^\\s*)\t\t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t\t\t(enumeration)\\b([^%]*)\n\t\t\t\t\t\t\t\t\t\\s*($|(?=%))\n\t\t\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.assignment.definition.enummember.matlab","match":"(?:^\\s*|,\\s*)([a-zA-Z0-9_]+)","captures":{"1":{"name":"variable.other.enummember.matlab"}}},{"name":"punctuation.separator.comma.matlab","match":","},{"include":"#parentheses"},{"include":"#comments"}],"beginCaptures":{"2":{"name":"keyword.control.enum.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.enum.matlab"}}},{"include":"#comments"}],"beginCaptures":{"1":{"name":"storage.type.class.matlab"}},"endCaptures":{"1":{"name":"storage.type.class.end.matlab"}}}]},"command_dual":{"name":"meta.function-call.command.matlab","match":"(?\u003c=^|[^.]\\n|;|,|=)([^\\S\\n]*)(?# A\u003e )(\\b\\w+\\b)([^\\S\\n]+)(?# B\u003e )((?!(\\+|-|\\*|\\.\\*|\\/|\\.\\/|\\\\|\\.\\\\|\\^|\\.\\^|==|~=|\u0026|\u0026\u0026|\\||\\|\\||=|:|\u003e|\u003e=|\u003c|\u003c=|\\.{3})[^\\S\\n]?)[^\\s({=;%][^\\n;%]*)","captures":{"2":{"name":"entity.name.function.command.matlab","patterns":[{"include":"$self"}]},"4":{"name":"string.unquoted.matlab","patterns":[{"include":"#string_quoted_single"}]}}},"comment_block":{"name":"comment.block.percentage.matlab","begin":"(^[\\s]*)(%\\{)[^\\S\\n]*+\\n","end":"(^[\\s]*)(%\\})[^\\S\\n]*+(?:\\n|$)","patterns":[{"include":"#comment_block"},{"match":"^[^\\n]*\\n"}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.matlab"},"2":{"name":"punctuation.definition.comment.begin.matlab"}},"endCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.matlab"},"2":{"name":"punctuation.definition.comment.end.matlab"}}},"comments":{"patterns":[{"begin":"(^[ \\t]+)?(?=%%\\s)","end":"\\Z","patterns":[{"name":"comment.line.double-percentage.matlab","begin":"%%","end":"\\n","patterns":[{"contentName":"entity.name.section.matlab","begin":"\\G[^\\S\\n]*(?![\\n\\s])","end":"(?=\\n)","beginCaptures":{"0":{"name":"punctuation.whitespace.comment.leading.matlab"}}}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.matlab"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.matlab"}}},{"include":"#comment_block"},{"begin":"(^[ \\t]+)?(?=%)","end":"\\Z","patterns":[{"name":"comment.line.percentage.matlab","begin":"%","end":"\\Z","beginCaptures":{"0":{"name":"punctuation.definition.comment.matlab"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.matlab"}}}]},"conjugate_transpose":{"name":"keyword.operator.transpose.matlab","match":"((?\u003c=[^\\s])|(?\u003c=\\])|(?\u003c=\\))|(?\u003c=\\}))'"},"constants":{"patterns":[{"name":"constant.numeric.matlab","match":"(?\u003c!\\.)\\b(eps|Inf|inf|intmax|intmin|namelengthmax|realmax|realmin|pi)\\b"},{"name":"constant.language.nan.matlab","match":"(?\u003c!\\.)\\b(NaN|nan|NaT|nat)\\b"},{"name":"constant.language.boolean.matlab","match":"(?\u003c!\\.)\\b(on|off|false|true)\\b"}]},"control_statements":{"name":"meta.control.matlab","match":"\\s*(?\u003c=^|[\\s,;])(break|continue|return)\\b","captures":{"1":{"name":"keyword.control.flow.matlab"}}},"curly_brackets":{"contentName":"meta.cell.literal.matlab","begin":"\\{","end":"\\}","patterns":[{"include":"#end_in_parentheses"},{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"0":{"name":"punctuation.section.braces.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.braces.end.matlab"}}},"end_in_parentheses":{"name":"keyword.operator.word.matlab","match":"\\bend\\b"},"function":{"patterns":[{"name":"meta.function.matlab","begin":"(?x)\n\t\t\t\t\t\t\t(^\\s*)\t\t\t\t\t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t(function)\n\t\t\t\t\t\t\t\\s+\n\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b(\\s*\\n)?","patterns":[{"name":"meta.function.declaration.matlab","begin":"\\G","patterns":[{"contentName":"meta.assignment.variable.output.matlab","begin":"\\G(?=[^\\(]*?(?:=|\\[|\\.{3}))","end":"\\s*(=)\\s*","patterns":[{"name":"punctuation.section.assignment.group.begin.matlab","match":"\\G\\["},{"match":"(\\])\\s*","captures":{"1":{"name":"punctuation.section.assignment.group.end.matlab"}}},{"name":"variable.parameter.output.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"name":"punctuation.separator.parameter.comma.matlab","match":","},{"include":"#line_continuation"},{"include":"#comments"}],"endCaptures":{"1":{"name":"keyword.operator.assignment.matlab"}}},{"name":"entity.name.function.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*(?\u003e\\.[a-zA-Z0-9_]+)*","patterns":[{"name":"punctuation.accessor.dot.matlab","match":"\\."},{"include":"#line_continuation"}]},{"name":"meta.parameters.matlab","begin":"\\s*\\(","end":"\\)","patterns":[{"name":"variable.parameter.input.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"name":"variable.language.anonymous.matlab","match":"~"},{"name":"punctuation.separator.parameter.comma.matlab","match":","},{"include":"#comments"},{"include":"#line_continuation"}],"beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.definition.parameters.end.matlab"}}},{"include":"#line_continuation"},{"include":"#comments"}]},{"name":"meta.arguments.matlab","begin":"(?x)\n\t\t\t\t\t\t\t\t\t(^\\s*)\t\t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t\t\t(arguments)\\b([^%]*)\n\t\t\t\t\t\t\t\t\t\\s*\n\t\t\t\t\t\t\t\t\t(\t\t\t\t\t\t\t\t\t# Optional attributes\n\t\t\t\t\t\t\t\t\t\t\\( [^)]* \\)\n\t\t\t\t\t\t\t\t\t)?\n\t\t\t\t\t\t\t\t\t\\s*($|(?=%))\n\t\t\t\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"keyword.operator.other.matlab","match":"(?\u003c=\\w)\\.\\?(?=\\w)"},{"include":"#validators"},{"include":"$self"}],"beginCaptures":{"2":{"name":"keyword.control.arguments.matlab"},"3":{"name":"meta.arguments.declaration.matlab","patterns":[{"name":"punctuation.section.parens.begin.matlab","match":"\\("},{"name":"storage.modifier.arguments.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"name":"punctuation.section.parens.end.matlab","match":"\\)"}]}},"endCaptures":{"1":{"name":"keyword.control.end.arguments.matlab"}}},{"include":"$self"}],"beginCaptures":{"2":{"name":"storage.type.function.matlab"}},"endCaptures":{"1":{"name":"storage.type.function.end.matlab"}}}]},"function_call":{"name":"meta.function-call.parens.matlab","begin":"([a-zA-Z][a-zA-Z0-9_]*)\\s*(\\()","patterns":[{"include":"#end_in_parentheses"},{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"1":{"name":"entity.name.function.matlab","patterns":[{"include":"$self"}]},"2":{"name":"punctuation.section.parens.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.parens.end.matlab"}}},"global_persistent":{"match":"^\\s*(global|persistent)\\b","captures":{"1":{"name":"storage.modifier.matlab"}}},"import":{"name":"meta.import.matlab","match":"[^\\S\\r\\n]*\\b(import)\\b[^\\S\\n]+([a-zA-Z0-9.\\*]*)[^\\S\\n]*(?=;|%|$)","captures":{"1":{"name":"keyword.other.import.matlab"},"2":{"name":"entity.name.namespace.matlab","patterns":[{"name":"entity.name.module.matlab","match":"\\w+"},{"name":"punctuation.separator.matlab","match":"\\."},{"name":"variable.language.wildcard.matlab","match":"\\*"}]}}},"indexing_by_expression":{"contentName":"meta.parens.matlab","begin":"([a-zA-Z][a-zA-Z0-9_]*)\\s*(\\.)(\\()","patterns":[{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"1":{"name":"variable.other.readwrite.matlab"},"2":{"name":"punctuation.accessor.dot.matlab"},"3":{"name":"punctuation.section.parens.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.parens.end.matlab"}}},"indexing_curly_brackets":{"begin":"([a-zA-Z][a-zA-Z0-9_\\.]*\\s*)\\{","patterns":[{"include":"#end_in_parentheses"},{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"1":{"patterns":[{"include":"#variables"}]}}},"line_continuation":{"name":"meta.continuation.line.matlab","match":"(\\.{3})(.*)$","captures":{"1":{"name":"punctuation.separator.continuation.line.matlab"},"2":{"name":"comment.continuation.line.matlab"}}},"metaclass_literal":{"name":"meta.metaclass.matlab","begin":"(?\u003c=\\?)(?=[a-zA-Z])","end":"(?\u003c=[a-zA-Z0-9_])(?![a-zA-Z0-9_]|\\.|\\(|{)","patterns":[{"name":"entity.other.class.matlab","match":"(?\u003c=[.\\?])[a-zA-Z][a-zA-Z0-9_]*(?![a-zA-Z0-9_.])"},{"name":"entity.name.namespace.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"}]},"multiple_assignment":{"contentName":"meta.assignment.variable.group.matlab","begin":"\\[(?=[^\\]]+\\]\\s*=[a-zA-Z0-9_\\s(])","end":"\\]","patterns":[{"name":"variable.language.anonymous.matlab","match":"(?\u003c=[\\[,])\\s{0,4}~\\s{0,4}(?=[\\],])"},{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"0":{"name":"punctuation.section.assignment.group.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.assignment.group.end.matlab"}}},"numbers":{"patterns":[{"name":"constant.numeric.decimal.matlab","match":"(?\u003c=[\\s\\+\\-\\*\\/\\\\=:\\[\\(\\{,^]|^)\\d*\\.?\\d+([eE][+-]?\\d)?([0-9\u0026\u0026[^\\.]])*(i|j)?\\b","captures":{"3":{"name":"storage.type.number.imaginary.matlab"}}},{"name":"constant.numeric.hex.matlab","match":"(?\u003c=[\\s\\+\\-\\*\\/\\\\=:\\[\\(\\{,^]|^)0[xX][[:xdigit:]]+([su](?:8|16|32|64))?\\b","captures":{"1":{"name":"storage.type.number.hex.matlab"}}},{"name":"constant.numeric.binary.matlab","match":"(?\u003c=[\\s\\+\\-\\*\\/\\\\=:\\[\\(\\{,^]|^)0[bB][10]+([su](?:8|16|32|64))?\\b","captures":{"1":{"name":"storage.type.number.binary.matlab"}}}]},"operators":{"patterns":[{"name":"keyword.operator.storage.at.matlab","match":"(?\u003c!\\w)@(?=\\s{,4}\\w)"},{"name":"keyword.operator.other.question.matlab","match":"(?\u003c!\\w)\\?(?=\\w)"},{"name":"keyword.operator.arithmetic.matlab","match":"(?\u003c=[a-zA-Z0-9\\s])(\\+|-|\\*|\\.\\*|/|\\./|\\\\|\\.\\\\|\\^|\\.\\^)(?=[a-zA-Z0-9\\s]|(?:\\.{3}))"},{"name":"keyword.operator.logical.matlab","match":"(?\u003c=[a-zA-Z0-9\\s])(==|~=|\u0026|\u0026\u0026|\\||\\|\\|)(?=[a-zA-Z0-9\\s]|(?:\\.{3}))"},{"name":"keyword.operator.assignment.matlab","match":"(?\u003c=[a-zA-Z0-9\\s])(=)(?!=)"},{"name":"keyword.operator.vector.colon.matlab","match":"(?\u003c=[a-zA-Z0-9_\\s(){,]|^):(?=[a-zA-Z0-9_\\s()},]|$||(?:\\.{3}))"},{"name":"keyword.operator.relational.matlab","match":"(?\u003c=[a-zA-Z0-9\\s])(\u003e|\u003e=|\u003c|\u003c=)(?=[a-zA-Z0-9\\s]|(?:\\.{3}))"}]},"parentheses":{"contentName":"meta.parens.matlab","begin":"\\(","patterns":[{"include":"#end_in_parentheses"},{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"0":{"name":"punctuation.section.parens.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.parens.end.matlab"}}},"property":{"name":"variable.other.property.matlab","match":"(?\u003c=\\.)[a-zA-Z][a-zA-Z0-9_]*(?![a-zA-Z0-9_]|(?:\\(|\\{|\\.\\())"},"property_access":{"name":"punctuation.accessor.dot.matlab","match":"\\."},"punctuation":{"patterns":[{"name":"punctuation.accessor.dot.matlab","match":"(?\u003c=\\w)\\.(?!\\()"},{"name":"punctuation.separator.comma.matlab","match":","},{"name":"punctuation.terminator.semicolon.matlab","match":";(?=\\s|$)"}]},"readwrite_operations":{"match":"(?\u003c![a-zA-Z0-9_]|\\.)[a-zA-Z][a-zA-Z0-9_]*(?:\\.[a-zA-Z][a-zA-Z0-9_]*)*(?![a-zA-Z0-9_]|(?:\\(|\\{|\\.\\())","captures":{"0":{"patterns":[{"include":"#property"},{"include":"#readwrite_variable"},{"include":"#property_access"}]}}},"readwrite_variable":{"name":"variable.other.readwrite.matlab","match":"(?\u003c![a-zA-Z0-9_]|\\.|\\?)[a-zA-Z][a-zA-Z0-9_]*(?![a-zA-Z0-9_]|(?:\\(|\\{|\\.\\())"},"rules_after_command_dual":{"patterns":[{"include":"#string"},{"include":"#line_continuation"},{"include":"#comments"},{"include":"#conjugate_transpose"},{"include":"#transpose"},{"include":"#constants"},{"include":"#variables"},{"include":"#numbers"},{"include":"#operators"},{"include":"#punctuation"}]},"rules_before_command_dual":{"patterns":[{"include":"#classdef"},{"include":"#function"},{"include":"#blocks"},{"include":"#control_statements"},{"include":"#global_persistent"},{"include":"#import"},{"include":"#superclass_method_call"},{"include":"#anonymous_function"},{"include":"#function_call"},{"include":"#parentheses"},{"include":"#indexing_curly_brackets"},{"include":"#indexing_by_expression"},{"include":"#multiple_assignment"},{"include":"#single_assignment"},{"include":"#square_brackets"},{"include":"#curly_brackets"},{"include":"#metaclass_literal"}]},"shell_string":{"match":"^\\s*((!)(.*)$\\n?)","captures":{"1":{"name":"meta.interpolation.shell.matlab"},"2":{"name":"punctuation.section.interpolation.begin.matlab"},"3":{"name":"source.shell.embedded.matlab","patterns":[{"include":"source.shell"}]}}},"single_assignment":{"match":"(?\u003c=^|,|;|for)\\s*([a-zA-Z][a-zA-Z0-9_.]*)(?=\\s*=)","captures":{"1":{"name":"meta.assignment.variable.single.matlab","patterns":[{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}]}}},"square_brackets":{"contentName":"meta.brackets.matlab","begin":"\\[(?![^\\]]+\\]\\s{,4}=)","end":"\\]","patterns":[{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"0":{"name":"punctuation.section.brackets.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.brackets.end.matlab"}}},"string":{"patterns":[{"include":"#shell_string"},{"include":"#string_quoted_single"},{"include":"#string_quoted_double"}]},"string_quoted_double":{"name":"string.quoted.double.matlab","begin":"((?\u003c=(\\[|\\(|\\{|=|\\s|;|:|,|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|\\/|\\\\|\\.|\\^))|^)\"","end":"\"(?=(\\[|\\(|\\{|\\]|\\)|\\}|=|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|\\/|\\\\|\\.|\\^|\\||\\s|;|:|,)|$)","patterns":[{"name":"constant.character.escape.matlab","match":"\"\""},{"name":"invalid.illegal.unescaped-quote.matlab","match":"\"(?=.)"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.matlab"}}},"string_quoted_single":{"name":"string.quoted.single.matlab","begin":"((?\u003c=(\\[|\\(|\\{|=|\\s|;|:|,|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|/|\\\\|\\.|\\^))|^)'","end":"'(?=(\\[|\\(|\\{|\\]|\\)|\\}|=|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|/|\\\\|\\.|\\^|\\s|;|:|,)|$)","patterns":[{"name":"constant.character.escape.matlab","match":"''"},{"name":"invalid.illegal.unescaped-quote.matlab","match":"'(?=.)"},{"name":"constant.character.escape.matlab","match":"((\\%([\\+\\-0]?\\d{0,3}(\\.\\d{1,3})?)(c|d|e|E|f|g|i|G|s|((b|t)?(o|u|x|X))))|\\%\\%|\\\\(b|f|n|r|t|\\\\))"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.matlab"}}},"superclass_method_call":{"name":"meta.method-call.parens.matlab","begin":"([a-zA-Z][a-zA-Z0-9_]*)(@)\\s*([a-zA-Z][a-zA-Z0-9_]*(?:\\.[a-zA-Z][a-zA-Z0-9_]*)*)(\\()","patterns":[{"include":"#end_in_parentheses"},{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"1":{"name":"entity.name.function.matlab","patterns":[{"include":"$self"}]},"2":{"name":"punctuation.accessor.scope-resolution.superclass.matlab"},"3":{"patterns":[{"name":"entity.name.type.class.matlab","match":"(\\w+)(?=\\s*\\z)"},{"match":"([a-zA-Z][a-zA-Z0-9_]*)(\\.)","captures":{"1":{"name":"entity.name.module.matlab"},"2":{"name":"punctuation.accessor.dot.matlab"}}},{"include":"$self"}]},"4":{"name":"punctuation.section.parens.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.parens.end.matlab"}}},"transpose":{"name":"keyword.operator.transpose.matlab","match":"\\.'"},"validator_strings":{"patterns":[{"patterns":[{"name":"string.quoted.single.matlab","begin":"((?\u003c=(\\[|\\(|\\{|=|\\s|;|:|,|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|\\/|\\\\|\\.|\\^))|^)'","end":"'(?=(\\[|\\(|\\{|\\]|\\)|\\}|=|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|\\/|\\\\|\\.|\\^|\\s|;|:|,)|$)","patterns":[{"match":"''"},{"match":"'(?=.)"},{"match":"([^']+)"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.matlab"}}},{"name":"string.quoted.double.matlab","begin":"((?\u003c=(\\[|\\(|\\{|=|\\s|;|:|,|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|\\/|\\\\|\\.|\\^))|^)\"","end":"\"(?=(\\[|\\(|\\{|\\]|\\)|\\}|=|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|\\/|\\\\|\\.|\\^|\\||\\s|;|:|,)|$|\\z)","patterns":[{"match":"\"\""},{"match":"\"(?=.)"},{"match":"[^\"]+"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.matlab"}}}]}]},"validators":{"name":"meta.assignment.definition.property.matlab","begin":"\\s*[;]?\\s*([a-zA-Z][a-zA-Z0-9_\\.\\?]*)","end":"([;\\n%=].*)","patterns":[{"include":"#line_continuation"},{"match":"\\s*(\\()([^\\)]*)(\\))","captures":{"1":{"name":"punctuation.section.parens.begin.matlab"},"2":{"name":"meta.parens.size.matlab","patterns":[{"include":"#numbers"},{"include":"#operators"},{"include":"#punctuation"}]},"3":{"name":"punctuation.section.parens.end.matlab"}}},{"name":"storage.type.matlab","match":"[a-zA-Z][a-zA-Z0-9_\\.]*"},{"include":"#braced_validator_list"}],"beginCaptures":{"1":{"name":"variable.object.property.matlab"}},"endCaptures":{"1":{"patterns":[{"match":"([%].*)","captures":{"1":{"patterns":[{"include":"$self"}]}}},{"match":"(=[^;]*)","captures":{"1":{"patterns":[{"include":"$self"}]}}},{"match":"([\\n;]\\s*[a-zA-Z].*)","captures":{"1":{"patterns":[{"include":"#validators"}]}}},{"include":"$self"}]}}},"variables":{"name":"variable.language.function.matlab","match":"(?\u003c!\\.)\\b(nargin|nargout|varargin|varargout)\\b"}},"injections":{"source.matlab -comment -entity -support -string -variable -interpolation -source.shell":{"patterns":[{"include":"#readwrite_operations"}]}}}
@@ -1 +1 @@
1
- {"name":"mcfunction","scopeName":"source.mcfunction","patterns":[{"include":"#comment"},{"include":"#command"},{"include":"#unknown"}],"repository":{"block_predicate":{"patterns":[{"match":"(\\#)([a-z0-9_\\.\\-]+)(\\:)([a-z0-9_\\.\\-\\/]+)","captures":{"1":{"name":"entity.name.function.mcfunction"},"2":{"name":"entity.name.function.mcfunction"},"3":{"name":"entity.name.function.mcfunction"},"4":{"name":"entity.name.function.mcfunction"}}},{"match":"([a-z0-9_\\.\\-]+)(\\:)([a-z0-9_\\.\\-\\/]+)","captures":{"1":{"name":"entity.name.function.mcfunction"},"2":{"name":"entity.name.function.mcfunction"},"3":{"name":"entity.name.function.mcfunction"}}},{"match":"([a-z0-9_\\.\\-\\/]+)","captures":{"1":{"name":"entity.name.function.mcfunction"}}},{"begin":"(\\[)","end":"(\\])","patterns":[{"include":"#block_predicate.arguments"}],"beginCaptures":{"1":{"name":"variable.language.mcfunction"}},"endCaptures":{"1":{"name":"variable.language.mcfunction"}}},{"begin":"(\\{)","end":"(\\})","patterns":[{"include":"#nbt.compound"}],"beginCaptures":{"1":{"name":"variable.language.mcfunction"}},"endCaptures":{"1":{"name":"variable.language.mcfunction"}}}]},"block_predicate.argument.boolean":{"name":"meta.block_predicate.argument.boolean.mcfunction","match":"(true|false)(?= *[\\,\\]\\n])","captures":{"1":{"name":"constant.numeric.mcfunction"}}},"block_predicate.argument.literal":{"name":"meta.block_predicate.argument.literal.mcfunction","match":"([a-z_][a-z0-9_]*)(?= *[\\,\\]\\n])","captures":{"1":{"name":"entity.name.mcfunction"}}},"block_predicate.argument.number":{"name":"meta.block_predicate.argument.number.mcfunction","match":"(\\-?\\d*\\.?\\d+)(?= *[\\,\\]\\n])","captures":{"1":{"name":"constant.numeric.mcfunction"}}},"block_predicate.arguments":{"patterns":[{"name":"meta.block_predicate.argument_spacing.mcfunction","match":" +"},{"name":"meta.block_predicate.argument.mcfunction","begin":"([a-z_][a-z0-9_]*) *(\\=) *","end":"(\\,)(?=[\\]\\n])|(\\,)|(?=[\\]\\n])","patterns":[{"include":"#block_predicate.argument.number"},{"include":"#block_predicate.argument.boolean"},{"include":"#block_predicate.argument.literal"}],"beginCaptures":{"1":{"name":"variable.other.mcfunction"},"2":{"name":"variable.language.mcfunction"}},"endCaptures":{"1":{"name":"invalid.illegal.mcfunction"},"2":{"name":"variable.language.mcfunction"}}}]},"command":{"patterns":[{"name":"meta.command.mcfunction","begin":"^\\s*([a-z_][a-z0-9_]*)[ \\n]","end":"$","patterns":[{"contentName":"meta.command.token.mcfunction","begin":"(?\u003c= )","end":"[ \\n]","patterns":[{"include":"#command.tokens"}]}],"beginCaptures":{"1":{"name":"keyword.control.mcfunction"}}}]},"command.token.block_predicate":{"name":"meta.command.token.block_predicate.mcfunction","begin":"(?\u003c= )(?=(\\#)?([a-z0-9_\\.\\-]+)(\\:)([a-z0-9_\\.\\-\\/]+)(\\[|\\{))","end":"(?=\\n)|(?:(?\u003c=\\])(?!\\{)|(?\u003c=\\}))([^ \\n]*)","patterns":[{"include":"#block_predicate"}],"endCaptures":{"1":{"name":"invalid.illegal.mcfunction"}}},"command.token.block_predicate_without_namespace":{"name":"meta.command.token.block_predicate_without_namespace.mcfunction","begin":"(?\u003c= )(?=(\\#)?([a-z0-9_\\.\\-\\/]+)(\\[ *([a-z_][a-z0-9_]*) *\\=))","end":"(?=\\n)|(?:(?\u003c=\\])(?!\\{)|(?\u003c=\\}))([^ \\n]*)","patterns":[{"include":"#block_predicate"}],"endCaptures":{"1":{"name":"invalid.illegal.mcfunction"}}},"command.token.boolean":{"name":"meta.command.token.boolean.mcfunction","match":"(?\u003c= )(true|false)(?=[ \\n]|$)","captures":{"1":{"name":"constant.numeric.mcfunction"}}},"command.token.coordinate":{"name":"meta.command.token.coordinate.mcfunction","match":"(?\u003c= )([\\~\\^])(\\-?\\d*\\.?\\d+)?(?=[ \\n]|$)","captures":{"1":{"name":"constant.numeric.mcfunction"},"2":{"name":"constant.numeric.mcfunction"}}},"command.token.fakeplayer":{"name":"meta.command.token.fakeplayer.mcfunction","match":"(?\u003c= )([\\#\\$\\%]\\S+)(?=[ \\n]|$)","captures":{"1":{"name":"support.class.mcfunction"}}},"command.token.greedy_parent":{"name":"meta.command.token.greedy_parent.mcfunction","match":"((?\u003c=^say | say ))(.*)$","captures":{"1":{"name":"entity.name.mcfunction"},"2":{"name":"string.quoted.mcfunction"}}},"command.token.literal":{"name":"meta.command.token.literal.mcfunction","match":"(?\u003c= )([a-z_][a-z0-9_]*)(?=[ \\n]|$)","captures":{"1":{"name":"entity.name.mcfunction"}}},"command.token.nbt_compound":{"name":"meta.command.token.nbt_compound.mcfunction","begin":"(?\u003c= )(\\{)","end":"(?=\\n)|(\\})([^ \\n]*)","patterns":[{"include":"#nbt.compound"}],"beginCaptures":{"1":{"name":"variable.language.mcfunction"}},"endCaptures":{"1":{"name":"variable.language.mcfunction"},"2":{"name":"invalid.illegal.mcfunction"}}},"command.token.nbt_list":{"name":"meta.command.token.nbt_list.mcfunction","begin":"(?\u003c= )(\\[)(\\w*;)?","end":"(?=\\n)|(\\])([^ \\n]*)","patterns":[{"include":"#nbt.list"}],"beginCaptures":{"1":{"name":"variable.language.mcfunction"},"2":{"name":"variable.language.mcfunction"}},"endCaptures":{"1":{"name":"variable.language.mcfunction"},"2":{"name":"invalid.illegal.mcfunction"}}},"command.token.nbt_path":{"name":"meta.command.token.nbt_path.mcfunction","begin":"(?\u003c= )(?=\\w+[\\.\\[\\{])","end":"(?=[ \\n]|$)","patterns":[{"include":"#nbt_path.property"}]},"command.token.number":{"name":"meta.command.token.number.mcfunction","match":"(?\u003c= )(\\-?\\d*\\.?\\d+)(?=[ \\n]|$)","captures":{"1":{"name":"constant.numeric.mcfunction"}}},"command.token.operation":{"name":"meta.command.token.operation.mcfunction","match":"(?\u003c= )(\\%\\=|\\*\\=|\\+\\=|\\-\\=|\\/\\=|\\\u003c|\\=|\\\u003e|\\\u003e\\\u003c|\\\u003c\\=|\\\u003e\\=)(?=[ \\n]|$)","captures":{"1":{"name":"constant.numeric.mcfunction"}}},"command.token.quoted_string":{"name":"meta.command.token.quoted_string.mcfunction","begin":"(?\u003c= )(\\\")","end":"(?=\\n)|(\\\")([^ \\n]*)","patterns":[{"include":"#common.quoted_string"}],"beginCaptures":{"1":{"name":"string.quoted.mcfunction"}},"endCaptures":{"1":{"name":"string.quoted.mcfunction"},"2":{"name":"invalid.illegal.mcfunction"}}},"command.token.range":{"name":"meta.command.token.range.mcfunction","match":"(?\u003c= )(\\-?\\d*\\.?\\d+)?(\\.\\.)(\\-?\\d*\\.?\\d+)?(?=[ \\n]|$)","captures":{"1":{"name":"constant.numeric.mcfunction"},"2":{"name":"keyword.control.mcfunction"},"3":{"name":"constant.numeric.mcfunction"}}},"command.token.resource_location":{"name":"meta.command.token.resource_location.mcfunction","match":"(?\u003c= )([a-z0-9_\\.\\-]+)(\\:)([a-z0-9_\\.\\-\\/]+)(?=[ \\n]|$)","captures":{"1":{"name":"entity.name.function.mcfunction"},"2":{"name":"entity.name.function.mcfunction"},"3":{"name":"entity.name.function.mcfunction"}}},"command.token.root_redirect":{"name":"meta.command.token.root_redirect.mcfunction","match":"(?\u003c= )(run) ([a-z_][a-z0-9_]*)?(?=[ \\n]|$)","captures":{"1":{"name":"entity.name.mcfunction"},"2":{"name":"keyword.control.mcfunction"}}},"command.token.selector_with_arguments":{"name":"meta.command.token.selector_with_arguments.mcfunction","begin":"(?\u003c= )(\\@[a-z])(\\[)","end":"(?=\\n)|(\\])([^ \\n]*)","patterns":[{"name":"meta.selector.argument_spacing.mcfunction","match":" +"},{"name":"meta.selector.argument.mcfunction","begin":"((?:[a-z_][a-z0-9_]*)|(?:\"[^\"\n]*\")|(?:\\'[^\\'\n]*\\')) *(\\=) *(\\!)? *","end":"( *\\,)(?=[\\]\\n])|( *\\,)|(?= *[\\]\\n])","patterns":[{"include":"#selector.argument.resource_location"},{"include":"#selector.argument.tagged_resource_location"},{"include":"#selector.argument.range"},{"include":"#selector.argument.number"},{"include":"#selector.argument.boolean"},{"include":"#selector.argument.property_map"},{"include":"#selector.argument.nbt_compound"},{"include":"#selector.argument.quoted_string"},{"include":"#selector.argument.single_quoted_string"},{"include":"#selector.argument.unquoted_string"},{"include":"#selector.argument.unknown"}],"beginCaptures":{"1":{"name":"variable.other.mcfunction"},"2":{"name":"support.class.mcfunction"},"3":{"name":"keyword.control.mcfunction"}},"endCaptures":{"1":{"name":"invalid.illegal.mcfunction"},"2":{"name":"support.class.mcfunction"}}},{"name":"invalid.illegal.mcfunction","match":"[^\\]\\n]+"}],"beginCaptures":{"1":{"name":"support.class.mcfunction"},"2":{"name":"support.class.mcfunction"}},"endCaptures":{"1":{"name":"support.class.mcfunction"},"2":{"name":"invalid.illegal.mcfunction"}}},"command.token.selector_without_arguments":{"name":"meta.command.token.selector_without_arguments.mcfunction","match":"(?\u003c= )(\\@[a-z])(?=[ \\n]|$)","captures":{"1":{"name":"support.class.mcfunction"}}},"command.token.single_quoted_string":{"name":"meta.command.token.single_quoted_string.mcfunction","begin":"(?\u003c= )(\\')","end":"(?=\\n)|(\\')([^ \\n]*)","patterns":[{"include":"#common.single_quoted_string"}],"beginCaptures":{"1":{"name":"string.quoted.mcfunction"}},"endCaptures":{"1":{"name":"string.quoted.mcfunction"},"2":{"name":"invalid.illegal.mcfunction"}}},"command.token.tagged_resource_location":{"name":"meta.command.token.tagged_resource_location.mcfunction","match":"(?\u003c= )(\\#)([a-z0-9_\\.\\-]+)(\\:)([a-z0-9_\\.\\-\\/]+)(?=[ \\n]|$)","captures":{"1":{"name":"entity.name.function.mcfunction"},"2":{"name":"entity.name.function.mcfunction"},"3":{"name":"entity.name.function.mcfunction"},"4":{"name":"entity.name.function.mcfunction"}}},"command.token.unknown":{"name":"meta.command.token.unknown.mcfunction","match":"(?\u003c= )([^ \\n]*)(?=[ \\n]|$)","captures":{"1":{"name":"invalid.illegal.mcfunction"}}},"command.token.unquoted_string":{"name":"meta.command.token.unquoted_string.mcfunction","match":"(?\u003c= )(\\S+)(?=[ \\n]|$)","captures":{"1":{"name":"string.unquoted.mcfunction"}}},"command.token.uuid":{"name":"meta.command.token.uuid.mcfunction","match":"(?\u003c= )([0-9a-fA-F]+(?:(-)[0-9a-fA-F]+){4})(?=[ \\n]|$)","captures":{"1":{"name":"support.class.mcfunction"}}},"command.tokens":{"patterns":[{"include":"#command.token.nbt_compound"},{"include":"#command.token.nbt_list"},{"include":"#command.token.selector_with_arguments"},{"include":"#command.token.selector_without_arguments"},{"include":"#command.token.block_predicate"},{"include":"#command.token.block_predicate_without_namespace"},{"include":"#command.token.resource_location"},{"include":"#command.token.tagged_resource_location"},{"include":"#command.token.range"},{"include":"#command.token.number"},{"include":"#command.token.coordinate"},{"include":"#command.token.boolean"},{"include":"#command.token.operation"},{"include":"#command.token.root_redirect"},{"include":"#command.token.greedy_parent"},{"include":"#command.token.literal"},{"include":"#command.token.uuid"},{"include":"#command.token.fakeplayer"},{"include":"#command.token.nbt_path"},{"include":"#command.token.quoted_string"},{"include":"#command.token.single_quoted_string"},{"include":"#command.token.unquoted_string"},{"include":"#command.token.unknown"}]},"comment":{"patterns":[{"name":"meta.comment.block.mcfunction","begin":"^[ \\t]*((#)([\\#\\\u003e\\~\\!\\@\\$\\%\\^\\*]+)((.*)))$","end":"^(?![ \\t]*#)","patterns":[{"include":"#comment.block"}],"beginCaptures":{"1":{"name":"comment.block.mcfunction"},"2":{"name":"markup.list.mcfunction"},"3":{"name":"markup.list.mcfunction"},"4":{"name":"markup.bold.mcfunction"},"5":{"name":"markup.list.mcfunction"}}},{"name":"meta.comment.line.mcfunction","match":"^[ \\t]*(#.*)$","captures":{"1":{"name":"comment.line.mcfunction"}}}]},"comment.block":{"patterns":[{"name":"meta.comment.block_line.mcfunction","begin":"^[ \\t]*((#)[ \\t]*)","end":"$","patterns":[{"include":"#comment.block.line"}],"beginCaptures":{"1":{"name":"comment.block.mcfunction"},"2":{"name":"markup.list.mcfunction"}}}]},"comment.block.line":{"patterns":[{"name":"meta.comment.block.annotation.mcfunction","match":"((\\@\\w*)\\b(.*))$","captures":{"1":{"name":"comment.block.mcfunction"},"2":{"name":"markup.heading.mcfunction"},"3":{"name":"comment.block.mcfunction"}}},{"name":"meta.comment.block.heading.mcfunction","match":"(([\\#\\\u003e\\~\\!\\@\\$\\%\\^\\*]+)((.*)))$","captures":{"1":{"name":"comment.block.mcfunction"},"2":{"name":"markup.list.mcfunction"},"3":{"name":"markup.bold.mcfunction"},"4":{"name":"markup.list.mcfunction"}}},{"name":"meta.comment.block.text.mcfunction","match":"(.*)$","captures":{"1":{"name":"comment.block.mcfunction"}}}]},"common.quoted_string":{"patterns":[{"name":"string.quoted.mcfunction","match":"[^\\\\\\\"\\n]"},{"name":"constant.character.escape.mcfunction","match":"\\\\[^\\n]"},{"name":"invalid.illegal.mcfunction","match":"\\\\"}]},"common.single_quoted_string":{"patterns":[{"name":"string.quoted.mcfunction","match":"[^\\\\\\'\\n]"},{"name":"constant.character.escape.mcfunction","match":"\\\\[^\\n]"},{"name":"invalid.illegal.mcfunction","match":"\\\\"}]},"nbt.compound":{"patterns":[{"match":" +"},{"begin":"(,)? *([A-Za-z0-9_\\.\\-]+|\\\"[^\\n\\\"]+\\\") *(\\:) *","end":" *(?=[\\n\\}\\,])","patterns":[{"include":"#nbt.value"}],"beginCaptures":{"1":{"name":"variable.language.mcfunction"},"2":{"name":"string.interpolated.mcfunction"},"3":{"name":"variable.language.mcfunction"}}},{"name":"invalid.illegal.mcfunction","match":"[^\\n\\}\\,]+"}]},"nbt.list":{"patterns":[{"match":" +"},{"begin":"(,)? *(?=[^\\n\\]\\,])","end":" *(?=[\\n\\]\\,])","patterns":[{"include":"#nbt.value"}],"beginCaptures":{"1":{"name":"variable.language.mcfunction"}}},{"name":"invalid.illegal.mcfunction","match":"[^\\n\\]\\,]+"}]},"nbt.value":{"patterns":[{"begin":"(\\{)","end":"(?=\\n)|(\\})","patterns":[{"include":"#nbt.compound"}],"beginCaptures":{"1":{"name":"variable.language.mcfunction"}},"endCaptures":{"1":{"name":"variable.language.mcfunction"}}},{"begin":"(\\[)(\\w*;)?","end":"(?=\\n)|(\\])","patterns":[{"include":"#nbt.list"}],"beginCaptures":{"1":{"name":"variable.language.mcfunction"},"2":{"name":"variable.language.mcfunction"}},"endCaptures":{"1":{"name":"variable.language.mcfunction"}}},{"begin":"(\\\")","end":"(?=\\n)|(\\\")","patterns":[{"include":"#common.quoted_string"}],"beginCaptures":{"1":{"name":"string.quoted.mcfunction"}},"endCaptures":{"1":{"name":"string.quoted.mcfunction"}}},{"begin":"(\\')","end":"(?=\\n)|(\\')","patterns":[{"include":"#common.single_quoted_string"}],"beginCaptures":{"1":{"name":"string.quoted.mcfunction"}},"endCaptures":{"1":{"name":"string.quoted.mcfunction"}}},{"name":"constant.numeric.mcfunction","match":"(true|false)"},{"name":"constant.numeric.mcfunction","match":"(\\-?\\d*\\.?\\d+)"},{"name":"string.unquoted.mcfunction","match":"([^\\s\\{\\}\\[\\]\\,\\:\\=]+)"},{"name":"invalid.illegal.mcfunction","match":"[^\\n\\,\\]\\}]+"}]},"nbt_path.index":{"patterns":[{"match":"(?\u003c=\\[)(\\-?\\d+)(?=\\])","captures":{"1":{"name":"constant.numeric.mcfunction"}}},{"begin":"(\\{)","end":"(?=\\n)|(\\})([^\\]\\,\\n]*)","patterns":[{"include":"#nbt.compound"}],"beginCaptures":{"1":{"name":"variable.language.mcfunction"}},"endCaptures":{"1":{"name":"variable.language.mcfunction"},"2":{"name":"invalid.illegal.mcfunction"}}},{"name":"invalid.illegal.mcfunction","match":"[^\\n\\]]+"}]},"nbt_path.property":{"patterns":[{"begin":"(\\.)?(\\w+)?(\\[)","end":"(\\])|(?=\\n)","patterns":[{"include":"#nbt_path.index"}],"beginCaptures":{"1":{"name":"variable.language.mcfunction"},"2":{"name":"string.interpolated.mcfunction"},"3":{"name":"variable.language.mcfunction"}},"endCaptures":{"1":{"name":"variable.language.mcfunction"}}},{"begin":"(\\.)?(\\w+)(\\{)","end":"(\\})|(?=\\n)","patterns":[{"include":"#nbt.compound"}],"beginCaptures":{"1":{"name":"variable.language.mcfunction"},"2":{"name":"string.interpolated.mcfunction"},"3":{"name":"variable.language.mcfunction"}},"endCaptures":{"1":{"name":"variable.language.mcfunction"}}},{"begin":"(\\\")","end":"(?=\\n)|(\\\")([^\\. \\n]*)","patterns":[{"include":"#common.quoted_string"}],"beginCaptures":{"1":{"name":"string.quoted.mcfunction"}},"endCaptures":{"1":{"name":"string.quoted.mcfunction"},"2":{"name":"invalid.illegal.mcfunction"}}},{"match":"(\\.)?(\\w+)","captures":{"1":{"name":"variable.language.mcfunction"},"2":{"name":"string.interpolated.mcfunction"}}},{"match":"(\\.)(?=\\.)","captures":{"1":{"name":"invalid.illegal.mcfunction"}}},{"name":"invalid.illegal.mcfunction","match":"[^\\.\\s]+"}]},"property_map":{"patterns":[{"match":" +"},{"begin":"(,)? *([A-Za-z0-9_\\.\\-]+) *(\\=) *","end":" *(?=[\\n\\}\\,])","patterns":[{"include":"#property_map.values"}],"beginCaptures":{"1":{"name":"variable.language.mcfunction"},"2":{"name":"entity.name.function.mcfunction"},"3":{"name":"variable.language.mcfunction"}}},{"begin":"(,)? *([a-z0-9_\\.\\-]+\\:[a-z0-9_\\.\\-\\/]+|[a-z0-9_\\.\\-\\/]+) *(\\=) *","end":" *(?=[\\n\\}\\,])","patterns":[{"include":"#property_map.values"}],"beginCaptures":{"1":{"name":"variable.language.mcfunction"},"2":{"name":"entity.name.function.mcfunction"},"3":{"name":"variable.language.mcfunction"}}},{"name":"invalid.illegal.mcfunction","match":"[^\\n\\}\\,]+"}]},"property_map.values":{"patterns":[{"match":"(true|false)","captures":{"1":{"name":"constant.numeric.mcfunction"}}},{"match":"(\\-?\\d*\\.?\\d+)?(\\.\\.)(\\-?\\d*\\.?\\d+)?","captures":{"1":{"name":"constant.numeric.mcfunction"},"2":{"name":"keyword.control.mcfunction"},"3":{"name":"constant.numeric.mcfunction"}}},{"match":"(\\-?\\d*\\.?\\d+)","captures":{"1":{"name":"constant.numeric.mcfunction"}}},{"begin":"(\\{) *","end":"(?=\\n)|(\\}) *([^\\}\\,\\n]*)","patterns":[{"include":"#property_map"}],"beginCaptures":{"1":{"name":"variable.language.mcfunction"}},"endCaptures":{"1":{"name":"variable.language.mcfunction"},"2":{"name":"invalid.illegal.mcfunction"}}}]},"selector.argument.boolean":{"name":"meta.selector.argument.boolean.mcfunction","match":"(true|false)(?= *[\\,\\]\\n])","captures":{"1":{"name":"constant.numeric.mcfunction"}}},"selector.argument.nbt_compound":{"name":"meta.selector.argument.nbt_compound.mcfunction","begin":"(\\{)","end":"(?=\\n)|(\\}) *([^\\]\\,\\n]*)","patterns":[{"include":"#nbt.compound"}],"beginCaptures":{"1":{"name":"variable.language.mcfunction"}},"endCaptures":{"1":{"name":"variable.language.mcfunction"},"2":{"name":"invalid.illegal.mcfunction"}}},"selector.argument.number":{"name":"meta.selector.argument.number.mcfunction","match":"(\\-?\\d*\\.?\\d+)(?= *[\\,\\]\\n])","captures":{"1":{"name":"constant.numeric.mcfunction"}}},"selector.argument.property_map":{"name":"meta.selector.argument.property_map.mcfunction","begin":"(\\{)(?= *([a-z0-9_\\.\\-]+\\:[a-z0-9_\\.\\-\\/]+|[a-z0-9_\\.\\-\\/]+|([A-Za-z0-9_\\.\\-]+)) *(\\=))","end":"(?=\\n)|(\\}) *([^\\]\\,\\n]*)","patterns":[{"include":"#property_map"}],"beginCaptures":{"1":{"name":"variable.language.mcfunction"}},"endCaptures":{"1":{"name":"variable.language.mcfunction"},"2":{"name":"invalid.illegal.mcfunction"}}},"selector.argument.quoted_string":{"name":"meta.selector.argument.quoted_string.mcfunction","begin":"(\\\")","end":"(?=\\n)|(\\\") *([^\\]\\,\\n]*)","patterns":[{"include":"#common.quoted_string"}],"beginCaptures":{"1":{"name":"string.quoted.mcfunction"}},"endCaptures":{"1":{"name":"string.quoted.mcfunction"},"2":{"name":"invalid.illegal.mcfunction"}}},"selector.argument.range":{"name":"meta.selector.argument.range.mcfunction","match":"(\\-?\\d*\\.?\\d+)?(\\.\\.)(\\-?\\d*\\.?\\d+)?(?= *[\\,\\]\\n])","captures":{"1":{"name":"constant.numeric.mcfunction"},"2":{"name":"keyword.control.mcfunction"},"3":{"name":"constant.numeric.mcfunction"}}},"selector.argument.resource_location":{"name":"meta.selector.argument.resource_location.mcfunction","match":"([a-z0-9_\\.\\-]+)(\\:)([a-z0-9_\\.\\-\\/]+)(?= *[\\,\\]\\n])","captures":{"1":{"name":"entity.name.function.mcfunction"},"2":{"name":"entity.name.function.mcfunction"},"3":{"name":"entity.name.function.mcfunction"}}},"selector.argument.single_quoted_string":{"name":"meta.selector.argument.single_quoted_string.mcfunction","begin":"(\\')","end":"(?=\\n)|(\\') *([^\\]\\,\\n]*)","patterns":[{"include":"#common.single_quoted_string"}],"beginCaptures":{"1":{"name":"string.quoted.mcfunction"}},"endCaptures":{"1":{"name":"string.quoted.mcfunction"},"2":{"name":"invalid.illegal.mcfunction"}}},"selector.argument.tagged_resource_location":{"name":"meta.selector.argument.tagged_resource_location.mcfunction","match":"(\\#)([a-z0-9_\\.\\-]+)(\\:)([a-z0-9_\\.\\-\\/]+)(?= *[\\,\\]\\n])","captures":{"1":{"name":"entity.name.function.mcfunction"},"2":{"name":"entity.name.function.mcfunction"},"3":{"name":"entity.name.function.mcfunction"},"4":{"name":"entity.name.function.mcfunction"}}},"selector.argument.unknown":{"name":"meta.selector.argument.unknown.mcfunction","match":"([^\\]\\n\\,]+)","captures":{"1":{"name":"invalid.illegal.mcfunction"}}},"selector.argument.unquoted_string":{"name":"meta.selector.argument.unquoted_string.mcfunction","match":"([^\\s\\{\\}\\[\\]\\,\\:\\=\\!]+)(?= *[\\,\\]\\n])","captures":{"1":{"name":"string.unquoted.mcfunction"}}},"unknown":{"patterns":[{"name":"meta.unknown.mcfunction","match":"^(.*)$","captures":{"1":{"name":"invalid.illegal.mcfunction"}}}]}}}
1
+ {"name":"Syntax Mcfunction","scopeName":"source.mcfunction","patterns":[{"include":"#root"}],"repository":{"comments":{"patterns":[{"name":"meta.comments","begin":"^\\s*(#[\u003e!#])(.+)$","end":"^(?!#)","patterns":[{"include":"#comments_block"}],"captures":{"0":{"name":"comment.block.mcfunction"}},"beginCaptures":{"1":{"name":"comment.block.mcfunction"},"2":{"name":"markup.bold.mcfunction"}},"applyEndPatternLast":true},{"name":"meta.comments","match":"^\\s*#.*$","captures":{"0":{"name":"comment.line.mcfunction"}}}]},"comments_block":{"patterns":[{"name":"meta.comments_block","begin":"^\\s*#[\u003e!]","end":"$","patterns":[{"include":"#comments_block_emphasized"}],"captures":{"0":{"name":"comment.block.mcfunction"}},"applyEndPatternLast":true},{"name":"meta.comments_block","begin":"^\\s*#","end":"$","patterns":[{"include":"#comments_block_normal"}],"captures":{"0":{"name":"comment.block.mcfunction"}},"applyEndPatternLast":true}]},"comments_block_emphasized":{"patterns":[{"include":"#comments_block_special"},{"name":"meta.comments_block_emphasized","match":"\\S+","captures":{"0":{"name":"markup.bold.mcfunction"}}}]},"comments_block_normal":{"patterns":[{"include":"#comments_block_special"},{"name":"meta.comments_block_normal","match":"\\S+","captures":{"0":{"name":"comment.block.mcfunction"}}},{"include":"#whitespace"}]},"comments_block_special":{"patterns":[{"name":"meta.comments_block_special","match":"@\\S+","captures":{"0":{"name":"markup.heading.mcfunction"}}},{"include":"#resource-name"},{"name":"meta.comments_block_special","match":"[#%$][A-Za-z0-9_.#%$]+","captures":{"0":{"name":"variable.other.mcfunction"}}}]},"comments_inline":{"patterns":[{"name":"meta.comments","match":"#.*$","captures":{"0":{"name":"comment.line.mcfunction"}}}]},"literals":{"patterns":[{"name":"meta.literals","match":"\\b(true|false|True|False)\\b","captures":{"0":{"name":"constant.numeric.boolean.mcfunction"}}},{"name":"meta.names","match":"\\b[0-9a-fA-F]+(?:-[0-9a-fA-F]+){4}\\b","captures":{"0":{"name":"variable.uuid.mcfunction"}}},{"name":"meta.literals","match":"[+-]?\\d*\\.?\\d+([eE]?[+-]?\\d+)?[df]?\\b","captures":{"0":{"name":"constant.numeric.float.mcfunction"}}},{"name":"meta.literals","match":"[+-]?\\d+(b|B|L|l|s|S)?\\b","captures":{"0":{"name":"constant.numeric.integer.mcfunction"}}},{"name":"meta.ellipse.literals","match":"\\.\\.","captures":{"0":{"name":"variable.other.mcfunction"}}},{"name":"string.quoted.double.mcfunction","begin":"\"","end":"\"","patterns":[{"include":"#literals_string-double"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.mcfunction"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.mcfunction"}},"applyEndPatternLast":true},{"name":"string.quoted.single.mcfunction","begin":"'","end":"'","patterns":[{"include":"#literals_string-single"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.mcfunction"}},"endCaptures":{"0":{"name":"punctuation.definition.string.begin.mcfunction"}},"applyEndPatternLast":true}]},"literals_string-double":{"patterns":[{"name":"meta.literals_string-double","match":"\\\\.","captures":{"0":{"name":"constant.character.escape.mcfunction"}}},{"name":"meta.literals_string-double","match":"\\\\","captures":{"0":{"name":"constant.character.escape.mcfunction"}}},{"include":"#macro-name"},{"name":"meta.literals_string-double","match":"[^\\\\\"]","captures":{"0":{"name":"string.quoted.double.mcfunction"}}}]},"literals_string-single":{"patterns":[{"name":"meta.literals_string-single","match":"\\\\.","captures":{"0":{"name":"constant.character.escape.mcfunction"}}},{"name":"meta.literals_string-double","match":"\\\\","captures":{"0":{"name":"constant.character.escape.mcfunction"}}},{"include":"#macro-name"},{"name":"meta.literals_string-single","match":"[^\\\\']","captures":{"0":{"name":"string.quoted.single.mcfunction"}}}]},"macro-name":{"patterns":[{"name":"meta.macro-name","match":"(\\$\\()([A-Za-z0-9_]*)(\\))","captures":{"1":{"name":"punctuation.definition.template-expression.begin.mcfunction"},"2":{"name":"variable.other.mcfunction"},"3":{"name":"punctuation.definition.template-expression.end.mcfunction"}}}]},"names":{"patterns":[{"name":"meta.names","match":"^(\\s*)([a-z_]+)(?=\\s)","captures":{"1":{"name":"whitespace.mcfunction"},"2":{"name":"keyword.control.flow.mcfunction"}}},{"name":"meta.names","match":"^(\\s*)(\\$)( ?)([a-z_]*)","captures":{"1":{"name":"whitespace.mcfunction"},"2":{"name":"markup.italic.mcfunction"},"3":{"name":"whitespace.mcfunction"},"4":{"name":"keyword.control.flow.mcfunction"}}},{"name":"meta.names","match":"(run)(\\s+)([a-z_]+)","captures":{"1":{"name":"entity.name.mcfunction"},"2":{"name":"whitespace.mcfunction"},"3":{"name":"keyword.control.flow.mcfunction"}}},{"include":"#resource-name"},{"name":"meta.names","match":"[A-Za-z]+(?=\\W)","captures":{"0":{"name":"entity.name.mcfunction"}}},{"name":"meta.names","match":"[A-Za-z_][A-Za-z0-9_.#%$]*","captures":{"0":{"name":"string.unquoted.mcfunction"}}},{"include":"#macro-name"},{"name":"meta.names","match":"([#%$]|((?\u003c=\\s)\\.))[A-Za-z0-9_.#%$\\-]+","captures":{"0":{"name":"variable.other.mcfunction"}}}]},"operators":{"patterns":[{"name":"meta.operators","match":"[~^]","captures":{"0":{"name":"constant.numeric.mcfunction"}}},{"name":"meta.operators","match":"[\\-%?!+*\u003c\u003e\\\\/|\u0026=.:,;]","captures":{"0":{"name":"keyword.operator.mcfunction"}}}]},"property":{"patterns":[{"name":"meta.property.curly","begin":"\\{","end":"\\}","patterns":[{"include":"#resource-name"},{"include":"#literals"},{"include":"#property_key"},{"include":"#operators"},{"include":"#property_value"},{"include":"$self"}],"captures":{"0":{"name":"punctuation.mcfunction"}},"applyEndPatternLast":true},{"name":"meta.property.square","begin":"\\[","end":"\\]","patterns":[{"include":"#resource-name"},{"include":"#literals"},{"include":"#property_key"},{"include":"#operators"},{"include":"#property_value"},{"include":"$self"}],"captures":{"0":{"name":"variable.other.mcfunction"}},"applyEndPatternLast":true},{"name":"meta.property.paren","begin":"\\(","end":"\\)","patterns":[{"include":"#resource-name"},{"include":"#literals"},{"include":"#property_key"},{"include":"#operators"},{"include":"#property_value"},{"include":"$self"}],"captures":{"0":{"name":"punctuation.mcfunction"}},"applyEndPatternLast":true}]},"property_key":{"patterns":[{"name":"meta.property_key","match":"#?[a-z_][a-z_\\.\\-]*\\:[a-z0-9_\\.\\-/]+(?=\\s*\\=:)","captures":{"0":{"name":"variable.other.mcfunction"}}},{"name":"meta.property_key","match":"#?[a-z_][a-z0-9_\\.\\-/]+","captures":{"0":{"name":"variable.other.mcfunction"}}},{"name":"meta.property_key","match":"[A-Za-z_]+[A-Za-z_\\-\\+]*","captures":{"0":{"name":"variable.other.mcfunction"}}}]},"property_value":{"patterns":[{"name":"meta.property_value","match":"#?[a-z_][a-z_\\.\\-]*\\:[a-z0-9_\\.\\-/]+","captures":{"0":{"name":"string.unquoted.mcfunction"}}},{"name":"meta.property_value","match":"#?[a-z_][a-z0-9_\\.\\-/]+","captures":{"0":{"name":"string.unquoted.mcfunction"}}}]},"resource-name":{"patterns":[{"name":"meta.resource-name","match":"#?[a-z_][a-z0-9_.-]*:[a-z0-9_./-]+","captures":{"0":{"name":"entity.name.function.mcfunction"}}},{"name":"meta.resource-name","match":"#?[a-z0-9_\\.\\-]+\\/[a-z0-9_\\.\\-\\/]+","captures":{"0":{"name":"entity.name.function.mcfunction"}}}]},"root":{"patterns":[{"include":"#literals"},{"include":"#comments"},{"include":"#say"},{"include":"#names"},{"include":"#comments_inline"},{"include":"#subcommands"},{"include":"#property"},{"include":"#operators"},{"include":"#selectors"}]},"say":{"patterns":[{"name":"meta.say.mcfunction","begin":"^(\\s*)(say)","end":"\\n","patterns":[{"match":"\\\\\\s*\\n","captures":{"0":{"name":"constant.character.escape.mcfunction"}}},{"include":"#literals_string-double"},{"include":"#literals_string-single"}],"beginCaptures":{"1":{"name":"whitespace.mcfunction"},"2":{"name":"keyword.control.flow.mcfunction"}}},{"name":"meta.say.mcfunction","begin":"(run)(\\s+)(say)","end":"\\n","patterns":[{"match":"\\\\\\s*\\n","captures":{"0":{"name":"constant.character.escape.mcfunction"}}},{"include":"#literals_string-double"},{"include":"#literals_string-single"}],"beginCaptures":{"1":{"name":"entity.name.mcfunction"},"2":{"name":"whitespace.mcfunction"},"3":{"name":"keyword.control.flow.mcfunction"}}}]},"selectors":{"patterns":[{"name":"meta.selectors","match":"@[a-z]+","captures":{"0":{"name":"support.class.mcfunction"}}}]},"subcommands":{"patterns":[{"name":"meta.literals","match":"[a-z_]+","captures":{"0":{"name":"entity.name.class.mcfunction"}}}]}}}