github-linguist 7.30.0 → 8.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (82) hide show
  1. checksums.yaml +4 -4
  2. data/grammars/inline.edgeql.json +1 -1
  3. data/grammars/inline.peggy.json +1 -0
  4. data/grammars/markdown.move.codeblock.json +1 -1
  5. data/grammars/mdx.move.codeblock.json +1 -0
  6. data/grammars/source.abl.json +1 -1
  7. data/grammars/source.bicep.json +1 -1
  8. data/grammars/source.cairo.json +1 -1
  9. data/grammars/source.cairo0.json +1 -0
  10. data/grammars/source.cl.json +1 -1
  11. data/grammars/source.clar.json +1 -1
  12. data/grammars/source.clarion.json +1 -1
  13. data/grammars/source.cmd.json +1 -1
  14. data/grammars/source.commonlisp.json +1 -1
  15. data/grammars/source.cs.json +1 -1
  16. data/grammars/source.curlrc.json +1 -1
  17. data/grammars/source.curry.json +1 -1
  18. data/grammars/source.cylc.json +1 -0
  19. data/grammars/source.dart.json +1 -1
  20. data/grammars/source.dds.dspf.json +1 -1
  21. data/grammars/source.dds.icff.json +1 -1
  22. data/grammars/source.dds.lf.json +1 -1
  23. data/grammars/source.dds.pf.json +1 -1
  24. data/grammars/source.dds.prtf.json +1 -1
  25. data/grammars/source.dune.json +1 -0
  26. data/grammars/source.elvish.json +1 -1
  27. data/grammars/source.fsharp.json +1 -1
  28. data/grammars/source.gdscript.json +1 -1
  29. data/grammars/source.gitconfig.json +1 -1
  30. data/grammars/source.gleam.json +1 -1
  31. data/grammars/source.hgignore.json +1 -1
  32. data/grammars/source.hosts.json +1 -1
  33. data/grammars/source.iCalendar.json +1 -0
  34. data/grammars/source.ice.json +1 -1
  35. data/grammars/source.julia.json +1 -1
  36. data/grammars/source.just.json +1 -1
  37. data/grammars/source.lcb.json +1 -0
  38. data/grammars/source.lilypond.json +1 -1
  39. data/grammars/source.livecodescript.json +1 -0
  40. data/grammars/source.luau.json +1 -1
  41. data/grammars/source.matlab.json +1 -1
  42. data/grammars/source.mcfunction.json +1 -1
  43. data/grammars/source.mdx.json +1 -1
  44. data/grammars/source.mo.json +1 -1
  45. data/grammars/source.move.json +1 -1
  46. data/grammars/source.nanorc.json +1 -1
  47. data/grammars/source.nr.json +1 -0
  48. data/grammars/source.p4.json +1 -1
  49. data/grammars/source.peggy.json +1 -0
  50. data/grammars/source.polar.json +1 -1
  51. data/grammars/source.powerbuilder.json +1 -0
  52. data/grammars/source.qsharp.json +1 -1
  53. data/grammars/source.rpgle.json +1 -1
  54. data/grammars/source.rust.json +1 -1
  55. data/grammars/source.sentinel.json +1 -1
  56. data/grammars/source.sourcepawn.json +1 -1
  57. data/grammars/source.stan.json +1 -1
  58. data/grammars/source.swift.json +1 -1
  59. data/grammars/source.sy.json +1 -1
  60. data/grammars/source.vba.json +1 -1
  61. data/grammars/source.vcard.json +1 -0
  62. data/grammars/source.wdl.json +1 -1
  63. data/grammars/text.adblock.json +1 -1
  64. data/grammars/text.html.jte.json +1 -0
  65. data/grammars/text.html.statamic.json +1 -1
  66. data/grammars/text.md.json +1 -1
  67. data/grammars/text.mdx.astro.codeblock.json +1 -0
  68. data/grammars/version +1 -1
  69. data/lib/linguist/VERSION +1 -1
  70. data/lib/linguist/classifier.rb +315 -106
  71. data/lib/linguist/generated.rb +17 -4
  72. data/lib/linguist/generic.yml +1 -0
  73. data/lib/linguist/heuristics.rb +6 -6
  74. data/lib/linguist/heuristics.yml +54 -4
  75. data/lib/linguist/languages.json +1 -1
  76. data/lib/linguist/languages.yml +123 -7
  77. data/lib/linguist/samples.json +1 -1
  78. data/lib/linguist/samples.rb +9 -1
  79. data/lib/linguist/sha256.rb +1 -1
  80. metadata +17 -5
  81. data/grammars/markdown.mcfunction.codeblock.json +0 -1
  82. data/grammars/mdx.LANGUAGE.codeblock.json +0 -1
