github-linguist 7.28.0 → 7.30.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (102) hide show
  1. checksums.yaml +4 -4
  2. data/bin/git-linguist +7 -3
  3. data/bin/github-linguist +6 -3
  4. data/grammars/etc.json +1 -1
  5. data/grammars/inline.graphql.json +1 -1
  6. data/grammars/inline.graphql.markdown.codeblock.json +1 -0
  7. data/grammars/inline.hbs.json +1 -1
  8. data/grammars/markdown.commonlisp.codeblock.json +1 -0
  9. data/grammars/markdown.gleam.codeblock.json +1 -0
  10. data/grammars/markdown.glimmer.codeblock.json +1 -0
  11. data/grammars/markdown.move.codeblock.json +1 -1
  12. data/grammars/markdown.rego.codeblock.json +1 -0
  13. data/grammars/source.8xp.json +1 -0
  14. data/grammars/source.Caddyfile-test.json +1 -0
  15. data/grammars/source.Caddyfile.json +1 -0
  16. data/grammars/source.abl.json +1 -1
  17. data/grammars/source.amxxpawn.json +1 -0
  18. data/grammars/source.astro.json +1 -1
  19. data/grammars/source.bb.json +1 -0
  20. data/grammars/source.bh.json +1 -0
  21. data/grammars/source.bicep.json +1 -1
  22. data/grammars/source.bms.json +1 -1
  23. data/grammars/source.bqn.json +1 -0
  24. data/grammars/source.brs.json +1 -1
  25. data/grammars/source.clarion.json +1 -1
  26. data/grammars/source.cobol.json +1 -1
  27. data/grammars/source.commonlisp.json +1 -0
  28. data/grammars/source.cs.json +1 -1
  29. data/grammars/source.csound.json +1 -1
  30. data/grammars/source.d2.json +1 -1
  31. data/grammars/source.dart.json +1 -1
  32. data/grammars/source.did.json +1 -1
  33. data/grammars/source.elvish-transcript.json +1 -1
  34. data/grammars/source.firrtl.json +1 -0
  35. data/grammars/source.fsharp.json +1 -1
  36. data/grammars/source.gdscript.json +1 -1
  37. data/grammars/source.generic-db.json +1 -1
  38. data/grammars/source.gjs.json +1 -1
  39. data/grammars/source.gleam.json +1 -1
  40. data/grammars/source.gts.json +1 -1
  41. data/grammars/source.hcl.json +1 -1
  42. data/grammars/source.hcl.terraform.json +1 -1
  43. data/grammars/source.hx.json +1 -1
  44. data/grammars/source.ice.json +1 -1
  45. data/grammars/source.julia.json +1 -1
  46. data/grammars/source.kotlin.json +1 -1
  47. data/grammars/source.lean4.json +1 -1
  48. data/grammars/source.lua.json +1 -1
  49. data/grammars/source.luau.json +1 -0
  50. data/grammars/source.m2.json +1 -1
  51. data/grammars/source.markdown.caddy.codeblock.json +1 -0
  52. data/grammars/source.matlab.json +1 -1
  53. data/grammars/source.mdx.json +1 -1
  54. data/grammars/source.mojo.json +1 -0
  55. data/grammars/source.move.json +1 -1
  56. data/grammars/source.nasal.json +1 -1
  57. data/grammars/source.nim.json +1 -1
  58. data/grammars/source.nushell.json +1 -1
  59. data/grammars/source.odin.json +1 -1
  60. data/grammars/source.p4.json +1 -1
  61. data/grammars/source.pip-requirements.json +1 -0
  62. data/grammars/source.pkl.json +1 -0
  63. data/grammars/source.praat.json +1 -1
  64. data/grammars/source.rego.json +1 -1
  65. data/grammars/source.rescript.json +1 -1
  66. data/grammars/source.roc.json +1 -0
  67. data/grammars/source.ron.json +1 -0
  68. data/grammars/source.rust.json +1 -1
  69. data/grammars/source.scala.json +1 -1
  70. data/grammars/source.slice.json +1 -1
  71. data/grammars/source.slint.json +1 -0
  72. data/grammars/source.solidity.json +1 -1
  73. data/grammars/source.sourcepawn.json +1 -1
  74. data/grammars/source.sqf.json +1 -1
  75. data/grammars/source.swift.json +1 -1
  76. data/grammars/source.templ.json +1 -0
  77. data/grammars/source.toit.json +1 -1
  78. data/grammars/source.ts.json +1 -1
  79. data/grammars/source.tsx.json +1 -1
  80. data/grammars/source.vba.json +1 -1
  81. data/grammars/source.wsd.json +1 -1
  82. data/grammars/sp-jsdoc.injection.json +1 -0
  83. data/grammars/text.adblock.json +1 -1
  84. data/grammars/text.crontab.json +1 -0
  85. data/grammars/text.html.edge.json +1 -0
  86. data/grammars/text.html.ember-handlebars.json +1 -1
  87. data/grammars/text.html.statamic.json +1 -1
  88. data/grammars/text.md.json +1 -1
  89. data/grammars/text.srt.json +1 -1
  90. data/grammars/text.valve-cfg.json +1 -0
  91. data/grammars/text.valve-kv.json +1 -0
  92. data/grammars/version +1 -1
  93. data/lib/linguist/VERSION +1 -1
  94. data/lib/linguist/generated.rb +39 -1
  95. data/lib/linguist/heuristics.yml +26 -2
  96. data/lib/linguist/languages.json +1 -1
  97. data/lib/linguist/languages.yml +195 -9
  98. data/lib/linguist/repository.rb +8 -6
  99. data/lib/linguist/samples.json +1 -1
  100. metadata +31 -5
  101. data/grammars/markdown.graphql.codeblock.json +0 -1
  102. data/grammars/source.terraform.json +0 -1