@@ -1 +1 @@
1
- {"name":"Slice","scopeName":"source.ice","patterns":[{"include":"#comment"},{"include":"#preprocessor"},{"include":"#metadata.global"},{"include":"#storage.module"}],"repository":{"annotation":{"name":"storage.type.annotation.ice","match":"(@)\\S*\\b","captures":{"1":{"name":"punctuation.definition.annotation.ice"}}},"comment":{"patterns":[{"include":"#comment.line"},{"include":"#comment.block"}]},"comment.block":{"name":"comment.block.ice","contentName":"text.ice","begin":"\\/\\*","end":"\\*\\/","patterns":[{"include":"#annotation"},{"include":"#link"},{"include":"#line.continuation"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.block.begin.ice"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.block.end.ice"}}},"comment.line":{"name":"comment.line.ice","contentName":"text.ice","begin":"\\/\\/","end":"$","patterns":[{"include":"#annotation"},{"include":"#link"},{"include":"#line.continuation"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.line.begin.ice"}}},"constant":{"patterns":[{"include":"#constant.boolean"},{"include":"#constant.string"},{"include":"#constant.numeric.float"},{"include":"#constant.numeric.hex"},{"include":"#constant.numeric.oct"},{"include":"#constant.numeric.dec"}]},"constant.boolean":{"match":"\\b(?:(true)|(false))\\b","captures":{"0":{"name":"constant.language.ice"},"1":{"name":"constant.boolean.true.ice"},"2":{"name":"constant.boolean.false.ice"}}},"constant.numeric.dec":{"name":"constant.numeric.integer.ice","match":"(-|\\+)?\\b(?:0|[1-9]\\d*)\\b","captures":{"1":{"name":"punctuation.definition.numeric.sign.ice"}}},"constant.numeric.float":{"name":"constant.numeric.float.ice","match":"(-|\\+)?(?:\\d+(\\.)\\d*|\\d*(\\.)\\d+|\\d+(?=e|E|f|F))(?:(e|E)-?\\d+)?(f|F)?","captures":{"1":{"name":"punctuation.numeric.sign.ice"},"2":{"name":"punctuation.separator.decimal.ice"},"3":{"name":"punctuation.separator.decimal.ice"},"4":{"name":"punctuation.numeric.exponent.ice"},"5":{"name":"punctuation.definition.float.ice"}}},"constant.numeric.hex":{"name":"constant.numeric.hex.ice","match":"(-|\\+)?\\b(0x)[\\da-fA-F]+\\b","captures":{"1":{"name":"punctuation.definition.numeric.sign.ice"},"2":{"name":"punctuation.definition.numeric.hex.ice"}}},"constant.numeric.oct":{"name":"constant.numeric.octal.ice","match":"(-|\\+)?\\b(0)(\\d+)\\b","captures":{"1":{"name":"punctuation.definition.numeric.sign.ice"},"2":{"name":"punctuation.definition.numeric.oct.ice"},"3":{"patterns":[{"name":"invalid.illegal.oct.ice","match":"[8-9]"}]}}},"constant.string":{"name":"string.quoted.double.ice","begin":"\"","end":"(\")|$","patterns":[{"match":"\\\\."},{"include":"#line.continuation"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ice"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.ice"},"2":{"name":"invalid.illegal.mismatched-quotes.ice"}}},"invalid":{"name":"invalid.illegal","match":"\\S"},"line.continuation":{"begin":"(\\\\)\\s*$","end":"^","beginCaptures":{"1":{"name":"punctuation.separator.continuation.backslash.ice"}}},"link":{"name":"variable.link.ice","match":"(\\b\\S*)?(#)\\S*\\b","captures":{"1":{"name":"punctuation.definition.link.ice"}}},"metadata":{"patterns":[{"include":"#metadata.global"},{"include":"#metadata.local"}]},"metadata.content":{"patterns":[{"include":"#standard"},{"begin":"(\")","end":"(?=\\])|(?\u003c=,)","patterns":[{"include":"#line.continuation"},{"name":"string.quoted.double.ice","match":"((?:[^\\\\\"]|\\\\.)+)","captures":{"1":{"patterns":[{"include":"#metadata.identifier"}]}}},{"begin":"(\")","end":"(?=\\])|(,)","patterns":[{"include":"#standard"}],"beginCaptures":{"0":{"name":"string.quoted.double.ice"},"1":{"name":"punctuation.definition.string.end.ice"}},"endCaptures":{"1":{"name":"punctuation.separator.metadata.ice"}}}],"beginCaptures":{"0":{"name":"string.quoted.double.ice"},"1":{"name":"punctuation.definition.string.begin.ice"}}}]},"metadata.global":{"name":"meta.metadata.global.ice","begin":"\\[\\[","end":"\\]\\]","patterns":[{"include":"#metadata.content"}],"beginCaptures":{"0":{"name":"punctuation.definition.metadata.global.begin.ice"}},"endCaptures":{"0":{"name":"punctuation.definition.metadata.global.end.ice"}}},"metadata.identifier":{"name":"entity.metadata.directive.ice","match":"\\S+"},"metadata.local":{"name":"meta.metadata.local.ice","begin":"\\[","end":"\\]","patterns":[{"include":"#metadata.content"}],"beginCaptures":{"0":{"name":"punctuation.definition.metadata.local.begin.ice"}},"endCaptures":{"0":{"name":"punctuation.definition.metadata.local.end.ice"}}},"preprocessor":{"patterns":[{"include":"#preprocessor.if"},{"include":"#preprocessor.ifdef"},{"include":"#preprocessor.ifndef"},{"include":"#preprocessor.elif"},{"include":"#preprocessor.else"},{"include":"#preprocessor.endif"},{"include":"#preprocessor.define"},{"include":"#preprocessor.undef"},{"include":"#preprocessor.include"},{"include":"#preprocessor.pragma"},{"include":"#preprocessor.line"},{"include":"#preprocessor.error"},{"include":"#preprocessor.null"}]},"preprocessor.define":{"name":"meta.preprocessor.define.ice","begin":"(#)\\s*define\\b","end":"$","patterns":[{"include":"#standardP"},{"begin":"\\b(\\w+)((\\())","end":"$","patterns":[{"include":"#standardP"},{"begin":"\\b\\w+\\b","end":"(?=\\))|(,)|($)","patterns":[{"include":"#standardP"}],"beginCaptures":{"0":{"patterns":[{"include":"#preprocessor.identifier"}]}},"endCaptures":{"1":{"name":"punctuation.separator.parameter.preprocessor.ice"},"2":{"name":"invalid.mismatched.parenthesis.ice"}}},{"begin":"\\b\\w+\\b","end":"(?=\\))|((,))|($)","patterns":[{"include":"#standardP"}],"beginCaptures":{"0":{"name":"punctuation.variable.parameter.preprocessor.ice"}},"endCaptures":{"1":{"name":"punctuation.separator.parameter.preprocessor.ice"},"2":{"name":"invalid.trailing-comma.ice"},"3":{"name":"invalid.mismatched.parenthesis.ice"}}},{"begin":"(\\))","end":"$","patterns":[{"include":"#standardP"},{"name":"constant.preprocessor.ice","match":"\\S"}],"beginCaptures":{"0":{"name":"meta.group.parameters.preprocessor.ice"},"1":{"name":"punctuation.section.group.parameters.end.ice"}}}],"beginCaptures":{"1":{"patterns":[{"include":"#preprocessor.identifier"}]},"2":{"name":"meta.group.parameters.preprocessor.ice"},"3":{"name":"punctuation.section.group.parameters.begin.ice"}}},{"begin":"\\b\\w+\\b","end":"$","patterns":[{"include":"#standardP"},{"name":"constant.preprocessor.ice","match":"\\S"}],"beginCaptures":{"0":{"patterns":[{"include":"#preprocessor.identifier"}]}}}],"beginCaptures":{"0":{"name":"keyword.control.preprocessor.define.ice"},"1":{"name":"punctuation.definition.preprocessor.ice"}}},"preprocessor.elif":{"name":"meta.preprocessor.elif.ice","begin":"(#)\\s*elif\\b","end":"$","patterns":[{"include":"#standardP"}],"beginCaptures":{"0":{"name":"keyword.control.preprocessor.elif.ice"},"1":{"name":"punctuation.definition.preprocessor.ice"}}},"preprocessor.else":{"name":"meta.preprocessor.endif.ice","begin":"(#)\\s*else\\b","end":"$","patterns":[{"include":"#standardP"}],"beginCaptures":{"0":{"name":"keyword.control.preprocessor.else.ice"},"1":{"name":"punctuation.definition.preprocessor.ice"}}},"preprocessor.endif":{"name":"meta.preprocessor.endif.ice","begin":"(#)\\s*endif\\b","end":"$","patterns":[{"include":"#standardP"}],"beginCaptures":{"0":{"name":"keyword.control.preprocessor.endif.ice"},"1":{"name":"punctuation.definition.preprocessor.ice"}}},"preprocessor.error":{"name":"meta.preprocessor.error.ice","begin":"((#)\\s*error)\\b","end":"$","patterns":[{"include":"#standardP"},{"name":"text.error.ice","match":"."}],"beginCaptures":{"1":{"name":"keyword.control.preprocessor.error.ice"},"2":{"name":"punctuation.definition.preprocessor.ice"}}},"preprocessor.identifier":{"patterns":[{"name":"entity.identifier.preprocessor.ice","match":"\\b[a-zA-Z_][a-zA-Z0-9_]*\\b"},{"include":"#invalid"}]},"preprocessor.if":{"name":"meta.preprocessor.if.ice","begin":"(#)\\s*if\\b","end":"$","patterns":[{"include":"#standardP"}],"beginCaptures":{"0":{"name":"keyword.control.preprocessor.if.ice"},"1":{"name":"punctuation.definition.preprocessor.ice"}}},"preprocessor.ifdef":{"name":"meta.preprocessor.ifdef.ice","begin":"(#)\\s*ifdef\\b","end":"$","patterns":[{"include":"#standardP"},{"begin":"\\b\\w+\\b","end":"$","patterns":[{"include":"#standardP"}],"beginCaptures":{"0":{"patterns":[{"include":"#preprocessor.identifier"}]}}}],"beginCaptures":{"0":{"name":"keyword.control.preprocessor.ifdef.ice"},"1":{"name":"punctuation.definition.preprocessor.ice"}}},"preprocessor.ifndef":{"name":"meta.preprocessor.ifndef.ice","begin":"(#)\\s*ifndef\\b","end":"$","patterns":[{"include":"#standardP"},{"begin":"\\b\\w+\\b","end":"$","patterns":[{"include":"#standardP"}],"beginCaptures":{"0":{"patterns":[{"include":"#preprocessor.identifier"}]}}}],"beginCaptures":{"0":{"name":"keyword.control.preprocessor.ifndef.ice"},"1":{"name":"punctuation.definition.preprocessor.ice"}}},"preprocessor.include":{"name":"meta.preprocessor.include.ice","begin":"((#)\\s*include)\\b","end":"$","patterns":[{"include":"#standardP"},{"begin":"(?\u003c=\"|\u003e)","end":"$","patterns":[{"include":"#standardP"}]},{"name":"string.quoted.double.ice","contentName":"entity.name.header.ice","begin":"\"","end":"(\")|($)","patterns":[{"match":"\\\\."},{"include":"#line.continuation"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ice"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.ice"},"2":{"name":"invalid.illegal.mismatched-quotes.ice"}}},{"name":"string.quoted.other.angle.ice","contentName":"entity.name.header.ice","begin":"\u003c","end":"(\u003e)|($)","patterns":[{"match":"\\\\."},{"include":"#line.continuation"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ice"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.ice"},"2":{"name":"invalid.illegal.mismatched-quotes.ice"}}}],"beginCaptures":{"1":{"name":"keyword.control.preprocessor.include.ice"},"2":{"name":"punctuation.definition.preprocessor.ice"}}},"preprocessor.line":{"name":"meta.preprocessor.line.ice","begin":"((#)\\s*line)\\b","end":"$","patterns":[{"include":"#standardP"},{"begin":"\\b[\\d]+\\b","end":"$","patterns":[{"include":"#standardP"},{"begin":"(?\u003c=\")","end":"$","patterns":[{"include":"#standardP"}]},{"name":"string.quoted.double.ice","contentName":"entity.name.file.ice","begin":"\"","end":"(\")|($)","patterns":[{"match":"\\\\."},{"include":"#line.continuation"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ice"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.ice"},"2":{"name":"invalid.illegal.mismatched-quotes.ice"}}}],"beginCaptures":{"0":{"patterns":[{"include":"#constant.numeric.dec"}]}}}],"beginCaptures":{"1":{"name":"keyword.control.preprocessor.line.ice"},"2":{"name":"punctuation.definition.preprocessor.ice"}}},"preprocessor.null":{"name":"meta.preprocessor.null.ice","begin":"(#)","end":"$","patterns":[{"include":"#standardP"}],"beginCaptures":{"0":{"name":"punctuation.definition.preprocessor.ice"},"1":{"name":"keyword.control.preprocessor.null.ice"}}},"preprocessor.pragma":{"name":"meta.preprocessor.pragma.ice","begin":"((#)\\s*pragma)\\b","end":"$","patterns":[{"include":"#standardP"},{"begin":"\\b\\S+\\b","end":"$","patterns":[{"include":"#standardP"}],"beginCaptures":{"0":{"name":"keyword.control.preprocessor.pragma.other.ice"}}}],"beginCaptures":{"1":{"name":"keyword.control.preprocessor.pragma.ice"},"2":{"name":"punctuation.definition.preprocessor.ice"}}},"preprocessor.undef":{"name":"meta.preprocessor.undef.ice","begin":"((#)\\s*undef)\\b","end":"$","patterns":[{"include":"#standardP"},{"begin":"\\b\\w+\\b","end":"$","patterns":[{"include":"#standardP"}],"beginCaptures":{"0":{"patterns":[{"include":"#preprocessor.identifier"}]}}}],"beginCaptures":{"1":{"name":"keyword.control.preprocessor.undef.ice"},"2":{"name":"punctuation.definition.preprocessor.ice"}}},"standard":{"patterns":[{"include":"#comment"},{"include":"#preprocessor"},{"include":"#line.continuation"}]},"standardP":{"patterns":[{"include":"#comment"},{"include":"#line.continuation"}]},"storage":{"patterns":[{"include":"#storage.module"},{"include":"#storage.enum"},{"include":"#storage.struct"},{"include":"#storage.sequence"},{"include":"#storage.dictionary"},{"include":"#storage.interface"},{"include":"#storage.exception"},{"include":"#storage.class"},{"include":"#storage.basic"}]},"storage.basic":{"patterns":[{"include":"#storage.modifier"},{"name":"meta.bool.ice","begin":"\\\\?\\bbool\\b","end":"(;)|((?=}))","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=;|})","patterns":[{"include":"#storage.basic.assignment"}],"beginCaptures":{"0":{"name":"entity.name.bool.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.terminator.semicolon.ice"},"2":{"name":"invalid.illegal.missing.semicolon.ice"}}},{"name":"meta.byte.ice","begin":"\\\\?\\bbyte\\b","end":"(;)|((?=}))","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=;|})","patterns":[{"include":"#storage.basic.assignment"}],"beginCaptures":{"0":{"name":"entity.name.byte.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.terminator.semicolon.ice"},"2":{"name":"invalid.illegal.missing.semicolon.ice"}}},{"name":"meta.short.ice","begin":"\\\\?\\bshort\\b","end":"(;)|((?=}))","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=;|})","patterns":[{"include":"#storage.basic.assignment"}],"beginCaptures":{"0":{"name":"entity.name.short.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.terminator.semicolon.ice"},"2":{"name":"invalid.illegal.missing.semicolon.ice"}}},{"name":"meta.int.ice","begin":"\\\\?\\bint\\b","end":"(;)|((?=}))","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=;|})","patterns":[{"include":"#storage.basic.assignment"}],"beginCaptures":{"0":{"name":"entity.name.int.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.terminator.semicolon.ice"},"2":{"name":"invalid.illegal.missing.semicolon.ice"}}},{"name":"meta.long.ice","begin":"\\\\?\\blong\\b","end":"(;)|((?=}))","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=;|})","patterns":[{"include":"#storage.basic.assignment"}],"beginCaptures":{"0":{"name":"entity.name.long.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.terminator.semicolon.ice"},"2":{"name":"invalid.illegal.missing.semicolon.ice"}}},{"name":"meta.float.ice","begin":"\\\\?\\bfloat\\b","end":"(;)|((?=}))","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=;|})","patterns":[{"include":"#storage.basic.assignment"}],"beginCaptures":{"0":{"name":"entity.name.float.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.terminator.semicolon.ice"},"2":{"name":"invalid.illegal.missing.semicolon.ice"}}},{"name":"meta.double.ice","begin":"\\\\?\\bdouble\\b","end":"(;)|((?=}))","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=;|})","patterns":[{"include":"#storage.basic.assignment"}],"beginCaptures":{"0":{"name":"entity.name.double.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.terminator.semicolon.ice"},"2":{"name":"invalid.illegal.missing.semicolon.ice"}}},{"name":"meta.string.ice","begin":"\\\\?\\bstring\\b","end":"(;)|((?=}))","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=;|})","patterns":[{"include":"#storage.basic.assignment"}],"beginCaptures":{"0":{"name":"entity.name.string.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.terminator.semicolon.ice"},"2":{"name":"invalid.illegal.missing.semicolon.ice"}}},{"name":"meta.type.ice","begin":"\\\\?\\b[:\\w]+\\b","end":"(;)|((?=}))","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=;|})","patterns":[{"include":"#storage.basic.assignment"}],"beginCaptures":{"0":{"name":"entity.name.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types.custom"}]}},"endCaptures":{"1":{"name":"punctuation.terminator.semicolon.ice"},"2":{"name":"invalid.illegal.missing.semicolon.ice"}}}]},"storage.basic.assignment":{"patterns":[{"include":"#standard"},{"begin":"=","end":"(?=;|})","patterns":[{"include":"#standard"},{"include":"#constant"}],"beginCaptures":{"0":{"name":"keyword.operator.assignment.ice"}}}]},"storage.class":{"patterns":[{"include":"#storage.modifier"},{"name":"meta.class.ice","begin":"(?\u003c!\\\\)\\bclass\\b","end":"(})|(;)","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=}|;)","patterns":[{"include":"#standard"},{"begin":"(?\u003c!\\\\)\\bextends\\b","end":"(?=})|((?=;))","patterns":[{"include":"#standard"},{"begin":"\\\\?[:\\w]+","end":"(?=}|;)","patterns":[{"include":"#standard"},{"include":"#storage.class.implements"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}}},{"name":"invalid.illegal.missing-types.ice","include":"#storage.class.implements"}],"beginCaptures":{"0":{"name":"storage.modifier.extends.ice"}},"endCaptures":{"1":{"name":"invalid.illegal.missing-brace.ice"}}},{"include":"#storage.class.implements"}],"beginCaptures":{"0":{"name":"entity.name.class.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"name":"storage.type.class.ice"}},"endCaptures":{"1":{"name":"punctuation.section.block.end.ice"},"2":{"name":"punctuation.terminator.semicolon.ice"}}}]},"storage.class.body":{"begin":"{","end":"(?=})","patterns":[{"include":"#standard"},{"include":"#storage.basic"}],"beginCaptures":{"0":{"name":"punctuation.section.block.begin.ice"}}},"storage.class.implements":{"patterns":[{"begin":"(?\u003c!\\\\)\\bimplements\\b","end":"(?=})|((?=;))","patterns":[{"include":"#standard"},{"begin":"\\\\?[:\\w]+","end":"(?={|}|;)|(,)","patterns":[{"include":"#standard"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.separator.class.implements.ice"}}},{"include":"#storage.class.body"}],"beginCaptures":{"0":{"name":"storage.modifier.implements.ice"}},"endCaptures":{"1":{"name":"invalid.illegal.missing-brace.ice"}}},{"include":"#storage.class.body"}]},"storage.dictionary":{"patterns":[{"include":"#storage.modifier"},{"name":"meta.dictionary.ice","begin":"(?\u003c!\\\\)\\bdictionary\\b","end":"(;)|((?=}))","patterns":[{"include":"#standard"},{"begin":"(\\\u003c)","end":"(?=;|})","patterns":[{"include":"#standard"},{"include":"#storage.modifier"},{"begin":"(\\\\?[:\\w]+)|(?=\\\u003e)","end":"(?=;|})","patterns":[{"include":"#standard"},{"begin":"(,)|(?=\\\u003e)","end":"(?=;|{|})","patterns":[{"include":"#standard"},{"include":"#storage.modifier"},{"begin":"(\\\\?[:\\w]+)|(?=\\\u003e)","end":"(?=;|})","patterns":[{"include":"#standard"},{"begin":"(\\\u003e)","end":"(?=;|})","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=;|})","beginCaptures":{"0":{"name":"entity.name.dictionary.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"name":"meta.generic.dictionary.ice"},"1":{"name":"punctuation.definition.generic.end.ice"}}}],"beginCaptures":{"1":{"name":"meta.generic.dictionary.ice","patterns":[{"include":"#storage.types"}]},"2":{"name":"invalid.illegal.missing-type.ice"}}}],"beginCaptures":{"0":{"name":"meta.generic.dictionary.ice"},"1":{"name":"punctuation.separator.dictionary.ice"},"2":{"name":"invalid.illegal.missing-type.ice"}}}],"beginCaptures":{"1":{"name":"meta.generic.dictionary.ice","patterns":[{"include":"#storage.types"}]},"2":{"name":"invalid.illegal.missing-type.ice"}}}],"beginCaptures":{"0":{"name":"meta.generic.dictionary.ice"},"1":{"name":"punctuation.definition.generic.begin.ice"}}}],"beginCaptures":{"0":{"name":"storage.type.dictionary.ice"}},"endCaptures":{"1":{"name":"punctuation.terminator.semicolon.ice"},"2":{"name":"invalid.illegal.missing.semicolon.ice"}}}]},"storage.enum":{"patterns":[{"include":"#storage.modifier"},{"name":"meta.enum.ice","begin":"(?\u003c!\\\\)\\benum\\b","end":"}","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=})","patterns":[{"include":"#standard"},{"begin":"{","end":"(?=})","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=})|(,)","patterns":[{"include":"#standard"},{"begin":"=","end":"(?=})|(?=,)","patterns":[{"include":"#standard"},{"include":"#constant"}],"beginCaptures":{"0":{"name":"keyword.operator.assignment.ice"}}}],"beginCaptures":{"0":{"name":"constant.other.enum.ice","patterns":[{"include":"#identifier"}]}},"endCaptures":{"1":{"name":"punctuation.separator.enum.ice"}}}],"beginCaptures":{"0":{"name":"punctuation.section.block.begin.ice"}}}],"beginCaptures":{"0":{"name":"entity.name.enum.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"name":"storage.type.enum.ice"}},"endCaptures":{"0":{"name":"punctuation.section.block.end.ice"}}}]},"storage.exception":{"patterns":[{"include":"#storage.modifier"},{"name":"meta.exception.ice","begin":"(?\u003c!\\\\)\\bexception\\b","end":"}","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=})","patterns":[{"include":"#standard"},{"begin":"(?\u003c!\\\\)\\bextends\\b","end":"(?=})","patterns":[{"include":"#standard"},{"begin":"\\\\?[:\\w]+","end":"(?={|})|(,)","patterns":[{"include":"#standard"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.separator.exception.extends.ice"}}},{"include":"#storage.exception.body"}],"beginCaptures":{"0":{"name":"storage.modifier.extends.ice"}}},{"include":"#storage.exception.body"}],"beginCaptures":{"0":{"name":"entity.name.exception.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"name":"storage.type.exception.ice"}},"endCaptures":{"0":{"name":"punctuation.section.block.end.ice"}}}]},"storage.exception.body":{"begin":"{","end":"(?=})","patterns":[{"include":"#standard"},{"include":"#storage.basic"}],"beginCaptures":{"0":{"name":"punctuation.section.block.begin.ice"}}},"storage.identifier":{"patterns":[{"name":"invalid.illegal.reserved.identifier.ice","match":"(?\u003c!\\\\)\\b(?:bool|byte|class|const|dictionary|double|enum|exception|extends|false|float|idempotent|implements|int|interface|local|LocalObject|long|module|Object|optional|out|sequence|short|string|struct|throws|true|Value|void)\\b"},{"match":"(\\\\)?\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b","captures":{"1":{"name":"punctuation.escape.backslash.ice"},"2":{"patterns":[{"name":"invalid.illegal.underscore.ice","match":"__+|\\b_|_\\b"}]}}},{"name":"invalid.illegal.identifier.ice","match":"."}]},"storage.interface":{"patterns":[{"include":"#storage.modifier"},{"name":"meta.interface.ice","begin":"(?\u003c!\\\\)\\binterface\\b","end":"(})|(;)","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=}|;)","patterns":[{"include":"#standard"},{"begin":"(?\u003c!\\\\)\\bextends\\b","end":"(?=})|((?=;))","patterns":[{"include":"#standard"},{"begin":"\\\\?[:\\w]+","end":"(?={|}|;)|(,)","patterns":[{"include":"#standard"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.separator.interface.extends.ice"}}},{"include":"#storage.interface.body"}],"beginCaptures":{"0":{"name":"storage.modifier.extends.ice"}},"endCaptures":{"1":{"name":"invalid.illegal.missing-brace.ice"}}},{"include":"#storage.interface.body"}],"beginCaptures":{"0":{"name":"entity.name.interface.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"name":"storage.type.interface.ice"}},"endCaptures":{"1":{"name":"punctuation.section.block.end.ice"},"2":{"name":"punctuation.terminator.semicolon.ice"}}}]},"storage.interface.body":{"begin":"{","end":"(?=})","patterns":[{"include":"#standard"},{"include":"#storage.operation"}],"beginCaptures":{"0":{"name":"punctuation.section.block.begin.ice"}}},"storage.modifier":{"patterns":[{"begin":"(?=\\[)","end":"(?\u003c=])","patterns":[{"include":"#standard"},{"include":"#metadata.local"}]},{"match":"(?\u003c!\\\\)\\b(?:(local)|(const)|(idempotent)|(out)|((?:optional|tag)\\([-a-zA-Z0-9_:]*\\)))(?:\\b|(?\u003c=\\)))","captures":{"1":{"name":"storage.modifier.local.ice"},"2":{"name":"storage.modifier.const.ice"},"3":{"name":"storage.modifier.idempotent.ice"},"4":{"name":"storage.modifier.out.ice"},"5":{"patterns":[{"match":"((?:optional|tag))(\\()([-a-zA-Z0-9_:]*)(\\))","captures":{"1":{"name":"storage.modifier.optional.ice"},"2":{"name":"punctuation.section.group.optional.begin.ice"},"3":{"patterns":[{"include":"#constant.numeric.oct"},{"include":"#constant.numeric.dec"},{"include":"#constant.numeric.hex"},{"include":"#storage.types.custom"}]},"4":{"name":"punctuation.section.group.optional.end.ice"}}}]}}}]},"storage.module":{"patterns":[{"include":"#storage.modifier"},{"name":"meta.module.ice","begin":"(?\u003c!\\\\)\\bmodule\\b","end":"}","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=})","patterns":[{"include":"#standard"},{"begin":"{","end":"(?=})","patterns":[{"include":"#standard"},{"include":"#storage"}],"beginCaptures":{"0":{"name":"punctuation.section.block.begin.ice"}}}],"beginCaptures":{"0":{"name":"entity.name.module.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"name":"storage.type.module.ice"}},"endCaptures":{"0":{"name":"punctuation.section.block.end.ice"}}}]},"storage.operation":{"patterns":[{"include":"#storage.modifier"},{"name":"meta.operation.ice","begin":"\\\\?[:\\w]+","end":"(;)|((?=}))","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=;|})","patterns":[{"include":"#standard"},{"begin":"\\(","end":"(?=;|})","patterns":[{"include":"#standard"},{"begin":"\\)","end":"(?=;|})","patterns":[{"include":"#standard"},{"begin":"(?\u003c!\\\\)\\bthrows\\b","end":"(?=;|})","patterns":[{"include":"#standard"},{"begin":"\\\\?[:\\w]+","end":"(?=;|})|(,)","patterns":[{"include":"#standard"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.separator.operation.throws.ice"}}}],"beginCaptures":{"0":{"name":"storage.modifier.throws.ice"}}}],"beginCaptures":{"0":{"name":"punctuation.section.group.operation.parameters.end.ice"}}},{"include":"#storage.modifier"},{"begin":"\\\\?[:\\w]+","end":"(?=\\))|(?\u003c=,)","patterns":[{"begin":"\\\\?\\b\\w+\\b","end":"(?=\\))|(,)","beginCaptures":{"0":{"name":"entity.name.operation.parameter","patterns":[{"include":"#storage.identifier"}]}},"endCaptures":{"1":{"name":"punctuation.separator.operation.parameter.ice"}}}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}}}],"beginCaptures":{"0":{"name":"punctuation.section.group.operation.parameters.begin.ice"}}}],"beginCaptures":{"0":{"name":"entity.name.function.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types.void"},{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.terminator.semicolon.ice"},"2":{"name":"invalid.illegal.missing-brace.ice"}}}]},"storage.sequence":{"patterns":[{"include":"#storage.modifier"},{"name":"meta.sequence.ice","begin":"(?\u003c!\\\\)\\bsequence\\b","end":"(;)|((?=}))","patterns":[{"include":"#standard"},{"begin":"(\\\u003c)","end":"(?=;|})","patterns":[{"include":"#standard"},{"include":"#storage.modifier"},{"begin":"(\\\\?[:\\w]+)|(?=\\\u003e)","end":"(?=;|})","patterns":[{"include":"#standard"},{"begin":"(\\\u003e)","end":"(?=;|})","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=;|})","beginCaptures":{"0":{"name":"entity.name.sequence.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"name":"meta.generic.sequence.ice"},"1":{"name":"punctuation.definition.generic.end.ice"}}}],"beginCaptures":{"1":{"name":"meta.generic.sequence.ice","patterns":[{"include":"#storage.types"}]},"2":{"name":"invalid.illegal.missing-type.ice"}}}],"beginCaptures":{"0":{"name":"meta.generic.sequence.ice"},"1":{"name":"punctuation.definition.generic.begin.ice"}}}],"beginCaptures":{"0":{"name":"storage.type.sequence.ice"}},"endCaptures":{"1":{"name":"punctuation.terminator.semicolon.ice"},"2":{"name":"invalid.illegal.missing.semicolon.ice"}}}]},"storage.struct":{"patterns":[{"include":"#storage.modifier"},{"name":"meta.struct.ice","begin":"(?\u003c!\\\\)\\bstruct\\b","end":"}","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=})","patterns":[{"include":"#standard"},{"begin":"{","end":"(?=})","patterns":[{"include":"#standard"},{"include":"#storage.basic"}],"beginCaptures":{"0":{"name":"punctuation.section.block.begin.ice"}}}],"beginCaptures":{"0":{"name":"entity.name.struct.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"name":"storage.type.struct.ice"}},"endCaptures":{"0":{"name":"punctuation.section.block.end.ice"}}}]},"storage.types":{"patterns":[{"match":"(\\\\)?\\b(?:(bool)|(byte)|(short)|(int)|(long)|(float)|(double)|(string)|(Object)|(LocalObject)|(Value))\\b","captures":{"1":{"name":"punctuation.escape.backslash.ice"},"10":{"name":"storage.type.object.ice"},"11":{"name":"storage.type.localobject.ice"},"12":{"name":"storage.type.value.ice"},"2":{"name":"storage.type.bool.ice"},"3":{"name":"storage.type.byte.ice"},"4":{"name":"storage.type.short.ice"},"5":{"name":"storage.type.int.ice"},"6":{"name":"storage.type.long.ice"},"7":{"name":"storage.type.float.ice"},"8":{"name":"storage.type.double.ice"},"9":{"name":"storage.type.string.ice"}}},{"include":"#storage.types.custom"}]},"storage.types.custom":{"patterns":[{"match":"(\\\\)?([:\\w]+)","captures":{"1":{"name":"punctuation.escape.backslash.ice"},"2":{"patterns":[{"name":"variable.type.ice","match":"\\w+"},{"name":"punctuation.accessor.ice","match":"::"},{"name":"invalid.illegal.accessor.ice","match":":"}]}}},{"include":"#invalid"}]},"storage.types.void":{"name":"storage.type.void.ice","match":"(\\\\)?\\bvoid\\b","captures":{"1":{"name":"punctuation.escape.backslash.ice"}}}}}
1
+ {"name":"Slice","scopeName":"source.ice","patterns":[{"include":"#comment"},{"include":"#preprocessor"},{"include":"#metadata.global"},{"include":"#storage.module"}],"repository":{"annotation":{"name":"storage.type.annotation.ice","match":"(@)\\S*\\b","captures":{"1":{"name":"punctuation.definition.annotation.ice"}}},"comment":{"patterns":[{"include":"#comment.line"},{"include":"#comment.block"}]},"comment.block":{"name":"comment.block.ice","contentName":"text.ice","begin":"\\/\\*","end":"\\*\\/","patterns":[{"include":"#annotation"},{"include":"#link"},{"include":"#line.continuation"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.block.begin.ice"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.block.end.ice"}}},"comment.line":{"name":"comment.line.ice","contentName":"text.ice","begin":"\\/\\/","end":"$","patterns":[{"include":"#annotation"},{"include":"#link"},{"include":"#line.continuation"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.line.begin.ice"}}},"constant":{"patterns":[{"include":"#constant.boolean"},{"include":"#constant.string"},{"include":"#constant.numeric.float"},{"include":"#constant.numeric.hex"},{"include":"#constant.numeric.oct"},{"include":"#constant.numeric.dec"}]},"constant.boolean":{"match":"\\b(?:(true)|(false))\\b","captures":{"0":{"name":"constant.language.ice"},"1":{"name":"constant.boolean.true.ice"},"2":{"name":"constant.boolean.false.ice"}}},"constant.numeric.dec":{"name":"constant.numeric.integer.ice","match":"(-|\\+)?\\b(?:0|[1-9]\\d*)\\b","captures":{"1":{"name":"punctuation.definition.numeric.sign.ice"}}},"constant.numeric.float":{"name":"constant.numeric.float.ice","match":"(-|\\+)?(?:\\d+(\\.)\\d*|\\d*(\\.)\\d+|\\d+(?=e|E|f|F))(?:(e|E)-?\\d+)?(f|F)?","captures":{"1":{"name":"punctuation.numeric.sign.ice"},"2":{"name":"punctuation.separator.decimal.ice"},"3":{"name":"punctuation.separator.decimal.ice"},"4":{"name":"punctuation.numeric.exponent.ice"},"5":{"name":"punctuation.definition.float.ice"}}},"constant.numeric.hex":{"name":"constant.numeric.hex.ice","match":"(-|\\+)?\\b(0x)[\\da-fA-F]+\\b","captures":{"1":{"name":"punctuation.definition.numeric.sign.ice"},"2":{"name":"punctuation.definition.numeric.hex.ice"}}},"constant.numeric.oct":{"name":"constant.numeric.octal.ice","match":"(-|\\+)?\\b(0)(\\d+)\\b","captures":{"1":{"name":"punctuation.definition.numeric.sign.ice"},"2":{"name":"punctuation.definition.numeric.oct.ice"},"3":{"patterns":[{"name":"invalid.illegal.oct.ice","match":"[8-9]"}]}}},"constant.string":{"name":"string.quoted.double.ice","begin":"\"","end":"(\")|$","patterns":[{"match":"\\\\."},{"include":"#line.continuation"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ice"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.ice"},"2":{"name":"invalid.illegal.mismatched-quotes.ice"}}},"invalid":{"name":"invalid.illegal","match":"\\S"},"line.continuation":{"begin":"(\\\\)\\s*$","end":"^","beginCaptures":{"1":{"name":"punctuation.separator.continuation.backslash.ice"}}},"link":{"name":"variable.link.ice","match":"(\\b\\S*)?(#)\\S*\\b","captures":{"1":{"name":"punctuation.definition.link.ice"}}},"metadata":{"patterns":[{"include":"#metadata.global"},{"include":"#metadata.local"}]},"metadata.content":{"patterns":[{"include":"#standard"},{"begin":"(\")","end":"(?=\\])|(?\u003c=,)","patterns":[{"include":"#line.continuation"},{"name":"string.quoted.double.ice","match":"((?:[^\\\\\"]|\\\\.)+)","captures":{"1":{"patterns":[{"include":"#metadata.identifier"}]}}},{"begin":"(\")","end":"(?=\\])|(,)","patterns":[{"include":"#standard"}],"beginCaptures":{"0":{"name":"string.quoted.double.ice"},"1":{"name":"punctuation.definition.string.end.ice"}},"endCaptures":{"1":{"name":"punctuation.separator.metadata.ice"}}}],"beginCaptures":{"0":{"name":"string.quoted.double.ice"},"1":{"name":"punctuation.definition.string.begin.ice"}}}]},"metadata.global":{"name":"meta.metadata.global.ice","begin":"\\[\\[","end":"\\]\\]","patterns":[{"include":"#metadata.content"}],"beginCaptures":{"0":{"name":"punctuation.definition.metadata.global.begin.ice"}},"endCaptures":{"0":{"name":"punctuation.definition.metadata.global.end.ice"}}},"metadata.identifier":{"name":"entity.metadata.directive.ice","match":"\\S+"},"metadata.local":{"name":"meta.metadata.local.ice","begin":"\\[","end":"\\]","patterns":[{"include":"#metadata.content"}],"beginCaptures":{"0":{"name":"punctuation.definition.metadata.local.begin.ice"}},"endCaptures":{"0":{"name":"punctuation.definition.metadata.local.end.ice"}}},"preprocessor":{"patterns":[{"include":"#preprocessor.if"},{"include":"#preprocessor.ifdef"},{"include":"#preprocessor.ifndef"},{"include":"#preprocessor.elif"},{"include":"#preprocessor.else"},{"include":"#preprocessor.endif"},{"include":"#preprocessor.define"},{"include":"#preprocessor.undef"},{"include":"#preprocessor.include"},{"include":"#preprocessor.pragma"},{"include":"#preprocessor.line"},{"include":"#preprocessor.error"},{"include":"#preprocessor.null"}]},"preprocessor.define":{"name":"meta.preprocessor.define.ice","begin":"(#)\\s*define\\b","end":"$","patterns":[{"include":"#standardP"},{"begin":"\\b(\\w+)((\\())","end":"$","patterns":[{"include":"#standardP"},{"begin":"\\b\\w+\\b","end":"(?=\\))|(,)|($)","patterns":[{"include":"#standardP"}],"beginCaptures":{"0":{"patterns":[{"include":"#preprocessor.identifier"}]}},"endCaptures":{"1":{"name":"punctuation.separator.parameter.preprocessor.ice"},"2":{"name":"invalid.mismatched.parenthesis.ice"}}},{"begin":"\\b\\w+\\b","end":"(?=\\))|((,))|($)","patterns":[{"include":"#standardP"}],"beginCaptures":{"0":{"name":"punctuation.variable.parameter.preprocessor.ice"}},"endCaptures":{"1":{"name":"punctuation.separator.parameter.preprocessor.ice"},"2":{"name":"invalid.trailing-comma.ice"},"3":{"name":"invalid.mismatched.parenthesis.ice"}}},{"begin":"(\\))","end":"$","patterns":[{"include":"#standardP"},{"name":"constant.preprocessor.ice","match":"\\S"}],"beginCaptures":{"0":{"name":"meta.group.parameters.preprocessor.ice"},"1":{"name":"punctuation.section.group.parameters.end.ice"}}}],"beginCaptures":{"1":{"patterns":[{"include":"#preprocessor.identifier"}]},"2":{"name":"meta.group.parameters.preprocessor.ice"},"3":{"name":"punctuation.section.group.parameters.begin.ice"}}},{"begin":"\\b\\w+\\b","end":"$","patterns":[{"include":"#standardP"},{"name":"constant.preprocessor.ice","match":"\\S"}],"beginCaptures":{"0":{"patterns":[{"include":"#preprocessor.identifier"}]}}}],"beginCaptures":{"0":{"name":"keyword.control.preprocessor.define.ice"},"1":{"name":"punctuation.definition.preprocessor.ice"}}},"preprocessor.elif":{"name":"meta.preprocessor.elif.ice","begin":"(#)\\s*elif\\b","end":"$","patterns":[{"include":"#standardP"}],"beginCaptures":{"0":{"name":"keyword.control.preprocessor.elif.ice"},"1":{"name":"punctuation.definition.preprocessor.ice"}}},"preprocessor.else":{"name":"meta.preprocessor.endif.ice","begin":"(#)\\s*else\\b","end":"$","patterns":[{"include":"#standardP"}],"beginCaptures":{"0":{"name":"keyword.control.preprocessor.else.ice"},"1":{"name":"punctuation.definition.preprocessor.ice"}}},"preprocessor.endif":{"name":"meta.preprocessor.endif.ice","begin":"(#)\\s*endif\\b","end":"$","patterns":[{"include":"#standardP"}],"beginCaptures":{"0":{"name":"keyword.control.preprocessor.endif.ice"},"1":{"name":"punctuation.definition.preprocessor.ice"}}},"preprocessor.error":{"name":"meta.preprocessor.error.ice","begin":"((#)\\s*error)\\b","end":"$","patterns":[{"include":"#standardP"},{"name":"text.error.ice","match":"."}],"beginCaptures":{"1":{"name":"keyword.control.preprocessor.error.ice"},"2":{"name":"punctuation.definition.preprocessor.ice"}}},"preprocessor.identifier":{"patterns":[{"name":"entity.identifier.preprocessor.ice","match":"\\b[a-zA-Z_][a-zA-Z0-9_]*\\b"},{"include":"#invalid"}]},"preprocessor.if":{"name":"meta.preprocessor.if.ice","begin":"(#)\\s*if\\b","end":"$","patterns":[{"include":"#standardP"}],"beginCaptures":{"0":{"name":"keyword.control.preprocessor.if.ice"},"1":{"name":"punctuation.definition.preprocessor.ice"}}},"preprocessor.ifdef":{"name":"meta.preprocessor.ifdef.ice","begin":"(#)\\s*ifdef\\b","end":"$","patterns":[{"include":"#standardP"},{"begin":"\\b\\w+\\b","end":"$","patterns":[{"include":"#standardP"}],"beginCaptures":{"0":{"patterns":[{"include":"#preprocessor.identifier"}]}}}],"beginCaptures":{"0":{"name":"keyword.control.preprocessor.ifdef.ice"},"1":{"name":"punctuation.definition.preprocessor.ice"}}},"preprocessor.ifndef":{"name":"meta.preprocessor.ifndef.ice","begin":"(#)\\s*ifndef\\b","end":"$","patterns":[{"include":"#standardP"},{"begin":"\\b\\w+\\b","end":"$","patterns":[{"include":"#standardP"}],"beginCaptures":{"0":{"patterns":[{"include":"#preprocessor.identifier"}]}}}],"beginCaptures":{"0":{"name":"keyword.control.preprocessor.ifndef.ice"},"1":{"name":"punctuation.definition.preprocessor.ice"}}},"preprocessor.include":{"name":"meta.preprocessor.include.ice","begin":"((#)\\s*include)\\b","end":"$","patterns":[{"include":"#standardP"},{"begin":"(?\u003c=\"|\u003e)","end":"$","patterns":[{"include":"#standardP"}]},{"name":"string.quoted.double.ice","contentName":"entity.name.header.ice","begin":"\"","end":"(\")|($)","patterns":[{"match":"\\\\."},{"include":"#line.continuation"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ice"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.ice"},"2":{"name":"invalid.illegal.mismatched-quotes.ice"}}},{"name":"string.quoted.other.angle.ice","contentName":"entity.name.header.ice","begin":"\u003c","end":"(\u003e)|($)","patterns":[{"match":"\\\\."},{"include":"#line.continuation"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ice"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.ice"},"2":{"name":"invalid.illegal.mismatched-quotes.ice"}}}],"beginCaptures":{"1":{"name":"keyword.control.preprocessor.include.ice"},"2":{"name":"punctuation.definition.preprocessor.ice"}}},"preprocessor.line":{"name":"meta.preprocessor.line.ice","begin":"((#)\\s*line)\\b","end":"$","patterns":[{"include":"#standardP"},{"begin":"\\b[\\d]+\\b","end":"$","patterns":[{"include":"#standardP"},{"begin":"(?\u003c=\")","end":"$","patterns":[{"include":"#standardP"}]},{"name":"string.quoted.double.ice","contentName":"entity.name.file.ice","begin":"\"","end":"(\")|($)","patterns":[{"match":"\\\\."},{"include":"#line.continuation"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ice"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.ice"},"2":{"name":"invalid.illegal.mismatched-quotes.ice"}}}],"beginCaptures":{"0":{"patterns":[{"include":"#constant.numeric.dec"}]}}}],"beginCaptures":{"1":{"name":"keyword.control.preprocessor.line.ice"},"2":{"name":"punctuation.definition.preprocessor.ice"}}},"preprocessor.null":{"name":"meta.preprocessor.null.ice","begin":"(#)","end":"$","patterns":[{"include":"#standardP"}],"beginCaptures":{"0":{"name":"punctuation.definition.preprocessor.ice"},"1":{"name":"keyword.control.preprocessor.null.ice"}}},"preprocessor.pragma":{"name":"meta.preprocessor.pragma.ice","begin":"((#)\\s*pragma)\\b","end":"$","patterns":[{"include":"#standardP"},{"begin":"\\b\\S+\\b","end":"$","patterns":[{"include":"#standardP"}],"beginCaptures":{"0":{"name":"keyword.control.preprocessor.pragma.other.ice"}}}],"beginCaptures":{"1":{"name":"keyword.control.preprocessor.pragma.ice"},"2":{"name":"punctuation.definition.preprocessor.ice"}}},"preprocessor.undef":{"name":"meta.preprocessor.undef.ice","begin":"((#)\\s*undef)\\b","end":"$","patterns":[{"include":"#standardP"},{"begin":"\\b\\w+\\b","end":"$","patterns":[{"include":"#standardP"}],"beginCaptures":{"0":{"patterns":[{"include":"#preprocessor.identifier"}]}}}],"beginCaptures":{"1":{"name":"keyword.control.preprocessor.undef.ice"},"2":{"name":"punctuation.definition.preprocessor.ice"}}},"standard":{"patterns":[{"include":"#comment"},{"include":"#preprocessor"},{"include":"#line.continuation"}]},"standardP":{"patterns":[{"include":"#comment"},{"include":"#line.continuation"}]},"storage":{"patterns":[{"include":"#storage.module"},{"include":"#storage.enum"},{"include":"#storage.struct"},{"include":"#storage.sequence"},{"include":"#storage.dictionary"},{"include":"#storage.interface"},{"include":"#storage.exception"},{"include":"#storage.class"},{"include":"#storage.basic"}]},"storage.basic":{"patterns":[{"include":"#storage.modifier"},{"name":"meta.bool.ice","begin":"\\\\?\\bbool\\b","end":"(;)|((?=}))","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=;|})","patterns":[{"include":"#storage.basic.assignment"}],"beginCaptures":{"0":{"name":"entity.name.bool.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.terminator.semicolon.ice"},"2":{"name":"invalid.illegal.missing.semicolon.ice"}}},{"name":"meta.byte.ice","begin":"\\\\?\\bbyte\\b","end":"(;)|((?=}))","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=;|})","patterns":[{"include":"#storage.basic.assignment"}],"beginCaptures":{"0":{"name":"entity.name.byte.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.terminator.semicolon.ice"},"2":{"name":"invalid.illegal.missing.semicolon.ice"}}},{"name":"meta.short.ice","begin":"\\\\?\\bshort\\b","end":"(;)|((?=}))","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=;|})","patterns":[{"include":"#storage.basic.assignment"}],"beginCaptures":{"0":{"name":"entity.name.short.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.terminator.semicolon.ice"},"2":{"name":"invalid.illegal.missing.semicolon.ice"}}},{"name":"meta.int.ice","begin":"\\\\?\\bint\\b","end":"(;)|((?=}))","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=;|})","patterns":[{"include":"#storage.basic.assignment"}],"beginCaptures":{"0":{"name":"entity.name.int.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.terminator.semicolon.ice"},"2":{"name":"invalid.illegal.missing.semicolon.ice"}}},{"name":"meta.long.ice","begin":"\\\\?\\blong\\b","end":"(;)|((?=}))","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=;|})","patterns":[{"include":"#storage.basic.assignment"}],"beginCaptures":{"0":{"name":"entity.name.long.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.terminator.semicolon.ice"},"2":{"name":"invalid.illegal.missing.semicolon.ice"}}},{"name":"meta.float.ice","begin":"\\\\?\\bfloat\\b","end":"(;)|((?=}))","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=;|})","patterns":[{"include":"#storage.basic.assignment"}],"beginCaptures":{"0":{"name":"entity.name.float.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.terminator.semicolon.ice"},"2":{"name":"invalid.illegal.missing.semicolon.ice"}}},{"name":"meta.double.ice","begin":"\\\\?\\bdouble\\b","end":"(;)|((?=}))","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=;|})","patterns":[{"include":"#storage.basic.assignment"}],"beginCaptures":{"0":{"name":"entity.name.double.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.terminator.semicolon.ice"},"2":{"name":"invalid.illegal.missing.semicolon.ice"}}},{"name":"meta.string.ice","begin":"\\\\?\\bstring\\b","end":"(;)|((?=}))","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=;|})","patterns":[{"include":"#storage.basic.assignment"}],"beginCaptures":{"0":{"name":"entity.name.string.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.terminator.semicolon.ice"},"2":{"name":"invalid.illegal.missing.semicolon.ice"}}},{"name":"meta.type.ice","begin":"\\\\?\\b[:\\w]+\\b","end":"(;)|((?=}))","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=;|})","patterns":[{"include":"#storage.basic.assignment"}],"beginCaptures":{"0":{"name":"entity.name.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types.custom"}]}},"endCaptures":{"1":{"name":"punctuation.terminator.semicolon.ice"},"2":{"name":"invalid.illegal.missing.semicolon.ice"}}}]},"storage.basic.assignment":{"patterns":[{"include":"#standard"},{"begin":"=","end":"(?=;|})","patterns":[{"include":"#standard"},{"include":"#constant"}],"beginCaptures":{"0":{"name":"keyword.operator.assignment.ice"}}}]},"storage.class":{"patterns":[{"include":"#storage.modifier"},{"name":"meta.class.ice","begin":"(?\u003c!\\\\)\\bclass\\b","end":"(})|(;)","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=}|;)","patterns":[{"include":"#standard"},{"begin":"(?\u003c!\\\\)\\bextends\\b","end":"(?=})|((?=;))","patterns":[{"include":"#standard"},{"begin":"\\\\?[:\\w]+","end":"(?=}|;)","patterns":[{"include":"#standard"},{"include":"#storage.class.implements"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}}},{"name":"invalid.illegal.missing-types.ice","include":"#storage.class.implements"}],"beginCaptures":{"0":{"name":"storage.modifier.extends.ice"}},"endCaptures":{"1":{"name":"invalid.illegal.missing-brace.ice"}}},{"include":"#storage.class.implements"}],"beginCaptures":{"0":{"name":"entity.name.class.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"name":"storage.type.class.ice"}},"endCaptures":{"1":{"name":"punctuation.section.block.end.ice"},"2":{"name":"punctuation.terminator.semicolon.ice"}}}]},"storage.class.body":{"begin":"{","end":"(?=})","patterns":[{"include":"#standard"},{"include":"#storage.basic"}],"beginCaptures":{"0":{"name":"punctuation.section.block.begin.ice"}}},"storage.class.implements":{"patterns":[{"begin":"(?\u003c!\\\\)\\bimplements\\b","end":"(?=})|((?=;))","patterns":[{"include":"#standard"},{"begin":"\\\\?[:\\w]+","end":"(?={|}|;)|(,)","patterns":[{"include":"#standard"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.separator.class.implements.ice"}}},{"include":"#storage.class.body"}],"beginCaptures":{"0":{"name":"storage.modifier.implements.ice"}},"endCaptures":{"1":{"name":"invalid.illegal.missing-brace.ice"}}},{"include":"#storage.class.body"}]},"storage.dictionary":{"patterns":[{"include":"#storage.modifier"},{"name":"meta.dictionary.ice","begin":"(?\u003c!\\\\)\\bdictionary\\b","end":"(;)|((?=}))","patterns":[{"include":"#standard"},{"begin":"(\\\u003c)","end":"(?=;|})","patterns":[{"include":"#standard"},{"include":"#storage.modifier"},{"begin":"(\\\\?[:\\w]+)|(?=\\\u003e)","end":"(?=;|})","patterns":[{"include":"#standard"},{"begin":"(,)|(?=\\\u003e)","end":"(?=;|{|})","patterns":[{"include":"#standard"},{"include":"#storage.modifier"},{"begin":"(\\\\?[:\\w]+)|(?=\\\u003e)","end":"(?=;|})","patterns":[{"include":"#standard"},{"begin":"(\\\u003e)","end":"(?=;|})","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=;|})","beginCaptures":{"0":{"name":"entity.name.dictionary.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"name":"meta.generic.dictionary.ice"},"1":{"name":"punctuation.definition.generic.end.ice"}}}],"beginCaptures":{"1":{"name":"meta.generic.dictionary.ice","patterns":[{"include":"#storage.types"}]},"2":{"name":"invalid.illegal.missing-type.ice"}}}],"beginCaptures":{"0":{"name":"meta.generic.dictionary.ice"},"1":{"name":"punctuation.separator.dictionary.ice"},"2":{"name":"invalid.illegal.missing-type.ice"}}}],"beginCaptures":{"1":{"name":"meta.generic.dictionary.ice","patterns":[{"include":"#storage.types"}]},"2":{"name":"invalid.illegal.missing-type.ice"}}}],"beginCaptures":{"0":{"name":"meta.generic.dictionary.ice"},"1":{"name":"punctuation.definition.generic.begin.ice"}}}],"beginCaptures":{"0":{"name":"storage.type.dictionary.ice"}},"endCaptures":{"1":{"name":"punctuation.terminator.semicolon.ice"},"2":{"name":"invalid.illegal.missing.semicolon.ice"}}}]},"storage.enum":{"patterns":[{"include":"#storage.modifier"},{"name":"meta.enum.ice","begin":"(?\u003c!\\\\)\\benum\\b","end":"}","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=})","patterns":[{"include":"#standard"},{"begin":"{","end":"(?=})","patterns":[{"include":"#standard"},{"begin":"(?=\\[)","end":"(?\u003c=])","patterns":[{"include":"#standard"},{"include":"#metadata.local"}]},{"begin":"\\\\?\\b\\w+\\b","end":"(?=})|(,)","patterns":[{"include":"#standard"},{"begin":"=","end":"(?=})|(?=,)","patterns":[{"include":"#standard"},{"include":"#constant"}],"beginCaptures":{"0":{"name":"keyword.operator.assignment.ice"}}}],"beginCaptures":{"0":{"name":"constant.other.enum.ice","patterns":[{"include":"#identifier"}]}},"endCaptures":{"1":{"name":"punctuation.separator.enum.ice"}}}],"beginCaptures":{"0":{"name":"punctuation.section.block.begin.ice"}}}],"beginCaptures":{"0":{"name":"entity.name.enum.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"name":"storage.type.enum.ice"}},"endCaptures":{"0":{"name":"punctuation.section.block.end.ice"}}}]},"storage.exception":{"patterns":[{"include":"#storage.modifier"},{"name":"meta.exception.ice","begin":"(?\u003c!\\\\)\\bexception\\b","end":"}","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=})","patterns":[{"include":"#standard"},{"begin":"(?\u003c!\\\\)\\bextends\\b","end":"(?=})","patterns":[{"include":"#standard"},{"begin":"\\\\?[:\\w]+","end":"(?={|})|(,)","patterns":[{"include":"#standard"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.separator.exception.extends.ice"}}},{"include":"#storage.exception.body"}],"beginCaptures":{"0":{"name":"storage.modifier.extends.ice"}}},{"include":"#storage.exception.body"}],"beginCaptures":{"0":{"name":"entity.name.exception.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"name":"storage.type.exception.ice"}},"endCaptures":{"0":{"name":"punctuation.section.block.end.ice"}}}]},"storage.exception.body":{"begin":"{","end":"(?=})","patterns":[{"include":"#standard"},{"include":"#storage.basic"}],"beginCaptures":{"0":{"name":"punctuation.section.block.begin.ice"}}},"storage.identifier":{"patterns":[{"name":"invalid.illegal.reserved.identifier.ice","match":"(?\u003c!\\\\)\\b(?:bool|byte|class|const|dictionary|double|enum|exception|extends|false|float|idempotent|implements|int|interface|local|LocalObject|long|module|Object|optional|out|sequence|short|string|struct|throws|true|Value|void)\\b"},{"match":"(\\\\)?\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b","captures":{"1":{"name":"punctuation.escape.backslash.ice"},"2":{"patterns":[{"name":"invalid.illegal.underscore.ice","match":"__+|\\b_|_\\b"}]}}},{"name":"invalid.illegal.identifier.ice","match":"."}]},"storage.interface":{"patterns":[{"include":"#storage.modifier"},{"name":"meta.interface.ice","begin":"(?\u003c!\\\\)\\binterface\\b","end":"(})|(;)","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=}|;)","patterns":[{"include":"#standard"},{"begin":"(?\u003c!\\\\)\\bextends\\b","end":"(?=})|((?=;))","patterns":[{"include":"#standard"},{"begin":"\\\\?[:\\w]+","end":"(?={|}|;)|(,)","patterns":[{"include":"#standard"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.separator.interface.extends.ice"}}},{"include":"#storage.interface.body"}],"beginCaptures":{"0":{"name":"storage.modifier.extends.ice"}},"endCaptures":{"1":{"name":"invalid.illegal.missing-brace.ice"}}},{"include":"#storage.interface.body"}],"beginCaptures":{"0":{"name":"entity.name.interface.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"name":"storage.type.interface.ice"}},"endCaptures":{"1":{"name":"punctuation.section.block.end.ice"},"2":{"name":"punctuation.terminator.semicolon.ice"}}}]},"storage.interface.body":{"begin":"{","end":"(?=})","patterns":[{"include":"#standard"},{"include":"#storage.operation"}],"beginCaptures":{"0":{"name":"punctuation.section.block.begin.ice"}}},"storage.modifier":{"patterns":[{"begin":"(?=\\[)","end":"(?\u003c=])","patterns":[{"include":"#standard"},{"include":"#metadata.local"}]},{"match":"(?\u003c!\\\\)\\b(?:(local)|(const)|(idempotent)|(out)|(optional\\([-a-zA-Z0-9_:]*\\)))(?:\\b|(?\u003c=\\)))","captures":{"1":{"name":"storage.modifier.local.ice"},"2":{"name":"storage.modifier.const.ice"},"3":{"name":"storage.modifier.idempotent.ice"},"4":{"name":"storage.modifier.out.ice"},"5":{"patterns":[{"match":"(optional)(\\()([-a-zA-Z0-9_:]*)(\\))","captures":{"1":{"name":"storage.modifier.optional.ice"},"2":{"name":"punctuation.section.group.optional.begin.ice"},"3":{"patterns":[{"include":"#constant.numeric.oct"},{"include":"#constant.numeric.dec"},{"include":"#constant.numeric.hex"},{"include":"#storage.types.custom"}]},"4":{"name":"punctuation.section.group.optional.end.ice"}}}]}}}]},"storage.module":{"patterns":[{"include":"#storage.modifier"},{"name":"meta.module.ice","begin":"(?\u003c!\\\\)\\bmodule\\b","end":"}","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=})","patterns":[{"include":"#standard"},{"begin":"{","end":"(?=})","patterns":[{"include":"#standard"},{"include":"#storage"}],"beginCaptures":{"0":{"name":"punctuation.section.block.begin.ice"}}}],"beginCaptures":{"0":{"name":"entity.name.module.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"name":"storage.type.module.ice"}},"endCaptures":{"0":{"name":"punctuation.section.block.end.ice"}}}]},"storage.operation":{"patterns":[{"include":"#storage.modifier"},{"name":"meta.operation.ice","begin":"\\\\?[:\\w]+","end":"(;)|((?=}))","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=;|})","patterns":[{"include":"#standard"},{"begin":"\\(","end":"(?=;|})","patterns":[{"include":"#standard"},{"begin":"\\)","end":"(?=;|})","patterns":[{"include":"#standard"},{"begin":"(?\u003c!\\\\)\\bthrows\\b","end":"(?=;|})","patterns":[{"include":"#standard"},{"begin":"\\\\?[:\\w]+","end":"(?=;|})|(,)","patterns":[{"include":"#standard"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.separator.operation.throws.ice"}}}],"beginCaptures":{"0":{"name":"storage.modifier.throws.ice"}}}],"beginCaptures":{"0":{"name":"punctuation.section.group.operation.parameters.end.ice"}}},{"include":"#storage.modifier"},{"begin":"\\\\?[:\\w]+","end":"(?=\\))|(?\u003c=,)","patterns":[{"begin":"\\\\?\\b\\w+\\b","end":"(?=\\))|(,)","beginCaptures":{"0":{"name":"entity.name.operation.parameter","patterns":[{"include":"#storage.identifier"}]}},"endCaptures":{"1":{"name":"punctuation.separator.operation.parameter.ice"}}}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types"}]}}}],"beginCaptures":{"0":{"name":"punctuation.section.group.operation.parameters.begin.ice"}}}],"beginCaptures":{"0":{"name":"entity.name.function.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.types.void"},{"include":"#storage.types"}]}},"endCaptures":{"1":{"name":"punctuation.terminator.semicolon.ice"},"2":{"name":"invalid.illegal.missing-brace.ice"}}}]},"storage.sequence":{"patterns":[{"include":"#storage.modifier"},{"name":"meta.sequence.ice","begin":"(?\u003c!\\\\)\\bsequence\\b","end":"(;)|((?=}))","patterns":[{"include":"#standard"},{"begin":"(\\\u003c)","end":"(?=;|})","patterns":[{"include":"#standard"},{"include":"#storage.modifier"},{"begin":"(\\\\?[:\\w]+)|(?=\\\u003e)","end":"(?=;|})","patterns":[{"include":"#standard"},{"begin":"(\\\u003e)","end":"(?=;|})","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=;|})","beginCaptures":{"0":{"name":"entity.name.sequence.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"name":"meta.generic.sequence.ice"},"1":{"name":"punctuation.definition.generic.end.ice"}}}],"beginCaptures":{"1":{"name":"meta.generic.sequence.ice","patterns":[{"include":"#storage.types"}]},"2":{"name":"invalid.illegal.missing-type.ice"}}}],"beginCaptures":{"0":{"name":"meta.generic.sequence.ice"},"1":{"name":"punctuation.definition.generic.begin.ice"}}}],"beginCaptures":{"0":{"name":"storage.type.sequence.ice"}},"endCaptures":{"1":{"name":"punctuation.terminator.semicolon.ice"},"2":{"name":"invalid.illegal.missing.semicolon.ice"}}}]},"storage.struct":{"patterns":[{"include":"#storage.modifier"},{"name":"meta.struct.ice","begin":"(?\u003c!\\\\)\\bstruct\\b","end":"}","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=})","patterns":[{"include":"#standard"},{"begin":"{","end":"(?=})","patterns":[{"include":"#standard"},{"include":"#storage.basic"}],"beginCaptures":{"0":{"name":"punctuation.section.block.begin.ice"}}}],"beginCaptures":{"0":{"name":"entity.name.struct.ice","patterns":[{"include":"#storage.identifier"}]}}}],"beginCaptures":{"0":{"name":"storage.type.struct.ice"}},"endCaptures":{"0":{"name":"punctuation.section.block.end.ice"}}}]},"storage.types":{"patterns":[{"match":"(\\\\)?\\b(?:(bool)|(byte)|(short)|(int)|(long)|(float)|(double)|(string)|(Object)|(LocalObject)|(Value))\\b","captures":{"1":{"name":"punctuation.escape.backslash.ice"},"10":{"name":"storage.type.object.ice"},"11":{"name":"storage.type.localobject.ice"},"12":{"name":"storage.type.value.ice"},"2":{"name":"storage.type.bool.ice"},"3":{"name":"storage.type.byte.ice"},"4":{"name":"storage.type.short.ice"},"5":{"name":"storage.type.int.ice"},"6":{"name":"storage.type.long.ice"},"7":{"name":"storage.type.float.ice"},"8":{"name":"storage.type.double.ice"},"9":{"name":"storage.type.string.ice"}}},{"include":"#storage.types.custom"}]},"storage.types.custom":{"patterns":[{"match":"(\\\\)?([:\\w]+)","captures":{"1":{"name":"punctuation.escape.backslash.ice"},"2":{"patterns":[{"name":"variable.type.ice","match":"\\w+"},{"name":"punctuation.accessor.ice","match":"::"},{"name":"invalid.illegal.accessor.ice","match":":"}]}}},{"include":"#invalid"}]},"storage.types.void":{"name":"storage.type.void.ice","match":"(\\\\)?\\bvoid\\b","captures":{"1":{"name":"punctuation.escape.backslash.ice"}}}}}
@@ -1 +1 @@
1
- {"name":"Julia","scopeName":"source.julia","patterns":[{"include":"#operator"},{"include":"#array"},{"include":"#string"},{"include":"#parentheses"},{"include":"#bracket"},{"include":"#function_decl"},{"include":"#function_call"},{"include":"#for_block"},{"include":"#keyword"},{"include":"#number"},{"include":"#comment"},{"include":"#type_decl"},{"include":"#symbol"},{"include":"#punctuation"}],"repository":{"array":{"patterns":[{"name":"meta.array.julia","begin":"\\[","end":"(\\])((?:\\.)?'*)","patterns":[{"name":"constant.numeric.julia","match":"\\bbegin\\b"},{"name":"constant.numeric.julia","match":"\\bend\\b"},{"include":"#self_no_for_block"}],"beginCaptures":{"0":{"name":"meta.bracket.julia"}},"endCaptures":{"1":{"name":"meta.bracket.julia"},"2":{"name":"keyword.operator.transpose.julia"}}}]},"bracket":{"patterns":[{"begin":"\\{","end":"(\\})((?:\\.)?'*)","patterns":[{"include":"#self_no_for_block"}],"beginCaptures":{"0":{"name":"meta.bracket.julia"}},"endCaptures":{"1":{"name":"meta.bracket.julia"},"2":{"name":"keyword.operator.transpose.julia"}}}]},"comment":{"patterns":[{"include":"#comment_block"},{"name":"comment.line.number-sign.julia","begin":"#","end":"\\n","patterns":[{"include":"#comment_tags"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.julia"}}}]},"comment_block":{"patterns":[{"name":"comment.block.number-sign-equals.julia","begin":"#=","end":"=#","patterns":[{"include":"#comment_tags"},{"include":"#comment_block"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.julia"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.end.julia"}}}]},"comment_tags":{"patterns":[{"name":"keyword.other.comment-annotation.julia","match":"\\bTODO\\b"},{"name":"keyword.other.comment-annotation.julia","match":"\\bFIXME\\b"},{"name":"keyword.other.comment-annotation.julia","match":"\\bCHANGED\\b"},{"name":"keyword.other.comment-annotation.julia","match":"\\bXXX\\b"}]},"for_block":{"patterns":[{"begin":"\\b(for)\\b","end":"(?\u003c!,|\\s)(\\s*\\n)","patterns":[{"name":"keyword.other.julia","match":"\\bouter\\b"},{"include":"$self"}],"beginCaptures":{"0":{"name":"keyword.control.julia"}}}]},"function_call":{"patterns":[{"begin":"({{id}})({(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})?\\.?(\\()","end":"\\)(('|(\\.'))*\\.?')?","patterns":[{"include":"#self_no_for_block"}],"beginCaptures":{"1":{"name":"support.function.julia"},"2":{"name":"support.type.julia"},"3":{"name":"meta.bracket.julia"}},"endCaptures":{"0":{"name":"meta.bracket.julia"},"1":{"name":"keyword.operator.transposed-func.julia"}}}]},"function_decl":{"patterns":[{"match":"({{id}})({(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})?(?=\\([^#]*\\)(::[^\\s]+)?(\\s*\\bwhere\\b\\s+.+?)?\\s*?=(?![=\u003e]))","captures":{"1":{"name":"entity.name.function.julia"},"2":{"name":"support.type.julia"}}},{"match":"\\b(function|macro)(?:\\s+(?:{{id}}(\\.))?({{id}})({(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})?|\\s*)(?=\\()","captures":{"1":{"name":"keyword.other.julia"},"2":{"name":"keyword.operator.dots.julia"},"3":{"name":"entity.name.function.julia"},"4":{"name":"support.type.julia"}}}]},"keyword":{"patterns":[{"name":"keyword.other.julia","match":"\\b(?\u003c![:_\\.])(?:function|mutable\\s+struct|struct|macro|quote|abstract\\s+type|primitive\\s+type|module|baremodule|where)\\b"},{"name":"keyword.control.julia","match":"\\b(?\u003c![:_])(?:if|else|elseif|for|while|begin|let|do|try|catch|finally|return|break|continue)\\b"},{"name":"keyword.control.end.julia","match":"\\b(?\u003c![:_])end\\b"},{"name":"keyword.storage.modifier.julia","match":"\\b(?\u003c![:_])(?:global|local|const)\\b"},{"name":"keyword.control.export.julia","match":"\\b(?\u003c![:_])(?:export)\\b"},{"name":"keyword.control.public.julia","match":"^(?:public)\\b"},{"name":"keyword.control.import.julia","match":"\\b(?\u003c![:_])(?:import)\\b"},{"name":"keyword.control.using.julia","match":"\\b(?\u003c![:_])(?:using)\\b"},{"name":"keyword.control.as.julia","match":"(?\u003c=\\w\\s)\\b(as)\\b(?=\\s\\w)"},{"name":"support.function.macro.julia","match":"(@(\\.|{{id}}))"}]},"number":{"patterns":[{"match":"((?\u003c!(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿]))(?:(?:\\b0(?:x|X)[0-9a-fA-F](?:_?[0-9a-fA-F])*)|(?:\\b0o[0-7](?:_?[0-7])*)|(?:\\b0b[0-1](?:_?[0-1])*)|(?:(?:\\b[0-9](?:_?[0-9])*\\.?(?!\\.)(?:[_0-9]*))|(?:\\b\\.[0-9](?:_?[0-9])*))(?:[efE][+-]?[0-9](?:_?[0-9])*)?(?:im\\b|Inf(?:16|32|64)?\\b|NaN(?:16|32|64)?\\b|π\\b|pi\\b|ℯ\\b)?|\\b[0-9]+|\\bInf(?:16|32|64)?\\b|\\bNaN(?:16|32|64)?\\b|\\bπ\\b|\\bpi\\b|\\bℯ\\b))('*)","captures":{"1":{"name":"constant.numeric.julia"},"2":{"name":"keyword.operator.conjugate-number.julia"}}},{"name":"constant.global.julia","match":"\\bARGS\\b|\\bC_NULL\\b|\\bDEPOT_PATH\\b|\\bENDIAN_BOM\\b|\\bENV\\b|\\bLOAD_PATH\\b|\\bPROGRAM_FILE\\b|\\bstdin\\b|\\bstdout\\b|\\bstderr\\b|\\bVERSION\\b|\\bdevnull\\b"},{"name":"constant.language.julia","match":"\\btrue\\b|\\bfalse\\b|\\bnothing\\b|\\bmissing\\b"}]},"operator":{"patterns":[{"name":"keyword.operator.arrow.julia","match":"\\.?(?:\u003c--\u003e|-\u003e|--\u003e|\u003c--|←|→|↔|↚|↛|↞|↠|↢|↣|↦|↤|↮|⇎|⇍|⇏|⇐|⇒|⇔|⇴|⇶|⇷|⇸|⇹|⇺|⇻|⇼|⇽|⇾|⇿|⟵|⟶|⟷|⟹|⟺|⟻|⟼|⟽|⟾|⟿|⤀|⤁|⤂|⤃|⤄|⤅|⤆|⤇|⤌|⤍|⤎|⤏|⤐|⤑|⤔|⤕|⤖|⤗|⤘|⤝|⤞|⤟|⤠|⥄|⥅|⥆|⥇|⥈|⥊|⥋|⥎|⥐|⥒|⥓|⥖|⥗|⥚|⥛|⥞|⥟|⥢|⥤|⥦|⥧|⥨|⥩|⥪|⥫|⥬|⥭|⥰|⧴|⬱|⬰|⬲|⬳|⬴|⬵|⬶|⬷|⬸|⬹|⬺|⬻|⬼|⬽|⬾|⬿|⭀|⭁|⭂|⭃|⥷|⭄|⥺|⭇|⭈|⭉|⭊|⭋|⭌|←|→|⇜|⇝|↜|↝|↩|↪|↫|↬|↼|↽|⇀|⇁|⇄|⇆|⇇|⇉|⇋|⇌|⇚|⇛|⇠|⇢|↷|↶|↺|↻|=\u003e)"},{"name":"keyword.operator.update.julia","match":"(?::=|\\+=|-=|\\*=|//=|/=|\\.//=|\\./=|\\.\\*=|\\\\=|\\.\\\\=|\\^=|\\.\\^=|%=|\\.%=|÷=|\\.÷=|\\|=|\u0026=|\\.\u0026=|⊻=|\\.⊻=|\\$=|\u003c\u003c=|\u003e\u003e=|\u003e\u003e\u003e=|=(?!=))"},{"name":"keyword.operator.shift.julia","match":"(?:\u003c\u003c|\u003e\u003e\u003e|\u003e\u003e|\\.\u003e\u003e\u003e|\\.\u003e\u003e|\\.\u003c\u003c)"},{"match":"(?:\\s*(::|\u003e:|\u003c:)\\s*((?:(?:Union)?\\([^)]*\\)|[[:alpha:]_$∇][[:word:]⁺-ₜ!′\\.]*(?:(?:{(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})|(?:\".+?(?\u003c!\\\\)\"))?)))(?:\\.\\.\\.)?((?:\\.)?'*)","captures":{"1":{"name":"keyword.operator.relation.types.julia"},"2":{"name":"support.type.julia"},"3":{"name":"keyword.operator.transpose.julia"}}},{"name":"keyword.operator.relation.julia","match":"(\\.?((?\u003c!\u003c)\u003c=|(?\u003c!\u003e)\u003e=|\u003e|\u003c|≥|≤|===|==|≡|!=|≠|!==|≢|∈|∉|∋|∌|⊆|⊈|⊂|⊄|⊊|∝|∊|∍|∥|∦|∷|∺|∻|∽|∾|≁|≃|≂|≄|≅|≆|≇|≈|≉|≊|≋|≌|≍|≎|≐|≑|≒|≓|≖|≗|≘|≙|≚|≛|≜|≝|≞|≟|≣|≦|≧|≨|≩|≪|≫|≬|≭|≮|≯|≰|≱|≲|≳|≴|≵|≶|≷|≸|≹|≺|≻|≼|≽|≾|≿|⊀|⊁|⊃|⊅|⊇|⊉|⊋|⊏|⊐|⊑|⊒|⊜|⊩|⊬|⊮|⊰|⊱|⊲|⊳|⊴|⊵|⊶|⊷|⋍|⋐|⋑|⋕|⋖|⋗|⋘|⋙|⋚|⋛|⋜|⋝|⋞|⋟|⋠|⋡|⋢|⋣|⋤|⋥|⋦|⋧|⋨|⋩|⋪|⋫|⋬|⋭|⋲|⋳|⋴|⋵|⋶|⋷|⋸|⋹|⋺|⋻|⋼|⋽|⋾|⋿|⟈|⟉|⟒|⦷|⧀|⧁|⧡|⧣|⧤|⧥|⩦|⩧|⩪|⩫|⩬|⩭|⩮|⩯|⩰|⩱|⩲|⩳|⩵|⩶|⩷|⩸|⩹|⩺|⩻|⩼|⩽|⩾|⩿|⪀|⪁|⪂|⪃|⪄|⪅|⪆|⪇|⪈|⪉|⪊|⪋|⪌|⪍|⪎|⪏|⪐|⪑|⪒|⪓|⪔|⪕|⪖|⪗|⪘|⪙|⪚|⪛|⪜|⪝|⪞|⪟|⪠|⪡|⪢|⪣|⪤|⪥|⪦|⪧|⪨|⪩|⪪|⪫|⪬|⪭|⪮|⪯|⪰|⪱|⪲|⪳|⪴|⪵|⪶|⪷|⪸|⪹|⪺|⪻|⪼|⪽|⪾|⪿|⫀|⫁|⫂|⫃|⫄|⫅|⫆|⫇|⫈|⫉|⫊|⫋|⫌|⫍|⫎|⫏|⫐|⫑|⫒|⫓|⫔|⫕|⫖|⫗|⫘|⫙|⫷|⫸|⫹|⫺|⊢|⊣|⟂|⫪|⫫|\u003c:|\u003e:))"},{"name":"keyword.operator.ternary.julia","match":"(?\u003c=\\s)(?:\\?)(?=\\s)"},{"name":"keyword.operator.ternary.julia","match":"(?\u003c=\\s)(?:\\:)(?=\\s)"},{"name":"keyword.operator.boolean.julia","match":"(?:\\|\\||\u0026\u0026|(?\u003c!(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿]))!)"},{"name":"keyword.operator.range.julia","match":"(?\u003c=[[:word:]⁺-ₜ!′∇\\)\\]\\}])(?::)"},{"name":"keyword.operator.applies.julia","match":"(?:\\|\u003e)"},{"name":"keyword.operator.bitwise.julia","match":"(?:\\||\\.\\||\\\u0026|\\.\\\u0026|~|¬|\\.~|⊻|\\.⊻)"},{"name":"keyword.operator.arithmetic.julia","match":"\\.?(?:\\+\\+|\\-\\-|\\+|\\-|−|¦|\\||⊕|⊖|⊞|⊟|∪|∨|⊔|±|∓|∔|∸|≏|⊎|⊻|⊽|⋎|⋓|⟇|⧺|⧻|⨈|⨢|⨣|⨤|⨥|⨦|⨧|⨨|⨩|⨪|⨫|⨬|⨭|⨮|⨹|⨺|⩁|⩂|⩅|⩊|⩌|⩏|⩐|⩒|⩔|⩖|⩗|⩛|⩝|⩡|⩢|⩣|\\*|//?|⌿|÷|%|\u0026|·|·|⋅|∘|×|\\\\|∩|∧|⊗|⊘|⊙|⊚|⊛|⊠|⊡|⊓|∗|∙|∤|⅋|≀|⊼|⋄|⋆|⋇|⋉|⋊|⋋|⋌|⋏|⋒|⟑|⦸|⦼|⦾|⦿|⧶|⧷|⨇|⨰|⨱|⨲|⨳|⨴|⨵|⨶|⨷|⨸|⨻|⨼|⨽|⩀|⩃|⩄|⩋|⩍|⩎|⩑|⩓|⩕|⩘|⩚|⩜|⩞|⩟|⩠|⫛|⊍|▷|⨝|⟕|⟖|⟗|⨟|\\^|↑|↓|⇵|⟰|⟱|⤈|⤉|⤊|⤋|⤒|⤓|⥉|⥌|⥍|⥏|⥑|⥔|⥕|⥘|⥙|⥜|⥝|⥠|⥡|⥣|⥥|⥮|⥯|↑|↓|√|∛|∜|⋆|±|∓)"},{"name":"keyword.operator.compose.julia","match":"(?:∘)"},{"name":"keyword.operator.isa.julia","match":"(?:::|(?\u003c=\\s)isa(?=\\s))"},{"name":"keyword.operator.relation.in.julia","match":"(?:(?\u003c=\\s)in(?=\\s))"},{"name":"keyword.operator.dots.julia","match":"(?:\\.(?=(?:@|_|\\p{L}))|\\.\\.+|…|⁝|⋮|⋱|⋰|⋯)"},{"name":"keyword.operator.interpolation.julia","match":"(?:\\$)(?=.+)"},{"match":"({{id}})(('|(\\.'))*\\.?')","captures":{"2":{"name":"keyword.operator.transposed-variable.julia"}}},{"match":"(\\])((?:'|(?:\\.'))*\\.?')","captures":{"1":{"name":"bracket.end.julia"},"2":{"name":"keyword.operator.transposed-matrix.julia"}}},{"match":"(\\))((?:'|(?:\\.'))*\\.?')","captures":{"1":{"name":"bracket.end.julia"},"2":{"name":"keyword.operator.transposed-parens.julia"}}}]},"parentheses":{"patterns":[{"begin":"\\(","end":"(\\))((?:\\.)?'*)","patterns":[{"include":"#self_no_for_block"}],"beginCaptures":{"0":{"name":"meta.bracket.julia"}},"endCaptures":{"1":{"name":"meta.bracket.julia"},"2":{"name":"keyword.operator.transpose.julia"}}}]},"punctuation":{"patterns":[{"name":"punctuation.separator.comma.julia","match":","},{"name":"punctuation.separator.semicolon.julia","match":";"}]},"self_no_for_block":{"patterns":[{"include":"#operator"},{"include":"#array"},{"include":"#string"},{"include":"#parentheses"},{"include":"#bracket"},{"include":"#function_decl"},{"include":"#function_call"},{"include":"#keyword"},{"include":"#number"},{"include":"#comment"},{"include":"#type_decl"},{"include":"#symbol"},{"include":"#punctuation"}]},"string":{"patterns":[{"name":"string.docstring.julia","begin":"(?:(@doc)\\s((?:doc)?\"\"\")|(doc\"\"\"))","end":"(\"\"\") ?(-\u003e)?","patterns":[{"include":"#string_escaped_char"},{"include":"#string_dollar_sign_interpolate"}],"beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.julia"},"2":{"name":"keyword.operator.arrow.julia"}}},{"name":"embed.cxx.julia","contentName":"source.cpp","begin":"(i?cxx)(\"\"\")","end":"\"\"\"","patterns":[{"include":"source.c++"},{"include":"#string_dollar_sign_interpolate"}],"beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.julia"}}},{"name":"embed.python.julia","contentName":"source.python","begin":"(py)(\"\"\")","end":"([\\s\\w]*)(\"\"\")","patterns":[{"include":"source.python"},{"include":"#string_dollar_sign_interpolate"}],"beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"endCaptures":{"2":{"name":"punctuation.definition.string.end.julia"}}},{"name":"embed.js.julia","contentName":"source.js","begin":"(js)(\"\"\")","end":"\"\"\"","patterns":[{"include":"source.js"},{"include":"#string_dollar_sign_interpolate"}],"beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.julia"}}},{"name":"embed.R.julia","contentName":"source.r","begin":"(R)(\"\"\")","end":"\"\"\"","patterns":[{"include":"source.r"},{"include":"#string_dollar_sign_interpolate"}],"beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.julia"}}},{"name":"string.quoted.other.julia","begin":"(raw)(\"\"\")","end":"\"\"\"","patterns":[{"include":"#string_escaped_char"}],"beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.julia"}}},{"name":"string.quoted.other.julia","begin":"(raw)(\")","end":"\"","patterns":[{"include":"#string_escaped_char"}],"beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.julia"}}},{"name":"embed.sql.julia","contentName":"meta.embedded.inline.sql","begin":"(sql)(\"\"\")","end":"\"\"\"","patterns":[{"include":"source.sql"},{"include":"#string_dollar_sign_interpolate"}],"beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.julia"}}},{"name":"constant.other.symbol.julia","begin":"var\"\"\"","end":"\"\"\"","patterns":[{"include":"#string_escaped_char"}]},{"name":"constant.other.symbol.julia","begin":"var\"","end":"\"","patterns":[{"include":"#string_escaped_char"}]},{"name":"string.docstring.julia","begin":"^\\s?(doc)?(\"\"\")\\s?$","end":"(\"\"\")","patterns":[{"include":"#string_escaped_char"},{"include":"#string_dollar_sign_interpolate"}],"beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.julia"}}},{"name":"string.quoted.single.julia","begin":"'","end":"'(?!')","patterns":[{"include":"#string_escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.julia"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.julia"}}},{"name":"string.quoted.triple.double.julia","begin":"\"\"\"","end":"\"\"\"","patterns":[{"include":"#string_escaped_char"},{"include":"#string_dollar_sign_interpolate"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.multiline.begin.julia"}},"endCaptures":{"0":{"name":"punctuation.definition.string.multiline.end.julia"}}},{"name":"string.quoted.double.julia","begin":"\"(?!\"\")","end":"\"","patterns":[{"include":"#string_escaped_char"},{"include":"#string_dollar_sign_interpolate"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.julia"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.julia"}}},{"name":"string.regexp.julia","begin":"r\"\"\"","end":"(\"\"\")([imsx]{0,4})?","patterns":[{"include":"#string_escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.regexp.begin.julia"}},"endCaptures":{"1":{"name":"punctuation.definition.string.regexp.end.julia"},"2":{"name":"keyword.other.option-toggle.regexp.julia"}}},{"name":"string.regexp.julia","begin":"r\"","end":"(\")([imsx]{0,4})?","patterns":[{"include":"#string_escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.regexp.begin.julia"}},"endCaptures":{"1":{"name":"punctuation.definition.string.regexp.end.julia"},"2":{"name":"keyword.other.option-toggle.regexp.julia"}}},{"name":"string.quoted.other.julia","begin":"(?\u003c!\")({{id}})\"\"\"","end":"(\"\"\")({{id}})?","patterns":[{"include":"#string_escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.julia"},"1":{"name":"support.function.macro.julia"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.julia"},"2":{"name":"support.function.macro.julia"}}},{"name":"string.quoted.other.julia","begin":"(?\u003c!\")({{id}})\"","end":"(?\u003c![^\\\\]\\\\)(\")({{id}})?","patterns":[{"include":"#string_escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.julia"},"1":{"name":"support.function.macro.julia"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.julia"},"2":{"name":"support.function.macro.julia"}}},{"name":"string.interpolated.backtick.julia","begin":"(?\u003c!`)({{id}})?```","end":"(```)({{id}})?","patterns":[{"include":"#string_escaped_char"},{"include":"#string_dollar_sign_interpolate"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.julia"},"1":{"name":"support.function.macro.julia"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.julia"},"2":{"name":"support.function.macro.julia"}}},{"name":"string.interpolated.backtick.julia","begin":"(?\u003c!`)({{id}})?`","end":"(?\u003c![^\\\\]\\\\)(`)({{id}})?","patterns":[{"include":"#string_escaped_char"},{"include":"#string_dollar_sign_interpolate"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.julia"},"1":{"name":"support.function.macro.julia"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.julia"},"2":{"name":"support.function.macro.julia"}}}]},"string_dollar_sign_interpolate":{"patterns":[{"name":"variable.interpolation.julia","match":"\\$(?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿]|[^\\p{^Sc}$])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿]|[^\\p{^Sc}$])*"},{"name":"variable.interpolation.julia","begin":"\\$(\\()","end":"\\)","patterns":[{"include":"#self_no_for_block"}],"beginCaptures":{"1":{"name":"meta.bracket.julia"}},"endCaptures":{"0":{"name":"meta.bracket.julia"}}}]},"string_escaped_char":{"patterns":[{"name":"constant.character.escape.julia","match":"\\\\(\\\\|[0-3]\\d{,2}|[4-7]\\d?|x[a-fA-F0-9]{,2}|u[a-fA-F0-9]{,4}|U[a-fA-F0-9]{,8}|.)"}]},"symbol":{"patterns":[{"name":"constant.other.symbol.julia","match":"(?\u003c![[:word:]⁺-ₜ!′∇\\)\\]\\}]):(?:{{id}})(?!(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿]))(?![\"`])"}]},"type_decl":{"patterns":[{"name":"meta.type.julia","match":"(?\u003e!:_)(?:struct|mutable\\s+struct|abstract\\s+type|primitive\\s+type)\\s+({{id}})(\\s*(\u003c:)\\s*{{id}}(?:{.*})?)?","captures":{"1":{"name":"entity.name.type.julia"},"2":{"name":"entity.other.inherited-class.julia"},"3":{"name":"punctuation.separator.inheritance.julia"}}}]}}}
1
+ {"name":"Julia","scopeName":"source.julia","patterns":[{"include":"#operator"},{"include":"#array"},{"include":"#string"},{"include":"#parentheses"},{"include":"#bracket"},{"include":"#function_decl"},{"include":"#function_call"},{"include":"#for_block"},{"include":"#keyword"},{"include":"#number"},{"include":"#comment"},{"include":"#type_decl"},{"include":"#symbol"},{"include":"#punctuation"}],"repository":{"array":{"patterns":[{"name":"meta.array.julia","begin":"\\[","end":"(\\])((?:\\.)?'*)","patterns":[{"name":"constant.numeric.julia","match":"\\bbegin\\b"},{"name":"constant.numeric.julia","match":"\\bend\\b"},{"include":"#self_no_for_block"}],"beginCaptures":{"0":{"name":"meta.bracket.julia"}},"endCaptures":{"1":{"name":"meta.bracket.julia"},"2":{"name":"keyword.operator.transpose.julia"}}}]},"bracket":{"patterns":[{"begin":"\\{","end":"(\\})((?:\\.)?'*)","patterns":[{"include":"#self_no_for_block"}],"beginCaptures":{"0":{"name":"meta.bracket.julia"}},"endCaptures":{"1":{"name":"meta.bracket.julia"},"2":{"name":"keyword.operator.transpose.julia"}}}]},"comment":{"patterns":[{"include":"#comment_block"},{"name":"comment.line.number-sign.julia","begin":"#","end":"\\n","patterns":[{"include":"#comment_tags"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.julia"}}}]},"comment_block":{"patterns":[{"name":"comment.block.number-sign-equals.julia","begin":"#=","end":"=#","patterns":[{"include":"#comment_tags"},{"include":"#comment_block"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.julia"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.end.julia"}}}]},"comment_tags":{"patterns":[{"name":"keyword.other.comment-annotation.julia","match":"\\bTODO\\b"},{"name":"keyword.other.comment-annotation.julia","match":"\\bFIXME\\b"},{"name":"keyword.other.comment-annotation.julia","match":"\\bCHANGED\\b"},{"name":"keyword.other.comment-annotation.julia","match":"\\bXXX\\b"}]},"for_block":{"patterns":[{"begin":"\\b(for)\\b","end":"(?\u003c!,|\\s)(\\s*\\n)","patterns":[{"name":"keyword.other.julia","match":"\\bouter\\b"},{"include":"$self"}],"beginCaptures":{"0":{"name":"keyword.control.julia"}}}]},"function_call":{"patterns":[{"begin":"((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)({(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})?\\.?(\\()","end":"\\)(('|(\\.'))*\\.?')?","patterns":[{"include":"#self_no_for_block"}],"beginCaptures":{"1":{"name":"support.function.julia"},"2":{"name":"support.type.julia"},"3":{"name":"meta.bracket.julia"}},"endCaptures":{"0":{"name":"meta.bracket.julia"},"1":{"name":"keyword.operator.transposed-func.julia"}}}]},"function_decl":{"patterns":[{"match":"((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)({(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})?(?=\\([^#]*\\)(::[^\\s]+)?(\\s*\\bwhere\\b\\s+.+?)?\\s*?=(?![=\u003e]))","captures":{"1":{"name":"entity.name.function.julia"},"2":{"name":"support.type.julia"}}},{"match":"\\b(function|macro)(?:\\s+(?:(?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*(\\.))?((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)({(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})?|\\s*)(?=\\()","captures":{"1":{"name":"keyword.other.julia"},"2":{"name":"keyword.operator.dots.julia"},"3":{"name":"entity.name.function.julia"},"4":{"name":"support.type.julia"}}}]},"keyword":{"patterns":[{"name":"keyword.other.julia","match":"\\b(?\u003c![:_\\.])(?:function|mutable\\s+struct|struct|macro|quote|abstract\\s+type|primitive\\s+type|module|baremodule|where)\\b"},{"name":"keyword.control.julia","match":"\\b(?\u003c![:_])(?:if|else|elseif|for|while|begin|let|do|try|catch|finally|return|break|continue)\\b"},{"name":"keyword.control.end.julia","match":"\\b(?\u003c![:_])end\\b"},{"name":"keyword.storage.modifier.julia","match":"\\b(?\u003c![:_])(?:global|local|const)\\b"},{"name":"keyword.control.export.julia","match":"\\b(?\u003c![:_])(?:export)\\b"},{"name":"keyword.control.public.julia","match":"^(?:public)\\b"},{"name":"keyword.control.import.julia","match":"\\b(?\u003c![:_])(?:import)\\b"},{"name":"keyword.control.using.julia","match":"\\b(?\u003c![:_])(?:using)\\b"},{"name":"keyword.control.as.julia"},{"name":"support.function.macro.julia","match":"(@(\\.|(?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*))"}]},"number":{"patterns":[{"match":"((?\u003c!(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿]))(?:(?:\\b0(?:x|X)[0-9a-fA-F](?:_?[0-9a-fA-F])*)|(?:\\b0o[0-7](?:_?[0-7])*)|(?:\\b0b[0-1](?:_?[0-1])*)|(?:(?:\\b[0-9](?:_?[0-9])*\\.?(?!\\.)(?:[_0-9]*))|(?:\\b\\.[0-9](?:_?[0-9])*))(?:[efE][+-]?[0-9](?:_?[0-9])*)?(?:im\\b|Inf(?:16|32|64)?\\b|NaN(?:16|32|64)?\\b|π\\b|pi\\b|ℯ\\b)?|\\b[0-9]+|\\bInf(?:16|32|64)?\\b|\\bNaN(?:16|32|64)?\\b|\\bπ\\b|\\bpi\\b|\\bℯ\\b))('*)","captures":{"1":{"name":"constant.numeric.julia"},"2":{"name":"keyword.operator.conjugate-number.julia"}}},{"name":"constant.global.julia","match":"\\bARGS\\b|\\bC_NULL\\b|\\bDEPOT_PATH\\b|\\bENDIAN_BOM\\b|\\bENV\\b|\\bLOAD_PATH\\b|\\bPROGRAM_FILE\\b|\\bstdin\\b|\\bstdout\\b|\\bstderr\\b|\\bVERSION\\b|\\bdevnull\\b"},{"name":"constant.language.julia","match":"\\btrue\\b|\\bfalse\\b|\\bnothing\\b|\\bmissing\\b"}]},"operator":{"patterns":[{"name":"keyword.operator.arrow.julia","match":"\\.?(?:\u003c--\u003e|-\u003e|--\u003e|\u003c--|←|→|↔|↚|↛|↞|↠|↢|↣|↦|↤|↮|⇎|⇍|⇏|⇐|⇒|⇔|⇴|⇶|⇷|⇸|⇹|⇺|⇻|⇼|⇽|⇾|⇿|⟵|⟶|⟷|⟹|⟺|⟻|⟼|⟽|⟾|⟿|⤀|⤁|⤂|⤃|⤄|⤅|⤆|⤇|⤌|⤍|⤎|⤏|⤐|⤑|⤔|⤕|⤖|⤗|⤘|⤝|⤞|⤟|⤠|⥄|⥅|⥆|⥇|⥈|⥊|⥋|⥎|⥐|⥒|⥓|⥖|⥗|⥚|⥛|⥞|⥟|⥢|⥤|⥦|⥧|⥨|⥩|⥪|⥫|⥬|⥭|⥰|⧴|⬱|⬰|⬲|⬳|⬴|⬵|⬶|⬷|⬸|⬹|⬺|⬻|⬼|⬽|⬾|⬿|⭀|⭁|⭂|⭃|⥷|⭄|⥺|⭇|⭈|⭉|⭊|⭋|⭌|←|→|⇜|⇝|↜|↝|↩|↪|↫|↬|↼|↽|⇀|⇁|⇄|⇆|⇇|⇉|⇋|⇌|⇚|⇛|⇠|⇢|↷|↶|↺|↻|=\u003e)"},{"name":"keyword.operator.update.julia","match":"(?::=|\\+=|-=|\\*=|//=|/=|\\.//=|\\./=|\\.\\*=|\\\\=|\\.\\\\=|\\^=|\\.\\^=|%=|\\.%=|÷=|\\.÷=|\\|=|\u0026=|\\.\u0026=|⊻=|\\.⊻=|\\$=|\u003c\u003c=|\u003e\u003e=|\u003e\u003e\u003e=|=(?!=))"},{"name":"keyword.operator.shift.julia","match":"(?:\u003c\u003c|\u003e\u003e\u003e|\u003e\u003e|\\.\u003e\u003e\u003e|\\.\u003e\u003e|\\.\u003c\u003c)"},{"match":"(?:\\s*(::|\u003e:|\u003c:)\\s*((?:(?:Union)?\\([^)]*\\)|[[:alpha:]_$∇][[:word:]⁺-ₜ!′\\.]*(?:(?:{(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})|(?:\".+?(?\u003c!\\\\)\"))?)))(?:\\.\\.\\.)?((?:\\.)?'*)","captures":{"1":{"name":"keyword.operator.relation.types.julia"},"2":{"name":"support.type.julia"},"3":{"name":"keyword.operator.transpose.julia"}}},{"name":"keyword.operator.relation.julia","match":"(\\.?((?\u003c!\u003c)\u003c=|(?\u003c!\u003e)\u003e=|\u003e|\u003c|≥|≤|===|==|≡|!=|≠|!==|≢|∈|∉|∋|∌|⊆|⊈|⊂|⊄|⊊|∝|∊|∍|∥|∦|∷|∺|∻|∽|∾|≁|≃|≂|≄|≅|≆|≇|≈|≉|≊|≋|≌|≍|≎|≐|≑|≒|≓|≖|≗|≘|≙|≚|≛|≜|≝|≞|≟|≣|≦|≧|≨|≩|≪|≫|≬|≭|≮|≯|≰|≱|≲|≳|≴|≵|≶|≷|≸|≹|≺|≻|≼|≽|≾|≿|⊀|⊁|⊃|⊅|⊇|⊉|⊋|⊏|⊐|⊑|⊒|⊜|⊩|⊬|⊮|⊰|⊱|⊲|⊳|⊴|⊵|⊶|⊷|⋍|⋐|⋑|⋕|⋖|⋗|⋘|⋙|⋚|⋛|⋜|⋝|⋞|⋟|⋠|⋡|⋢|⋣|⋤|⋥|⋦|⋧|⋨|⋩|⋪|⋫|⋬|⋭|⋲|⋳|⋴|⋵|⋶|⋷|⋸|⋹|⋺|⋻|⋼|⋽|⋾|⋿|⟈|⟉|⟒|⦷|⧀|⧁|⧡|⧣|⧤|⧥|⩦|⩧|⩪|⩫|⩬|⩭|⩮|⩯|⩰|⩱|⩲|⩳|⩵|⩶|⩷|⩸|⩹|⩺|⩻|⩼|⩽|⩾|⩿|⪀|⪁|⪂|⪃|⪄|⪅|⪆|⪇|⪈|⪉|⪊|⪋|⪌|⪍|⪎|⪏|⪐|⪑|⪒|⪓|⪔|⪕|⪖|⪗|⪘|⪙|⪚|⪛|⪜|⪝|⪞|⪟|⪠|⪡|⪢|⪣|⪤|⪥|⪦|⪧|⪨|⪩|⪪|⪫|⪬|⪭|⪮|⪯|⪰|⪱|⪲|⪳|⪴|⪵|⪶|⪷|⪸|⪹|⪺|⪻|⪼|⪽|⪾|⪿|⫀|⫁|⫂|⫃|⫄|⫅|⫆|⫇|⫈|⫉|⫊|⫋|⫌|⫍|⫎|⫏|⫐|⫑|⫒|⫓|⫔|⫕|⫖|⫗|⫘|⫙|⫷|⫸|⫹|⫺|⊢|⊣|⟂|⫪|⫫|\u003c:|\u003e:))"},{"name":"keyword.operator.ternary.julia","match":"(?\u003c=\\s)(?:\\?)(?=\\s)"},{"name":"keyword.operator.ternary.julia","match":"(?\u003c=\\s)(?:\\:)(?=\\s)"},{"name":"keyword.operator.boolean.julia","match":"(?:\\|\\||\u0026\u0026|(?\u003c!(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿]))!)"},{"name":"keyword.operator.range.julia","match":"(?\u003c=[[:word:]⁺-ₜ!′∇\\)\\]\\}])(?::)"},{"name":"keyword.operator.applies.julia","match":"(?:\\|\u003e)"},{"name":"keyword.operator.bitwise.julia","match":"(?:\\||\\.\\||\\\u0026|\\.\\\u0026|~|¬|\\.~|⊻|\\.⊻)"},{"name":"keyword.operator.arithmetic.julia","match":"\\.?(?:\\+\\+|\\-\\-|\\+|\\-|−|¦|\\||⊕|⊖|⊞|⊟|∪|∨|⊔|±|∓|∔|∸|≏|⊎|⊻|⊽|⋎|⋓|⟇|⧺|⧻|⨈|⨢|⨣|⨤|⨥|⨦|⨧|⨨|⨩|⨪|⨫|⨬|⨭|⨮|⨹|⨺|⩁|⩂|⩅|⩊|⩌|⩏|⩐|⩒|⩔|⩖|⩗|⩛|⩝|⩡|⩢|⩣|\\*|//?|⌿|÷|%|\u0026|·|·|⋅|∘|×|\\\\|∩|∧|⊗|⊘|⊙|⊚|⊛|⊠|⊡|⊓|∗|∙|∤|⅋|≀|⊼|⋄|⋆|⋇|⋉|⋊|⋋|⋌|⋏|⋒|⟑|⦸|⦼|⦾|⦿|⧶|⧷|⨇|⨰|⨱|⨲|⨳|⨴|⨵|⨶|⨷|⨸|⨻|⨼|⨽|⩀|⩃|⩄|⩋|⩍|⩎|⩑|⩓|⩕|⩘|⩚|⩜|⩞|⩟|⩠|⫛|⊍|▷|⨝|⟕|⟖|⟗|⨟|\\^|↑|↓|⇵|⟰|⟱|⤈|⤉|⤊|⤋|⤒|⤓|⥉|⥌|⥍|⥏|⥑|⥔|⥕|⥘|⥙|⥜|⥝|⥠|⥡|⥣|⥥|⥮|⥯|↑|↓|√|∛|∜|⋆|±|∓)"},{"name":"keyword.operator.compose.julia","match":"(?:∘)"},{"name":"keyword.operator.isa.julia","match":"(?:::|(?\u003c=\\s)isa(?=\\s))"},{"name":"keyword.operator.relation.in.julia","match":"(?:(?\u003c=\\s)in(?=\\s))"},{"name":"keyword.operator.dots.julia","match":"(?:\\.(?=(?:@|_|\\p{L}))|\\.\\.+|…|⁝|⋮|⋱|⋰|⋯)"},{"name":"keyword.operator.interpolation.julia","match":"(?:\\$)(?=.+)"},{"match":"((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)(('|(\\.'))*\\.?')","captures":{"2":{"name":"keyword.operator.transposed-variable.julia"}}},{"match":"(\\])((?:'|(?:\\.'))*\\.?')","captures":{"1":{"name":"bracket.end.julia"},"2":{"name":"keyword.operator.transposed-matrix.julia"}}},{"match":"(\\))((?:'|(?:\\.'))*\\.?')","captures":{"1":{"name":"bracket.end.julia"},"2":{"name":"keyword.operator.transposed-parens.julia"}}}]},"parentheses":{"patterns":[{"begin":"\\(","end":"(\\))((?:\\.)?'*)","patterns":[{"include":"#self_no_for_block"}],"beginCaptures":{"0":{"name":"meta.bracket.julia"}},"endCaptures":{"1":{"name":"meta.bracket.julia"},"2":{"name":"keyword.operator.transpose.julia"}}}]},"punctuation":{"patterns":[{"name":"punctuation.separator.comma.julia","match":","},{"name":"punctuation.separator.semicolon.julia","match":";"}]},"self_no_for_block":{"patterns":[{"include":"#operator"},{"include":"#array"},{"include":"#string"},{"include":"#parentheses"},{"include":"#bracket"},{"include":"#function_decl"},{"include":"#function_call"},{"include":"#keyword"},{"include":"#number"},{"include":"#comment"},{"include":"#type_decl"},{"include":"#symbol"},{"include":"#punctuation"}]},"string":{"patterns":[{"name":"string.docstring.julia","begin":"(?:(@doc)\\s((?:doc)?\"\"\")|(doc\"\"\"))","end":"(\"\"\") ?(-\u003e)?","patterns":[{"include":"#string_escaped_char"},{"include":"#string_dollar_sign_interpolate"}],"beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.julia"},"2":{"name":"keyword.operator.arrow.julia"}}},{"name":"embed.cxx.julia","contentName":"source.cpp","begin":"(i?cxx)(\"\"\")","end":"\"\"\"","patterns":[{"include":"source.c++"},{"include":"#string_dollar_sign_interpolate"}],"beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.julia"}}},{"name":"embed.python.julia","contentName":"source.python","begin":"(py)(\"\"\")","end":"([\\s\\w]*)(\"\"\")","patterns":[{"include":"source.python"},{"include":"#string_dollar_sign_interpolate"}],"beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"endCaptures":{"2":{"name":"punctuation.definition.string.end.julia"}}},{"name":"embed.js.julia","contentName":"source.js","begin":"(js)(\"\"\")","end":"\"\"\"","patterns":[{"include":"source.js"},{"include":"#string_dollar_sign_interpolate"}],"beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.julia"}}},{"name":"embed.R.julia","contentName":"source.r","begin":"(R)(\"\"\")","end":"\"\"\"","patterns":[{"include":"source.r"},{"include":"#string_dollar_sign_interpolate"}],"beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.julia"}}},{"name":"string.quoted.other.julia","begin":"(raw)(\"\"\")","end":"\"\"\"","patterns":[{"include":"#string_escaped_char"}],"beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.julia"}}},{"name":"string.quoted.other.julia","begin":"(raw)(\")","end":"\"","patterns":[{"include":"#string_escaped_char"}],"beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.julia"}}},{"name":"embed.sql.julia","contentName":"meta.embedded.inline.sql","begin":"(sql)(\"\"\")","end":"\"\"\"","patterns":[{"include":"source.sql"},{"include":"#string_dollar_sign_interpolate"}],"beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.julia"}}},{"name":"constant.other.symbol.julia","begin":"var\"\"\"","end":"\"\"\"","patterns":[{"include":"#string_escaped_char"}]},{"name":"constant.other.symbol.julia","begin":"var\"","end":"\"","patterns":[{"include":"#string_escaped_char"}]},{"name":"string.docstring.julia","begin":"^\\s?(doc)?(\"\"\")\\s?$","end":"(\"\"\")","patterns":[{"include":"#string_escaped_char"},{"include":"#string_dollar_sign_interpolate"}],"beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.julia"}}},{"name":"string.quoted.single.julia","begin":"'","end":"'(?!')","patterns":[{"include":"#string_escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.julia"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.julia"}}},{"name":"string.quoted.triple.double.julia","begin":"\"\"\"","end":"\"\"\"","patterns":[{"include":"#string_escaped_char"},{"include":"#string_dollar_sign_interpolate"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.multiline.begin.julia"}},"endCaptures":{"0":{"name":"punctuation.definition.string.multiline.end.julia"}}},{"name":"string.quoted.double.julia","begin":"\"(?!\"\")","end":"\"","patterns":[{"include":"#string_escaped_char"},{"include":"#string_dollar_sign_interpolate"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.julia"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.julia"}}},{"name":"string.regexp.julia","begin":"r\"\"\"","end":"(\"\"\")([imsx]{0,4})?","patterns":[{"include":"#string_escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.regexp.begin.julia"}},"endCaptures":{"1":{"name":"punctuation.definition.string.regexp.end.julia"},"2":{"name":"keyword.other.option-toggle.regexp.julia"}}},{"name":"string.regexp.julia","begin":"r\"","end":"(\")([imsx]{0,4})?","patterns":[{"include":"#string_escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.regexp.begin.julia"}},"endCaptures":{"1":{"name":"punctuation.definition.string.regexp.end.julia"},"2":{"name":"keyword.other.option-toggle.regexp.julia"}}},{"name":"string.quoted.other.julia","begin":"(?\u003c!\")((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)\"\"\"","end":"(\"\"\")((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)?","patterns":[{"include":"#string_escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.julia"},"1":{"name":"support.function.macro.julia"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.julia"},"2":{"name":"support.function.macro.julia"}}},{"name":"string.quoted.other.julia","begin":"(?\u003c!\")((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)\"","end":"(?\u003c![^\\\\]\\\\)(\")((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)?","patterns":[{"include":"#string_escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.julia"},"1":{"name":"support.function.macro.julia"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.julia"},"2":{"name":"support.function.macro.julia"}}},{"name":"string.interpolated.backtick.julia","begin":"(?\u003c!`)((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)?```","end":"(```)((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)?","patterns":[{"include":"#string_escaped_char"},{"include":"#string_dollar_sign_interpolate"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.julia"},"1":{"name":"support.function.macro.julia"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.julia"},"2":{"name":"support.function.macro.julia"}}},{"name":"string.interpolated.backtick.julia","begin":"(?\u003c!`)((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)?`","end":"(?\u003c![^\\\\]\\\\)(`)((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)?","patterns":[{"include":"#string_escaped_char"},{"include":"#string_dollar_sign_interpolate"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.julia"},"1":{"name":"support.function.macro.julia"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.julia"},"2":{"name":"support.function.macro.julia"}}}]},"string_dollar_sign_interpolate":{"patterns":[{"name":"variable.interpolation.julia","match":"\\$(?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿]|[^\\p{^Sc}$])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿]|[^\\p{^Sc}$])*"},{"name":"variable.interpolation.julia","begin":"\\$(\\()","end":"\\)","patterns":[{"include":"#self_no_for_block"}],"beginCaptures":{"1":{"name":"meta.bracket.julia"}},"endCaptures":{"0":{"name":"meta.bracket.julia"}}}]},"string_escaped_char":{"patterns":[{"name":"constant.character.escape.julia","match":"\\\\(\\\\|[0-3]\\d{,2}|[4-7]\\d?|x[a-fA-F0-9]{,2}|u[a-fA-F0-9]{,4}|U[a-fA-F0-9]{,8}|.)"}]},"symbol":{"patterns":[{"name":"constant.other.symbol.julia","match":"(?\u003c![[:word:]⁺-ₜ!′∇\\)\\]\\}]):(?:(?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)(?!(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿]))(?![\"`])"}]},"type_decl":{"patterns":[{"name":"meta.type.julia","match":"(?\u003e!:_)(?:struct|mutable\\s+struct|abstract\\s+type|primitive\\s+type)\\s+((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)(\\s*(\u003c:)\\s*(?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}\u0001-¡]|[^\\P{Mc}\u0001-¡]|[^\\P{Nd}\u0001-¡]|[^\\P{Pc}\u0001-¡]|[^\\P{Sk}\u0001-¡]|[^\\P{Me}\u0001-¡]|[^\\P{No}\u0001-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*(?:{.*})?)?","captures":{"1":{"name":"entity.name.type.julia"},"2":{"name":"entity.other.inherited-class.julia"},"3":{"name":"punctuation.separator.inheritance.julia"}}}]}}}
@@ -1 +1 @@
1
- {"name":"Just","scopeName":"source.just","patterns":[{"include":"#interpolate"},{"include":"#comments"},{"include":"#scripts"},{"include":"#strings"},{"include":"#assignments"},{"include":"#recipeDefinition"},{"include":"#keywords"}],"repository":{"assignments":{"patterns":[{"match":"^(export[\\s]?)?([a-zA-Z_][a-zA-Z0-9_-]*)=","captures":{"1":{"name":"storage.type.just"},"2":{"name":"variable.name.just"}}}]},"comments":{"patterns":[{"name":"comment.line.just","match":"^#[^!].*"}]},"interpolate":{"patterns":[{"name":"string.interpolated.just","begin":"\\{\\{","end":"\\}\\}"}]},"keywords":{"patterns":[{"name":"keyword.control.just","match":"\\b(arch|os|os_family|env_var|env_var_or_default)\\b"}]},"recipeDefinition":{"patterns":[{"match":"^(@)?([a-zA-Z_][a-zA-Z0-9_-]*)([a-zA-Z0-9=\\s_-`'\"]*):([\\sa-zA-Z0-9_-]*).*$","captures":{"1":{"name":"entity.name.function.just"},"2":{"name":"entity.name.function.just"},"3":{"patterns":[{"name":"constant.character.escape.just","match":"[\\s]*[a-zA-Z0-9-_]*(=?)(.*)","captures":{"0":{"name":"variable.name.just"},"1":{"name":"constant.other.just"},"2":{"name":"variable.parameter.just"}}}]},"4":{"name":"support.type.property-name.just"}}}]},"scripts":{"patterns":[{"name":"support.type.property-name.just","begin":"\\s#\\!","end":"$"}]},"strings":{"patterns":[{"name":"string.quoted.triple.just","begin":"`","end":"`"},{"name":"string.quoted.double.just","begin":"\"","end":"\""},{"name":"string.quoted.single.just","begin":"'","end":"'"}]}}}
1
+ {"name":"Just","scopeName":"source.just","patterns":[{"include":"#comments"},{"include":"#import"},{"include":"#module"},{"include":"#alias"},{"include":"#assignment"},{"include":"#builtins"},{"include":"#keywords"},{"include":"#expression-operators"},{"include":"#backtick"},{"include":"#strings"},{"include":"#parenthesis"},{"include":"#recipes"},{"include":"#recipe-operators"},{"include":"#embedded-languages"},{"include":"#escaping"}],"repository":{"alias":{"match":"(?x)\n ^\n (alias) \\s+ \n ([a-zA-Z_][a-zA-Z0-9_-]*) \\s* \n (:=) \\s* \n ([a-zA-Z_][a-zA-Z0-9_-]*)\n","captures":{"1":{"name":"keyword.other.reserved.just"},"2":{"name":"variable.name.alias.just"},"3":{"name":"keyword.operator.assignment.just"},"4":{"name":"variable.other.just"}}},"assignment":{"patterns":[{"include":"#variable-assignment"},{"include":"#setting-assignment"}]},"backtick":{"patterns":[{"contentName":"source.shell","begin":"(```)","end":"(```)","patterns":[{"include":"source.shell"}],"beginCaptures":{"1":{"name":"string.interpolated.just"}},"endCaptures":{"1":{"name":"string.interpolated.just"}}},{"match":"(`)([^`]*)(`)","captures":{"1":{"name":"string.interpolated.just"},"2":{"name":"source.shell","patterns":[{"include":"source.shell"}]},"3":{"name":"string.interpolated.just"}}}]},"boolean":{"patterns":[{"name":"constant.language.boolean.just","match":"\\b(true|false)\\b"}]},"builtin-functions":{"patterns":[{"name":"support.function.builtin.just","match":"(?x) \\b(\n arch|num_cpus|os|os_family|shell|env_var|env_var_or_default|env|\n is_dependency|invocation_directory|invocation_dir|invocation_directory_native|\n invocation_dir_native|justfile|justfile_directory|justfile_dir|just_executable|\n just_pid|source_file|source_directory|source_dir|module_file|module_directory|\n module_dir|append|prepend|encode_uri_component|quote|replace|replace_regex|\n trim|trim_end|trim_end_match|trim_end_matches|trim_start|trim_start_match|\n trim_start_matches|capitalize|kebabcase|lowercamelcase|lowercase|\n shoutykebabcase|shoutysnakecase|snakecase|titlecase|uppercamelcase|\n uppercase|absolute_path|blake3|blake3_file|canonicalize|extension|\n file_name|file_stem|parent_directory|parent_dir|without_extension|clean|join|\n path_exists|error|assert|sha256|sha256_file|uuid|choose|datetime|\n datetime_utc|semver_matches|cache_directory|cache_dir|config_directory|config_dir|\n config_local_directory|config_local_dir|data_directory|data_dir|data_local_directory|\n data_local_dir|executable_directory|executable_dir|home_directory|home_dir\n)\\b\n"}]},"builtins":{"patterns":[{"name":"constant.language.hex.just","match":"\\b(HEX|HEXLOWER|HEXUPPER)\\b"},{"include":"#builtin-functions"},{"include":"#literal"}]},"comments":{"patterns":[{"name":"comment.line.number-sign.just","match":"#([^!].*)$"}]},"control-keywords":{"patterns":[{"name":"keyword.control.conditional.just","match":"\\b(if|else)\\b"}]},"embedded-languages":{"patterns":[{"contentName":"source.js","begin":"^\\s+(#!/usr/bin/env\\s+node.*)$","end":"^$","patterns":[{"include":"source.js"}],"beginCaptures":{"1":{"name":"comment.line.number-sign.shebang.just"}}},{"contentName":"source.perl","begin":"^\\s+(#!/usr/bin/env\\s+perl.*)$","end":"^$","patterns":[{"include":"source.perl"}],"beginCaptures":{"1":{"name":"comment.line.number-sign.shebang.just"}}},{"contentName":"source.python","begin":"^\\s+(#!/usr/bin/env\\s+python.*)$","end":"^$","patterns":[{"include":"source.python"}],"beginCaptures":{"1":{"name":"comment.line.number-sign.shebang.just"}}},{"contentName":"source.ruby","begin":"^\\s+(#!/usr/bin/env\\s+ruby.*)$","end":"^$","patterns":[{"include":"source.ruby"}],"beginCaptures":{"1":{"name":"comment.line.number-sign.shebang.just"}}},{"contentName":"source.shell","begin":"^\\s+(#!/usr/bin/env\\s+(?:sh|bash|zsh|fish).*)$","end":"^$","patterns":[{"include":"source.shell"}],"beginCaptures":{"1":{"name":"comment.line.number-sign.shebang.just"}}}]},"escaping":{"patterns":[{"name":"string.interpolated.escaping.just","match":"(?x)\n (?\u003c!\\{)\n (\\{\\{)\n \\{? (?!\\{)\n (.*?)\n (\\}\\})\n","captures":{"1":{"name":"string.interpolated.escape.just"},"2":{"patterns":[{"include":"#expression"}]},"3":{"name":"string.interpolated.escape.just"}}}]},"expression":{"patterns":[{"include":"#backtick"},{"include":"#builtins"},{"include":"#control-keywords"},{"include":"#expression-operators"},{"include":"#parenthesis"},{"include":"#strings"}]},"expression-operators":{"patterns":[{"name":"keyword.operator.path-join.just","match":"\\/"},{"name":"keyword.operator.concat.just","match":"\\+"},{"name":"keyword.operator.and.just","match":"\u0026\u0026"},{"name":"keyword.operator.equality.just","match":"(\\=\\=|\\=\\~|\\!\\=)"}]},"import":{"begin":"(?x)\n ^\n (import)\n (\\?)? \\s+\n","end":"$","patterns":[{"include":"#strings"}],"beginCaptures":{"1":{"name":"keyword.other.reserved.just"},"2":{"name":"punctuation.optional.just"}}},"keywords":{"patterns":[{"include":"#reserved-keywords"},{"include":"#control-keywords"}]},"literal":{"patterns":[{"include":"#boolean"},{"include":"#number"}]},"module":{"begin":"(?x)\n ^\n (mod)\n (\\?)? \\s+\n ([a-zA-Z_][a-zA-Z0-9_-]*)\n (?=[$\\s])\n","end":"$","patterns":[{"include":"#strings"}],"beginCaptures":{"1":{"name":"keyword.other.reserved.just"},"2":{"name":"punctuation.optional.just"},"3":{"name":"variable.name.module.just"}}},"number":{"patterns":[{"name":"constant.numeric.just","match":"(?x)\n (?\u003c! [a-zA-Z_\\-])(?:\n \\. \\d+\n |\n \\d+ \\. \\d+\n |\n \\d+ \\.\n |\n [1-9] \\d*\n )\n"},{"name":"invalid.illegal.name.just","match":"\\b[0-9]+[a-zA-Z_\\-]+\\b"}]},"parenthesis":{"begin":"\\(","end":"\\)","patterns":[{"include":"#expression"},{"include":"#parenthesis"}]},"recipe-attributes":{"patterns":[{"match":"(?x)\n ^\n \\[ \n ([a-zA-z\\-]+) \\s*\n (?: , ( \\s* [a-zA-z\\-]+ \\s* ) )*\n ] \\s*\n $\n","captures":{"1":{"name":"support.function.system.just"},"2":{"name":"support.function.system.just"}}},{"match":"(?x)\n ^\n \\[\n ([a-zA-z\\-]+)\n (?: \n (?: (:) (.*?) ) | (\\( (.*?) \\))\n )?\n ] \\s*\n $\n","captures":{"1":{"name":"support.function.system.just"},"2":{"name":"keyword.operator.attribute.end.just"},"3":{"patterns":[{"include":"#strings"}]},"4":{"patterns":[{"include":"#strings"}]}}}]},"recipe-dependencies":{"match":"(?x)\n (?:\n ([a-zA-Z_][a-zA-Z0-9_\\-]*)\n | ( \\( \n (?: [^\\(\\)]+ | \\( [^\\)]* \\))* \n \\) )\n | (\u0026\u0026)\n )\n","captures":{"1":{"name":"entity.name.function.just"},"2":{"patterns":[{"match":"(?x)\n \\( \n (?: \n ([a-zA-Z_][a-zA-Z0-9_\\-]*)\n (.*)\n )\n \\)\n","captures":{"1":{"name":"entity.name.function.just"},"2":{"patterns":[{"include":"#expression"}]}}}]},"3":{"name":"keyword.operator.and.just"}}},"recipe-operators":{"patterns":[{"match":"^\\s+(@)","captures":{"1":{"name":"keyword.operator.quiet.just"}}},{"match":"^\\s+(\\-)","captures":{"1":{"name":"keyword.operator.error-suppression.just"}}}]},"recipe-params":{"match":"(?x)\n (?: \n (\\+|\\*|\\$)?\n ([a-zA-Z_][a-zA-Z_0-9]*\n )\n (?:\n (=)\n (?: \n [a-zA-Z_][a-zA-Z_0-9]* \n | (\\\".*?\\\" | '.*?') \n | (`.*?`) \n | ( \\( \n (?: \n [^\\(\\)]+ \n | \\( [^)]* \\)\n )* \\) ) \n ) \n )?\n )\n","captures":{"1":{"name":"keyword.other.recipe.variadic.just"},"2":{"name":"variable.parameter.recipe.just"},"3":{"name":"keyword.operator.default.just"},"4":{"patterns":[{"include":"#strings"}]},"5":{"patterns":[{"include":"#backtick"}]},"6":{"patterns":[{"include":"#parenthesis"}]}}},"recipes":{"patterns":[{"match":"(?x)\n ^\n (@_|_@|@|_)?\n ([a-zA-Z][a-zA-Z0-9_\\-]*)\n (?: \\s+ (.*?) )?\n \\s* (:)\n (.*)\n","captures":{"1":{"name":"keyword.other.recipe.prefix.just"},"2":{"name":"entity.name.function.just"},"3":{"patterns":[{"include":"#recipe-params"}]},"4":{"name":"keyword.operator.recipe.end.just"},"5":{"patterns":[{"include":"#recipe-dependencies"}]}}},{"include":"#recipe-operators"},{"include":"#recipe-attributes"},{"include":"#embedded-languages"}]},"reserved-keywords":{"patterns":[{"match":"^(alias|export|import|mod|set)\\s+","captures":{"1":{"name":"keyword.other.reserved.just"}}}]},"setting-assignment":{"patterns":[{"begin":"(?x) \n ^\n (set) \\s+\n ([a-zA-Z_][a-zA-Z0-9_-]*) \\s*\n (:=)?\n","end":"$","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.other.reserved.just"},"2":{"name":"variable.other.just"},"3":{"name":"keyword.operator.assignment.just"}}}]},"strings":{"patterns":[{"name":"string.quoted.double.indented.just","match":"([\\\"']{1,3})[\\{]+(\\1)"},{"name":"string.quoted.double.indented.just","begin":"(x)?(\"\"\")","end":"\"\"\"","patterns":[{"name":"constant.character.escape.just","match":"\\\\."},{"include":"#escaping"}],"beginCaptures":{"1":{"name":"constant.character.expanded.just"},"2":{"name":"string.quoted.double.indented.just"}}},{"name":"string.quoted.double.just","begin":"(x)?(\")","end":"\"","patterns":[{"name":"constant.character.escape.just","match":"\\\\."},{"include":"#escaping"}],"beginCaptures":{"1":{"name":"constant.character.expanded.just"},"2":{"name":"string.quoted.double.just"}}},{"name":"string.quoted.single.indented.just","begin":"(x)?(''')","end":"'''","patterns":[{"include":"#escaping"}],"beginCaptures":{"1":{"name":"constant.character.expanded.just"},"2":{"name":"string.quoted.single.indented.just"}}},{"name":"string.quoted.single.just","begin":"(x)?(')","end":"'","patterns":[{"include":"#escaping"}],"beginCaptures":{"1":{"name":"constant.character.expanded.just"},"2":{"name":"string.quoted.single.just"}}}]},"variable-assignment":{"patterns":[{"begin":"(?x) \n ^\n (?: (export) \\s+)?\n ([a-zA-Z_][a-zA-Z0-9_-]*) \\s*\n (:=)\n","end":"$","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.other.reserved.just"},"2":{"name":"variable.other.just"},"3":{"name":"keyword.operator.assignment.just"}}}]}}}
@@ -0,0 +1 @@
1
+ {"name":"LiveCode Builder","scopeName":"source.lcb","patterns":[{"include":"#comment-line"},{"include":"#comment-block"},{"include":"#string"},{"include":"#if"},{"include":"#repeat-block"},{"name":"keyword.control.repeat.lcb","match":"\\s*(next|exit|end)\\s*repeat\\b"},{"include":"#end-block"},{"include":"#define-module"},{"include":"#define-constant"},{"include":"#define-metadata"},{"include":"#define-property"},{"include":"#define-variable"},{"include":"#define-handler"},{"include":"#handler-return"},{"include":"#brackets"},{"match":"\\b(true|false|nothing|undefined|any|the\\s*empty\\s*(array|list|string|data))\\b","captures":{"1":{"name":"constant.language.core.lcb"}}},{"match":"\\b([tpsmxr][A-Z]\\w*)\\b","captures":{"1":{"name":"variable.lcb"}}},{"match":"\\b(k[A-Z]\\w*)\\b","captures":{"1":{"name":"variable.other.constant.lcb"}}},{"match":"\\b(returns)\\b","captures":{"1":{"name":"storage.modifier.returns.lcb"}}},{"match":"\\b(Number|Integer|Real|Boolean|String|List|Array)\\b","captures":{"1":{"name":"support.type.core.lcb"}}}],"repository":{"comment-block":{"name":"comment.block.lcb","begin":"/\\*","end":"\\*/","captures":{"0":{"name":"punctuation.definition.comment.lcb"}}},"comment-line":{"name":"comment.line.lcb","begin":"--|//","end":"\\n","beginCaptures":{"0":{"name":"punctuation.definition.comment.double-dash.lcb"}}},"define-constant":{"begin":"^\\s*constant\\b","end":"\\bis\\b","patterns":[{"name":"variable.other.constant.lcb","match":"\\b\\w+\\b"}],"captures":{"0":{"name":"storage.type.constant.lcb"}}},"define-handler":{"match":"^\\s*((?:public|private)\\s+)?(handler)(?:\\s+(\\w+))\\b","captures":{"1":{"name":"storage.modifier.access.lcb"},"2":{"name":"storage.type.function.lcb"},"3":{"name":"entity.name.function.lcb"}}},"define-metadata":{"begin":"^\\s*metadata\\b","end":"\\bis\\b","patterns":[{"name":"entity.name.metadata.lcb","match":"\\b\\w+\\b"}],"captures":{"0":{"name":"storage.type.metadata.lcb"}}},"define-module":{"match":"^\\s*(module|library|widget|use)(\\s+(?:\\w|[._])*)?\\b","captures":{"1":{"name":"keyword.other.module.lcb"},"2":{"name":"entity.name.module.lcb"}}},"define-property":{"match":"^\\s*(property)(\\s*\\w*)?","captures":{"1":{"name":"storage.type.property.lcb"},"2":{"name":"entity.name.property.lcb"}}},"define-variable":{"match":"^\\s*((?:public|private)\\s+)?(variable)(?:\\s+(\\w*)(?:\\s+(as(?:\\soptional)?)(?:\\s+(\\w*))?)?)?","captures":{"1":{"name":"storage.modifier.access.lcb"},"2":{"name":"storage.type.var.lcb"},"3":{"name":"variable.lcb"},"4":{"name":"keyword.other.as.lcb"},"5":{"name":"entity.name.type.lcb"}}},"end-block":{"name":"keyword.control.end.lcb","match":"^\\s*(end(?:\\s*(?:module|library|widget|handler|if|repeat))?)"},"handler-return":{"name":"keyword.control.lcb","match":"^\\s*return\\b"},"if":{"begin":"^\\s*(else\\s*if|if|else)\\b","end":"\\b(then)\\b","patterns":[{"include":"$self"}],"captures":{"1":{"name":"keyword.control.if.lcb"}}},"repeat-block":{"name":"keyword.control.repeat.lcb","match":"^\\s*(repeat)\\b"},"string":{"name":"string.quoted.double.lcb","begin":"\"","end":"\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.lcb"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.lcb"}}}}}