@@ -1 +1 @@
1
- {"name":"Csound","scopeName":"source.csound","patterns":[{"include":"#commentsAndMacroUses"},{"name":"meta.instrument-block.csound","begin":"\\b(?=instr\\b)","end":"\\bendin\\b","patterns":[{"name":"meta.instrument-declaration.csound","begin":"instr","end":"$","patterns":[{"name":"entity.name.function.csound","match":"\\d+|[A-Z_a-z]\\w*"},{"include":"#commentsAndMacroUses"}],"beginCaptures":{"0":{"name":"keyword.function.csound"}}},{"include":"#commentsAndMacroUses"},{"include":"#labels"},{"include":"#partialExpressions"}],"endCaptures":{"0":{"name":"keyword.other.csound"}}},{"name":"meta.opcode-definition.csound","begin":"\\b(?=opcode\\b)","end":"\\bendop\\b","patterns":[{"name":"meta.opcode-declaration.csound","begin":"opcode","end":"$","patterns":[{"name":"meta.opcode-details.csound","begin":"[A-Z_a-z]\\w*\\b","end":"$","patterns":[{"name":"meta.opcode-type-signature.csound","begin":"\\b(?:0|[aijkOPVKopS\\[\\]]+)","end":",|$","patterns":[{"include":"#commentsAndMacroUses"}],"beginCaptures":{"0":{"name":"storage.type.csound"}}},{"include":"#commentsAndMacroUses"}],"beginCaptures":{"0":{"name":"entity.name.function.opcode.csound"}}},{"include":"#commentsAndMacroUses"}],"beginCaptures":{"0":{"name":"keyword.function.csound"}}},{"include":"#commentsAndMacroUses"},{"include":"#labels"},{"include":"#partialExpressions"}],"endCaptures":{"0":{"name":"keyword.other.csound"}}},{"include":"#labels"},{"include":"#partialExpressions"}],"repository":{"bracedStringContents":{"patterns":[{"include":"#escapeSequences"},{"include":"#formatSpecifiers"}]},"comments":{"patterns":[{"name":"comment.block.csound","begin":"/\\*","end":"\\*/","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.csound"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.end.csound"}}},{"name":"comment.line.double-slash.csound","begin":"//","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.csound"}}},{"include":"#semicolonComments"},{"include":"#lineContinuations"}]},"commentsAndMacroUses":{"patterns":[{"include":"#comments"},{"include":"#macroUses"}]},"decimalNumbers":{"patterns":[{"name":"constant.numeric.integer.decimal.csound","match":"\\d+"}]},"escapeSequences":{"patterns":[{"name":"constant.character.escape.csound","match":"\\\\(?:[abfnrtv\"\\\\]|[0-7]{1,3})"}]},"floatingPointNumbers":{"patterns":[{"name":"constant.numeric.float.csound","match":"(?:\\d+[Ee][+-]?\\d+)|(?:\\d+\\.\\d*|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?"}]},"formatSpecifiers":{"patterns":[{"name":"constant.character.placeholder.csound","match":"%[#0\\- +]*\\d*(?:\\.\\d+)?[diuoxXfFeEgGaAcs]"},{"name":"constant.character.escape.csound","match":"%%"}]},"labels":{"patterns":[{"match":"^[ \\t]*(\\w+)(:)(?:[ \\t]+|$)","captures":{"1":{"name":"entity.name.label.csound"},"2":{"name":"entity.punctuation.label.csound"}}}]},"lineContinuations":{"patterns":[{"match":"(\\\\)[ \\t]*((;).*)?$","captures":{"1":{"name":"constant.character.escape.line-continuation.csound"},"2":{"name":"comment.line.semicolon.csound"},"3":{"name":"punctuation.definition.comment.csound"}}}]},"macroNames":{"patterns":[{"match":"([A-Z_a-z]\\w*)|(\\d+\\w*)","captures":{"1":{"name":"entity.name.function.preprocessor.csound"},"2":{"name":"invalid.illegal.csound"}}}]},"macroParameterValueParenthetical":{"patterns":[{"name":"meta.macro-parameter-value-parenthetical.csound","begin":"\\(","end":"\\)","patterns":[{"include":"#macroParameterValueParenthetical"},{"name":"constant.character.escape.csound","match":"\\\\\\)"},{"include":"$self"}]}]},"macroUses":{"patterns":[{"name":"meta.function-like-macro-use.csound","begin":"(\\$[A-Z_a-z]\\w*\\.?)\\(","end":"\\)","patterns":[{"name":"string.quoted.csound","begin":"\"","end":"\"","patterns":[{"match":"([#'()])|(\\\\[#'()])","captures":{"1":{"name":"invalid.illegal.csound"},"2":{"name":"constant.character.escape.csound"}}},{"include":"#quotedStringContents"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.csound"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.csound"}}},{"name":"string.braced.csound","begin":"\\{\\{","end":"\\}\\}","patterns":[{"match":"([#'()])|(\\\\[#'()])","captures":{"1":{"name":"invalid.illegal.csound"},"2":{"name":"constant.character.escape.csound"}}},{"include":"#bracedStringContents"}]},{"include":"#macroParameterValueParenthetical"},{"name":"punctuation.macro-parameter-separator.csound","match":"[#']"},{"include":"$self"}],"beginCaptures":{"1":{"name":"entity.name.function.preprocessor.csound"}}},{"name":"entity.name.function.preprocessor.csound","match":"\\$[A-Z_a-z]\\w*(?:\\.|\\b)"}]},"numbers":{"patterns":[{"include":"#floatingPointNumbers"},{"match":"(0[Xx])([0-9A-Fa-f]+)","captures":{"1":{"name":"storage.type.number.csound"},"2":{"name":"constant.numeric.integer.hexadecimal.csound"}}},{"include":"#decimalNumbers"}]},"partialExpressions":{"patterns":[{"include":"#preprocessorDirectives"},{"name":"variable.language.csound","match":"\\b(?:0dbfs|A4|k(?:r|smps)|nchnls(?:_i)?|sr)\\b"},{"include":"#numbers"},{"name":"keyword.operator.csound","match":"\\+=|-=|\\*=|/=|\u003c\u003c|\u003e\u003e|\u003c=|\u003e=|==|!=|\u0026\u0026|\\|\\||[~¬]|[=!+\\-*/^%\u0026|\u003c\u003e#?:]"},{"include":"#quotedStrings"},{"name":"string.braced.csound","begin":"\\{\\{","end":"\\}\\}","patterns":[{"include":"#bracedStringContents"}]},{"name":"keyword.control.csound","match":"\\b(?:do|else(?:if)?|end(?:if|until)|fi|i(?:f|then)|kthen|od|r(?:ir)?eturn|then|until|while)\\b"},{"begin":"\\b((?:c(?:g|in?|k|nk?)goto)|goto|igoto|kgoto|loop_[gl][et]|r(?:einit|igoto)|ti(?:goto|mout))\\b","end":"(\\w+)\\s*(?:((//).*)|((;).*))?$","patterns":[{"include":"#commentsAndMacroUses"},{"include":"#partialExpressions"}],"beginCaptures":{"1":{"name":"keyword.control.csound"}},"endCaptures":{"1":{"name":"entity.name.label.csound"},"2":{"name":"comment.line.double-slash.csound"},"3":{"name":"punctuation.definition.comment.csound"},"4":{"name":"comment.line.semicolon.csound"},"5":{"name":"punctuation.definition.comment.csound"}}},{"begin":"\\b(printk?s)[ \\t]*(?=\")","end":"(?\u003c=\")","patterns":[{"name":"string.quoted.csound","begin":"\"","end":"\"","patterns":[{"include":"#macroUses"},{"name":"constant.character.escape.csound","match":"\\\\\\\\[aAbBnNrRtT]"},{"include":"#bracedStringContents"},{"include":"#lineContinuations"},{"name":"constant.character.escape.csound","match":"%[!nNrRtT]|[~^]{1,2}"},{"name":"invalid.illegal.csound","match":"[^\"\\\\]*[^\\n\"\\\\]$"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.csound"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.csound"}}}],"beginCaptures":{"1":{"name":"support.function.csound"}}},{"begin":"\\b(readscore|scoreline(?:_i)?)[ \\t]*(\\{\\{)","end":"\\}\\}","patterns":[{"include":"source.csound-score"}],"beginCaptures":{"1":{"name":"support.function.csound"},"2":{"name":"string.braced.csound"}},"endCaptures":{"0":{"name":"string.braced.csound"}}},{"begin":"\\b(pyl?run[it]?)[ \\t]*(\\{\\{)","end":"\\}\\}","patterns":[{"include":"source.python"}],"beginCaptures":{"1":{"name":"support.function.csound"},"2":{"name":"string.braced.csound"}},"endCaptures":{"0":{"name":"string.braced.csound"}}},{"begin":"\\b(lua_exec)[ \\t]*(\\{\\{)","end":"\\}\\}","patterns":[{"include":"source.lua"}],"beginCaptures":{"1":{"name":"support.function.csound"},"2":{"name":"string.braced.csound"}},"endCaptures":{"0":{"name":"string.braced.csound"}}},{"begin":"\\blua_opdef\\b","end":"\\}\\}","patterns":[{"include":"#quotedStrings"},{"begin":"\\{\\{","end":"(?=\\}\\})","patterns":[{"include":"source.lua"}],"beginCaptures":{"0":{"name":"string.braced.csound"}}}],"beginCaptures":{"0":{"name":"support.function.csound"}},"endCaptures":{"0":{"name":"string.braced.csound"}}},{"name":"support.variable.csound","match":"\\bp\\d+\\b"},{"match":"(?:\\b(ATS(?:add(?:(?:nz)?)|bufread|cross|in(?:fo|terpread)|partialtap|read(?:(?:nz)?)|sinnoi)|FL(?:b(?:ox|ut(?:Bank|ton))|c(?:loseButton|o(?:lor(?:(?:2)?)|unt))|execButton|g(?:etsnap|roup(?:(?:(?:E|_e)nd)?))|h(?:ide|vsBox(?:(?:SetValue)?))|joy|k(?:eyIn|nob)|l(?:abel|oadsnap)|mouse|p(?:a(?:ck(?:(?:(?:E|_e)nd)?)|nel(?:(?:(?:E|_e)nd)?))|rintk(?:(?:2)?))|r(?:oller|un)|s(?:avesnap|croll(?:(?:(?:E|_e)nd)?)|et(?:Align|Box|Color(?:(?:2)?)|Font|Position|S(?:ize|napGroup)|Text(?:(?:Color|(?:Siz|Typ)e)?)|Val(?:(?:(?:(?:_)?)i)?)|snap)|how|lid(?:Bnk(?:(?:2(?:(?:Set(?:(?:k)?))?)|GetHandle|Set(?:(?:k)?))?)|er))|t(?:abs(?:(?:(?:E|_e)nd)?)|ext)|update|v(?:alue|keybd|slidBnk(?:(?:2)?))|xyin)|Jacko(?:Audio(?:In(?:(?:Connect)?)|Out(?:(?:Connect)?))|Freewheel|In(?:fo|it)|Midi(?:(?:InConnec|Ou(?:(?:tConnec)?))t)|NoteOut|On|Transport)|K35_(?:(?:[hl])pf)|Mixer(?:Clear|GetLevel|Receive|Se(?:nd|tLevel(?:(?:_i)?)))|OSC(?:bundle|count|init(?:(?:M)?)|listen|raw|send(?:(?:_lo)?))|STK(?:B(?:andedWG|eeThree|low(?:Botl|Hole)|owed|rass)|Clarinet|Drummer|F(?:MVoices|lute)|HevyMetl|M(?:andolin|o(?:dalBar|og))|P(?:ercFlut|lucked)|R(?:esonate|hodey)|S(?:axofony|hakers|i(?:mple|tar)|tifKarp)|TubeBell|VoicForm|W(?:histle|urley))|a(?:bs|ctive|ds(?:r|yn(?:(?:t(?:(?:2)?))?))|ftouch|l(?:lpole|pass|wayson)|mp(?:db(?:(?:fs)?)|midi(?:(?:curve|d)?))|poleparams|r(?:duino(?:Read(?:(?:F)?)|St(?:art|op))|eson(?:(?:k)?))|tone(?:(?:[kx])?)|utocorr)|b(?:a(?:bo|lance(?:(?:2)?)|mboo|rmodel)|bcut(?:[ms])|e(?:(?:tara|xpr)nd)|form(?:dec(?:[12])|enc1)|i(?:nit|quad(?:(?:a)?)|rnd)|ob|pf(?:(?:cos)?)|qrez|u(?:t(?:b(?:[pr])|hp|lp|t(?:er(?:b(?:[pr])|(?:[hl])p)|on))|zz))|c(?:2r|a(?:basa|uchy(?:(?:i)?))|brt|e(?:il|ll|nt(?:(?:roid)?)|ps(?:(?:inv)?))|h(?:an(?:ctrl|ged(?:(?:2)?)|[io])|e(?:byshevpoly|ckbox)|n(?:_(?:[Sak])|clear|export|get(?:(?:ks|[aiks])?)|mix|params|set(?:(?:ks|[aiks])?))|uap)|l(?:ear|filt|ip|ocko(?:ff|n))|mp(?:(?:lxprod)?)|nt(?:C(?:reate|ycles)|Delete(?:(?:_i)?)|Re(?:ad|set)|State)|o(?:m(?:b(?:(?:inv)?)|p(?:ile(?:csd|orc|str)|ress(?:(?:2)?)))|n(?:nect|trol|v(?:(?:l|olv)e))|py(?:a2ftab|f2array)|s(?:(?:h|inv|seg(?:(?:[br])?))?)|unt(?:(?:_i)?))|p(?:s(?:2pch|midi(?:(?:b|nn)?)|oct|pch|t(?:mid|un(?:(?:i)?))|xpch)|u(?:meter|prc))|r(?:oss(?:2|fm(?:(?:i|pm(?:(?:i)?))?)|pm(?:(?:i)?))|unch)|t(?:lchn|rl(?:14|21|7|init|pr(?:eset|int(?:(?:presets)?))|s(?:ave|elect)))|userrnd)|d(?:a(?:m|te(?:(?:s)?))|b(?:(?:(?:(?:fs)?)amp)?)|c(?:block(?:(?:2)?)|onv|t(?:(?:inv)?))|e(?:interleave|l(?:ay(?:(?:[1krw])?)|tap(?:(?:xw|[3inx])?))|norm)|i(?:ff|ode_ladder|rectory|s(?:k(?:grain|in(?:(?:2)?))|p(?:fft|lay)|tort(?:(?:1)?))|vz)|o(?:ppler|t|wnsamp)|ripwater|ssi(?:a(?:ctivate|udio)|ctls|(?:ini|lis)t)|u(?:mpk(?:(?:[234])?)|s(?:errnd|t(?:(?:2)?))))|e(?:nvlpx(?:(?:r)?)|phasor|qfil|v(?:alstr|ent(?:(?:_i)?))|x(?:citer|itnow|p(?:(?:curve|on|rand(?:(?:i)?)|seg(?:(?:ba|[abr])?))?)))|f(?:a(?:reylen(?:(?:i)?)|ust(?:audio|c(?:ompile|tl)|dsp|gen|play))|ft(?:(?:inv)?)|i(?:close|l(?:e(?:bit|len|nchnls|peak|s(?:cal|r)|valid)|larray|ter2)|n(?:(?:[ik])?)|open)|l(?:a(?:nger|shtxt)|oo(?:per(?:(?:2)?)|r)|uid(?:AllOut|C(?:C(?:[ik])|ontrol)|Engine|Info|Load|Note|Out|ProgramSelect|SetInterpMethod))|m(?:a(?:nal|x)|b(?:3|ell)|in|metal|od|percfl|(?:rhod|voic|wurli)e)|o(?:f(?:2|ilter)|l(?:d|low(?:(?:2)?))|scil(?:(?:i)?)|ut(?:(?:ir|[ik])?)|[fg])|print(?:(?:(?:k)?)s)|r(?:a(?:c(?:(?:talnoise)?)|mebuffer)|eeverb)|t(?:audio|c(?:hnls|onv|ps)|exists|free|gen(?:(?:once|tmp)?)|l(?:en|oad(?:(?:k)?)|ptim)|morf|om|print|resize(?:(?:i)?)|s(?:a(?:mplebank|ve(?:(?:k)?))|et|lice(?:(?:i)?)|r)))|g(?:a(?:in(?:(?:slider)?)|uss(?:(?:i|trig)?))|buzz|e(?:n(?:array(?:(?:_i)?)|dy(?:(?:[cx])?))|t(?:c(?:fg|ol)|ftargs|row|seed))|ogobel|ra(?:in(?:(?:[23])?)|nule)|t(?:adsr|f)|uiro)|h(?:armon(?:(?:[234])?)|df5(?:read|write)|ilbert(?:(?:2)?)|rtf(?:early|move(?:(?:2)?)|reverb|stat)|sboscil|vs(?:[123])|ypot)|i(?:hold|mage(?:create|free|getpixel|load|s(?:ave|etpixel|ize))|n(?:(?:32|ch|it(?:(?:c(?:14|21|7))?)|let(?:kid|[afkv])|rg|s(?:global|remot)|te(?:g|r(?:leave|p))|value|[hoqstxz])?))|j(?:acktransport|itter(?:(?:2)?)|oystick|spline)|l(?:a(?:_(?:i_(?:a(?:dd_(?:m(?:[cr])|v(?:[cr]))|ssign_(?:m(?:[cr])|t|v(?:[cr])))|conjugate_(?:m(?:[cr])|v(?:[cr]))|d(?:i(?:stance_v(?:[cr])|vide_(?:m(?:[cr])|v(?:[cr])))|ot_(?:m(?:c_vc|r_vr|[cr])|v(?:[cr])))|get_(?:m(?:[cr])|v(?:[cr]))|invert_m(?:[cr])|l(?:ower_solve_m(?:[cr])|u_(?:det_m(?:[cr])|factor_m(?:[cr])|solve_m(?:[cr])))|m(?:c_(?:create|set)|r_(?:create|set)|ultiply_(?:m(?:[cr])|v(?:[cr])))|norm(?:1_(?:m(?:[cr])|v(?:[cr]))|_(?:euclid_(?:m(?:[cr])|v(?:[cr]))|inf_(?:m(?:[cr])|v(?:[cr]))|max_m(?:[cr])))|print_(?:m(?:[cr])|v(?:[cr]))|qr_(?:eigen_m(?:[cr])|factor_m(?:[cr])|sym_eigen_m(?:[cr]))|random_(?:m(?:[cr])|v(?:[cr]))|s(?:ize_(?:m(?:[cr])|v(?:[cr]))|ubtract_(?:m(?:[cr])|v(?:[cr])))|t(?:_assign|ra(?:ce_m(?:[cr])|nspose_m(?:[cr])))|upper_solve_m(?:[cr])|v(?:c_(?:create|set)|r_(?:create|set)))|k_(?:a(?:_assign|dd_(?:m(?:[cr])|v(?:[cr]))|ssign_(?:m(?:[cr])|v(?:[cr])|[aft]))|c(?:onjugate_(?:m(?:[cr])|v(?:[cr]))|urrent_(?:f|vr))|d(?:i(?:stance_v(?:[cr])|vide_(?:m(?:[cr])|v(?:[cr])))|ot_(?:m(?:c_vc|r_vr|[cr])|v(?:[cr])))|f_assign|get_(?:m(?:[cr])|v(?:[cr]))|invert_m(?:[cr])|l(?:ower_solve_m(?:[cr])|u_(?:det_m(?:[cr])|factor_m(?:[cr])|solve_m(?:[cr])))|m(?:c_set|r_set|ultiply_(?:m(?:[cr])|v(?:[cr])))|norm(?:1_(?:m(?:[cr])|v(?:[cr]))|_(?:euclid_(?:m(?:[cr])|v(?:[cr]))|inf_(?:m(?:[cr])|v(?:[cr]))|max_m(?:[cr])))|qr_(?:eigen_m(?:[cr])|factor_m(?:[cr])|sym_eigen_m(?:[cr]))|random_(?:m(?:[cr])|v(?:[cr]))|subtract_(?:m(?:[cr])|v(?:[cr]))|t(?:_assign|race_m(?:[cr]))|upper_solve_m(?:[cr])|v(?:(?:[cr])_set)))|g(?:(?:ud)?)|stcycle)|enarray|f(?:o|sr)|i(?:mit(?:(?:1)?)|n(?:cos|e(?:(?:n(?:(?:r)?)|to)?)|k_(?:beat_(?:force|(?:ge|reques)t)|create|enable|is_enabled|metro|peers|tempo_(?:(?:[gs])et))|lin|rand|seg(?:(?:[br])?))|veconv)|o(?:cs(?:end|ig)|g(?:(?:10|2|btwo|curve)?)|op(?:seg(?:(?:p)?)|(?:[tx])seg)|renz|scil(?:(?:(?:(?:3)?)phs|[3x])?)|w(?:pass2|res(?:(?:x)?)))|p(?:c(?:anal|filter)|f(?:18|orm|reson)|hasor|interp|oscil(?:(?:sa(?:(?:2)?)|[3a])?)|re(?:ad|son)|s(?:hold(?:(?:p)?)|lot))|ufs)|m(?:a(?:ca|dsr|gs|nd(?:(?:[eo])l)|parray(?:(?:_i)?)|rimba|ssign|x(?:_k|a(?:bs(?:(?:accum)?)|ccum|lloc|rray))|[cx])|clock|delay|e(?:dian(?:(?:k)?)|tro(?:(?:2|bpm)?))|fb|i(?:d(?:global|i(?:arp|c(?:14|21|7|h(?:annelaftertouch|n)|ontrolchange|trl)|default|filestatus|in|noteo(?:ff|n(?:cps|key|oct|pch))|o(?:n(?:(?:2)?)|ut(?:(?:_i)?))|p(?:gm|itchbend|olyaftertouch|rogramchange)|tempo)|remot)|n(?:(?:a(?:bs(?:(?:accum)?)|ccum|rray)|cer)?)|rror)|o(?:d(?:e|matrix)|nitor|og(?:(?:ladder(?:(?:2)?)|vcf(?:(?:2)?))?)|scil)|p(?:3(?:bitrate|in|len|nchnls|out|s(?:cal|r))|ulse)|rtmsg|s2st|to(?:[fn])|u(?:ltitap|te)|v(?:c(?:hpf|lpf(?:[1234]))|mfilter)|xadsr)|n(?:chnls_hw|estedap|l(?:alp|filt(?:(?:2)?))|o(?:ise|t(?:eo(?:ff|n(?:(?:dur(?:(?:2)?))?))|num))|r(?:everb|pn)|s(?:amp|t(?:ance|r(?:num|str)))|t(?:o(?:[fm])|rpol)|xtpow2)|o(?:ct(?:ave|cps|midi(?:(?:b|nn)?)|pch)|labuffer|sc(?:bnk|il(?:(?:1i|ikt(?:(?:[ps])?)|[13insx])?))|ut(?:(?:32|all|ch|i(?:at|c(?:(?:14)?)|p(?:at|[bc]))|k(?:at|c(?:(?:14)?)|p(?:at|[bc]))|let(?:kid|[afkv])|q(?:[1234])|rg|s(?:[12])|value|[choqsxz])?))|p(?:5g(?:connect|data)|a(?:n(?:(?:2)?)|r(?:eq|t(?:2txt|i(?:als|kkel(?:(?:get|s(?:et|ync))?))))|ssign|ulstretch)|c(?:auchy|h(?:bend|midi(?:(?:b|nn)?)|oct|tom)|o(?:nvolve|unt))|d(?:clip|half(?:(?:y)?))|eak|gm(?:(?:assig|ch)n)|h(?:as(?:er(?:[12])|or(?:(?:bnk)?))|s)|i(?:n(?:dex|k(?:er|ish))|tch(?:(?:a(?:c|mdf))?))|l(?:a(?:net|terev)|(?:ltra|u)ck)|o(?:isson|l(?:2rect|y(?:aft|nomial))|rt(?:(?:k)?)|scil(?:(?:3)?)|w(?:(?:ershape|oftwo|s)?))|r(?:e(?:alloc|piano)|int(?:(?:_type|array|f_i|k(?:s2|[2s])|ln|sk|[fks])?)|oduct)|set|t(?:ablew|rack)|uts|v(?:add|bufread|cross|interp|oc|read|s(?:2(?:array|tab)|a(?:dsyn|nal|rp)|b(?:and(?:width|[pr])|in|lur|uf(?:fer|read(?:(?:2)?)))|c(?:ale|e(?:nt|ps)|(?:f|ros)s)|d(?:emix|is(?:kin|p))|envftw|f(?:ilter|r(?:e(?:ad|eze)|omarray)|t(?:[rw])|write)|g(?:ain|endy)|hift|i(?:fd|n(?:(?:fo|it)?))|l(?:ock|pc)|m(?:aska|ix|o(?:(?:ot|rp)h))|o(?:sc|ut)|pitch|t(?:anal|encil|race)|voc|warp|ynth))|wd|y(?:assign(?:(?:[it])?)|call(?:(?:1(?:[it])|2(?:[it])|3(?:[it])|4(?:[it])|5(?:[it])|6(?:[it])|7(?:[it])|8(?:[it])|ni|[12345678int])?)|e(?:val(?:(?:[it])?)|xec(?:(?:[it])?))|init|l(?:assign(?:(?:[it])?)|call(?:(?:1(?:[it])|2(?:[it])|3(?:[it])|4(?:[it])|5(?:[it])|6(?:[it])|7(?:[it])|8(?:[it])|ni|[12345678int])?)|e(?:val(?:(?:[it])?)|xec(?:(?:[it])?))|run(?:(?:[it])?))|run(?:(?:[it])?)))|q(?:inf|nan)|r(?:2c|and(?:(?:om(?:(?:[hi])?)|[chi])?)|bjeq|e(?:ad(?:clock|fi|k(?:[234s])|sc(?:ore|ratch)|[fk])|ct2pol|lease|mo(?:teport|ve)|pluck|s(?:hapearray|on(?:(?:bnk|xk|[krxyz])?)|yn)|verb(?:(?:2|sc)?)|windscore|zzy)|fft|ifft|ms|nd(?:(?:31|seed)?)|ound|spline|tclock)|s(?:16b14|32b14|a(?:mphold|ndpaper)|c(?:_(?:lag(?:(?:ud)?)|phasor|trig)|a(?:le(?:(?:2|array)?)|n(?:hammer|map|smap|table|u2|[su]))|hed(?:kwhen(?:(?:named)?)|ule(?:(?:k)?)|when)|oreline(?:(?:_i)?))|e(?:ed|kere|lect|mitone|nse(?:(?:key)?)|q(?:time(?:(?:2)?)|u)|rial(?:Begin|End|Flush|Print|Read|Write(?:(?:_i)?))|t(?:c(?:(?:o|tr)l)|ksmps|row|scorepos))|f(?:i(?:list|nstr(?:(?:3m|[3m])?))|lo(?:ad|oper)|p(?:assign|l(?:ay(?:(?:3m|[3m])?)|ist)|reset))|h(?:aker|ift(?:in|out))|i(?:gnum|n(?:(?:h|inv|syn)?))|kf|l(?:eighbells|i(?:cearray(?:(?:_i)?)|der(?:16(?:(?:f|table(?:(?:f)?))?)|32(?:(?:f|table(?:(?:f)?))?)|64(?:(?:f|table(?:(?:f)?))?)|8(?:(?:f|table(?:(?:f)?))?)|Kawai)))|nd(?:loop|warp(?:(?:st)?))|o(?:ck(?:recv(?:(?:s)?)|send(?:(?:s)?))|rt(?:[ad])|undin)|p(?:a(?:ce|t3d(?:(?:[it])?))|dist|f|litrig|rintf(?:(?:k)?)|send)|q(?:rt|uinewave)|t(?:2ms|atevar|errain|ix|r(?:c(?:at(?:(?:k)?)|har(?:(?:k)?)|mp(?:(?:k)?)|py(?:(?:k)?))|e(?:cv|son)|fromurl|get|in(?:dex(?:(?:k)?)|g2array)|l(?:en(?:(?:k)?)|ower(?:(?:k)?))|rindex(?:(?:k)?)|s(?:et|trip|ub(?:(?:k)?))|to(?:(?:[dl])k|[dl])|upper(?:(?:k)?))|send)|u(?:binstr(?:(?:init)?)|m(?:(?:array)?))|v(?:filter|n)|y(?:nc(?:grain|loop|phasor)|stem(?:(?:_i)?)))|t(?:a(?:b(?:2(?:array|pvs)|_i|ifd|le(?:(?:3kt|copy|filter(?:(?:i)?)|gpw|i(?:copy|gpw|kt|mix)|kt|mix|ng|ra|s(?:eg|huffle(?:(?:i)?))|w(?:a|kt)|x(?:kt|seg)|[3iw])?)|morph(?:(?:ak|[ai])?)|play|rec|sum|w(?:(?:_i)?))|mbourine|n(?:h|inv(?:(?:2)?))|[bn])|bvcf|emp(?:est|o(?:(?:(?:sc|v)al)?))|i(?:me(?:dseq|inst(?:[ks])|[ks])|val)|lineto|one(?:(?:[kx])?)|r(?:a(?:dsyn|n(?:dom|seg(?:(?:[br])?)))|cross|filter|highest|i(?:g(?:Expseg|Linseg|expseg|ger|hold|linseg|phasor|seq)|m(?:(?:_i)?)|rand)|lowest|mix|s(?:cale|(?:hif|pli)t))|urno(?:ff(?:(?:2_i|[23])?)|n)|vconv)|u(?:n(?:irand|wrap)|psamp|r(?:andom|d))|v(?:a(?:ctrol|dd(?:(?:_i|v(?:(?:_i)?))?)|get|lpass|set)|bap(?:(?:gmove|lsinit|(?:(?:z)?)move|[gz])?)|c(?:ella|lpf|o(?:(?:2(?:(?:(?:f|i(?:f|ni))t)?)|mb|py(?:(?:_i)?))?))|d(?:el(?:_k|ay(?:(?:x(?:w(?:[qs])|[qsw])|[3kx])?))|ivv(?:(?:_i)?))|e(?:cdelay|loc|xp(?:(?:_i|seg|v(?:(?:_i)?))?))|i(?:b(?:es|r(?:(?:ato)?))|ncr)|l(?:i(?:mit|nseg)|owres)|m(?:ap|irror|ult(?:(?:_i|v(?:(?:_i)?))?))|o(?:ice|sim)|p(?:haseseg|o(?:rt|w(?:(?:_i|v(?:(?:_i)?))?))|s|voc)|rand(?:[hi])|subv(?:(?:_i)?)|tab(?:le(?:1k|w(?:[aik])|[aik])|w(?:[aik])|[aik])|wrap)|w(?:aveset|e(?:bsocket|ibull)|g(?:b(?:ow(?:(?:edbar)?)|rass)|clar|flute|pluck(?:(?:2)?)|uide(?:[12]))|i(?:i(?:connect|data|range|send)|ndow)|r(?:ap|itescratch)|terrain(?:(?:2)?))|x(?:adsr|in|out|tratim|yscale)|z(?:a(?:cl|kinit|mod|rg|wm|[rw])|df_(?:1pole(?:(?:_mode)?)|2pole(?:(?:_mode)?)|ladder)|filter2|i(?:wm|[rw])|k(?:cl|mod|wm|[rw]))|[Saikp])\\b|\\b(OSCsendA|array|b(?:e(?:adsynt|osc)|form(?:(?:de|en)c)|uchla)|copy2(?:(?:[ft])tab)|getrowlin|hrtfer|ktableseg|l(?:entab|ua_(?:exec|i(?:aopcall(?:(?:_off)?)|kopcall(?:(?:_off)?)|opcall(?:(?:_off)?))|opdef))|m(?:axtab|intab|p3scal_(?:check|load(?:(?:2)?)|play(?:(?:2)?)))|p(?:op(?:(?:_f)?)|table(?:(?:iw|[3i])?)|ush(?:(?:_f)?)|vsgendy)|s(?:calet|ignalflowgraph|ndload|o(?:cksend_k|undout(?:(?:s)?))|pec(?:addm|di(?:ff|sp)|filt|hist|ptrk|s(?:cal|um)|trum)|tack|um(?:TableFilter|tab)|ystime)|t(?:ab(?:gen|leiw|map(?:(?:_i)?)|rowlin|slice)|b(?:0_init|1(?:(?:(?:[012345])?)_init|[012345])|(?:[23456789])_init|[0123456789]))|vbap(?:1(?:6|move)|(?:[48])move|[48])|x(?:scan(?:map|smap|[su])|yin))\\b)(?:(\\:)([A-Za-z]))?","captures":{"1":{"name":"support.function.csound"},"2":{"name":"invalid.deprecated.csound"},"3":{"name":"punctuation.type-annotation.csound"},"4":{"name":"type-annotation.storage.type.csound"}}},{"name":"meta.other.csound","match":"\\b[A-Z_a-z]\\w*\\b"}]},"preprocessorDirectives":{"patterns":[{"name":"keyword.preprocessor.csound","match":"\\#(?:e(?:lse|nd(?:if)?)\\b|\\#\\#)|@+[ \\t]*\\d*"},{"begin":"\\#includestr","end":"$","patterns":[{"include":"#commentsAndMacroUses"},{"name":"string.includestr.csound","begin":"\"","end":"\"","patterns":[{"include":"#macroUses"},{"include":"#lineContinuations"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.csound"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.csound"}}}],"beginCaptures":{"0":{"name":"keyword.includestr.preprocessor.csound"}}},{"begin":"\\#include","end":"$","patterns":[{"include":"#commentsAndMacroUses"},{"name":"string.include.csound","begin":"([^ \\t])","end":"\\1","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.csound"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.csound"}}}],"beginCaptures":{"0":{"name":"keyword.include.preprocessor.csound"}}},{"begin":"\\#[ \\t]*define","end":"(?\u003c=^\\#)|(?\u003c=[^\\\\]\\#)","patterns":[{"include":"#commentsAndMacroUses"},{"include":"#macroNames"},{"begin":"\\(","end":"\\)","patterns":[{"name":"variable.parameter.preprocessor.csound","match":"[A-Z_a-z]\\w*\\b"}]},{"begin":"\\#","end":"(?\u003c!\\\\)\\#","patterns":[{"name":"constant.character.escape.csound","match":"\\\\\\#"},{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.definition.macro.begin.csound"}},"endCaptures":{"0":{"name":"punctuation.definition.macro.end.csound"}}}],"beginCaptures":{"0":{"name":"keyword.define.preprocessor.csound"}}},{"begin":"\\#(?:i(?:fn?def)|undef)","end":"$","patterns":[{"include":"#commentsAndMacroUses"},{"include":"#macroNames"}],"beginCaptures":{"0":{"name":"keyword.preprocessor.csound"}}}]},"quotedStringContents":{"patterns":[{"include":"#macroUses"},{"include":"#bracedStringContents"},{"include":"#lineContinuations"},{"name":"invalid.illegal.csound","match":"[^\"\\\\]*[^\\n\"\\\\]$"}]},"quotedStrings":{"patterns":[{"name":"string.quoted.csound","begin":"\"","end":"\"","patterns":[{"include":"#quotedStringContents"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.csound"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.csound"}}}]},"semicolonComments":{"patterns":[{"name":"comment.line.semicolon.csound","begin":";","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.csound"}}}]}}}
1
+ {"name":"Csound","scopeName":"source.csound","patterns":[{"include":"#commentsAndMacroUses"},{"name":"meta.instrument-block.csound","begin":"\\b(?=instr\\b)","end":"\\bendin\\b","patterns":[{"name":"meta.instrument-declaration.csound","begin":"instr","end":"$","patterns":[{"name":"entity.name.function.csound","match":"\\d+|[A-Z_a-z]\\w*"},{"include":"#commentsAndMacroUses"}],"beginCaptures":{"0":{"name":"keyword.function.csound"}}},{"include":"#commentsAndMacroUses"},{"include":"#labels"},{"include":"#partialExpressions"}],"endCaptures":{"0":{"name":"keyword.other.csound"}}},{"name":"meta.opcode-definition.csound","begin":"\\b(?=opcode\\b)","end":"\\bendop\\b","patterns":[{"name":"meta.opcode-declaration.csound","begin":"opcode","end":"$","patterns":[{"name":"meta.opcode-details.csound","begin":"[A-Z_a-z]\\w*\\b","end":"$","patterns":[{"name":"meta.opcode-type-signature.csound","begin":"\\b(?:0|[aijkOPVKopS\\[\\]]+)","end":",|$","patterns":[{"include":"#commentsAndMacroUses"}],"beginCaptures":{"0":{"name":"storage.type.csound"}}},{"include":"#commentsAndMacroUses"}],"beginCaptures":{"0":{"name":"entity.name.function.opcode.csound"}}},{"include":"#commentsAndMacroUses"}],"beginCaptures":{"0":{"name":"keyword.function.csound"}}},{"include":"#commentsAndMacroUses"},{"include":"#labels"},{"include":"#partialExpressions"}],"endCaptures":{"0":{"name":"keyword.other.csound"}}},{"include":"#labels"},{"include":"#partialExpressions"}],"repository":{"bracedStringContents":{"patterns":[{"include":"#escapeSequences"},{"include":"#formatSpecifiers"}]},"comments":{"patterns":[{"name":"comment.block.csound","begin":"/\\*","end":"\\*/","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.csound"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.end.csound"}}},{"name":"comment.line.double-slash.csound","begin":"//","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.csound"}}},{"include":"#semicolonComments"},{"include":"#lineContinuations"}]},"commentsAndMacroUses":{"patterns":[{"include":"#comments"},{"include":"#macroUses"}]},"decimalNumbers":{"patterns":[{"name":"constant.numeric.integer.decimal.csound","match":"\\d+"}]},"escapeSequences":{"patterns":[{"name":"constant.character.escape.csound","match":"\\\\(?:[abfnrtv\"\\\\]|[0-7]{1,3})"}]},"floatingPointNumbers":{"patterns":[{"name":"constant.numeric.float.csound","match":"(?:\\d+[Ee][+-]?\\d+)|(?:\\d+\\.\\d*|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?"}]},"formatSpecifiers":{"patterns":[{"name":"constant.character.placeholder.csound","match":"%[#0\\- +]*\\d*(?:\\.\\d+)?[diuoxXfFeEgGaAcs]"},{"name":"constant.character.escape.csound","match":"%%"}]},"labels":{"patterns":[{"match":"^[ \\t]*(\\w+)(:)(?:[ \\t]+|$)","captures":{"1":{"name":"entity.name.label.csound"},"2":{"name":"entity.punctuation.label.csound"}}}]},"lineContinuations":{"patterns":[{"match":"(\\\\)[ \\t]*((;).*)?$","captures":{"1":{"name":"constant.character.escape.line-continuation.csound"},"2":{"name":"comment.line.semicolon.csound"},"3":{"name":"punctuation.definition.comment.csound"}}}]},"macroNames":{"patterns":[{"match":"([A-Z_a-z]\\w*)|(\\d+\\w*)","captures":{"1":{"name":"entity.name.function.preprocessor.csound"},"2":{"name":"invalid.illegal.csound"}}}]},"macroParameterValueParenthetical":{"patterns":[{"name":"meta.macro-parameter-value-parenthetical.csound","begin":"\\(","end":"\\)","patterns":[{"include":"#macroParameterValueParenthetical"},{"name":"constant.character.escape.csound","match":"\\\\\\)"},{"include":"$self"}]}]},"macroUses":{"patterns":[{"name":"meta.function-like-macro-use.csound","begin":"(\\$[A-Z_a-z]\\w*\\.?)\\(","end":"\\)","patterns":[{"name":"string.quoted.csound","begin":"\"","end":"\"","patterns":[{"match":"([#'()])|(\\\\[#'()])","captures":{"1":{"name":"invalid.illegal.csound"},"2":{"name":"constant.character.escape.csound"}}},{"include":"#quotedStringContents"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.csound"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.csound"}}},{"name":"string.braced.csound","begin":"\\{\\{","end":"\\}\\}","patterns":[{"match":"([#'()])|(\\\\[#'()])","captures":{"1":{"name":"invalid.illegal.csound"},"2":{"name":"constant.character.escape.csound"}}},{"include":"#bracedStringContents"}]},{"include":"#macroParameterValueParenthetical"},{"name":"punctuation.macro-parameter-separator.csound","match":"[#']"},{"include":"$self"}],"beginCaptures":{"1":{"name":"entity.name.function.preprocessor.csound"}}},{"name":"entity.name.function.preprocessor.csound","match":"\\$[A-Z_a-z]\\w*(?:\\.|\\b)"}]},"numbers":{"patterns":[{"include":"#floatingPointNumbers"},{"match":"(0[Xx])([0-9A-Fa-f]+)","captures":{"1":{"name":"storage.type.number.csound"},"2":{"name":"constant.numeric.integer.hexadecimal.csound"}}},{"include":"#decimalNumbers"}]},"partialExpressions":{"patterns":[{"include":"#preprocessorDirectives"},{"name":"variable.language.csound","match":"\\b(?:0dbfs|A4|k(?:r|smps)|nchnls(?:_i)?|sr)\\b"},{"include":"#numbers"},{"name":"keyword.operator.csound","match":"\\+=|-=|\\*=|/=|\u003c\u003c|\u003e\u003e|\u003c=|\u003e=|==|!=|\u0026\u0026|\\|\\||[~¬]|[=!+\\-*/^%\u0026|\u003c\u003e#?:]"},{"include":"#quotedStrings"},{"name":"string.braced.csound","begin":"\\{\\{","end":"\\}\\}","patterns":[{"include":"#bracedStringContents"}]},{"name":"keyword.control.csound","match":"\\b(?:do|else(?:if)?|end(?:if|until)|fi|i(?:f|then)|kthen|od|r(?:ir)?eturn|then|until|while)\\b"},{"begin":"\\b((?:c(?:g|in?|k|nk?)goto)|goto|igoto|kgoto|loop_[gl][et]|r(?:einit|igoto)|ti(?:goto|mout))\\b","end":"(\\w+)\\s*(?:((//).*)|((;).*))?$","patterns":[{"include":"#commentsAndMacroUses"},{"include":"#partialExpressions"}],"beginCaptures":{"1":{"name":"keyword.control.csound"}},"endCaptures":{"1":{"name":"entity.name.label.csound"},"2":{"name":"comment.line.double-slash.csound"},"3":{"name":"punctuation.definition.comment.csound"},"4":{"name":"comment.line.semicolon.csound"},"5":{"name":"punctuation.definition.comment.csound"}}},{"begin":"\\b(printk?s)[ \\t]*(?=\")","end":"(?\u003c=\")","patterns":[{"name":"string.quoted.csound","begin":"\"","end":"\"","patterns":[{"include":"#macroUses"},{"name":"constant.character.escape.csound","match":"\\\\\\\\[aAbBnNrRtT]"},{"include":"#bracedStringContents"},{"include":"#lineContinuations"},{"name":"constant.character.escape.csound","match":"%[!nNrRtT]|[~^]{1,2}"},{"name":"invalid.illegal.csound","match":"[^\"\\\\]*[^\\n\"\\\\]$"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.csound"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.csound"}}}],"beginCaptures":{"1":{"name":"support.function.csound"}}},{"begin":"\\b(readscore|scoreline(?:_i)?)[ \\t]*(\\{\\{)","end":"\\}\\}","patterns":[{"include":"source.csound-score"}],"beginCaptures":{"1":{"name":"support.function.csound"},"2":{"name":"string.braced.csound"}},"endCaptures":{"0":{"name":"string.braced.csound"}}},{"begin":"\\b(pyl?run[it]?)[ \\t]*(\\{\\{)","end":"\\}\\}","patterns":[{"include":"source.python"}],"beginCaptures":{"1":{"name":"support.function.csound"},"2":{"name":"string.braced.csound"}},"endCaptures":{"0":{"name":"string.braced.csound"}}},{"begin":"\\b(lua_exec)[ \\t]*(\\{\\{)","end":"\\}\\}","patterns":[{"include":"source.lua"}],"beginCaptures":{"1":{"name":"support.function.csound"},"2":{"name":"string.braced.csound"}},"endCaptures":{"0":{"name":"string.braced.csound"}}},{"begin":"\\blua_opdef\\b","end":"\\}\\}","patterns":[{"include":"#quotedStrings"},{"begin":"\\{\\{","end":"(?=\\}\\})","patterns":[{"include":"source.lua"}],"beginCaptures":{"0":{"name":"string.braced.csound"}}}],"beginCaptures":{"0":{"name":"support.function.csound"}},"endCaptures":{"0":{"name":"string.braced.csound"}}},{"name":"support.variable.csound","match":"\\bp\\d+\\b"},{"match":"(?:\\b(ATS(?:add(?:(?:nz)?)|bufread|cross|in(?:fo|terpread)|partialtap|read(?:(?:nz)?)|sinnoi)|FL(?:b(?:ox|ut(?:Bank|ton))|c(?:loseButton|o(?:lor(?:(?:2)?)|unt))|execButton|g(?:etsnap|roup(?:(?:(?:E|_e)nd)?))|h(?:ide|vsBox(?:(?:SetValue)?))|joy|k(?:eyIn|nob)|l(?:abel|oadsnap)|mouse|p(?:a(?:ck(?:(?:(?:E|_e)nd)?)|nel(?:(?:(?:E|_e)nd)?))|rintk(?:(?:2)?))|r(?:oller|un)|s(?:avesnap|croll(?:(?:(?:E|_e)nd)?)|et(?:Align|Box|Color(?:(?:2)?)|Font|Position|S(?:ize|napGroup)|Text(?:(?:Color|(?:Siz|Typ)e)?)|Val(?:(?:(?:(?:_)?)i)?)|snap)|how|lid(?:Bnk(?:(?:2(?:(?:Set(?:(?:k)?))?)|GetHandle|Set(?:(?:k)?))?)|er))|t(?:abs(?:(?:(?:E|_e)nd)?)|ext)|update|v(?:alue|keybd|slidBnk(?:(?:2)?))|xyin)|Jacko(?:Audio(?:In(?:(?:Connect)?)|Out(?:(?:Connect)?))|Freewheel|In(?:fo|it)|Midi(?:(?:InConnec|Ou(?:(?:tConnec)?))t)|NoteOut|On|Transport)|K35_(?:(?:[hl])pf)|Mixer(?:Clear|GetLevel|Receive|Se(?:nd|tLevel(?:(?:_i)?)))|OSC(?:bundle|count|init(?:(?:M)?)|listen|raw|send(?:(?:_lo)?))|STK(?:B(?:andedWG|eeThree|low(?:Botl|Hole)|owed|rass)|Clarinet|Drummer|F(?:MVoices|lute)|HevyMetl|M(?:andolin|o(?:dalBar|og))|P(?:ercFlut|lucked)|R(?:esonate|hodey)|S(?:axofony|hakers|i(?:mple|tar)|tifKarp)|TubeBell|VoicForm|W(?:histle|urley))|a(?:bs|ctive|ds(?:r|yn(?:(?:t(?:(?:2)?))?))|ftouch|l(?:lpole|pass|wayson)|mp(?:db(?:(?:fs)?)|midi(?:(?:curve|d)?))|poleparams|r(?:duino(?:Read(?:(?:F)?)|St(?:art|op))|eson(?:(?:k)?))|tone(?:(?:[kx])?)|utocorr)|b(?:a(?:bo|lance(?:(?:2)?)|mboo|rmodel)|bcut(?:[ms])|e(?:(?:tara|xpr)nd)|form(?:dec(?:[12])|enc1)|i(?:nit|quad(?:(?:a)?)|rnd)|ob|pf(?:(?:cos)?)|qrez|u(?:t(?:b(?:[pr])|hp|lp|t(?:er(?:b(?:[pr])|(?:[hl])p)|on))|zz))|c(?:2r|a(?:basa|uchy(?:(?:i)?))|brt|e(?:il|ll|nt(?:(?:roid)?)|ps(?:(?:inv)?))|h(?:an(?:ctrl|ged(?:(?:2)?)|[io])|e(?:byshevpoly|ckbox)|n(?:_(?:[Sak])|clear|export|get(?:(?:ks|[aiks])?)|mix|params|set(?:(?:ks|[aiks])?))|uap)|l(?:ear|filt|ip|ocko(?:ff|n))|mp(?:(?:lxprod)?)|nt(?:C(?:reate|ycles)|Delete(?:(?:_i)?)|Re(?:ad|set)|State)|o(?:m(?:b(?:(?:inv)?)|p(?:ile(?:csd|orc|str)|ress(?:(?:2)?)))|n(?:nect|trol|v(?:(?:l|olv)e))|py(?:a2ftab|f2array)|s(?:(?:h|inv|seg(?:(?:[br])?))?)|unt(?:(?:_i)?))|p(?:s(?:2pch|midi(?:(?:b|nn)?)|oct|pch|t(?:mid|un(?:(?:i)?))|xpch)|u(?:meter|prc))|r(?:oss(?:2|fm(?:(?:i|pm(?:(?:i)?))?)|pm(?:(?:i)?))|unch)|t(?:lchn|rl(?:14|21|7|init|pr(?:eset|int(?:(?:presets)?))|s(?:ave|elect)))|userrnd)|d(?:a(?:m|te(?:(?:s)?))|b(?:(?:(?:(?:fs)?)amp)?)|c(?:block(?:(?:2)?)|onv|t(?:(?:inv)?))|e(?:interleave|l(?:ay(?:(?:[1krw])?)|tap(?:(?:xw|[3inx])?))|norm)|i(?:ff|ode_ladder|rectory|s(?:k(?:grain|in(?:(?:2)?))|p(?:fft|lay)|tort(?:(?:1)?))|vz)|o(?:ppler|t|wnsamp)|ripwater|ssi(?:a(?:ctivate|udio)|ctls|(?:ini|lis)t)|u(?:mpk(?:(?:[234])?)|s(?:errnd|t(?:(?:2)?))))|e(?:lapsed(?:cycles|time)|nvlpx(?:(?:r)?)|phasor|qfil|v(?:alstr|ent(?:(?:_i|cycles|time)?))|x(?:citer|itnow|p(?:(?:curve|on|rand(?:(?:i)?)|seg(?:(?:ba|[abr])?))?)))|f(?:a(?:reylen(?:(?:i)?)|ust(?:audio|c(?:ompile|tl)|dsp|gen|play))|ft(?:(?:inv)?)|i(?:close|l(?:e(?:bit|len|nchnls|peak|s(?:cal|r)|valid)|larray|ter2)|n(?:(?:[ik])?)|open)|l(?:a(?:nger|shtxt)|oo(?:per(?:(?:2)?)|r)|uid(?:AllOut|C(?:C(?:[ik])|ontrol)|Engine|Info|Load|Note|Out|ProgramSelect|SetInterpMethod))|m(?:a(?:nal|x)|b(?:3|ell)|in|metal|od|percfl|(?:rhod|voic|wurli)e)|o(?:f(?:2|ilter)|l(?:d|low(?:(?:2)?))|scil(?:(?:i)?)|ut(?:(?:ir|[ik])?)|[fg])|print(?:(?:(?:k)?)s)|r(?:a(?:c(?:(?:talnoise)?)|mebuffer)|eeverb)|t(?:audio|c(?:hnls|onv|ps)|exists|free|gen(?:(?:once|tmp)?)|l(?:en|oad(?:(?:k)?)|ptim)|morf|om|print|resize(?:(?:i)?)|s(?:a(?:mplebank|ve(?:(?:k)?))|et|lice(?:(?:i)?)|r)))|g(?:a(?:in(?:(?:slider)?)|uss(?:(?:i|trig)?))|buzz|e(?:n(?:array(?:(?:_i)?)|dy(?:(?:[cx])?))|t(?:c(?:fg|ol)|ftargs|row|seed))|ogobel|ra(?:in(?:(?:[23])?)|nule)|t(?:adsr|f)|uiro)|h(?:armon(?:(?:[234])?)|df5(?:read|write)|ilbert(?:(?:2)?)|rtf(?:early|move(?:(?:2)?)|reverb|stat)|sboscil|vs(?:[123])|ypot)|i(?:hold|mage(?:create|free|getpixel|load|s(?:ave|etpixel|ize))|n(?:(?:32|ch|it(?:(?:c(?:14|21|7))?)|let(?:kid|[afkv])|rg|s(?:global|remot)|te(?:g|r(?:leave|p))|value|[hoqstxz])?))|j(?:acktransport|itter(?:(?:2)?)|oystick|spline)|l(?:a(?:_(?:i_(?:a(?:dd_(?:m(?:[cr])|v(?:[cr]))|ssign_(?:m(?:[cr])|t|v(?:[cr])))|conjugate_(?:m(?:[cr])|v(?:[cr]))|d(?:i(?:stance_v(?:[cr])|vide_(?:m(?:[cr])|v(?:[cr])))|ot_(?:m(?:c_vc|r_vr|[cr])|v(?:[cr])))|get_(?:m(?:[cr])|v(?:[cr]))|invert_m(?:[cr])|l(?:ower_solve_m(?:[cr])|u_(?:det_m(?:[cr])|factor_m(?:[cr])|solve_m(?:[cr])))|m(?:c_(?:create|set)|r_(?:create|set)|ultiply_(?:m(?:[cr])|v(?:[cr])))|norm(?:1_(?:m(?:[cr])|v(?:[cr]))|_(?:euclid_(?:m(?:[cr])|v(?:[cr]))|inf_(?:m(?:[cr])|v(?:[cr]))|max_m(?:[cr])))|print_(?:m(?:[cr])|v(?:[cr]))|qr_(?:eigen_m(?:[cr])|factor_m(?:[cr])|sym_eigen_m(?:[cr]))|random_(?:m(?:[cr])|v(?:[cr]))|s(?:ize_(?:m(?:[cr])|v(?:[cr]))|ubtract_(?:m(?:[cr])|v(?:[cr])))|t(?:_assign|ra(?:ce_m(?:[cr])|nspose_m(?:[cr])))|upper_solve_m(?:[cr])|v(?:c_(?:create|set)|r_(?:create|set)))|k_(?:a(?:_assign|dd_(?:m(?:[cr])|v(?:[cr]))|ssign_(?:m(?:[cr])|v(?:[cr])|[aft]))|c(?:onjugate_(?:m(?:[cr])|v(?:[cr]))|urrent_(?:f|vr))|d(?:i(?:stance_v(?:[cr])|vide_(?:m(?:[cr])|v(?:[cr])))|ot_(?:m(?:c_vc|r_vr|[cr])|v(?:[cr])))|f_assign|get_(?:m(?:[cr])|v(?:[cr]))|invert_m(?:[cr])|l(?:ower_solve_m(?:[cr])|u_(?:det_m(?:[cr])|factor_m(?:[cr])|solve_m(?:[cr])))|m(?:c_set|r_set|ultiply_(?:m(?:[cr])|v(?:[cr])))|norm(?:1_(?:m(?:[cr])|v(?:[cr]))|_(?:euclid_(?:m(?:[cr])|v(?:[cr]))|inf_(?:m(?:[cr])|v(?:[cr]))|max_m(?:[cr])))|qr_(?:eigen_m(?:[cr])|factor_m(?:[cr])|sym_eigen_m(?:[cr]))|random_(?:m(?:[cr])|v(?:[cr]))|subtract_(?:m(?:[cr])|v(?:[cr]))|t(?:_assign|race_m(?:[cr]))|upper_solve_m(?:[cr])|v(?:(?:[cr])_set)))|g(?:(?:ud)?)|stcycle)|enarray|f(?:o|sr)|i(?:mit(?:(?:1)?)|n(?:cos|e(?:(?:n(?:(?:r)?)|to)?)|k_(?:beat_(?:force|(?:ge|reques)t)|create|enable|is_enabled|metro|peers|tempo_(?:(?:[gs])et))|lin|rand|seg(?:(?:[br])?))|veconv)|o(?:cs(?:end|ig)|g(?:(?:10|2|btwo|curve)?)|op(?:seg(?:(?:p)?)|(?:[tx])seg)|renz|scil(?:(?:(?:(?:3)?)phs|[3x])?)|w(?:pass2|res(?:(?:x)?)))|p(?:c(?:anal|filter)|f(?:18|orm|reson)|hasor|interp|oscil(?:(?:sa(?:(?:2)?)|[3a])?)|re(?:ad|son)|s(?:hold(?:(?:p)?)|lot))|ufs)|m(?:a(?:ca|dsr|gs|nd(?:(?:[eo])l)|parray(?:(?:_i)?)|rimba|ssign|x(?:_k|a(?:bs(?:(?:accum)?)|ccum|lloc|rray))|[cx])|clock|delay|e(?:dian(?:(?:k)?)|tro(?:(?:2|bpm)?))|fb|i(?:d(?:global|i(?:arp|c(?:14|21|7|h(?:annelaftertouch|n)|ontrolchange|trl)|default|filestatus|in|noteo(?:ff|n(?:cps|key|oct|pch))|o(?:n(?:(?:2)?)|ut(?:(?:_i)?))|p(?:gm|itchbend|olyaftertouch|rogramchange)|tempo)|remot)|n(?:(?:a(?:bs(?:(?:accum)?)|ccum|rray)|cer)?)|rror)|o(?:d(?:e|matrix)|nitor|og(?:(?:ladder(?:(?:2)?)|vcf(?:(?:2)?))?)|scil)|p(?:3(?:bitrate|in|len|nchnls|out|s(?:cal|r))|ulse)|rtmsg|s2st|to(?:[fn])|u(?:ltitap|te)|v(?:c(?:hpf|lpf(?:[1234]))|mfilter)|xadsr)|n(?:chnls_hw|estedap|l(?:alp|filt(?:(?:2)?))|o(?:ise|t(?:eo(?:ff|n(?:(?:dur(?:(?:2)?))?))|num))|r(?:everb|pn)|s(?:amp|t(?:ance|r(?:num|str)))|t(?:o(?:[fm])|rpol)|xtpow2)|o(?:ct(?:ave|cps|midi(?:(?:b|nn)?)|pch)|labuffer|sc(?:bnk|il(?:(?:1i|ikt(?:(?:[ps])?)|[13insx])?))|ut(?:(?:32|all|ch|i(?:at|c(?:(?:14)?)|p(?:at|[bc]))|k(?:at|c(?:(?:14)?)|p(?:at|[bc]))|let(?:kid|[afkv])|q(?:[1234])|rg|s(?:[12])|value|[choqsxz])?))|p(?:5g(?:connect|data)|a(?:n(?:(?:2)?)|r(?:eq|t(?:2txt|i(?:als|kkel(?:(?:get|s(?:et|ync))?))))|ssign|ulstretch)|c(?:auchy|h(?:bend|midi(?:(?:b|nn)?)|oct|tom)|o(?:nvolve|unt))|d(?:clip|half(?:(?:y)?))|eak|gm(?:(?:assig|ch)n)|h(?:as(?:er(?:[12])|or(?:(?:bnk)?))|s)|i(?:n(?:dex|k(?:er|ish))|tch(?:(?:a(?:c|mdf))?))|l(?:a(?:net|terev)|(?:ltra|u)ck)|o(?:isson|l(?:2rect|y(?:aft|nomial))|rt(?:(?:k)?)|scil(?:(?:3)?)|w(?:(?:ershape|oftwo|s)?))|r(?:e(?:alloc|piano)|int(?:(?:_type|array|f_i|k(?:s2|[2s])|ln|sk|[fks])?)|oduct)|set|t(?:ablew|rack)|uts|v(?:add|bufread|cross|interp|oc|read|s(?:2(?:array|tab)|a(?:dsyn|nal|rp)|b(?:and(?:width|[pr])|in|lur|uf(?:fer|read(?:(?:2)?)))|c(?:ale|e(?:nt|ps)|(?:f|ros)s)|d(?:emix|is(?:kin|p))|envftw|f(?:ilter|r(?:e(?:ad|eze)|omarray)|t(?:[rw])|write)|g(?:ain|endy)|hift|i(?:fd|n(?:(?:fo|it)?))|l(?:ock|pc)|m(?:aska|ix|o(?:(?:ot|rp)h))|o(?:sc|ut)|pitch|t(?:anal|encil|race)|voc|warp|ynth))|wd|y(?:assign(?:(?:[it])?)|call(?:(?:1(?:[it])|2(?:[it])|3(?:[it])|4(?:[it])|5(?:[it])|6(?:[it])|7(?:[it])|8(?:[it])|ni|[12345678int])?)|e(?:val(?:(?:[it])?)|xec(?:(?:[it])?))|init|l(?:assign(?:(?:[it])?)|call(?:(?:1(?:[it])|2(?:[it])|3(?:[it])|4(?:[it])|5(?:[it])|6(?:[it])|7(?:[it])|8(?:[it])|ni|[12345678int])?)|e(?:val(?:(?:[it])?)|xec(?:(?:[it])?))|run(?:(?:[it])?))|run(?:(?:[it])?)))|q(?:inf|nan)|r(?:2c|and(?:(?:om(?:(?:[hi])?)|[chi])?)|bjeq|e(?:ad(?:clock|fi|k(?:[234s])|sc(?:ore|ratch)|[fk])|ct2pol|lease|mo(?:teport|ve)|pluck|s(?:hapearray|on(?:(?:bnk|xk|[krxyz])?)|yn)|verb(?:(?:2|sc)?)|windscore|zzy)|fft|ifft|ms|nd(?:(?:31|seed)?)|ound|spline|tclock)|s(?:16b14|32b14|a(?:mphold|ndpaper)|c(?:_(?:lag(?:(?:ud)?)|phasor|trig)|a(?:le(?:(?:2|array)?)|n(?:hammer|map|smap|table|u2|[su]))|hed(?:kwhen(?:(?:named)?)|ule(?:(?:k)?)|when)|oreline(?:(?:_i)?))|e(?:ed|kere|lect|mitone|nse(?:(?:key)?)|q(?:time(?:(?:2)?)|u(?:(?:state)?))|rial(?:Begin|End|Flush|Print|Read|Write(?:(?:_i)?))|t(?:c(?:(?:o|tr)l)|ksmps|row|scorepos))|f(?:i(?:list|nstr(?:(?:3m|[3m])?))|lo(?:ad|oper)|p(?:assign|l(?:ay(?:(?:3m|[3m])?)|ist)|reset))|h(?:aker|ift(?:in|out))|i(?:gnum|n(?:(?:h|inv|syn)?))|kf|l(?:eighbells|i(?:cearray(?:(?:_i)?)|der(?:16(?:(?:f|table(?:(?:f)?))?)|32(?:(?:f|table(?:(?:f)?))?)|64(?:(?:f|table(?:(?:f)?))?)|8(?:(?:f|table(?:(?:f)?))?)|Kawai)))|nd(?:loop|warp(?:(?:st)?))|o(?:ck(?:recv(?:(?:s)?)|send(?:(?:s)?))|rt(?:[ad])|undin)|p(?:a(?:ce|t3d(?:(?:[it])?))|dist|f|litrig|rintf(?:(?:k)?)|send)|q(?:rt|uinewave)|t(?:2ms|atevar|errain|ix|r(?:c(?:at(?:(?:k)?)|har(?:(?:k)?)|mp(?:(?:k)?)|py(?:(?:k)?))|e(?:cv|son)|fromurl|get|in(?:dex(?:(?:k)?)|g2array)|l(?:en(?:(?:k)?)|ower(?:(?:k)?))|rindex(?:(?:k)?)|s(?:et|trip|ub(?:(?:k)?))|to(?:(?:[dl])k|[dl])|upper(?:(?:k)?))|send)|u(?:binstr(?:(?:init)?)|m(?:(?:array)?))|v(?:filter|n)|y(?:nc(?:grain|loop|phasor)|stem(?:(?:_i)?)))|t(?:a(?:b(?:2(?:array|pvs)|_i|ifd|le(?:(?:3kt|copy|filter(?:(?:i)?)|gpw|i(?:copy|gpw|kt|mix)|kt|mix|ng|ra|s(?:eg|huffle(?:(?:i)?))|w(?:a|kt)|x(?:kt|seg)|[3iw])?)|morph(?:(?:ak|[ai])?)|play|rec|sum|w(?:(?:_i)?))|mbourine|n(?:h|inv(?:(?:2)?))|[bn])|bvcf|emp(?:est|o(?:(?:(?:sc|v)al)?))|i(?:me(?:dseq|inst(?:[ks])|[ks])|val)|lineto|one(?:(?:[kx])?)|r(?:a(?:dsyn|n(?:dom|seg(?:(?:[br])?)))|cross|filter|highest|i(?:g(?:Expseg|Linseg|expseg|ger|hold|linseg|phasor|seq)|m(?:(?:_i)?)|rand)|lowest|mix|s(?:cale|(?:hif|pli)t))|urno(?:ff(?:(?:2_i|[23])?)|n)|vconv)|u(?:n(?:irand|wrap)|psamp|r(?:andom|d))|v(?:a(?:ctrol|dd(?:(?:_i|v(?:(?:_i)?))?)|get|lpass|set)|bap(?:(?:gmove|lsinit|(?:(?:z)?)move|[gz])?)|c(?:ella|lpf|o(?:(?:2(?:(?:(?:f|i(?:f|ni))t)?)|mb|py(?:(?:_i)?))?))|d(?:el(?:_k|ay(?:(?:x(?:w(?:[qs])|[qsw])|[3kx])?))|ivv(?:(?:_i)?))|e(?:cdelay|loc|xp(?:(?:_i|seg|v(?:(?:_i)?))?))|i(?:b(?:es|r(?:(?:ato)?))|ncr)|l(?:i(?:mit|nseg)|owres)|m(?:ap|irror|ult(?:(?:_i|v(?:(?:_i)?))?))|o(?:ice|sim)|p(?:haseseg|o(?:rt|w(?:(?:_i|v(?:(?:_i)?))?))|s|voc)|rand(?:[hi])|subv(?:(?:_i)?)|tab(?:le(?:1k|w(?:[aik])|[aik])|w(?:[aik])|[aik])|wrap)|w(?:aveset|e(?:bsocket|ibull)|g(?:b(?:ow(?:(?:edbar)?)|rass)|clar|flute|pluck(?:(?:2)?)|uide(?:[12]))|i(?:i(?:connect|data|range|send)|ndow)|r(?:ap|itescratch)|terrain(?:(?:2)?))|x(?:adsr|in|out|tratim|yscale)|z(?:a(?:cl|kinit|mod|rg|wm|[rw])|df_(?:1pole(?:(?:_mode)?)|2pole(?:(?:_mode)?)|ladder)|filter2|i(?:wm|[rw])|k(?:cl|mod|wm|[rw]))|[Saikp])\\b|\\b(OSCsendA|array|b(?:e(?:adsynt|osc)|form(?:(?:de|en)c)|uchla)|copy2(?:(?:[ft])tab)|getrowlin|hrtfer|ktableseg|l(?:entab|ua_(?:exec|i(?:aopcall(?:(?:_off)?)|kopcall(?:(?:_off)?)|opcall(?:(?:_off)?))|opdef))|m(?:axtab|intab|p3scal_(?:check|load(?:(?:2)?)|play(?:(?:2)?)))|p(?:op(?:(?:_f)?)|table(?:(?:iw|[3i])?)|ush(?:(?:_f)?)|vsgendy)|s(?:calet|ignalflowgraph|ndload|o(?:cksend_k|undout(?:(?:s)?))|pec(?:addm|di(?:ff|sp)|filt|hist|ptrk|s(?:cal|um)|trum)|tack|um(?:TableFilter|tab)|ystime)|t(?:ab(?:gen|leiw|map(?:(?:_i)?)|rowlin|slice)|b(?:0_init|1(?:(?:(?:[012345])?)_init|[012345])|(?:[23456789])_init|[0123456789]))|vbap(?:1(?:6|move)|(?:[48])move|[48])|x(?:scan(?:map|smap|[su])|yin))\\b)(?:(\\:)([A-Za-z]))?","captures":{"1":{"name":"support.function.csound"},"2":{"name":"invalid.deprecated.csound"},"3":{"name":"punctuation.type-annotation.csound"},"4":{"name":"type-annotation.storage.type.csound"}}},{"name":"meta.other.csound","match":"\\b[A-Z_a-z]\\w*\\b"}]},"preprocessorDirectives":{"patterns":[{"name":"keyword.preprocessor.csound","match":"\\#(?:e(?:lse|nd(?:if)?)\\b|\\#\\#)|@+[ \\t]*\\d*"},{"begin":"\\#includestr","end":"$","patterns":[{"include":"#commentsAndMacroUses"},{"name":"string.includestr.csound","begin":"\"","end":"\"","patterns":[{"include":"#macroUses"},{"include":"#lineContinuations"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.csound"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.csound"}}}],"beginCaptures":{"0":{"name":"keyword.includestr.preprocessor.csound"}}},{"begin":"\\#include","end":"$","patterns":[{"include":"#commentsAndMacroUses"},{"name":"string.include.csound","begin":"([^ \\t])","end":"\\1","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.csound"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.csound"}}}],"beginCaptures":{"0":{"name":"keyword.include.preprocessor.csound"}}},{"begin":"\\#[ \\t]*define","end":"(?\u003c=^\\#)|(?\u003c=[^\\\\]\\#)","patterns":[{"include":"#commentsAndMacroUses"},{"include":"#macroNames"},{"begin":"\\(","end":"\\)","patterns":[{"name":"variable.parameter.preprocessor.csound","match":"[A-Z_a-z]\\w*\\b"}]},{"begin":"\\#","end":"(?\u003c!\\\\)\\#","patterns":[{"name":"constant.character.escape.csound","match":"\\\\\\#"},{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.definition.macro.begin.csound"}},"endCaptures":{"0":{"name":"punctuation.definition.macro.end.csound"}}}],"beginCaptures":{"0":{"name":"keyword.define.preprocessor.csound"}}},{"begin":"\\#(?:i(?:fn?def)|undef)","end":"$","patterns":[{"include":"#commentsAndMacroUses"},{"include":"#macroNames"}],"beginCaptures":{"0":{"name":"keyword.preprocessor.csound"}}}]},"quotedStringContents":{"patterns":[{"include":"#macroUses"},{"include":"#bracedStringContents"},{"include":"#lineContinuations"},{"name":"invalid.illegal.csound","match":"[^\"\\\\]*[^\\n\"\\\\]$"}]},"quotedStrings":{"patterns":[{"name":"string.quoted.csound","begin":"\"","end":"\"","patterns":[{"include":"#quotedStringContents"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.csound"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.csound"}}}]},"semicolonComments":{"patterns":[{"name":"comment.line.semicolon.csound","begin":";","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.csound"}}}]}}}
@@ -1 +1 @@
1
- {"name":"d2","scopeName":"source.d2","patterns":[{"include":"#comment"},{"include":"#semicolon"},{"include":"#spread_substitution"},{"include":"#spread_import"},{"include":"#key_value"},{"include":"#key"},{"include":"#error"}],"repository":{"array":{"name":"meta.array.d2","begin":"\\[","end":"\\]","patterns":[{"include":"#comment"},{"include":"#semicolon"},{"include":"#substitution"},{"include":"#import"},{"include":"#spread_substitution"},{"include":"#spread_import"},{"include":"#value"},{"include":"#error"}],"captures":{"0":{"name":"punctuation.array.d2"}}},"boolean":{"name":"constant.language.boolean.d2","match":"(?:true|false)(?=\\s|\\n)"},"comment":{"name":"comment.line.number-sign.d2","match":"#.*"},"debug":{"patterns":[{"name":"invalid.illegal","match":".*invalid\\.illegal.*"},{"name":"punctuation","match":".*punctuation.*"},{"name":"string","match":".*string.*"},{"name":"constant.character.escape","match":".*constant\\.character\\.escape.*"},{"name":"entity.name.tag","match":".*entity\\.name\\.tag.*"},{"name":"keyword","match":".*keyword.*"},{"name":"keyword.operator","match":".*keyword\\.operator.*"},{"name":"constant.numeric","match":".*constant\\.numeric.*"},{"name":"constant.language.boolean","match":".*constant\\.language\\.boolean.*"},{"name":"constant.language.null","match":".*constant\\.language\\.null.*"},{"name":"comment","match":".*comment.*"}]},"error":{"name":"invalid.illegal.d2","match":"\\S[^;\\n]*"},"escape":{"patterns":[{"name":"constant.character.escape.d2","match":"\\\\U[[:xdigit:]]{8}"},{"name":"constant.character.escape.d2","match":"\\\\u[[:xdigit:]]{4}"},{"name":"constant.character.escape.d2","match":"\\\\[0-7]{3}"},{"name":"constant.character.escape.d2","match":"\\\\x[[:xdigit:]]{2}"},{"name":"constant.character.escape.d2","match":"\\\\."},{"name":"constant.character.escape.d2","match":"\\\\\\n"}]},"import":{"name":"meta.operator.import.d2","begin":"@","end":"(?=\\s*[\\n#;\\[\\]{}|$])","patterns":[{"include":"#key"}],"captures":{"0":{"name":"keyword.operator.import.d2"}}},"key":{"patterns":[{"name":"meta.key.quoted.single.d2","contentName":"entity.name.tag.quoted.single.d2","begin":"'","end":"'|(?=\\n)","patterns":[{"include":"#escape"}],"captures":{"0":{"name":"punctuation.quote.single.d2"}}},{"name":"meta.key.quoted.double.d2","contentName":"entity.name.tag.quoted.double.d2","begin":"\"","end":"\"|(?=\\n)","patterns":[{"include":"#escape"}],"captures":{"0":{"name":"punctuation.quote.double.d2"}}},{"name":"meta.key.group.d2","begin":"\\(","end":"\\)(?:\\[(?:[0-9_]+|\\*)\\])?","patterns":[{"include":"#key"},{"include":"#error"}],"captures":{"0":{"name":"punctuation.parenthesis.d2"}}},{"name":"keyword.reserved.d2","match":"(?:grid\\-gap|vertical\\-gap|horizontal\\-gap|classes|direction|grid\\-columns|grid\\-rows|text\\-transform|shape|layers|steps|tooltip|font|bold|italic|underline|top|left|icon|constraint|near|opacity|stroke|fill\\-pattern|fill|filled|stroke\\-width|width|height|double\\-border|border\\-radius|source\\-arrowhead|target\\-arrowhead|link|stroke\\-dash|font\\-size|font\\-color|shadow|multiple|3d|animated|class|label|style|import|vars|scenarios|on_click|src|dst)(?=\\s*[\\n#;\\[\\]{}|$'\":.\u003c\u003e*\u0026()]|-+-|-+\u003e|-+\\*)"},{"name":"punctuation.period.d2","match":"\\."},{"name":"keyword.operator.glob.d2","match":"\\*"},{"name":"keyword.operator.double_glob.d2","match":"\\*\\*"},{"name":"keyword.operator.ampersand.d2","match":"\u0026"},{"name":"keyword.operator.not_ampersand.d2","match":"!\u0026"},{"name":"entity.name.tag.unquoted.d2","begin":"(?=[^[:space:]\\n#;\\[\\]{}|$'\":.\u003c\u003e*\u0026()])(?!-+-)(?!-+\u003e)(?!-+\\*)","end":"(?=\\s*[\\n#;\\[\\]{}|$:.\u003c\u003e*\u0026()]|-+-|-+\u003e|-+\\*)","patterns":[{"include":"#escape"}]},{"name":"meta.key.edge.d2","begin":"[\\-\u003c\u003e]+","end":"(?=[^\\-\u003c\u003e])","patterns":[{"include":"#line_continuation"}],"captures":{"0":{"name":"punctuation.edge.d2"}}}]},"key_value":{"name":"meta.key_value.d2","begin":":","end":"(?=\\s*[\\n#;\\]}])","patterns":[{"include":"#value"},{"include":"#error"}],"beginCaptures":{"0":{"name":"punctuation.colon.d2"}}},"line_continuation":{"name":"constant.character.escape.d2","match":"\\\\\\n"},"map":{"name":"meta.map.d2","begin":"\\{","end":"\\}","patterns":[{"include":"$self"}],"captures":{"0":{"name":"punctuation.map.d2"}}},"null":{"name":"constant.language.null.d2","match":"null(?=\\s|\\n)"},"number":{"patterns":[{"name":"constant.numeric.hexadecimal.d2","match":"[+-]?0[xX][[:xdigit:]_]*\\.?[[:xdigit:]_]*(?:[eEpP][+-]?[0-9_]*)?(?=\\s|\\n)"},{"name":"constant.numeric.binary.d2","match":"[+-]?0[bB][01_]*\\.?[01_]*(?:[eEpP][+-]?[0-9_]*)?(?=\\s|\\n)"},{"name":"constant.numeric.octal.d2","match":"[+-]?0[oO]?[0-7_]*\\.?[0-7_]*(?=\\s|\\n)"},{"name":"constant.numeric.decimal.d2","match":"[+-]?[0-9_]+(?:[eEpP][+-]?[0-9_]*)?(?=\\s|\\n)"},{"name":"constant.numeric.decimal.d2","match":"[+-]?[0-9_]*\\.[0-9_]+(?:[eEpP][+-]?[0-9_]*)?(?=\\s|\\n)"}]},"semicolon":{"name":"punctuation.semicolon.d2","match":";"},"spread_import":{"name":"meta.operator.import.d2","begin":"\\.\\.\\.@","end":"(?=\\s*[\\n#;\\[\\]{}|$])","patterns":[{"include":"#key"}],"captures":{"0":{"name":"keyword.operator.import.d2"}}},"spread_substitution":{"name":"meta.operator.substitution.d2","begin":"\\.\\.\\.\\$\\{","end":"\\}","patterns":[{"include":"#key"}],"captures":{"0":{"name":"keyword.operator.substitution.d2"}}},"string":{"patterns":[{"name":"meta.string.quoted.single.d2","contentName":"string.quoted.single.d2","begin":"'","end":"'|(?=\\n)","patterns":[{"include":"#escape"}],"captures":{"0":{"name":"punctuation.quote.single.d2"}}},{"name":"meta.string.quoted.double.d2","contentName":"string.quoted.double.d2","begin":"\"","end":"\"|(?=\\n)","patterns":[{"include":"#escape"}],"captures":{"0":{"name":"punctuation.quote.double.d2"}}},{"name":"meta.string.block.shellscript.d2","begin":"\\|([^[:alnum:]]*)sh[\\n[:space:]]","end":"\\1\\|","patterns":[{"include":"source.shell"}],"captures":{"0":{"name":"punctuation.block.d2"}}},{"name":"meta.string.block.markdown.d2","begin":"\\|([^[:alnum:]]*)md[\\n[:space:]]","end":"\\1\\|","patterns":[{"include":"text.html.markdown.d2"}],"captures":{"0":{"name":"punctuation.block.d2"}}},{"name":"meta.string.block.js.d2","begin":"\\|([^[:alnum:]]*)js[\\n[:space:]]","end":"\\1\\|","patterns":[{"include":"source.js"}],"captures":{"0":{"name":"punctuation.block.d2"}}},{"name":"meta.string.block.go.d2","begin":"\\|([^[:alnum:]]*)go[\\n[:space:]]","end":"\\1\\|","patterns":[{"include":"source.go"}],"captures":{"0":{"name":"punctuation.block.d2"}}},{"name":"meta.string.block.text.d2","begin":"\\|([^[:alnum:]]*)text[\\n[:space:]]","end":"\\1\\|","captures":{"0":{"name":"punctuation.block.d2"}}},{"name":"meta.string.block.d2.d2","begin":"\\|([^[:alnum:]]*)d2[\\n[:space:]]","end":"\\1\\|","patterns":[{"include":"source.d2"}],"captures":{"0":{"name":"punctuation.block.d2"}}},{"name":"meta.string.block.markdown.d2","begin":"\\|([^[:alnum:]]*)[\\n[:space:]]","end":"\\1\\|","patterns":[{"include":"text.html.markdown.d2"}],"captures":{"0":{"name":"punctuation.block.d2"}}},{"name":"meta.string.block.d2","begin":"\\|([^[:alnum:]]*)[^[:space:]]+[\\n[:space:]]","end":"\\1\\|","captures":{"0":{"name":"punctuation.block.d2"}}},{"name":"string.unquoted.d2","begin":"(?=[^[:space:]\\n#;\\[\\]{}|$'\"])","end":"(?=\\s*[\\n#;\\[\\]{}])","patterns":[{"include":"#escape"}]}]},"substitution":{"name":"meta.operator.substitution.d2","begin":"\\$\\{","end":"\\}","patterns":[{"include":"#key"}],"captures":{"0":{"name":"keyword.operator.substitution.d2"}}},"value":{"patterns":[{"include":"#boolean"},{"include":"#null"},{"include":"#number"},{"include":"#substitution"},{"include":"#import"},{"include":"#array"},{"include":"#map"},{"include":"#string"}]}}}
1
+ {"name":"d2","scopeName":"source.d2","patterns":[{"include":"#block_comment"},{"include":"#comment"},{"include":"#semicolon"},{"include":"#spread_substitution"},{"include":"#spread_import"},{"include":"#key_value"},{"include":"#key"},{"include":"#error"}],"repository":{"array":{"name":"meta.array.d2","begin":"\\[","end":"\\]","patterns":[{"include":"#block_comment"},{"include":"#comment"},{"include":"#semicolon"},{"include":"#substitution"},{"include":"#import"},{"include":"#spread_substitution"},{"include":"#spread_import"},{"include":"#value"},{"include":"#error"}],"captures":{"0":{"name":"punctuation.array.d2"}}},"block_comment":{"patterns":[{"name":"comment.block.d2","begin":"\"\"\"","end":"\"\"\"","beginCaptures":{"0":{"name":"punctuation.comment.start.d2"}},"endCaptures":{"0":{"name":"punctuation.comment.end.d2"}}}]},"boolean":{"name":"constant.language.boolean.d2","match":"(?:true|false)(?=\\s|\\n)"},"comment":{"name":"comment.line.number-sign.d2","match":"#.*$"},"debug":{"patterns":[{"name":"invalid.illegal","match":".*invalid\\.illegal.*"},{"name":"punctuation","match":".*punctuation.*"},{"name":"string","match":".*string.*"},{"name":"constant.character.escape","match":".*constant\\.character\\.escape.*"},{"name":"entity.name.tag","match":".*entity\\.name\\.tag.*"},{"name":"keyword","match":".*keyword.*"},{"name":"keyword.operator","match":".*keyword\\.operator.*"},{"name":"constant.numeric","match":".*constant\\.numeric.*"},{"name":"constant.language.boolean","match":".*constant\\.language\\.boolean.*"},{"name":"constant.language.null","match":".*constant\\.language\\.null.*"},{"name":"comment","match":".*comment.*"}]},"error":{"name":"invalid.illegal.d2","match":"\\S[^;\\n]*"},"escape":{"patterns":[{"name":"constant.character.escape.d2","match":"\\\\U[[:xdigit:]]{8}"},{"name":"constant.character.escape.d2","match":"\\\\u[[:xdigit:]]{4}"},{"name":"constant.character.escape.d2","match":"\\\\[0-7]{3}"},{"name":"constant.character.escape.d2","match":"\\\\x[[:xdigit:]]{2}"},{"name":"constant.character.escape.d2","match":"\\\\."},{"name":"constant.character.escape.d2","match":"\\\\\\n"}]},"import":{"name":"meta.operator.import.d2","begin":"@","end":"(?=\\s*[\\n#;\\[\\]{}|$])","patterns":[{"include":"#key"}],"captures":{"0":{"name":"keyword.operator.import.d2"}}},"key":{"patterns":[{"name":"meta.key.quoted.single.d2","contentName":"entity.name.tag.quoted.single.d2","begin":"'","end":"'|(?=\\n)","patterns":[{"include":"#escape"}],"captures":{"0":{"name":"punctuation.quote.single.d2"}}},{"name":"meta.key.quoted.double.d2","contentName":"entity.name.tag.quoted.double.d2","begin":"\"","end":"\"|(?=\\n)","patterns":[{"include":"#escape"}],"captures":{"0":{"name":"punctuation.quote.double.d2"}}},{"name":"meta.key.group.d2","begin":"\\(","end":"\\)(?:\\[(?:[0-9_]+|\\*)\\])?","patterns":[{"include":"#key"},{"include":"#error"}],"captures":{"0":{"name":"punctuation.parenthesis.d2"}}},{"name":"keyword.reserved.d2","match":"(?:grid\\-gap|vertical\\-gap|horizontal\\-gap|classes|direction|grid\\-columns|grid\\-rows|text\\-transform|shape|layers|steps|tooltip|font|bold|italic|underline|top|left|icon|constraint|near|opacity|stroke|fill\\-pattern|fill|filled|stroke\\-width|width|height|double\\-border|border\\-radius|source\\-arrowhead|target\\-arrowhead|link|stroke\\-dash|font\\-size|font\\-color|shadow|multiple|3d|animated|class|label|style|vars|scenarios|on_click|src|dst)(?=\\s*[\\n#;\\[\\]{}|$'\":.\u003c\u003e*\u0026()]|-+-|-+\u003e|-+\\*)"},{"name":"punctuation.period.d2","match":"\\."},{"name":"keyword.operator.glob.d2","match":"\\*"},{"name":"keyword.operator.double_glob.d2","match":"\\*\\*"},{"name":"keyword.operator.ampersand.d2","match":"\u0026"},{"name":"keyword.operator.not_ampersand.d2","match":"!\u0026"},{"name":"entity.name.tag.unquoted.d2","begin":"(?=[^[:space:]\\n#;\\[\\]{}|$'\":.\u003c\u003e*\u0026()])(?!-+-)(?!-+\u003e)(?!-+\\*)","end":"(?=\\s*[\\n#;\\[\\]{}|$:.\u003c\u003e*\u0026()]|-+-|-+\u003e|-+\\*)","patterns":[{"include":"#escape"}]},{"name":"meta.key.edge.d2","begin":"[\\-\u003c\u003e]+","end":"(?=[^\\-\u003c\u003e])","patterns":[{"include":"#line_continuation"}],"captures":{"0":{"name":"punctuation.edge.d2"}}}]},"key_value":{"name":"meta.key_value.d2","begin":":","end":"(?=\\s*[\\n#;\\]}])","patterns":[{"include":"#value"},{"include":"#error"}],"beginCaptures":{"0":{"name":"punctuation.colon.d2"}}},"line_continuation":{"name":"constant.character.escape.d2","match":"\\\\\\n"},"map":{"name":"meta.map.d2","begin":"\\{","end":"\\}","patterns":[{"include":"$self"}],"captures":{"0":{"name":"punctuation.map.d2"}}},"null":{"name":"constant.language.null.d2","match":"null(?=\\s|\\n)"},"number":{"patterns":[{"name":"constant.numeric.hexadecimal.d2","match":"[+-]?0[xX][[:xdigit:]_]*\\.?[[:xdigit:]_]*(?:[eEpP][+-]?[0-9_]*)?(?=\\s|\\n)"},{"name":"constant.numeric.binary.d2","match":"[+-]?0[bB][01_]*\\.?[01_]*(?:[eEpP][+-]?[0-9_]*)?(?=\\s|\\n)"},{"name":"constant.numeric.octal.d2","match":"[+-]?0[oO]?[0-7_]*\\.?[0-7_]*(?=\\s|\\n)"},{"name":"constant.numeric.decimal.d2","match":"[+-]?[0-9_]+(?:[eEpP][+-]?[0-9_]*)?(?=\\s|\\n)"},{"name":"constant.numeric.decimal.d2","match":"[+-]?[0-9_]*\\.[0-9_]+(?:[eEpP][+-]?[0-9_]*)?(?=\\s|\\n)"}]},"semicolon":{"name":"punctuation.semicolon.d2","match":";"},"spread_import":{"name":"meta.operator.import.d2","begin":"\\.\\.\\.@","end":"(?=\\s*[\\n#;\\[\\]{}|$])","patterns":[{"include":"#key"}],"captures":{"0":{"name":"keyword.operator.import.d2"}}},"spread_substitution":{"name":"meta.operator.substitution.d2","begin":"\\.\\.\\.\\$\\{","end":"\\}","patterns":[{"include":"#key"}],"captures":{"0":{"name":"keyword.operator.substitution.d2"}}},"string":{"patterns":[{"name":"meta.string.quoted.single.d2","contentName":"string.quoted.single.d2","begin":"'","end":"'|(?=\\n)","patterns":[{"include":"#escape"}],"captures":{"0":{"name":"punctuation.quote.single.d2"}}},{"name":"meta.string.quoted.double.d2","contentName":"string.quoted.double.d2","begin":"\"","end":"\"|(?=\\n)","patterns":[{"include":"#escape"}],"captures":{"0":{"name":"punctuation.quote.double.d2"}}},{"name":"meta.string.block.shellscript.d2","begin":"\\|([^[:alnum:]]*)sh[\\n[:space:]]","end":"\\1\\|","patterns":[{"include":"source.shell"}],"captures":{"0":{"name":"punctuation.block.d2"}}},{"name":"meta.string.block.markdown.d2","begin":"\\|([^[:alnum:]]*)md[\\n[:space:]]","end":"\\1\\|","patterns":[{"include":"text.html.markdown.d2"}],"captures":{"0":{"name":"punctuation.block.d2"}}},{"name":"meta.string.block.js.d2","begin":"\\|([^[:alnum:]]*)js[\\n[:space:]]","end":"\\1\\|","patterns":[{"include":"source.js"}],"captures":{"0":{"name":"punctuation.block.d2"}}},{"name":"meta.string.block.go.d2","begin":"\\|([^[:alnum:]]*)go[\\n[:space:]]","end":"\\1\\|","patterns":[{"include":"source.go"}],"captures":{"0":{"name":"punctuation.block.d2"}}},{"name":"meta.string.block.text.d2","begin":"\\|([^[:alnum:]]*)text[\\n[:space:]]","end":"\\1\\|","captures":{"0":{"name":"punctuation.block.d2"}}},{"name":"meta.string.block.d2.d2","begin":"\\|([^[:alnum:]]*)d2[\\n[:space:]]","end":"\\1\\|","patterns":[{"include":"source.d2"}],"captures":{"0":{"name":"punctuation.block.d2"}}},{"name":"meta.string.block.markdown.d2","begin":"\\|([^[:alnum:]]*)[\\n[:space:]]","end":"\\1\\|","patterns":[{"include":"text.html.markdown.d2"}],"captures":{"0":{"name":"punctuation.block.d2"}}},{"name":"meta.string.block.d2","begin":"\\|([^[:alnum:]]*)[^[:space:]]+[\\n[:space:]]","end":"\\1\\|","captures":{"0":{"name":"punctuation.block.d2"}}},{"name":"string.unquoted.d2","begin":"(?=[^[:space:]\\n#;\\[\\]{}|$'\"])","end":"(?=\\s*[\\n#;\\[\\]{}])","patterns":[{"include":"#escape"}]}]},"substitution":{"name":"meta.operator.substitution.d2","begin":"\\$\\{","end":"\\}","patterns":[{"include":"#key"}],"captures":{"0":{"name":"keyword.operator.substitution.d2"}}},"value":{"patterns":[{"include":"#boolean"},{"include":"#null"},{"include":"#number"},{"include":"#substitution"},{"include":"#import"},{"include":"#array"},{"include":"#map"},{"include":"#string"}]}}}
@@ -1 +1 @@
1
- {"name":"Dart","scopeName":"source.dart","patterns":[{"name":"meta.preprocessor.script.dart","match":"^(#!.*)$"},{"name":"meta.declaration.dart","begin":"^\\w*\\b(library|import|part of|part|export)\\b","end":";","patterns":[{"include":"#strings"},{"include":"#comments"},{"name":"keyword.other.import.dart","match":"\\b(as|show|hide)\\b"},{"name":"keyword.control.dart","match":"\\b(if)\\b"}],"beginCaptures":{"0":{"name":"keyword.other.import.dart"}},"endCaptures":{"0":{"name":"punctuation.terminator.dart"}}},{"include":"#comments"},{"include":"#punctuation"},{"include":"#annotations"},{"include":"#keywords"},{"include":"#constants-and-special-vars"},{"include":"#operators"},{"include":"#strings"}],"repository":{"annotations":{"patterns":[{"name":"storage.type.annotation.dart","match":"@[a-zA-Z]+"}]},"class-identifier":{"patterns":[{"name":"support.class.dart","match":"(?\u003c!\\$)\\b(bool|num|int|double|dynamic)\\b(?!\\$)"},{"name":"storage.type.primitive.dart","match":"(?\u003c!\\$)\\bvoid\\b(?!\\$)"},{"begin":"(?\u003c![a-zA-Z0-9_$])([_$]*[A-Z][a-zA-Z0-9_$]*)\\b","end":"(?!\u003c)","patterns":[{"include":"#type-args"}],"beginCaptures":{"1":{"name":"support.class.dart"}}}]},"comments":{"patterns":[{"name":"comment.block.empty.dart","match":"/\\*\\*/","captures":{"0":{"name":"punctuation.definition.comment.dart"}}},{"include":"#comments-doc-oldschool"},{"include":"#comments-doc"},{"include":"#comments-inline"}]},"comments-block":{"patterns":[{"name":"comment.block.dart","begin":"/\\*","end":"\\*/","patterns":[{"include":"#comments-block"}]}]},"comments-doc":{"patterns":[{"name":"comment.block.documentation.dart","begin":"///","while":"^\\s*///","patterns":[{"include":"#dartdoc"}]}]},"comments-doc-oldschool":{"patterns":[{"name":"comment.block.documentation.dart","begin":"/\\*\\*","end":"\\*/","patterns":[{"include":"#comments-doc-oldschool"},{"include":"#comments-block"},{"include":"#dartdoc"}]}]},"comments-inline":{"patterns":[{"include":"#comments-block"},{"match":"((//).*)$","captures":{"1":{"name":"comment.line.double-slash.dart"}}}]},"constants-and-special-vars":{"patterns":[{"name":"constant.language.dart","match":"(?\u003c!\\$)\\b(true|false|null)\\b(?!\\$)"},{"name":"variable.language.dart","match":"(?\u003c!\\$)\\b(this|super)\\b(?!\\$)"},{"name":"constant.numeric.dart","match":"(?\u003c!\\$)\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\.?[0-9]*)|(\\.[0-9]+))((e|E)(\\+|-)?[0-9]+)?)\\b(?!\\$)"},{"include":"#class-identifier"},{"include":"#function-identifier"}]},"dartdoc":{"patterns":[{"match":"(\\[.*?\\])","captures":{"0":{"name":"variable.name.source.dart"}}},{"match":"^ {4,}(?![ \\*]).*","captures":{"0":{"name":"variable.name.source.dart"}}},{"contentName":"variable.other.source.dart","begin":"```.*?$","end":"```"},{"match":"(`[^`]+?`)","captures":{"0":{"name":"variable.other.source.dart"}}},{"match":"(\\* (( ).*))$","captures":{"2":{"name":"variable.other.source.dart"}}}]},"function-identifier":{"patterns":[{"match":"([_$]*[a-z][a-zA-Z0-9_$]*)(\u003c(?:[a-zA-Z0-9_$\u003c\u003e?]|,\\s*|\\s+extends\\s+)+\u003e)?[!?]?\\(","captures":{"1":{"name":"entity.name.function.dart"},"2":{"patterns":[{"include":"#type-args"}]}}}]},"keywords":{"patterns":[{"name":"keyword.cast.dart","match":"(?\u003c!\\$)\\bas\\b(?!\\$)"},{"name":"keyword.control.catch-exception.dart","match":"(?\u003c!\\$)\\b(try|on|catch|finally|throw|rethrow)\\b(?!\\$)"},{"name":"keyword.control.dart","match":"(?\u003c!\\$)\\b(break|case|continue|default|do|else|for|if|in|return|switch|while|when)\\b(?!\\$)"},{"name":"keyword.control.dart","match":"(?\u003c!\\$)\\b(sync(\\*)?|async(\\*)?|await|yield(\\*)?)\\b(?!\\$)"},{"name":"keyword.control.dart","match":"(?\u003c!\\$)\\bassert\\b(?!\\$)"},{"name":"keyword.control.new.dart","match":"(?\u003c!\\$)\\b(new)\\b(?!\\$)"},{"name":"keyword.declaration.dart","match":"(?\u003c!\\$)\\b(abstract|sealed|base|interface|class|enum|extends|extension type|extension|external|factory|implements|get(?!\\()|mixin|native|operator|set(?!\\()|typedef|with|covariant)\\b(?!\\$)"},{"name":"storage.modifier.dart","match":"(?\u003c!\\$)\\b(static|final|const|required|late)\\b(?!\\$)"},{"name":"storage.type.primitive.dart","match":"(?\u003c!\\$)\\b(?:void|var)\\b(?!\\$)"}]},"operators":{"patterns":[{"name":"keyword.operator.dart","match":"(?\u003c!\\$)\\b(is\\!?)\\b(?!\\$)"},{"name":"keyword.operator.ternary.dart","match":"\\?|:"},{"name":"keyword.operator.bitwise.dart","match":"(\u003c\u003c|\u003e\u003e\u003e?|~|\\^|\\||\u0026)"},{"name":"keyword.operator.assignment.bitwise.dart","match":"((\u0026|\\^|\\||\u003c\u003c|\u003e\u003e\u003e?)=)"},{"name":"keyword.operator.closure.dart","match":"(=\u003e)"},{"name":"keyword.operator.comparison.dart","match":"(==|!=|\u003c=?|\u003e=?)"},{"name":"keyword.operator.assignment.arithmetic.dart","match":"(([+*/%-]|\\~)=)"},{"name":"keyword.operator.assignment.dart","match":"(=)"},{"name":"keyword.operator.increment-decrement.dart","match":"(\\-\\-|\\+\\+)"},{"name":"keyword.operator.arithmetic.dart","match":"(\\-|\\+|\\*|\\/|\\~\\/|%)"},{"name":"keyword.operator.logical.dart","match":"(!|\u0026\u0026|\\|\\|)"}]},"punctuation":{"patterns":[{"name":"punctuation.comma.dart","match":","},{"name":"punctuation.terminator.dart","match":";"},{"name":"punctuation.dot.dart","match":"\\."}]},"string-interp":{"patterns":[{"name":"string.interpolated.expression.dart","match":"\\$([a-zA-Z0-9_]+)","captures":{"1":{"name":"variable.parameter.dart"}}},{"name":"string.interpolated.expression.dart","begin":"\\$\\{","end":"\\}","patterns":[{"include":"#constants-and-special-vars"},{"include":"#strings"},{"name":"variable.parameter.dart","match":"[a-zA-Z0-9_]+"}]},{"name":"constant.character.escape.dart","match":"\\\\."}]},"strings":{"patterns":[{"name":"string.interpolated.triple.double.dart","begin":"(?\u003c!r)\"\"\"","end":"\"\"\"(?!\")","patterns":[{"include":"#string-interp"}]},{"name":"string.interpolated.triple.single.dart","begin":"(?\u003c!r)'''","end":"'''(?!')","patterns":[{"include":"#string-interp"}]},{"name":"string.quoted.triple.double.dart","begin":"r\"\"\"","end":"\"\"\"(?!\")"},{"name":"string.quoted.triple.single.dart","begin":"r'''","end":"'''(?!')"},{"name":"string.interpolated.double.dart","begin":"(?\u003c!\\|r)\"","end":"\"","patterns":[{"name":"invalid.string.newline","match":"\\n"},{"include":"#string-interp"}]},{"name":"string.quoted.double.dart","begin":"r\"","end":"\"","patterns":[{"name":"invalid.string.newline","match":"\\n"}]},{"name":"string.interpolated.single.dart","begin":"(?\u003c!\\|r)'","end":"'","patterns":[{"name":"invalid.string.newline","match":"\\n"},{"include":"#string-interp"}]},{"name":"string.quoted.single.dart","begin":"r'","end":"'","patterns":[{"name":"invalid.string.newline","match":"\\n"}]}]},"type-args":{"begin":"(\u003c)","end":"(\u003e)","patterns":[{"include":"#class-identifier"},{"match":","},{"name":"keyword.declaration.dart","match":"extends"},{"include":"#comments"}],"beginCaptures":{"1":{"name":"other.source.dart"}},"endCaptures":{"1":{"name":"other.source.dart"}}}}}
1
+ {"name":"Dart","scopeName":"source.dart","patterns":[{"name":"meta.preprocessor.script.dart","match":"^(#!.*)$"},{"name":"meta.declaration.dart","begin":"^\\w*\\b(augment\\s+library|library|import\\s+augment|import|part\\s+of|part|export)\\b","end":";","patterns":[{"include":"#strings"},{"include":"#comments"},{"name":"keyword.other.import.dart","match":"\\b(as|show|hide)\\b"},{"name":"keyword.control.dart","match":"\\b(if)\\b"}],"beginCaptures":{"0":{"name":"keyword.other.import.dart"}},"endCaptures":{"0":{"name":"punctuation.terminator.dart"}}},{"include":"#comments"},{"include":"#punctuation"},{"include":"#annotations"},{"include":"#keywords"},{"include":"#constants-and-special-vars"},{"include":"#operators"},{"include":"#strings"}],"repository":{"annotations":{"patterns":[{"name":"storage.type.annotation.dart","match":"@[a-zA-Z]+"}]},"class-identifier":{"patterns":[{"name":"support.class.dart","match":"(?\u003c!\\$)\\b(bool|num|int|double|dynamic)\\b(?!\\$)"},{"name":"storage.type.primitive.dart","match":"(?\u003c!\\$)\\bvoid\\b(?!\\$)"},{"begin":"(?\u003c![a-zA-Z0-9_$])([_$]*[A-Z][a-zA-Z0-9_$]*)\\b","end":"(?!\u003c)","patterns":[{"include":"#type-args"}],"beginCaptures":{"1":{"name":"support.class.dart"}}}]},"comments":{"patterns":[{"name":"comment.block.empty.dart","match":"/\\*\\*/","captures":{"0":{"name":"punctuation.definition.comment.dart"}}},{"include":"#comments-doc-oldschool"},{"include":"#comments-doc"},{"include":"#comments-inline"}]},"comments-block":{"patterns":[{"name":"comment.block.dart","begin":"/\\*","end":"\\*/","patterns":[{"include":"#comments-block"}]}]},"comments-doc":{"patterns":[{"name":"comment.block.documentation.dart","begin":"///","while":"^\\s*///","patterns":[{"include":"#dartdoc"}]}]},"comments-doc-oldschool":{"patterns":[{"name":"comment.block.documentation.dart","begin":"/\\*\\*","end":"\\*/","patterns":[{"include":"#comments-doc-oldschool"},{"include":"#comments-block"},{"include":"#dartdoc"}]}]},"comments-inline":{"patterns":[{"include":"#comments-block"},{"match":"((//).*)$","captures":{"1":{"name":"comment.line.double-slash.dart"}}}]},"constants-and-special-vars":{"patterns":[{"name":"constant.language.dart","match":"(?\u003c!\\$)\\b(true|false|null)\\b(?!\\$)"},{"name":"variable.language.dart","match":"(?\u003c!\\$)\\b(this|super|augmented)\\b(?!\\$)"},{"name":"constant.numeric.dart","match":"(?\u003c!\\$)\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\.?[0-9]*)|(\\.[0-9]+))((e|E)(\\+|-)?[0-9]+)?)\\b(?!\\$)"},{"include":"#class-identifier"},{"include":"#function-identifier"}]},"dartdoc":{"patterns":[{"match":"(\\[.*?\\])","captures":{"0":{"name":"variable.name.source.dart"}}},{"match":"^ {4,}(?![ \\*]).*","captures":{"0":{"name":"variable.name.source.dart"}}},{"contentName":"variable.other.source.dart","begin":"```.*?$","end":"```"},{"match":"(`[^`]+?`)","captures":{"0":{"name":"variable.other.source.dart"}}},{"match":"(\\* (( ).*))$","captures":{"2":{"name":"variable.other.source.dart"}}}]},"expression":{"patterns":[{"include":"#constants-and-special-vars"},{"include":"#strings"},{"name":"variable.parameter.dart","match":"[a-zA-Z0-9_]+"},{"begin":"\\{","end":"\\}","patterns":[{"include":"#expression"}]}]},"function-identifier":{"patterns":[{"match":"([_$]*[a-z][a-zA-Z0-9_$]*)(\u003c(?:[a-zA-Z0-9_$\u003c\u003e?]|,\\s*|\\s+extends\\s+)+\u003e)?[!?]?\\(","captures":{"1":{"name":"entity.name.function.dart"},"2":{"patterns":[{"include":"#type-args"}]}}}]},"keywords":{"patterns":[{"name":"keyword.cast.dart","match":"(?\u003c!\\$)\\bas\\b(?!\\$)"},{"name":"keyword.control.catch-exception.dart","match":"(?\u003c!\\$)\\b(try|on|catch|finally|throw|rethrow)\\b(?!\\$)"},{"name":"keyword.control.dart","match":"(?\u003c!\\$)\\b(break|case|continue|default|do|else|for|if|in|switch|while|when)\\b(?!\\$)"},{"name":"keyword.control.dart","match":"(?\u003c!\\$)\\b(sync(\\*)?|async(\\*)?|await|yield(\\*)?)\\b(?!\\$)"},{"name":"keyword.control.dart","match":"(?\u003c!\\$)\\bassert\\b(?!\\$)"},{"name":"keyword.control.new.dart","match":"(?\u003c!\\$)\\b(new)\\b(?!\\$)"},{"name":"keyword.control.return.dart","match":"(?\u003c!\\$)\\b(return)\\b(?!\\$)"},{"name":"keyword.declaration.dart","match":"(?\u003c!\\$)\\b(abstract|sealed|base|interface|class|enum|extends|extension\\s+type|extension|external|factory|implements|get(?![(\u003c])|mixin|native|operator|set(?![(\u003c])|typedef|with|covariant)\\b(?!\\$)"},{"name":"storage.modifier.dart","match":"(?\u003c!\\$)\\b(macro|augment|static|final|const|required|late)\\b(?!\\$)"},{"name":"storage.type.primitive.dart","match":"(?\u003c!\\$)\\b(?:void|var)\\b(?!\\$)"}]},"operators":{"patterns":[{"name":"keyword.operator.dart","match":"(?\u003c!\\$)\\b(is\\!?)\\b(?!\\$)"},{"name":"keyword.operator.ternary.dart","match":"\\?|:"},{"name":"keyword.operator.bitwise.dart","match":"(\u003c\u003c|\u003e\u003e\u003e?|~|\\^|\\||\u0026)"},{"name":"keyword.operator.assignment.bitwise.dart","match":"((\u0026|\\^|\\||\u003c\u003c|\u003e\u003e\u003e?)=)"},{"name":"keyword.operator.closure.dart","match":"(=\u003e)"},{"name":"keyword.operator.comparison.dart","match":"(==|!=|\u003c=?|\u003e=?)"},{"name":"keyword.operator.assignment.arithmetic.dart","match":"(([+*/%-]|\\~)=)"},{"name":"keyword.operator.assignment.dart","match":"(=)"},{"name":"keyword.operator.increment-decrement.dart","match":"(\\-\\-|\\+\\+)"},{"name":"keyword.operator.arithmetic.dart","match":"(\\-|\\+|\\*|\\/|\\~\\/|%)"},{"name":"keyword.operator.logical.dart","match":"(!|\u0026\u0026|\\|\\|)"}]},"punctuation":{"patterns":[{"name":"punctuation.comma.dart","match":","},{"name":"punctuation.terminator.dart","match":";"},{"name":"punctuation.dot.dart","match":"\\."}]},"string-interp":{"patterns":[{"name":"meta.embedded.expression.dart","match":"\\$([a-zA-Z0-9_]+)","captures":{"1":{"name":"variable.parameter.dart"}}},{"name":"meta.embedded.expression.dart","begin":"\\$\\{","end":"\\}","patterns":[{"include":"#expression"}]},{"name":"constant.character.escape.dart","match":"\\\\."}]},"strings":{"patterns":[{"name":"string.interpolated.triple.double.dart","begin":"(?\u003c!r)\"\"\"","end":"\"\"\"(?!\")","patterns":[{"include":"#string-interp"}]},{"name":"string.interpolated.triple.single.dart","begin":"(?\u003c!r)'''","end":"'''(?!')","patterns":[{"include":"#string-interp"}]},{"name":"string.quoted.triple.double.dart","begin":"r\"\"\"","end":"\"\"\"(?!\")"},{"name":"string.quoted.triple.single.dart","begin":"r'''","end":"'''(?!')"},{"name":"string.interpolated.double.dart","begin":"(?\u003c!\\|r)\"","end":"\"","patterns":[{"name":"invalid.string.newline","match":"\\n"},{"include":"#string-interp"}]},{"name":"string.quoted.double.dart","begin":"r\"","end":"\"","patterns":[{"name":"invalid.string.newline","match":"\\n"}]},{"name":"string.interpolated.single.dart","begin":"(?\u003c!\\|r)'","end":"'","patterns":[{"name":"invalid.string.newline","match":"\\n"},{"include":"#string-interp"}]},{"name":"string.quoted.single.dart","begin":"r'","end":"'","patterns":[{"name":"invalid.string.newline","match":"\\n"}]}]},"type-args":{"begin":"(\u003c)","end":"(\u003e)","patterns":[{"include":"#class-identifier"},{"match":","},{"name":"keyword.declaration.dart","match":"extends"},{"include":"#comments"}],"beginCaptures":{"1":{"name":"other.source.dart"}},"endCaptures":{"1":{"name":"other.source.dart"}}}}}
@@ -1 +1 @@
1
- {"name":"Candid","scopeName":"source.did","patterns":[{"include":"#comment"},{"include":"#attribute"},{"include":"#literal"},{"include":"#operator"},{"include":"#keyword"},{"include":"#type"},{"include":"#boolean"}],"repository":{"arithmetic-operator":{"name":"keyword.operator.arithmetic.candid","match":"(?\u003c![/=\\-+!*%\u003c\u003e\u0026|\\^~.])(\\+|\\-|\\*|\\/)(?![/=\\-+!*%\u003c\u003e\u0026|\\^~.])"},"array-type":{"name":"meta.array.candid","begin":"\\b(Array)(\u003c)","end":"(\u003e)","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"support.type.array.candid"},"2":{"name":"punctuation.array.begin.candid"}},"endCaptures":{"1":{"name":"punctuation.array.end.candid"}}},"assignment-operator":{"name":"keyword.operator.assignment.candid","match":"(?\u003c![/=\\-+!*%\u003c\u003e\u0026|\\^~.])(\\+|\\-|\\*|\\/|%|\u003c\u003c\u003e?|\u003c?\u003e\u003e|\u0026|\\^|\\||\u0026\u0026|\\|\\|)?=(?![/=\\-+!*%\u003c\u003e\u0026|\\^~.])"},"async-await-keyword":{"name":"keyword.async-await.candid","match":"\\b(async|await)\\b"},"attribute":{"name":"meta.attribute.candid","patterns":[{"contentName":"meta.attribute.arguments.candid","begin":"((@)(\\B\\$[0-9]+|\\b[\\w^\\d][\\w\\d]*\\b|\\B`[\\w^\\d][\\w\\d]*`\\B))(\\()","end":"\\)","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"storage.modifier.attribute.candid"},"2":{"name":"punctuation.definition.attribute.candid"},"3":{"name":"punctuation.definition.attribute-arguments.begin.candid"}},"endCaptures":{"0":{"name":"punctuation.definition.attribute-arguments.end.candid"}}},{"match":"((@)(\\B\\$[0-9]+|\\b[\\w^\\d][\\w\\d]*\\b|\\B`[\\w^\\d][\\w\\d]*`\\B))","captures":{"1":{"name":"storage.modifier.attribute.candid"},"2":{"name":"punctuation.definition.attribute.candid"}}}]},"bitwise-operator":{"name":"keyword.operator.bitwise.candid","match":"(?\u003c![/=\\-+!*%\u003c\u003e\u0026|\\^~.])(\u0026|\\||\\^|\u003c\u003c\u003e?|\u003c?\u003e\u003e)(?![/=\\-+!*%\u003c\u003e\u0026|\\^~.])"},"block-comment":{"name":"comment.block.candid","begin":"/\\*","end":"\\*/","beginCaptures":{"0":{"name":"punctuation.definition.comment.block.begin.candid"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.block.end.candid"}}},"boolean":{"name":"keyword.constant.boolean.candid","match":"\\b(true|false)\\b"},"branch-statement-keyword":{"name":"keyword.control.branch.candid","patterns":[{"include":"#if-statement-keyword"},{"include":"#switch-statement-keyword"}]},"catch-statement-keyword":{"name":"kewyord.control.catch.candid","match":"\\b(catch|do)\\b"},"char-literal":{"name":"meta.literal.char.candid","begin":"'","end":"'","patterns":[{"name":"constant.character.escape.candid","match":"\\\\([0tnr\\\"\\'\\\\]|x[[:xdigit:]]{2}|u[[:xdigit:]]{4}|U[[:xdigit:]]{8})"},{"name":"invalid.illegal.candid","match":"(\\'|\\\\)"},{"name":"string.quoted.single.candid","match":"(.)"}],"beginCaptures":{"0":{"name":"string.quoted.double.candid"}},"endCaptures":{"0":{"name":"string.quoted.single.candid"}}},"code-block":{"begin":"(\\{)","end":"(\\})","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"punctuation.definition.code-block.begin.candid"}},"endCaptures":{"1":{"name":"punctuation.definition.code-block.end.candid"}}},"comment":{"patterns":[{"include":"#documentation-comment"},{"include":"#block-comment"},{"include":"#in-line-comment"}]},"comparative-operator":{"name":"keyword.operator.comparative.candid","match":"(?\u003c![/=\\-+!*%\u003c\u003e\u0026|\\^~.])((=|!)==?|(\u003c|\u003e)=?|~=)(?![/=\\-+!*%\u003c\u003e\u0026|\\^~.])"},"control-transfer-statement-keyword":{"name":"keyword.control.transfer.candid","match":"\\b(continue|break|return)\\b"},"custom-operator":{"patterns":[{"name":"keyword.operator.custom.prefix.unary.candid","match":"(?\u003c=[\\s(\\[{,;:])([/=\\-+!*%\u003c\u003e\u0026|\\^~.]++)(?![\\s)\\]},;:])"},{"name":"keyword.operator.custom.postfix.unary.candid","match":"(?\u003c![\\s(\\[{,;:])([/=\\-+!*%\u003c\u003e\u0026|\\^~.]++)(?![\\s)\\]},;:\\.])"},{"name":"keyword.operator.custom.binary.candid","match":"(?\u003c=[\\s(\\[{,;:])([/=\\-+!*%\u003c\u003e\u0026|\\^~.]++)(?=[\\s)\\]},;:])"}]},"declaration-modifier":{"name":"keyword.other.declaration-modifier.candid","match":"\\b(class|object|type|shared)\\b"},"dictionary-type":{"name":"meta.dictionary.candid","begin":"\\b(Dictionary)(\u003c)","end":"(\u003e)","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"support.type.dictionary.candid"},"2":{"name":"punctuation.dictionary.begin.candid"}},"endCaptures":{"1":{"name":"punctuation.dictionary.end.candid"}}},"documentation-comment":{"name":"comment.block.documentation.candid","begin":"/\\*\\*","end":"\\*/","beginCaptures":{"0":{"name":"punctuation.definition.comment.block.documentation.begin.candid"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.block.documentation.end.candid"}}},"floating-point-literal":{"name":"constant.numeric.floating-point.candid","patterns":[{"match":"\\b([0-9][0-9_]*)(\\.([0-9][0-9_]*))?([eE][+\\-]?([0-9][0-9_]*))?\\b"},{"match":"\\b(0x[[:xdigit:]][[[:xdigit:]]_]*)(\\.(0x[[:xdigit:]][[[:xdigit:]]_]*))?([pP][+\\-]?(0x[[:xdigit:]][[[:xdigit:]]_]*))\\b"}]},"function-body":{"name":"meta.function-body.candid","patterns":[{"include":"#code-block"}]},"generic-parameter-clause":{"name":"meta.generic-parameter-clause.candid","begin":"(\u003c)","end":"(\u003e)","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"punctuation.definition.generic-parameter-clause.begin.candid"}},"endCaptures":{"1":{"name":"punctuation.definition.generic-parameter-clause.end.candid"}}},"identifier":{"name":"meta.identifier.candid","match":"(\\B\\$[0-9]+|\\b[\\w^\\d][\\w\\d]*\\b|\\B`[\\w^\\d][\\w\\d]*`\\B)"},"if-statement-keyword":{"name":"keyword.control.if.candid","match":"\\b(if|else)\\b"},"in-line-comment":{"name":"comment.line.double-slash.candid","match":"(//).*","captures":{"1":{"name":"punctuation.definition.comment.line.double-slash.candid"}}},"increment-decrement-operator":{"name":"keyword.operator.increment-or-decrement.candid","match":"(?\u003c![/=\\-+!*%\u003c\u003e\u0026|\\^~.])(\\+\\+|\\-\\-)(?![/=\\-+!*%\u003c\u003e\u0026|\\^~.])"},"integer-literal":{"name":"constant.numeric.integer.candid","patterns":[{"name":"constant.numeric.integer.binary.candid","match":"(\\B\\-|\\b)(0b[01][01_]*)\\b"},{"name":"constant.numeric.integer.octal.candid","match":"(\\B\\-|\\b)(0o[0-7][0-7_]*)\\b"},{"name":"constant.numeric.integer.decimal.candid","match":"(\\B\\-|\\b)([0-9][0-9_]*)\\b"},{"name":"constant.numeric.integer.hexadecimal.candid","match":"(\\B\\-|\\b)(0x[[:xdigit:]][[[:xdigit:]]_]*)\\b"}]},"keyword":{"patterns":[{"include":"#branch-statement-keyword"},{"include":"#control-transfer-statement-keyword"},{"include":"#loop-statement-keyword"},{"include":"#catch-statement-keyword"},{"include":"#async-await-keyword"},{"include":"#operator-declaration-modifier"},{"include":"#declaration-modifier"},{"name":"keyword.declaration.candid","match":"\\b(import|service|type)\\b"},{"name":"keyword.statement.candid","match":"\\b(opt|vec|record|variant|func|null|empty|oneway|query)\\b"},{"name":"keyword.other.candid","match":"\\b(reserved)\\b"}]},"literal":{"patterns":[{"include":"#integer-literal"},{"include":"#floating-point-literal"},{"include":"#nil-literal"},{"include":"#string-literal"},{"include":"#char-literal"}]},"logical-operator":{"name":"keyword.operator.logical.candid","match":"(?\u003c![/=\\-+!*%\u003c\u003e\u0026|\\^~.])(!|\u0026\u0026|\\|\\|)(?![/=\\-+!*%\u003c\u003e\u0026|\\^~.])"},"loop-statement-keyword":{"name":"keyword.control.loop.candid","match":"\\b(while|repeat|for|in|loop)\\b"},"null-literal":{"name":"constant.null.candid","match":"\\bnull\\b"},"operator":{"patterns":[{"include":"#comparative-operator"},{"include":"#assignment-operator"},{"include":"#logical-operator"},{"include":"#remainder-operator"},{"include":"#increment-decrement-operator"},{"include":"#overflow-operator"},{"include":"#range-operator"},{"include":"#bitwise-operator"},{"include":"#arithmetic-operator"},{"include":"#ternary-operator"},{"include":"#type-casting-operator"},{"include":"#custom-operator"}]},"optional-type":{"name":"meta.optional.candid","match":"\\b(Optional)(\u003c)","end":"(\u003e)","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"support.type.optional.candid"},"2":{"name":"punctuation.optional.begin.candid"}},"endCaptures":{"1":{"name":"punctuation.optional.end.candid"}}},"overflow-operator":{"name":"keyword.operator.overflow.candid","match":"(?\u003c![/=\\-+!*%\u003c\u003e\u0026|\\^~.])\\\u0026(\\+|\\-|\\*|\\/|%)(?![/=\\-+!*%\u003c\u003e\u0026|\\^~.])"},"parameter-clause":{"name":"meta.parameter-clause.candid","begin":"(\\()","end":"(\\))","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"punctuation.definition.function-arguments.begin.candid"}},"endCaptures":{"1":{"name":"punctuation.definition.function-arguments.end.candid"}}},"primitive-type":{"name":"support.type.candid","match":"\\b(blob|bool|char|float(32|64)|(int|nat)(8|16|32|64)?|principal|text)\\b"},"protocol-composition-type":{"name":"meta.protocol.candid","match":"\\b(protocol)(\u003c)","end":"(\u003e)","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"support.type.protocol.candid"},"2":{"name":"punctuation.protocol.begin.candid"}},"endCaptures":{"1":{"name":"punctuation.protocol.end.candid"}}},"range-operator":{"name":"keyword.operator.range.candid","match":"(?\u003c![/=\\-+!*%\u003c\u003e\u0026|\\^~.])\\.\\.(?:\\.)?(?![/=\\-+!*%\u003c\u003e\u0026|\\^~.])"},"remainder-operator":{"name":"keyword.operator.remainder.candid","match":"(?\u003c![/=\\-+!*%\u003c\u003e\u0026|\\^~.])\\%(?![/=\\-+!*%\u003c\u003e\u0026|\\^~.])"},"resolved-type":{"name":"support.type.candid","match":"\\b[A-Z].*?\\b"},"string-literal":{"name":"meta.literal.string.candid","begin":"\\\"","end":"\\\"","patterns":[{"name":"constant.character.escape.candid","match":"\\\\([0tnr\\\"\\'\\\\]|x[[:xdigit:]]{2}|u[[:xdigit:]]{4}|U[[:xdigit:]]{8})"},{"name":"invalid.illegal.candid","match":"(\\\"|\\\\)"},{"name":"string.quoted.double.candid","match":"(.)"}],"beginCaptures":{"0":{"name":"string.quoted.double.candid"}},"endCaptures":{"0":{"name":"string.quoted.double.candid"}}},"switch-statement-keyword":{"name":"keyword.control.switch.candid","match":"\\b(switch|case|default)\\b"},"type":{"patterns":[{"include":"#primitive-type"},{"include":"#resolved-type"},{"include":"#optional-type"},{"include":"#protocol-composition-type"}]}}}
1
+ {"name":"Candid","scopeName":"source.did","patterns":[{"include":"#comment"},{"include":"#attribute"},{"include":"#literal"},{"include":"#operator"},{"include":"#keyword"},{"include":"#type"},{"include":"#boolean"}],"repository":{"arithmetic-operator":{"name":"keyword.operator.arithmetic.candid","match":"(?\u003c![/=\\-+!*%\u003c\u003e\u0026|\\^~.])(\\+|\\-|\\*|\\/)(?![/=\\-+!*%\u003c\u003e\u0026|\\^~.])"},"array-type":{"name":"meta.array.candid","begin":"\\b(Array)(\u003c)","end":"(\u003e)","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"support.type.array.candid"},"2":{"name":"punctuation.array.begin.candid"}},"endCaptures":{"1":{"name":"punctuation.array.end.candid"}}},"assignment-operator":{"name":"keyword.operator.assignment.candid","match":"(?\u003c![/=\\-+!*%\u003c\u003e\u0026|\\^~.])(\\+|\\-|\\*|\\/|%|\u003c\u003c\u003e?|\u003c?\u003e\u003e|\u0026|\\^|\\||\u0026\u0026|\\|\\|)?=(?![/=\\-+!*%\u003c\u003e\u0026|\\^~.])"},"async-await-keyword":{"name":"keyword.async-await.candid","match":"\\b(async|await)\\b"},"attribute":{"name":"meta.attribute.candid","patterns":[{"contentName":"meta.attribute.arguments.candid","begin":"((@)(\\B\\$[0-9]+|\\b[\\w^\\d][\\w\\d]*\\b|\\B`[\\w^\\d][\\w\\d]*`\\B))(\\()","end":"\\)","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"storage.modifier.attribute.candid"},"2":{"name":"punctuation.definition.attribute.candid"},"3":{"name":"punctuation.definition.attribute-arguments.begin.candid"}},"endCaptures":{"0":{"name":"punctuation.definition.attribute-arguments.end.candid"}}},{"match":"((@)(\\B\\$[0-9]+|\\b[\\w^\\d][\\w\\d]*\\b|\\B`[\\w^\\d][\\w\\d]*`\\B))","captures":{"1":{"name":"storage.modifier.attribute.candid"},"2":{"name":"punctuation.definition.attribute.candid"}}}]},"bitwise-operator":{"name":"keyword.operator.bitwise.candid","match":"(?\u003c![/=\\-+!*%\u003c\u003e\u0026|\\^~.])(\u0026|\\||\\^|\u003c\u003c\u003e?|\u003c?\u003e\u003e)(?![/=\\-+!*%\u003c\u003e\u0026|\\^~.])"},"block-comment":{"name":"comment.block.candid","begin":"/\\*","end":"\\*/","beginCaptures":{"0":{"name":"punctuation.definition.comment.block.begin.candid"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.block.end.candid"}}},"boolean":{"name":"keyword.constant.boolean.candid","match":"\\b(true|false)\\b"},"branch-statement-keyword":{"name":"keyword.control.branch.candid","patterns":[{"include":"#if-statement-keyword"},{"include":"#switch-statement-keyword"}]},"catch-statement-keyword":{"name":"kewyord.control.catch.candid","match":"\\b(catch|do)\\b"},"char-literal":{"name":"meta.literal.char.candid","begin":"'","end":"'","patterns":[{"name":"constant.character.escape.candid","match":"\\\\([0tnr\\\"\\'\\\\]|x[[:xdigit:]]{2}|u[[:xdigit:]]{4}|U[[:xdigit:]]{8})"},{"name":"invalid.illegal.candid","match":"(\\'|\\\\)"},{"name":"string.quoted.single.candid","match":"(.)"}],"beginCaptures":{"0":{"name":"string.quoted.double.candid"}},"endCaptures":{"0":{"name":"string.quoted.single.candid"}}},"code-block":{"begin":"(\\{)","end":"(\\})","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"punctuation.definition.code-block.begin.candid"}},"endCaptures":{"1":{"name":"punctuation.definition.code-block.end.candid"}}},"comment":{"patterns":[{"include":"#documentation-comment"},{"include":"#block-comment"},{"include":"#in-line-comment"}]},"comparative-operator":{"name":"keyword.operator.comparative.candid","match":"(?\u003c![/=\\-+!*%\u003c\u003e\u0026|\\^~.])((=|!)==?|(\u003c|\u003e)=?|~=)(?![/=\\-+!*%\u003c\u003e\u0026|\\^~.])"},"control-transfer-statement-keyword":{"name":"keyword.control.transfer.candid","match":"\\b(continue|break|return)\\b"},"custom-operator":{"patterns":[{"name":"keyword.operator.custom.prefix.unary.candid","match":"(?\u003c=[\\s(\\[{,;:])([/=\\-+!*%\u003c\u003e\u0026|\\^~.]++)(?![\\s)\\]},;:])"},{"name":"keyword.operator.custom.postfix.unary.candid","match":"(?\u003c![\\s(\\[{,;:])([/=\\-+!*%\u003c\u003e\u0026|\\^~.]++)(?![\\s)\\]},;:\\.])"},{"name":"keyword.operator.custom.binary.candid","match":"(?\u003c=[\\s(\\[{,;:])([/=\\-+!*%\u003c\u003e\u0026|\\^~.]++)(?=[\\s)\\]},;:])"}]},"declaration-modifier":{"name":"keyword.other.declaration-modifier.candid","match":"\\b(class|object|type|shared)\\b"},"dictionary-type":{"name":"meta.dictionary.candid","begin":"\\b(Dictionary)(\u003c)","end":"(\u003e)","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"support.type.dictionary.candid"},"2":{"name":"punctuation.dictionary.begin.candid"}},"endCaptures":{"1":{"name":"punctuation.dictionary.end.candid"}}},"documentation-comment":{"name":"comment.block.documentation.candid","begin":"/\\*\\*","end":"\\*/","beginCaptures":{"0":{"name":"punctuation.definition.comment.block.documentation.begin.candid"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.block.documentation.end.candid"}}},"floating-point-literal":{"name":"constant.numeric.floating-point.candid","patterns":[{"match":"\\b([0-9][0-9_]*)(\\.([0-9][0-9_]*))?([eE][+\\-]?([0-9][0-9_]*))?\\b"},{"match":"\\b(0x[[:xdigit:]][[[:xdigit:]]_]*)(\\.(0x[[:xdigit:]][[[:xdigit:]]_]*))?([pP][+\\-]?(0x[[:xdigit:]][[[:xdigit:]]_]*))\\b"}]},"function-body":{"name":"meta.function-body.candid","patterns":[{"include":"#code-block"}]},"generic-parameter-clause":{"name":"meta.generic-parameter-clause.candid","begin":"(\u003c)","end":"(\u003e)","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"punctuation.definition.generic-parameter-clause.begin.candid"}},"endCaptures":{"1":{"name":"punctuation.definition.generic-parameter-clause.end.candid"}}},"identifier":{"name":"meta.identifier.candid","match":"(\\B\\$[0-9]+|\\b[\\w^\\d][\\w\\d]*\\b|\\B`[\\w^\\d][\\w\\d]*`\\B)"},"if-statement-keyword":{"name":"keyword.control.if.candid","match":"\\b(if|else)\\b"},"in-line-comment":{"name":"comment.line.double-slash.candid","match":"(//).*","captures":{"1":{"name":"punctuation.definition.comment.line.double-slash.candid"}}},"increment-decrement-operator":{"name":"keyword.operator.increment-or-decrement.candid","match":"(?\u003c![/=\\-+!*%\u003c\u003e\u0026|\\^~.])(\\+\\+|\\-\\-)(?![/=\\-+!*%\u003c\u003e\u0026|\\^~.])"},"integer-literal":{"name":"constant.numeric.integer.candid","patterns":[{"name":"constant.numeric.integer.binary.candid","match":"(\\B\\-|\\b)(0b[01][01_]*)\\b"},{"name":"constant.numeric.integer.octal.candid","match":"(\\B\\-|\\b)(0o[0-7][0-7_]*)\\b"},{"name":"constant.numeric.integer.decimal.candid","match":"(\\B\\-|\\b)([0-9][0-9_]*)\\b"},{"name":"constant.numeric.integer.hexadecimal.candid","match":"(\\B\\-|\\b)(0x[[:xdigit:]][[[:xdigit:]]_]*)\\b"}]},"keyword":{"patterns":[{"include":"#branch-statement-keyword"},{"include":"#control-transfer-statement-keyword"},{"include":"#loop-statement-keyword"},{"include":"#catch-statement-keyword"},{"include":"#async-await-keyword"},{"include":"#operator-declaration-modifier"},{"include":"#declaration-modifier"},{"name":"keyword.declaration.candid","match":"\\b(import|service|type)\\b"},{"name":"keyword.statement.candid","match":"\\b(opt|vec|record|variant|func|null|empty|oneway|query|composite_query)\\b"},{"name":"keyword.other.candid","match":"\\b(reserved)\\b"}]},"literal":{"patterns":[{"include":"#integer-literal"},{"include":"#floating-point-literal"},{"include":"#nil-literal"},{"include":"#string-literal"},{"include":"#char-literal"}]},"logical-operator":{"name":"keyword.operator.logical.candid","match":"(?\u003c![/=\\-+!*%\u003c\u003e\u0026|\\^~.])(!|\u0026\u0026|\\|\\|)(?![/=\\-+!*%\u003c\u003e\u0026|\\^~.])"},"loop-statement-keyword":{"name":"keyword.control.loop.candid","match":"\\b(while|repeat|for|in|loop)\\b"},"null-literal":{"name":"constant.null.candid","match":"\\bnull\\b"},"operator":{"patterns":[{"include":"#comparative-operator"},{"include":"#assignment-operator"},{"include":"#logical-operator"},{"include":"#remainder-operator"},{"include":"#increment-decrement-operator"},{"include":"#overflow-operator"},{"include":"#range-operator"},{"include":"#bitwise-operator"},{"include":"#arithmetic-operator"},{"include":"#ternary-operator"},{"include":"#type-casting-operator"},{"include":"#custom-operator"}]},"optional-type":{"name":"meta.optional.candid","match":"\\b(Optional)(\u003c)","end":"(\u003e)","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"support.type.optional.candid"},"2":{"name":"punctuation.optional.begin.candid"}},"endCaptures":{"1":{"name":"punctuation.optional.end.candid"}}},"overflow-operator":{"name":"keyword.operator.overflow.candid","match":"(?\u003c![/=\\-+!*%\u003c\u003e\u0026|\\^~.])\\\u0026(\\+|\\-|\\*|\\/|%)(?![/=\\-+!*%\u003c\u003e\u0026|\\^~.])"},"parameter-clause":{"name":"meta.parameter-clause.candid","begin":"(\\()","end":"(\\))","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"punctuation.definition.function-arguments.begin.candid"}},"endCaptures":{"1":{"name":"punctuation.definition.function-arguments.end.candid"}}},"primitive-type":{"name":"support.type.candid","match":"\\b(blob|bool|char|float(32|64)|(int|nat)(8|16|32|64)?|principal|text)\\b"},"protocol-composition-type":{"name":"meta.protocol.candid","match":"\\b(protocol)(\u003c)","end":"(\u003e)","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"support.type.protocol.candid"},"2":{"name":"punctuation.protocol.begin.candid"}},"endCaptures":{"1":{"name":"punctuation.protocol.end.candid"}}},"range-operator":{"name":"keyword.operator.range.candid","match":"(?\u003c![/=\\-+!*%\u003c\u003e\u0026|\\^~.])\\.\\.(?:\\.)?(?![/=\\-+!*%\u003c\u003e\u0026|\\^~.])"},"remainder-operator":{"name":"keyword.operator.remainder.candid","match":"(?\u003c![/=\\-+!*%\u003c\u003e\u0026|\\^~.])\\%(?![/=\\-+!*%\u003c\u003e\u0026|\\^~.])"},"resolved-type":{"name":"support.type.candid","match":"\\b[A-Z].*?\\b"},"string-literal":{"name":"meta.literal.string.candid","begin":"\\\"","end":"\\\"","patterns":[{"name":"constant.character.escape.candid","match":"\\\\([0tnr\\\"\\'\\\\]|x[[:xdigit:]]{2}|u[[:xdigit:]]{4}|U[[:xdigit:]]{8})"},{"name":"invalid.illegal.candid","match":"(\\\"|\\\\)"},{"name":"string.quoted.double.candid","match":"(.)"}],"beginCaptures":{"0":{"name":"string.quoted.double.candid"}},"endCaptures":{"0":{"name":"string.quoted.double.candid"}}},"switch-statement-keyword":{"name":"keyword.control.switch.candid","match":"\\b(switch|case|default)\\b"},"type":{"patterns":[{"include":"#primitive-type"},{"include":"#resolved-type"},{"include":"#optional-type"},{"include":"#protocol-composition-type"}]}}}
@@ -1 +1 @@
1
- {"name":"Elvish transcript","scopeName":"source.elvish-transcript","patterns":[{"contentName":"meta.embedded.block.elvish","begin":"(^|\\G)[~/][^ ]*\u003e ","while":"(^|\\G) ","patterns":[{"include":"source.elvish"}]}]}
1
+ {"name":"Elvish transcript","scopeName":"source.elvish-transcript","patterns":[{"contentName":"meta.embedded.block.elvish","begin":"(^|\\G)[~/][^ ]*\u003e ","while":"(^|\\G) ","patterns":[{"include":"source.elvish"}]},{"name":"markup.heading.1.elvish-transcript","match":"(^|\\G)# .* #$"},{"name":"markup.heading.2.elvish-transcript","match":"(^|\\G)## .* ##$"},{"name":"comment.line.double-slash.elvish-transcript","match":"(^|\\G)//.*$"}]}
@@ -0,0 +1 @@
1
+ {"name":"FIRRTL","scopeName":"source.firrtl","patterns":[{"include":"#version"},{"include":"#circuit"},{"include":"#declaration"},{"include":"#statement"},{"include":"#comment"},{"include":"#file_info"}],"repository":{"circuit":{"match":"^(circuit)\\s+(\\w+)\\s*:","captures":{"1":{"name":"storage.type.class.firrtl"},"2":{"name":"entity.name.type.firrtl"}}},"comment":{"name":"comment.line.character.firrtl","match":";.*$"},"declaration":{"patterns":[{"include":"#module"},{"include":"#extmodule"},{"include":"#layer"},{"include":"#type_decl"},{"include":"#port"},{"include":"#wire_or_register"},{"include":"#node"},{"include":"#instance"},{"include":"#memory"}]},"expression":{"patterns":[{"include":"#expression_literal"},{"include":"#expression_primop"},{"include":"#expression_primop_deprecated"},{"include":"#property_literal"},{"include":"#format_string"}]},"expression_literal":{"match":"(([US]Int|Analog)(\u003c(\\d+)\u003e)?\\(.+\\))","captures":{"1":{"name":"constant.numeric.firrtl"}}},"expression_primop":{"begin":"(add|sub|mul|div|rem|lt|leq|gt|geq|eq|neq|pad|asAsyncReset|asUInt|asSInt|asClock|shl|shr|dshl|dshr|cvt|neg|not|and|or|xor|andr|orr|xorr|cat|bits|head|tail|mux|probe|rwprobe|read)\\(","end":"\\)","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.operator.firrtl"}}},"expression_primop_deprecated":{"begin":"(asFixedPoint|bpshl|bpshr|bpset|validif)\\(","end":"\\)","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"invalid.deprecated.firrtl"}}},"extmodule":{"match":"(extmodule)\\s+(\\w+)\\s*:","captures":{"1":{"name":"storage.modifier.firrtl"},"2":{"name":"storage.type.class.firrtl"},"3":{"name":"entity.name.type.firrtl"}}},"file_info":{"name":"comment.line.character.firrtl","match":"(@\\[.*\\])"},"format_string":{"name":"string.quoted.double.firrtl","begin":"\"","end":"\"","patterns":[{"name":"variable.other.firrtl","match":"%[bdx%]"},{"name":"variable.other.firrtl","match":"\\\\[nt\\\\\"']"}]},"instance":{"name":"keyword.other.firrtl","match":"inst\\s+(\\w+)\\s+of\\s+","captures":{"1":{"name":"entity.name.type.firrtl"}}},"layer":{"match":"(layer)\\s+(\\w+)\\s*,?\\s*(\\w*)","captures":{"1":{"name":"storage.type.class.firrtl"},"2":{"name":"entity.name.type.firrtl"},"3":{"name":"storage.modifier.firrtl"}}},"memory":{"match":"(mem)\\s+(\\w+)","captures":{"1":{"name":"storage.type.class.firrtl"},"2":{"name":"entity.name.type.firrtl"}}},"module":{"match":"^\\s*(public\\s+)?(module)\\s+(\\w+)\\s*:","captures":{"1":{"name":"storage.modifier.firrtl"},"2":{"name":"storage.type.class.firrtl"},"3":{"name":"entity.name.type.firrtl"}}},"node":{"match":"(node)\\s+(\\w+)\\s*","captures":{"1":{"name":"storage.type.firrtl"},"2":{"name":"entity.name.type.firrtl"}}},"port":{"begin":"(input|output)\\s+(\\w+)\\s*:","end":"$","patterns":[{"include":"#type"},{"include":"#comment"},{"include":"#file_info"}],"beginCaptures":{"1":{"name":"storage.type.port.firrtl"},"2":{"name":"entity.name.type.firrtl"}}},"property_literal":{"name":"constant.numeric.firrtl","match":"Integer\\((\\d+)\\)"},"statement":{"patterns":[{"include":"#statement_generic"},{"include":"#statement_memory_config"},{"include":"#statement_extmodule_config"}]},"statement_extmodule_config":{"patterns":[{"match":"(parameter)\\s+(\\w+)","captures":{"1":{"name":"keyword.other.firrtl"}}}]},"statement_generic":{"begin":"(connect|invalidate|attach\\(|propassign|skip|when|else(\\s+when)?|stop|printf|assert|assume|cover|layerblock|define|force(_initial)?|release(_initial)?)","end":"$","patterns":[{"include":"#expression"},{"include":"#comment"},{"include":"#file_info"}],"beginCaptures":{"1":{"name":"keyword.other.firrtl"}}},"statement_memory_config":{"patterns":[{"begin":"(data-type)\\s*=\u003e","end":"$","patterns":[{"include":"#type"}],"beginCaptures":{"1":{"name":"keyword.other.firrtl"}}},{"match":"(depth|reader|writer|read-latency|write-latency)\\s*=\u003e\\s*\\w+","captures":{"1":{"name":"keyword.other.firrtl"}}},{"match":"(read-under-write)\\s*=\u003e\\s*(old|new|undefined)","captures":{"1":{"name":"keyword.other.firrtl"},"2":{"name":"keyword.other.firrtl"}}}]},"type":{"patterns":[{"include":"#type_ground_nowidth"},{"include":"#type_ground_width"},{"include":"#type_bundle"},{"include":"#type_probe"},{"include":"#type_enum"},{"include":"#type_property"}]},"type_bundle":{"name":"meta.type.bundle.firrtl","begin":"(const\\s+)?{","end":"}","patterns":[{"include":"#type_bundle_field"},{"include":"#type"}],"captures":{"1":{"name":"storage.modifier.firrtl"}}},"type_bundle_field":{"match":"(flip\\s+)?(\\w+)\\s*:","captures":{"1":{"name":"storage.modifier.firrtl"},"2":{"name":"entity.name.type.firrtl"}}},"type_decl":{"begin":"(type)\\s+(\\w+)\\s*=","end":"$","patterns":[{"include":"#type"},{"include":"#comment"}],"beginCaptures":{"1":{"name":"storage.type.port.firrtl"},"2":{"name":"entity.name.type.firrtl"}}},"type_enum":{"begin":"({\\|)","end":"(\\|})","patterns":[{"include":"#type"}],"captures":{"1":{"name":"storage.type.firrtl"}}},"type_ground_nowidth":{"name":"storage.type.firrtl","match":"(const\\s+)?(Clock|Reset|AsyncReset)","captures":{"1":{"name":"storage.modifier.firrtl"}}},"type_ground_width":{"name":"storage.type.firrtl","match":"(const\\s+)?([US]Int|Analog)(\u003c(\\d+)\u003e)?","captures":{"1":{"name":"storage.modifier.firrtl"},"4":{"name":"constant.numeric.firrtl"}}},"type_probe":{"begin":"((RW)?Probe\u003c)","end":"(\u003e)","patterns":[{"include":"#type"}],"captures":{"1":{"name":"storage.type.firrtl"}}},"type_property":{"name":"storage.type.firrtl","match":"Integer"},"version":{"name":"comment.line.character.firrtl","match":"^FIRRTL version \\d+\\.\\d+\\.\\d+$"},"wire_or_register":{"begin":"(wire|reg|regreset)\\s+(\\w+)\\s*:","end":"$","patterns":[{"include":"#type"},{"include":"#comment"},{"include":"#file_info"}],"beginCaptures":{"1":{"name":"storage.type.firrtl"},"2":{"name":"entity.name.type.firrtl"}}}}}
@@ -1 +1 @@
1
- {"name":"fsharp","scopeName":"source.fsharp","patterns":[{"include":"#compiler_directives"},{"include":"#comments"},{"include":"#constants"},{"include":"#strings"},{"include":"#chars"},{"include":"#double_tick"},{"include":"#definition"},{"include":"#abstract_definition"},{"include":"#attributes"},{"include":"#modules"},{"include":"#anonymous_functions"},{"include":"#du_declaration"},{"include":"#record_declaration"},{"include":"#records"},{"include":"#strp_inlined"},{"include":"#keywords"},{"include":"#cexprs"},{"include":"#text"}],"repository":{"abstract_definition":{"name":"abstract.definition.fsharp","begin":"\\b(abstract)\\s+(member)?(\\s+\\[\\\u003c.*\\\u003e\\])?\\s*([_[:alpha:]0-9,\\._`\\s]+)(\u003c)?","end":"\\s*(with)\\b|=|$","patterns":[{"include":"#comments"},{"include":"#common_declaration"},{"match":"(\\?{0,1})([[:alpha:]0-9'`^._ ]+)\\s*(:)((?!with\\b)\\b([\\w0-9'`^._ ]+)){0,1}","captures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"variable.parameter.fsharp"},"3":{"name":"keyword.symbol.fsharp"},"4":{"name":"entity.name.type.fsharp"}}},{"match":"(?!with|get|set\\b)\\s*([\\w0-9'`^._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"keyword.fsharp"},"2":{"name":"keyword.fsharp"},"3":{"name":"support.function.attribute.fsharp"},"5":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.fsharp"}}},"anonymous_functions":{"patterns":[{"name":"function.anonymous","begin":"\\b(fun)\\b","end":"(-\u003e)","patterns":[{"include":"#comments"},{"begin":"(\\()","end":"\\s*(?=(-\u003e))","patterns":[{"include":"#member_declaration"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.arrow.fsharp"}}},{"include":"#variables"}],"beginCaptures":{"1":{"name":"keyword.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.arrow.fsharp"}}}]},"anonymous_record_declaration":{"begin":"(\\{\\|)","end":"(\\|\\})","patterns":[{"match":"[[:alpha:]0-9'`^_ ]+(:)","captures":{"1":{"name":"keyword.symbol.fsharp"}}},{"match":"([[:alpha:]0-9'`^_ ]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#anonymous_record_declaration"},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},"attributes":{"patterns":[{"name":"support.function.attribute.fsharp","begin":"\\[\\\u003c","end":"\\\u003e\\]|\\]","patterns":[{"include":"$self"}]}]},"cexprs":{"patterns":[{"name":"cexpr.fsharp","match":"\\b(async|seq|promise|task|maybe|asyncMaybe|controller|scope|application|pipeline)(?=\\s*\\{)","captures":{"0":{"name":"keyword.fsharp"}}}]},"chars":{"patterns":[{"name":"char.fsharp","match":"('\\\\?.')","captures":{"1":{"name":"string.quoted.single.fsharp"}}}]},"comments":{"patterns":[{"name":"comment.literate.command.fsharp","match":"(\\(\\*{3}.*\\*{3}\\))","beginCaptures":{"1":{"name":"comment.block.fsharp"}}},{"name":"comment.block.markdown.fsharp","begin":"^\\s*(\\(\\*\\*(?!\\)))((?!\\*\\)).)*$","while":"^(?!\\s*(\\*)+\\)\\s*$)","patterns":[{"include":"source.gfm"}],"beginCaptures":{"1":{"name":"comment.block.fsharp"}},"endCaptures":{"1":{"name":"comment.block.fsharp"}}},{"name":"comment.block.fsharp","begin":"(\\(\\*(?!\\)))","end":"(\\*+\\))","patterns":[{"name":"fast-capture.comment.line.double-slash.fsharp","match":"//"},{"include":"#comments"}],"beginCaptures":{"1":{"name":"comment.block.fsharp"}},"endCaptures":{"1":{"name":"comment.block.fsharp"}}},{"name":"comment.block.markdown.fsharp.end","match":"((?\u003c!\\()(\\*)+\\))","captures":{"1":{"name":"comment.block.fsharp"}}},{"name":"comment.line.markdown.fsharp","begin":"(?\u003c![!%\u0026+-.\u003c=\u003e?@^|/])///(?!/)","while":"(?\u003c![!%\u0026+-.\u003c=\u003e?@^|/])///(?!/)","patterns":[{"include":"source.gfm"}]},{"name":"comment.line.double-slash.fsharp","match":"(?\u003c![!%\u0026+-.\u003c=\u003e?@^|/])//(.*$)"}]},"common_binding_definition":{"patterns":[{"include":"#comments"},{"include":"#attributes"},{"begin":"(:)\\s*(\\()\\s*(static member|member)","end":"(\\))\\s*((?=,)|(?=\\=))","patterns":[{"match":"(\\^[[:alpha:]0-9'._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#variables"},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"keyword.symbol.fsharp"},"3":{"name":"keyword.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"begin":"(:)\\s*(\\()","end":"(\\)\\s*(([?[:alpha:]0-9'`^._ ]*)))","patterns":[{"include":"#tuple_signature"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"entity.name.type.fsharp"}}},{"begin":"(:)\\s*(\\^[[:alpha:]0-9'._]+)\\s*(when)","end":"(?=:)","patterns":[{"name":"keyword.fsharp","match":"\\b(and|when|or)\\b"},{"match":"([[:alpha:]0-9'^._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"name":"keyword.symbol.fsharp","match":"(\\(|\\))"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"entity.name.type.fsharp"},"3":{"name":"keyword.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"match":"(:)\\s*([?[:alpha:]0-9'`^._ ]+)","captures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"entity.name.type.fsharp"}}},{"match":"(-\u003e)\\s*(\\()?\\s*([?[:alpha:]0-9'`^._ ]+)*","captures":{"1":{"name":"keyword.symbol.arrow.fsharp"},"2":{"name":"keyword.symbol.fsharp"},"3":{"name":"entity.name.type.fsharp"}}},{"begin":"(\\*)\\s*(\\()","end":"(\\)\\s*(([?[:alpha:]0-9'`^._ ]+))+)","patterns":[{"include":"#tuple_signature"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"entity.name.type.fsharp"}}},{"begin":"(\\*)(\\s*([?[:alpha:]0-9'`^._ ]+))*","end":"(?==)|(?=\\))","patterns":[{"include":"#tuple_signature"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"entity.name.type.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"begin":"(\u003c+(?![[:space:]]*\\)))","end":"((?\u003c!:)\u003e|\\))","patterns":[{"include":"#generic_declaration"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"include":"#anonymous_record_declaration"},{"begin":"({)","end":"(})","patterns":[{"include":"#record_signature"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"include":"#definition"},{"include":"#variables"},{"include":"#keywords"}]},"common_declaration":{"patterns":[{"begin":"\\s*(-\u003e)\\s*([[:alpha:]0-9'`^._ ]+)(\u003c)","end":"(\u003e)","patterns":[{"match":"([[:alpha:]0-9'`^._ ]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"keyword.symbol.arrow.fsharp"},"2":{"name":"entity.name.type.fsharp"},"3":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"match":"\\s*(-\u003e)\\s*(?!with|get|set\\b)\\b([\\w0-9'`^._]+)","captures":{"1":{"name":"keyword.symbol.arrow.fsharp"},"2":{"name":"entity.name.type.fsharp"}}},{"include":"#anonymous_record_declaration"},{"begin":"(\\?{0,1})([[:alpha:]0-9'`^._ ]+)\\s*(:)(\\s*([?[:alpha:]0-9'`^._ ]+)(\u003c))","end":"(\u003e)","patterns":[{"match":"([[:alpha:]0-9'`^._ ]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"variable.parameter.fsharp"},"3":{"name":"keyword.symbol.fsharp"},"4":{"name":"keyword.symbol.fsharp"},"5":{"name":"entity.name.type.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}}]},"compiler_directives":{"patterns":[{"name":"keyword.control.directive.fsharp","match":"\\s?(#if|#elif|#elseif|#else|#endif|#light|#nowarn)"}]},"constants":{"patterns":[{"name":"keyword.symbol.fsharp","match":"\\(\\)"},{"name":"constant.numeric.float.fsharp","match":"\\b-?[0-9][0-9_]*((\\.([0-9][0-9_]*([eE][+-]??[0-9][0-9_]*)?)?)|([eE][+-]??[0-9][0-9_]*))"},{"name":"constant.numeric.integer.nativeint.fsharp","match":"\\b(-?((0(x|X)[0-9a-fA-F][0-9a-fA-F_]*)|(0(o|O)[0-7][0-7_]*)|(0(b|B)[01][01_]*)|([0-9][0-9_]*)))"},{"name":"constant.language.boolean.fsharp","match":"\\b(true|false)\\b"},{"name":"constant.other.fsharp","match":"\\b(null|void)\\b"}]},"definition":{"patterns":[{"name":"binding.fsharp","begin":"\\b(let mutable|static let mutable|static let|let inline|let|and|member val|static member inline|static member|default|member|override|let!)(\\s+rec|mutable)?(\\s+\\[\\\u003c.*\\\u003e\\])?\\s*(private|internal|public)?\\s+(\\[[^-=]*\\]|[_[:alpha:]]([_[:alpha:]0-9\\._]+)*|``[_[:alpha:]]([_[:alpha:]0-9\\._`\\s]+|(?\u003c=,)\\s)*)?","end":"\\s*((with\\b)|(=|\\n+=|(?\u003c=\\=)))","patterns":[{"include":"#common_binding_definition"}],"beginCaptures":{"1":{"name":"keyword.fsharp"},"2":{"name":"keyword.fsharp"},"3":{"name":"support.function.attribute.fsharp"},"4":{"name":"storage.modifier.fsharp"},"5":{"name":"variable.fsharp"}},"endCaptures":{"2":{"name":"keyword.fsharp"},"3":{"name":"keyword.symbol.fsharp"}}},{"name":"binding.fsharp","begin":"\\b(use|use!|and|and!)\\s+(\\[[^-=]*\\]|[_[:alpha:]]([_[:alpha:]0-9\\._]+)*|``[_[:alpha:]]([_[:alpha:]0-9\\._`\\s]+|(?\u003c=,)\\s)*)?","end":"\\s*(=)","patterns":[{"include":"#common_binding_definition"}],"beginCaptures":{"1":{"name":"keyword.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"name":"binding.fsharp","begin":"(?\u003c=with|and)\\s*\\b((get|set)\\s*(?=\\())(\\[[^-=]*\\]|[_[:alpha:]]([_[:alpha:]0-9\\._]+)*|``[_[:alpha:]]([_[:alpha:]0-9\\._`\\s]+|(?\u003c=,)\\s)*)?","end":"\\s*(=|\\n+=|(?\u003c=\\=))","patterns":[{"include":"#common_binding_definition"}],"beginCaptures":{"4":{"name":"variable.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"name":"binding.fsharp","begin":"\\b(static val mutable|val mutable|val)(\\s+rec|mutable)?(\\s+\\[\\\u003c.*\\\u003e\\])?\\s*(private|internal|public)?\\s+(\\[[^-=]*\\]|[_[:alpha:]]([_[:alpha:]0-9,\\._]+)*|``[_[:alpha:]]([_[:alpha:]0-9,\\._`\\s]+|(?\u003c=,)\\s)*)?","end":"\\n$","patterns":[{"include":"#common_binding_definition"}],"beginCaptures":{"1":{"name":"keyword.fsharp"},"2":{"name":"keyword.fsharp"},"3":{"name":"support.function.attribute.fsharp"},"4":{"name":"storage.modifier.fsharp"},"5":{"name":"variable.fsharp"}}},{"name":"binding.fsharp","begin":"\\b(new)\\b\\s+(\\()","end":"(\\))","patterns":[{"include":"#common_binding_definition"}],"beginCaptures":{"1":{"name":"keyword.fsharp"},"2":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}}]},"double_tick":{"patterns":[{"name":"variable.other.binding.fsharp","match":"(``)([^`]*)(``)","captures":{"1":{"name":"string.quoted.single.fsharp"},"2":{"name":"variable.other.binding.fsharp"},"3":{"name":"string.quoted.single.fsharp"}}}]},"du_declaration":{"patterns":[{"name":"du_declaration.fsharp","begin":"\\b(of)\\b","end":"$|(\\|)","patterns":[{"include":"#comments"},{"match":"([[:alpha:]0-9'`\u003c\u003e^._]+|``[[:alpha:]0-9' \u003c\u003e^._]+``)\\s*(:)\\s*([[:alpha:]0-9'`\u003c\u003e^._]+|``[[:alpha:]0-9' \u003c\u003e^._]+``)","captures":{"1":{"name":"variable.parameter.fsharp"},"2":{"name":"keyword.symbol.fsharp"},"3":{"name":"entity.name.type.fsharp"}}},{"match":"(``([[:alpha:]0-9'^._ ]+)``|[[:alpha:]0-9'`^._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#anonymous_record_declaration"},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"keyword.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}}]},"generic_declaration":{"patterns":[{"begin":"(:)\\s*(\\()\\s*(static member|member)","end":"(\\))","patterns":[{"begin":"(\\()","end":"(\\))","patterns":[{"include":"#member_declaration"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"match":"(('|\\^)[[:alpha:]0-9'._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#variables"},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"keyword.symbol.fsharp"},"3":{"name":"keyword.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"name":"keyword.fsharp","match":"\\b(private|to|public|internal|function|yield!|yield|class|exception|match|delegate|of|new|in|as|if|then|else|elif|for|begin|end|inherit|do|let\\!|return\\!|return|interface|with|abstract|enum|member|try|finally|and|when|or|use|use\\!|struct|while|mutable|assert|base|done|downcast|downto|extern|fixed|global|lazy|upcast|not)(?!')\\b"},{"name":"keyword.symbol.fsharp","match":":"},{"include":"#constants"},{"match":"(('|\\^)[[:alpha:]0-9'._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"begin":"(\u003c)","end":"(\u003e)","patterns":[{"match":"(('|\\^)[[:alpha:]0-9'._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#tuple_signature"},{"include":"#generic_declaration"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"begin":"(\\()","end":"(\\))","patterns":[{"match":"(([?[:alpha:]0-9'`^._ ]+))+","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#tuple_signature"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"match":"(?!when|and|or\\b)\\b([\\w0-9'`^._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"match":"(\\|)","captures":{"1":{"name":"keyword.symbol.fsharp"}}},{"include":"#keywords"}]},"keywords":{"patterns":[{"name":"storage.modifier","match":"\\b(private|public|internal)\\b"},{"name":"keyword.fsharp","match":"\\b(private|to|public|internal|function|class|exception|delegate|of|new|as|begin|end|inherit|let!|interface|abstract|enum|member|and|when|or|use|use\\!|struct|mutable|assert|base|done|downcast|downto|extern|fixed|global|lazy|upcast|not)(?!')\\b"},{"name":"keyword.control","match":"\\b(match|yield|yield!|with|if|then|else|elif|for|in|return!|return|try|finally|while|do)(?!')\\b"},{"name":"keyword.symbol.arrow.fsharp","match":"(\\-\u003e|\\\u003c\\-)"},{"name":"keyword.symbol.fsharp","match":"(\u0026\u0026\u0026|\\|\\|\\||\\^\\^\\^|~~~|~\\+|~\\-|\u003c\u003c\u003c|\u003e\u003e\u003e|\\|\u003e|:\u003e|:\\?\u003e|:|\\[|\\]|\\;|\u003c\u003e|=|@|\\|\\||\u0026\u0026|\u0026|%|{|}|\\||_|\\.\\.|\\,|\\+|\\-|\\*|\\/|\\^|\\!|\\\u003e|\\\u003e\\=|\\\u003e\\\u003e|\\\u003c|\\\u003c\\=|\\(|\\)|\\\u003c\\\u003c)"}]},"member_declaration":{"patterns":[{"include":"#comments"},{"include":"#common_declaration"},{"begin":"(:)\\s*(\\()\\s*(static member|member)","end":"(\\))\\s*((?=,)|(?=\\=))","patterns":[{"begin":"(\\()","end":"(\\))","patterns":[{"include":"#member_declaration"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"match":"(\\^[[:alpha:]0-9'._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#variables"},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"keyword.symbol.fsharp"},"3":{"name":"keyword.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"match":"(\\^[[:alpha:]0-9'._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"name":"keyword.fsharp","match":"\\b(and|when|or)\\b"},{"name":"keyword.symbol.fsharp","match":"(\\(|\\))"},{"match":"(\\?{0,1})([[:alpha:]0-9'`^._]+|``[[:alpha:]0-9'`^:,._ ]+``)\\s*(:{0,1})(\\s*([?[:alpha:]0-9'`\u003c\u003e._ ]+)){0,1}","captures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"variable.parameter.fsharp"},"3":{"name":"keyword.symbol.fsharp"},"4":{"name":"entity.name.type.fsharp"}}},{"include":"#keywords"}]},"modules":{"patterns":[{"name":"entity.name.section.fsharp","begin":"\\b(namespace global)|\\b(namespace|module)\\s*(public|internal|private|rec)?\\s+([[:alpha:]|``][[:alpha:]0-9'_. ]*)","end":"(\\s?=|\\s|$)","patterns":[{"name":"entity.name.section.fsharp","match":"(\\.)([A-Z][[:alpha:]0-9'_]*)","captures":{"1":{"name":"punctuation.separator.namespace-reference.fsharp"},"2":{"name":"entity.name.section.fsharp"}}}],"beginCaptures":{"1":{"name":"keyword.fsharp"},"2":{"name":"keyword.fsharp"},"3":{"name":"storage.modifier.fsharp"},"4":{"name":"entity.name.section.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"name":"namespace.open.fsharp","begin":"\\b(open type|open)\\s+([[:alpha:]|``][[:alpha:]0-9'_]*)(?=(\\.[A-Z][[:alpha:]0-9_]*)*)","end":"(\\s|$)","patterns":[{"name":"entity.name.section.fsharp","match":"(\\.)([[:alpha:]][[:alpha:]0-9'_]*)","captures":{"1":{"name":"punctuation.separator.namespace-reference.fsharp"},"2":{"name":"entity.name.section.fsharp"}}},{"include":"#comments"}],"beginCaptures":{"1":{"name":"keyword.fsharp"},"2":{"name":"entity.name.section.fsharp"}}},{"name":"namespace.alias.fsharp","begin":"^\\s*(module)\\s+([A-Z][[:alpha:]0-9'_]*)\\s*(=)\\s*([A-Z][[:alpha:]0-9'_]*)","end":"(\\s|$)","patterns":[{"name":"entity.name.section.fsharp","match":"(\\.)([A-Z][[:alpha:]0-9'_]*)","captures":{"1":{"name":"punctuation.separator.namespace-reference.fsharp"},"2":{"name":"entity.name.section.fsharp"}}}],"beginCaptures":{"1":{"name":"keyword.fsharp"},"2":{"name":"entity.name.type.namespace.fsharp"},"3":{"name":"keyword.symbol.fsharp"},"4":{"name":"entity.name.section.fsharp"}}}]},"record_declaration":{"patterns":[{"begin":"(\\{)","end":"(?\u003c=\\})","patterns":[{"include":"#comments"},{"begin":"(((mutable)\\s[[:alpha:]]+)|[[:alpha:]0-9'`\u003c\u003e^._]*)\\s*((?\u003c!:):(?!:))\\s*","end":"$|(;|\\})","patterns":[{"include":"#comments"},{"match":"([[:alpha:]0-9'`^_ ]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#keywords"}],"beginCaptures":{"3":{"name":"keyword.fsharp"},"4":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"include":"#compiler_directives"},{"include":"#constants"},{"include":"#strings"},{"include":"#chars"},{"include":"#double_tick"},{"include":"#definition"},{"include":"#attributes"},{"include":"#anonymous_functions"},{"include":"#keywords"},{"include":"#cexprs"},{"include":"#text"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}}}]},"record_signature":{"patterns":[{"match":"[[:alpha:]0-9'`^_ ]+(=)([[:alpha:]0-9'`^_ ]+)","captures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"variable.parameter.fsharp"}}},{"begin":"({)","end":"(})","patterns":[{"match":"[[:alpha:]0-9'`^_ ]+(=)([[:alpha:]0-9'`^_ ]+)","captures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"variable.parameter.fsharp"}}},{"include":"#record_signature"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"include":"#keywords"}]},"records":{"patterns":[{"name":"record.fsharp","begin":"\\b(type)[\\s]+(private|internal|public)?\\s*","end":"\\s*((with)|((as)\\s+([[:alpha:]0-9']+))|(=)|[\\n=]|(\\(\\)))","patterns":[{"include":"#comments"},{"include":"#attributes"},{"match":"([[:alpha:]0-9'^._]+|``[[:alpha:]0-9'`^:,._ ]+``)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"begin":"(\u003c)","end":"((?\u003c!:)\u003e)","patterns":[{"match":"(('|\\^)``[[:alpha:]0-9`^:,._ ]+``|('|\\^)[[:alpha:]0-9`^:._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"name":"keyword.fsharp","match":"\\b(interface|with|abstract|and|when|or|not|struct|equality|comparison|unmanaged|delegate|enum)\\b"},{"begin":"(\\()","end":"(\\))","patterns":[{"match":"(static member|member|new)","captures":{"1":{"name":"keyword.fsharp"}}},{"include":"#common_binding_definition"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"match":"([\\w0-9'`^._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"match":"\\s*(private|internal|public)","captures":{"1":{"name":"storage.modifier.fsharp"}}},{"begin":"(\\()","end":"\\s*(?=(=)|[\\n=]|(\\(\\))|(as))","patterns":[{"include":"#member_declaration"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"keyword.fsharp"},"2":{"name":"storage.modifier.fsharp"}},"endCaptures":{"2":{"name":"keyword.fsharp"},"3":{"name":"keyword.fsharp"},"4":{"name":"keyword.fsharp"},"5":{"name":"variable.parameter.fsharp"},"6":{"name":"keyword.symbol.fsharp"},"7":{"name":"keyword.symbol.fsharp"}}}]},"string_formatter":{"patterns":[{"name":"entity.name.type.format.specifier.fsharp","match":"(%0?-?(\\d+)?((a|t)|(\\.\\d+)?(f|F|e|E|g|G|M)|(b|c|s|d|i|x|X|o|u)|(s|b|O)|(\\+?A)))","captures":{"1":{"name":"keyword.format.specifier.fsharp"}}}]},"strings":{"patterns":[{"name":"string.quoted.literal.fsharp","begin":"(?=[^\\\\])(@\")","end":"(\")(?!\")","patterns":[{"name":"constant.character.string.escape.fsharp","match":"\"(\")"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.fsharp"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.fsharp"}}},{"name":"string.quoted.triple.fsharp","begin":"(?=[^\\\\])(\"\"\")","end":"(\"\"\")","patterns":[{"include":"#string_formatter"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.fsharp"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.fsharp"}}},{"name":"string.quoted.double.fsharp","begin":"(?=[^\\\\])(\")","end":"(\")","patterns":[{"name":"punctuation.separator.string.ignore-eol.fsharp","match":"\\\\$[ \\t]*"},{"name":"constant.character.string.escape.fsharp","match":"\\\\(['\"\\\\abfnrtv]|([01][0-9][0-9]|2[0-4][0-9]|25[0-5])|(x[0-9a-fA-F]{2})|(u[0-9a-fA-F]{4})|(U00(0[0-9a-fA-F]|10)[0-9a-fA-F]{4}))"},{"name":"invalid.illegal.character.string.fsharp","match":"\\\\(([0-9]{1,3})|(x[^\\s]{0,2})|(u[^\\s]{0,4})|(U[^\\s]{0,8})|[^\\s])"},{"include":"#string_formatter"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.fsharp"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.fsharp"}}}]},"strp_inlined":{"patterns":[{"begin":"(\\()","end":"(\\))","patterns":[{"include":"#strp_inlined_body"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}}]},"strp_inlined_body":{"patterns":[{"include":"#comments"},{"include":"#anonymous_functions"},{"match":"(\\^[[:alpha:]0-9'._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"name":"keyword.fsharp","match":"\\b(and|when|or)\\b"},{"begin":"(\\()","end":"(\\))","patterns":[{"include":"#strp_inlined_body"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"match":"(static member|member)\\s*([[:alpha:]0-9'`\u003c\u003e^._]+|``[[:alpha:]0-9' \u003c\u003e^._]+``)\\s*(:)","captures":{"1":{"name":"keyword.fsharp"},"2":{"name":"variable.fsharp"},"3":{"name":"keyword.symbol.fsharp"}}},{"include":"#compiler_directives"},{"include":"#constants"},{"include":"#strings"},{"include":"#chars"},{"include":"#double_tick"},{"include":"#keywords"},{"include":"#text"},{"include":"#definition"},{"include":"#attributes"},{"include":"#keywords"},{"include":"#cexprs"},{"include":"#text"}]},"text":{"patterns":[{"name":"text.fsharp","match":"\\\\"}]},"tuple_signature":{"patterns":[{"match":"(([?[:alpha:]0-9'`^._ ]+))+","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"begin":"(\\()","end":"(\\))","patterns":[{"match":"(([?[:alpha:]0-9'`^._ ]+))+","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#tuple_signature"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"include":"#keywords"}]},"variables":{"patterns":[{"name":"keyword.symbol.fsharp","match":"\\(\\)"},{"match":"(\\?{0,1})(``[[:alpha:]0-9'`^:,._ ]+``|(?!private|struct\\b)\\b[\\w[:alpha:]0-9'`\u003c\u003e^._ ]+)","captures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"variable.parameter.fsharp"}}}]}}}
1
+ {"name":"fsharp","scopeName":"source.fsharp","patterns":[{"include":"#compiler_directives"},{"include":"#comments"},{"include":"#constants"},{"include":"#strings"},{"include":"#chars"},{"include":"#double_tick"},{"include":"#definition"},{"include":"#abstract_definition"},{"include":"#attributes"},{"include":"#modules"},{"include":"#anonymous_functions"},{"include":"#du_declaration"},{"include":"#record_declaration"},{"include":"#records"},{"include":"#strp_inlined"},{"include":"#keywords"},{"include":"#cexprs"},{"include":"#text"}],"repository":{"abstract_definition":{"name":"abstract.definition.fsharp","begin":"\\b(static)?\\s+(abstract)\\s+(member)?(\\s+\\[\\\u003c.*\\\u003e\\])?\\s*([_[:alpha:]0-9,\\._`\\s]+)(\u003c)?","end":"\\s*(with)\\b|=|$","patterns":[{"include":"#comments"},{"include":"#common_declaration"},{"match":"(\\?{0,1})([[:alpha:]0-9'`^._ ]+)\\s*(:)((?!with\\b)\\b([\\w0-9'`^._ ]+)){0,1}","captures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"variable.parameter.fsharp"},"3":{"name":"keyword.symbol.fsharp"},"4":{"name":"entity.name.type.fsharp"}}},{"match":"(?!with|get|set\\b)\\s*([\\w0-9'`^._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"keyword.fsharp"},"2":{"name":"keyword.fsharp"},"3":{"name":"keyword.fsharp"},"4":{"name":"support.function.attribute.fsharp"},"5":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.fsharp"}}},"anonymous_functions":{"patterns":[{"name":"function.anonymous","begin":"\\b(fun)\\b","end":"(-\u003e)","patterns":[{"include":"#comments"},{"begin":"(\\()","end":"\\s*(?=(-\u003e))","patterns":[{"include":"#member_declaration"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.arrow.fsharp"}}},{"include":"#variables"}],"beginCaptures":{"1":{"name":"keyword.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.arrow.fsharp"}}}]},"anonymous_record_declaration":{"begin":"(\\{\\|)","end":"(\\|\\})","patterns":[{"match":"[[:alpha:]0-9'`^_ ]+(:)","captures":{"1":{"name":"keyword.symbol.fsharp"}}},{"match":"([[:alpha:]0-9'`^_ ]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#anonymous_record_declaration"},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},"attributes":{"patterns":[{"name":"support.function.attribute.fsharp","begin":"\\[\\\u003c","end":"\\\u003e\\]|\\]","patterns":[{"include":"$self"}]}]},"cexprs":{"patterns":[{"name":"cexpr.fsharp","match":"\\b(async|seq|promise|task|maybe|asyncMaybe|controller|scope|application|pipeline)(?=\\s*\\{)","captures":{"0":{"name":"keyword.fsharp"}}}]},"chars":{"patterns":[{"name":"char.fsharp","match":"('\\\\?.')","captures":{"1":{"name":"string.quoted.single.fsharp"}}}]},"comments":{"patterns":[{"name":"comment.literate.command.fsharp","match":"(\\(\\*{3}.*\\*{3}\\))","beginCaptures":{"1":{"name":"comment.block.fsharp"}}},{"name":"comment.block.markdown.fsharp","begin":"^\\s*(\\(\\*\\*(?!\\)))((?!\\*\\)).)*$","while":"^(?!\\s*(\\*)+\\)\\s*$)","patterns":[{"include":"source.gfm"}],"beginCaptures":{"1":{"name":"comment.block.fsharp"}},"endCaptures":{"1":{"name":"comment.block.fsharp"}}},{"name":"comment.block.fsharp","begin":"(\\(\\*(?!\\)))","end":"(\\*+\\))","patterns":[{"name":"fast-capture.comment.line.double-slash.fsharp","match":"//"},{"name":"fast-capture.comment.line.mul-operator.fsharp","match":"\\(\\*\\)"},{"include":"#comments"}],"beginCaptures":{"1":{"name":"comment.block.fsharp"}},"endCaptures":{"1":{"name":"comment.block.fsharp"}}},{"name":"comment.block.markdown.fsharp.end","match":"((?\u003c!\\()(\\*)+\\))","captures":{"1":{"name":"comment.block.fsharp"}}},{"name":"comment.line.markdown.fsharp","begin":"(?\u003c![!%\u0026+-.\u003c=\u003e?@^|/])///(?!/)","while":"(?\u003c![!%\u0026+-.\u003c=\u003e?@^|/])///(?!/)","patterns":[{"include":"source.gfm"}]},{"name":"comment.line.double-slash.fsharp","match":"(?\u003c![!%\u0026+-.\u003c=\u003e?@^|/])//(.*$)"}]},"common_binding_definition":{"patterns":[{"include":"#comments"},{"include":"#attributes"},{"begin":"(:)\\s*(\\()\\s*(static member|member)","end":"(\\))\\s*((?=,)|(?=\\=))","patterns":[{"match":"(\\^[[:alpha:]0-9'._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#variables"},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"keyword.symbol.fsharp"},"3":{"name":"keyword.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"begin":"(:)\\s*(\\()","end":"(\\)\\s*(([?[:alpha:]0-9'`^._ ]*)))","patterns":[{"include":"#tuple_signature"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"entity.name.type.fsharp"}}},{"begin":"(:)\\s*(\\^[[:alpha:]0-9'._]+)\\s*(when)","end":"(?=:)","patterns":[{"name":"keyword.fsharp","match":"\\b(and|when|or)\\b"},{"match":"([[:alpha:]0-9'^._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"name":"keyword.symbol.fsharp","match":"(\\(|\\))"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"entity.name.type.fsharp"},"3":{"name":"keyword.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"match":"(:)\\s*([?[:alpha:]0-9'`^._ ]+)","captures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"entity.name.type.fsharp"}}},{"match":"(-\u003e)\\s*(\\()?\\s*([?[:alpha:]0-9'`^._ ]+)*","captures":{"1":{"name":"keyword.symbol.arrow.fsharp"},"2":{"name":"keyword.symbol.fsharp"},"3":{"name":"entity.name.type.fsharp"}}},{"begin":"(\\*)\\s*(\\()","end":"(\\)\\s*(([?[:alpha:]0-9'`^._ ]+))+)","patterns":[{"include":"#tuple_signature"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"entity.name.type.fsharp"}}},{"begin":"(\\*)(\\s*([?[:alpha:]0-9'`^._ ]+))*","end":"(?==)|(?=\\))","patterns":[{"include":"#tuple_signature"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"entity.name.type.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"begin":"(\u003c+(?![[:space:]]*\\)))","end":"((?\u003c!:)\u003e|\\))","patterns":[{"include":"#generic_declaration"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"include":"#anonymous_record_declaration"},{"begin":"({)","end":"(})","patterns":[{"include":"#record_signature"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"include":"#definition"},{"include":"#variables"},{"include":"#keywords"}]},"common_declaration":{"patterns":[{"begin":"\\s*(-\u003e)\\s*([[:alpha:]0-9'`^._ ]+)(\u003c)","end":"(\u003e)","patterns":[{"match":"([[:alpha:]0-9'`^._ ]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"keyword.symbol.arrow.fsharp"},"2":{"name":"entity.name.type.fsharp"},"3":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"match":"\\s*(-\u003e)\\s*(?!with|get|set\\b)\\b([\\w0-9'`^._]+)","captures":{"1":{"name":"keyword.symbol.arrow.fsharp"},"2":{"name":"entity.name.type.fsharp"}}},{"include":"#anonymous_record_declaration"},{"begin":"(\\?{0,1})([[:alpha:]0-9'`^._ ]+)\\s*(:)(\\s*([?[:alpha:]0-9'`^._ ]+)(\u003c))","end":"(\u003e)","patterns":[{"match":"([[:alpha:]0-9'`^._ ]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"variable.parameter.fsharp"},"3":{"name":"keyword.symbol.fsharp"},"4":{"name":"keyword.symbol.fsharp"},"5":{"name":"entity.name.type.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}}]},"compiler_directives":{"patterns":[{"name":"keyword.control.directive.fsharp","match":"\\s?(#if|#elif|#elseif|#else|#endif|#light|#nowarn)"}]},"constants":{"patterns":[{"name":"keyword.symbol.fsharp","match":"\\(\\)"},{"name":"constant.numeric.float.fsharp","match":"\\b-?[0-9][0-9_]*((\\.(?!\\.)([0-9][0-9_]*([eE][+-]??[0-9][0-9_]*)?)?)|([eE][+-]??[0-9][0-9_]*))"},{"name":"constant.numeric.integer.nativeint.fsharp","match":"\\b(-?((0(x|X)[0-9a-fA-F][0-9a-fA-F_]*)|(0(o|O)[0-7][0-7_]*)|(0(b|B)[01][01_]*)|([0-9][0-9_]*)))"},{"name":"constant.language.boolean.fsharp","match":"\\b(true|false)\\b"},{"name":"constant.other.fsharp","match":"\\b(null|void)\\b"}]},"definition":{"patterns":[{"name":"binding.fsharp","begin":"\\b(let mutable|static let mutable|static let|let inline|let|and|member val|member inline|static member inline|static member|default|member|override|let!)(\\s+rec|mutable)?(\\s+\\[\\\u003c.*\\\u003e\\])?\\s*(private|internal|public)?\\s+(\\[[^-=]*\\]|[_[:alpha:]]([_[:alpha:]0-9\\._]+)*|``[_[:alpha:]]([_[:alpha:]0-9\\._`\\s]+|(?\u003c=,)\\s)*)?","end":"\\s*((with\\b)|(=|\\n+=|(?\u003c=\\=)))","patterns":[{"include":"#common_binding_definition"}],"beginCaptures":{"1":{"name":"keyword.fsharp"},"2":{"name":"keyword.fsharp"},"3":{"name":"support.function.attribute.fsharp"},"4":{"name":"storage.modifier.fsharp"},"5":{"name":"variable.fsharp"}},"endCaptures":{"2":{"name":"keyword.fsharp"},"3":{"name":"keyword.symbol.fsharp"}}},{"name":"binding.fsharp","begin":"\\b(use|use!|and|and!)\\s+(\\[[^-=]*\\]|[_[:alpha:]]([_[:alpha:]0-9\\._]+)*|``[_[:alpha:]]([_[:alpha:]0-9\\._`\\s]+|(?\u003c=,)\\s)*)?","end":"\\s*(=)","patterns":[{"include":"#common_binding_definition"}],"beginCaptures":{"1":{"name":"keyword.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"name":"binding.fsharp","begin":"(?\u003c=with|and)\\s*\\b((get|set)\\s*(?=\\())(\\[[^-=]*\\]|[_[:alpha:]]([_[:alpha:]0-9\\._]+)*|``[_[:alpha:]]([_[:alpha:]0-9\\._`\\s]+|(?\u003c=,)\\s)*)?","end":"\\s*(=|\\n+=|(?\u003c=\\=))","patterns":[{"include":"#common_binding_definition"}],"beginCaptures":{"4":{"name":"variable.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"name":"binding.fsharp","begin":"\\b(static val mutable|val mutable|val inline|val)(\\s+rec|mutable)?(\\s+\\[\\\u003c.*\\\u003e\\])?\\s*(private|internal|public)?\\s+(\\[[^-=]*\\]|[_[:alpha:]]([_[:alpha:]0-9,\\._]+)*|``[_[:alpha:]]([_[:alpha:]0-9,\\._`\\s]+|(?\u003c=,)\\s)*)?","end":"\\n$","patterns":[{"include":"#common_binding_definition"}],"beginCaptures":{"1":{"name":"keyword.fsharp"},"2":{"name":"keyword.fsharp"},"3":{"name":"support.function.attribute.fsharp"},"4":{"name":"storage.modifier.fsharp"},"5":{"name":"variable.fsharp"}}},{"name":"binding.fsharp","begin":"\\b(new)\\b\\s+(\\()","end":"(\\))","patterns":[{"include":"#common_binding_definition"}],"beginCaptures":{"1":{"name":"keyword.fsharp"},"2":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}}]},"double_tick":{"patterns":[{"name":"variable.other.binding.fsharp","match":"(``)([^`]*)(``)","captures":{"1":{"name":"string.quoted.single.fsharp"},"2":{"name":"variable.other.binding.fsharp"},"3":{"name":"string.quoted.single.fsharp"}}}]},"du_declaration":{"patterns":[{"name":"du_declaration.fsharp","begin":"\\b(of)\\b","end":"$|(\\|)","patterns":[{"include":"#comments"},{"match":"([[:alpha:]0-9'`\u003c\u003e^._]+|``[[:alpha:]0-9' \u003c\u003e^._]+``)\\s*(:)\\s*([[:alpha:]0-9'`\u003c\u003e^._]+|``[[:alpha:]0-9' \u003c\u003e^._]+``)","captures":{"1":{"name":"variable.parameter.fsharp"},"2":{"name":"keyword.symbol.fsharp"},"3":{"name":"entity.name.type.fsharp"}}},{"match":"(``([[:alpha:]0-9'^._ ]+)``|[[:alpha:]0-9'`^._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#anonymous_record_declaration"},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"keyword.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}}]},"generic_declaration":{"patterns":[{"begin":"(:)\\s*(\\()\\s*(static member|member)","end":"(\\))","patterns":[{"begin":"(\\()","end":"(\\))","patterns":[{"include":"#member_declaration"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"match":"(('|\\^)[[:alpha:]0-9'._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#variables"},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"keyword.symbol.fsharp"},"3":{"name":"keyword.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"name":"keyword.fsharp","match":"\\b(private|to|public|internal|function|yield!|yield|class|exception|match|delegate|of|new|in|as|if|then|else|elif|for|begin|end|inherit|do|let\\!|return\\!|return|interface|with|abstract|enum|member|try|finally|and|when|or|use|use\\!|struct|while|mutable|assert|base|done|downcast|downto|extern|fixed|global|lazy|upcast|not)(?!')\\b"},{"name":"keyword.symbol.fsharp","match":":"},{"include":"#constants"},{"match":"(('|\\^)[[:alpha:]0-9'._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"begin":"(\u003c)","end":"(\u003e)","patterns":[{"match":"(('|\\^)[[:alpha:]0-9'._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#tuple_signature"},{"include":"#generic_declaration"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"begin":"(\\()","end":"(\\))","patterns":[{"match":"(([?[:alpha:]0-9'`^._ ]+))+","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#tuple_signature"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"match":"(?!when|and|or\\b)\\b([\\w0-9'`^._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"match":"(\\|)","captures":{"1":{"name":"keyword.symbol.fsharp"}}},{"include":"#keywords"}]},"keywords":{"patterns":[{"name":"storage.modifier","match":"\\b(private|public|internal)\\b"},{"name":"keyword.fsharp","match":"\\b(private|to|public|internal|function|class|exception|delegate|of|new|as|begin|end|inherit|let!|interface|abstract|enum|member|and|when|or|use|use\\!|struct|mutable|assert|base|done|downcast|downto|extern|fixed|global|lazy|upcast|not)(?!')\\b"},{"name":"keyword.control","match":"\\b(match|yield|yield!|with|if|then|else|elif|for|in|return!|return|try|finally|while|do)(?!')\\b"},{"name":"keyword.symbol.arrow.fsharp","match":"(\\-\u003e|\\\u003c\\-)"},{"name":"keyword.symbol.fsharp","match":"(\u0026\u0026\u0026|\\|\\|\\||\\^\\^\\^|~~~|~\\+|~\\-|\u003c\u003c\u003c|\u003e\u003e\u003e|\\|\u003e|:\u003e|:\\?\u003e|:|\\[|\\]|\\;|\u003c\u003e|=|@|\\|\\||\u0026\u0026|\u0026|%|{|}|\\||_|\\.\\.|\\,|\\+|\\-|\\*|\\/|\\^|\\!|\\\u003e|\\\u003e\\=|\\\u003e\\\u003e|\\\u003c|\\\u003c\\=|\\(|\\)|\\\u003c\\\u003c)"}]},"member_declaration":{"patterns":[{"include":"#comments"},{"include":"#common_declaration"},{"begin":"(:)\\s*(\\()\\s*(static member|member)","end":"(\\))\\s*((?=,)|(?=\\=))","patterns":[{"begin":"(\\()","end":"(\\))","patterns":[{"include":"#member_declaration"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"match":"(\\^[[:alpha:]0-9'._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#variables"},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"keyword.symbol.fsharp"},"3":{"name":"keyword.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"match":"(\\^[[:alpha:]0-9'._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"name":"keyword.fsharp","match":"\\b(and|when|or)\\b"},{"name":"keyword.symbol.fsharp","match":"(\\(|\\))"},{"match":"(\\?{0,1})([[:alpha:]0-9'`^._]+|``[[:alpha:]0-9'`^:,._ ]+``)\\s*(:{0,1})(\\s*([?[:alpha:]0-9'`\u003c\u003e._ ]+)){0,1}","captures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"variable.parameter.fsharp"},"3":{"name":"keyword.symbol.fsharp"},"4":{"name":"entity.name.type.fsharp"}}},{"include":"#keywords"}]},"modules":{"patterns":[{"name":"entity.name.section.fsharp","begin":"\\b(namespace global)|\\b(namespace|module)\\s*(public|internal|private|rec)?\\s+([[:alpha:]|``][[:alpha:]0-9'_. ]*)","end":"(\\s?=|\\s|$)","patterns":[{"name":"entity.name.section.fsharp","match":"(\\.)([A-Z][[:alpha:]0-9'_]*)","captures":{"1":{"name":"punctuation.separator.namespace-reference.fsharp"},"2":{"name":"entity.name.section.fsharp"}}}],"beginCaptures":{"1":{"name":"keyword.fsharp"},"2":{"name":"keyword.fsharp"},"3":{"name":"storage.modifier.fsharp"},"4":{"name":"entity.name.section.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"name":"namespace.open.fsharp","begin":"\\b(open type|open)\\s+([[:alpha:]|``][[:alpha:]0-9'_]*)(?=(\\.[A-Z][[:alpha:]0-9_]*)*)","end":"(\\s|$)","patterns":[{"name":"entity.name.section.fsharp","match":"(\\.)([[:alpha:]][[:alpha:]0-9'_]*)","captures":{"1":{"name":"punctuation.separator.namespace-reference.fsharp"},"2":{"name":"entity.name.section.fsharp"}}},{"include":"#comments"}],"beginCaptures":{"1":{"name":"keyword.fsharp"},"2":{"name":"entity.name.section.fsharp"}}},{"name":"namespace.alias.fsharp","begin":"^\\s*(module)\\s+([A-Z][[:alpha:]0-9'_]*)\\s*(=)\\s*([A-Z][[:alpha:]0-9'_]*)","end":"(\\s|$)","patterns":[{"name":"entity.name.section.fsharp","match":"(\\.)([A-Z][[:alpha:]0-9'_]*)","captures":{"1":{"name":"punctuation.separator.namespace-reference.fsharp"},"2":{"name":"entity.name.section.fsharp"}}}],"beginCaptures":{"1":{"name":"keyword.fsharp"},"2":{"name":"entity.name.type.namespace.fsharp"},"3":{"name":"keyword.symbol.fsharp"},"4":{"name":"entity.name.section.fsharp"}}}]},"record_declaration":{"patterns":[{"begin":"(\\{)","end":"(?\u003c=\\})","patterns":[{"include":"#comments"},{"begin":"(((mutable)\\s[[:alpha:]]+)|[[:alpha:]0-9'`\u003c\u003e^._]*)\\s*((?\u003c!:):(?!:))\\s*","end":"$|(;|\\})","patterns":[{"include":"#comments"},{"match":"([[:alpha:]0-9'`^_ ]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#keywords"}],"beginCaptures":{"3":{"name":"keyword.fsharp"},"4":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"include":"#compiler_directives"},{"include":"#constants"},{"include":"#strings"},{"include":"#chars"},{"include":"#double_tick"},{"include":"#definition"},{"include":"#attributes"},{"include":"#anonymous_functions"},{"include":"#keywords"},{"include":"#cexprs"},{"include":"#text"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}}}]},"record_signature":{"patterns":[{"match":"[[:alpha:]0-9'`^_ ]+(=)([[:alpha:]0-9'`^_ ]+)","captures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"variable.parameter.fsharp"}}},{"begin":"({)","end":"(})","patterns":[{"match":"[[:alpha:]0-9'`^_ ]+(=)([[:alpha:]0-9'`^_ ]+)","captures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"variable.parameter.fsharp"}}},{"include":"#record_signature"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"include":"#keywords"}]},"records":{"patterns":[{"name":"record.fsharp","begin":"\\b(type)[\\s]+(private|internal|public)?\\s*","end":"\\s*((with)|((as)\\s+([[:alpha:]0-9']+))|(=)|[\\n=]|(\\(\\)))","patterns":[{"include":"#comments"},{"include":"#attributes"},{"match":"([[:alpha:]0-9'^._]+|``[[:alpha:]0-9'`^:,._ ]+``)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"begin":"(\u003c)","end":"((?\u003c!:)\u003e)","patterns":[{"match":"(('|\\^)``[[:alpha:]0-9`^:,._ ]+``|('|\\^)[[:alpha:]0-9`^:._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"name":"keyword.fsharp","match":"\\b(interface|with|abstract|and|when|or|not|struct|equality|comparison|unmanaged|delegate|enum)\\b"},{"begin":"(\\()","end":"(\\))","patterns":[{"match":"(static member|member|new)","captures":{"1":{"name":"keyword.fsharp"}}},{"include":"#common_binding_definition"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"match":"([\\w0-9'`^._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"match":"\\s*(private|internal|public)","captures":{"1":{"name":"storage.modifier.fsharp"}}},{"begin":"(\\()","end":"\\s*(?=(=)|[\\n=]|(\\(\\))|(as))","patterns":[{"include":"#member_declaration"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"keyword.fsharp"},"2":{"name":"storage.modifier.fsharp"}},"endCaptures":{"2":{"name":"keyword.fsharp"},"3":{"name":"keyword.fsharp"},"4":{"name":"keyword.fsharp"},"5":{"name":"variable.parameter.fsharp"},"6":{"name":"keyword.symbol.fsharp"},"7":{"name":"keyword.symbol.fsharp"}}}]},"string_formatter":{"patterns":[{"name":"entity.name.type.format.specifier.fsharp","match":"(%0?-?(\\d+)?((a|t)|(\\.\\d+)?(f|F|e|E|g|G|M)|(b|c|s|d|i|x|X|o|u)|(s|b|O)|(\\+?A)))","captures":{"1":{"name":"keyword.format.specifier.fsharp"}}}]},"strings":{"patterns":[{"name":"string.quoted.literal.fsharp","begin":"(?=[^\\\\])(@\")","end":"(\")(?!\")","patterns":[{"name":"constant.character.string.escape.fsharp","match":"\"(\")"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.fsharp"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.fsharp"}}},{"name":"string.quoted.triple.fsharp","begin":"(?=[^\\\\])(\"\"\")","end":"(\"\"\")","patterns":[{"include":"#string_formatter"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.fsharp"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.fsharp"}}},{"name":"string.quoted.double.fsharp","begin":"(?=[^\\\\])(\")","end":"(\")","patterns":[{"name":"punctuation.separator.string.ignore-eol.fsharp","match":"\\\\$[ \\t]*"},{"name":"constant.character.string.escape.fsharp","match":"\\\\(['\"\\\\abfnrtv]|([01][0-9][0-9]|2[0-4][0-9]|25[0-5])|(x[0-9a-fA-F]{2})|(u[0-9a-fA-F]{4})|(U00(0[0-9a-fA-F]|10)[0-9a-fA-F]{4}))"},{"name":"invalid.illegal.character.string.fsharp","match":"\\\\(([0-9]{1,3})|(x[^\\s]{0,2})|(u[^\\s]{0,4})|(U[^\\s]{0,8})|[^\\s])"},{"include":"#string_formatter"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.fsharp"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.fsharp"}}}]},"strp_inlined":{"patterns":[{"begin":"(\\()","end":"(\\))","patterns":[{"include":"#strp_inlined_body"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}}]},"strp_inlined_body":{"patterns":[{"include":"#comments"},{"include":"#anonymous_functions"},{"match":"(\\^[[:alpha:]0-9'._]+)","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"name":"keyword.fsharp","match":"\\b(and|when|or)\\b"},{"begin":"(\\()","end":"(\\))","patterns":[{"include":"#strp_inlined_body"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"match":"(static member|member)\\s*([[:alpha:]0-9'`\u003c\u003e^._]+|``[[:alpha:]0-9' \u003c\u003e^._]+``)\\s*(:)","captures":{"1":{"name":"keyword.fsharp"},"2":{"name":"variable.fsharp"},"3":{"name":"keyword.symbol.fsharp"}}},{"include":"#compiler_directives"},{"include":"#constants"},{"include":"#strings"},{"include":"#chars"},{"include":"#double_tick"},{"include":"#keywords"},{"include":"#text"},{"include":"#definition"},{"include":"#attributes"},{"include":"#keywords"},{"include":"#cexprs"},{"include":"#text"}]},"text":{"patterns":[{"name":"text.fsharp","match":"\\\\"}]},"tuple_signature":{"patterns":[{"match":"(([?[:alpha:]0-9'`^._ ]+))+","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"begin":"(\\()","end":"(\\))","patterns":[{"match":"(([?[:alpha:]0-9'`^._ ]+))+","captures":{"1":{"name":"entity.name.type.fsharp"}}},{"include":"#tuple_signature"}],"beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endCaptures":{"1":{"name":"keyword.symbol.fsharp"}}},{"include":"#keywords"}]},"variables":{"patterns":[{"name":"keyword.symbol.fsharp","match":"\\(\\)"},{"match":"(\\?{0,1})(``[[:alpha:]0-9'`^:,._ ]+``|(?!private|struct\\b)\\b[\\w[:alpha:]0-9'`\u003c\u003e^._ ]+)","captures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"variable.parameter.fsharp"}}}]}}}