github-linguist 7.20.0 → 7.22.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (80) hide show
  1. checksums.yaml +4 -4
  2. data/ext/linguist/lex.linguist_yy.c +584 -498
  3. data/ext/linguist/lex.linguist_yy.h +2 -3
  4. data/ext/linguist/tokenizer.l +52 -15
  5. data/grammars/source.abap.json +1 -1
  6. data/grammars/source.abl.json +1 -1
  7. data/grammars/source.astro.json +1 -1
  8. data/grammars/source.ats.json +1 -1
  9. data/grammars/source.ballerina.json +1 -1
  10. data/grammars/source.bms.json +1 -1
  11. data/grammars/source.brs.json +1 -0
  12. data/grammars/source.cairo.json +1 -1
  13. data/grammars/source.cds.json +1 -0
  14. data/grammars/source.clarion.json +1 -1
  15. data/grammars/source.cobol.json +1 -1
  16. data/grammars/source.css.json +1 -1
  17. data/grammars/source.csswg.json +1 -0
  18. data/grammars/source.curlrc.json +1 -1
  19. data/grammars/source.curry.json +1 -1
  20. data/grammars/source.denizenscript.json +1 -1
  21. data/grammars/source.ditroff.json +1 -1
  22. data/grammars/source.fsharp.json +1 -1
  23. data/grammars/source.gcode.json +1 -1
  24. data/grammars/source.gdresource.json +1 -0
  25. data/grammars/source.gdscript.json +1 -1
  26. data/grammars/source.gdshader.json +1 -0
  27. data/grammars/source.git-revlist.json +1 -0
  28. data/grammars/source.hack.json +1 -1
  29. data/grammars/source.hlasm.json +1 -1
  30. data/grammars/source.hx.json +1 -1
  31. data/grammars/source.icurry.json +1 -1
  32. data/grammars/source.jsligo.json +1 -0
  33. data/grammars/source.json.json +1 -1
  34. data/grammars/source.julia.json +1 -1
  35. data/grammars/source.livescript.json +1 -1
  36. data/grammars/source.miniyaml.json +1 -1
  37. data/grammars/source.mlir.json +1 -1
  38. data/grammars/source.mo.json +1 -1
  39. data/grammars/source.move.json +1 -0
  40. data/grammars/source.nix.json +1 -1
  41. data/grammars/source.pony.json +1 -1
  42. data/grammars/source.portugol.json +1 -0
  43. data/grammars/source.rego.json +1 -1
  44. data/grammars/source.renpy.json +1 -1
  45. data/grammars/source.rescript.json +1 -1
  46. data/grammars/source.rpgle.json +1 -1
  47. data/grammars/source.rsc.json +1 -0
  48. data/grammars/source.scala.json +1 -1
  49. data/grammars/source.solidity.json +1 -1
  50. data/grammars/source.sqf.json +1 -1
  51. data/grammars/source.star.json +1 -0
  52. data/grammars/source.stl.json +1 -0
  53. data/grammars/source.svelte.json +1 -1
  54. data/grammars/source.ts.json +1 -1
  55. data/grammars/source.tsx.json +1 -1
  56. data/grammars/source.v.json +1 -1
  57. data/grammars/source.velocity.html.json +1 -0
  58. data/grammars/source.velocity.json +1 -0
  59. data/grammars/source.whiley.json +1 -0
  60. data/grammars/source.wren.json +1 -0
  61. data/grammars/source.wsd.json +1 -1
  62. data/grammars/source.yul.json +1 -0
  63. data/grammars/text.hash-commented.json +1 -0
  64. data/grammars/text.html.statamic.json +1 -0
  65. data/grammars/text.srt.json +1 -1
  66. data/grammars/text.vtt.json +1 -0
  67. data/grammars/version +1 -1
  68. data/lib/linguist/VERSION +1 -1
  69. data/lib/linguist/blob_helper.rb +2 -2
  70. data/lib/linguist/generic.yml +1 -0
  71. data/lib/linguist/heuristics.yml +22 -1
  72. data/lib/linguist/language.rb +3 -4
  73. data/lib/linguist/languages.json +1 -1
  74. data/lib/linguist/languages.yml +218 -4
  75. data/lib/linguist/samples.json +1 -1
  76. data/lib/linguist/vendor.yml +4 -1
  77. metadata +30 -13
  78. data/grammars/source.brightauthorproject.json +0 -1
  79. data/grammars/source.brightscript.json +0 -1
  80. data/grammars/source.vtt.json +0 -1
@@ -1 +1 @@
1
- {"name":"V","scopeName":"source.v","patterns":[{"include":"#comments"},{"include":"#as-is"},{"include":"#attributes"},{"include":"#assignment"},{"include":"#module-decl"},{"include":"#import-decl"},{"include":"#hash-decl"},{"include":"#brackets"},{"include":"#builtin-fix"},{"include":"#escaped-fix"},{"include":"#operators"},{"include":"#function-limited-overload-decl"},{"include":"#function-extend-decl"},{"include":"#function-decl"},{"include":"#function-exist"},{"include":"#generic"},{"include":"#constants"},{"include":"#type"},{"include":"#enum"},{"include":"#interface"},{"include":"#struct"},{"include":"#keywords"},{"include":"#storage"},{"include":"#numbers"},{"include":"#strings"},{"include":"#types"},{"include":"#punctuations"}],"repository":{"as-is":{"begin":"\\s+(as|is)\\s+","end":"([\\w.]*)","beginCaptures":{"1":{"name":"keyword.$1.v"}},"endCaptures":{"1":{"name":"entity.name.alias.v"}}},"assignment":{"name":"meta.definition.variable.v","match":"\\s+((?:\\:|\\+|\\-|\\*|/|\\%|\\\u0026|\\||\\^)?=)\\s+","captures":{"1":{"patterns":[{"include":"#operators"}]}}},"attributes":{"name":"meta.definition.attribute.v","match":"^\\s*((\\[)(deprecated|unsafe_fn|console|heap|debug|manualfree|typedef|live|inline|flag|ref_only|windows_stdcall|direct_array_access)(\\]))","captures":{"1":{"name":"meta.function.attribute.v"},"2":{"name":"punctuation.definition.begin.bracket.square.v"},"3":{"name":"storage.modifier.attribute.v"},"4":{"name":"punctuation.definition.end.bracket.square.v"}}},"brackets":{"patterns":[{"begin":"{","end":"}","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.definition.bracket.curly.begin.v"}},"endCaptures":{"0":{"name":"punctuation.definition.bracket.curly.end.v"}}},{"begin":"\\(","end":"\\)","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.definition.bracket.round.begin.v"}},"endCaptures":{"0":{"name":"punctuation.definition.bracket.round.end.v"}}},{"begin":"\\[","end":"\\]","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.definition.bracket.square.begin.v"}},"endCaptures":{"0":{"name":"punctuation.definition.bracket.square.end.v"}}}]},"builtin-fix":{"patterns":[{"patterns":[{"name":"storage.modifier.v","match":"(const)(?=\\s*\\()"},{"name":"keyword.$1.v","match":"\\b(fn|type|enum|struct|union|interface|map|assert|sizeof|typeof|__offsetof)\\b(?=\\s*\\()"}]},{"patterns":[{"name":"keyword.control.v","match":"(\\$if|\\$else)(?=\\s*\\()"},{"name":"keyword.control.v","match":"\\b(as|in|is|or|break|continue|default|unsafe|match|if|else|for|go|goto|defer|return|shared|select|rlock|lock|atomic|asm)\\b(?=\\s*\\()"}]},{"patterns":[{"name":"meta.expr.numeric.cast.v","match":"(i?(?:8|16|nt|64|128)|u?(?:16|32|64|128)|f?(?:32|64))(?=\\s*\\()","captures":{"1":{"name":"storage.type.numeric.v"}}},{"name":"meta.expr.bool.cast.v","match":"(bool|byte|byteptr|charptr|voidptr|string|rune|size_t)(?=\\s*\\()","captures":{"1":{"name":"storage.type.$1.v"}}}]}]},"comments":{"patterns":[{"name":"comment.block.documentation.v","begin":"/\\*","end":"\\*/","patterns":[{"include":"#comments"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.v"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.end.v"}}},{"name":"comment.line.double-slash.v","begin":"//","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.v"}}}]},"constants":{"name":"constant.language.v","match":"\\b(true|false|none)\\b"},"enum":{"name":"meta.definition.enum.v","match":"^\\s*(?:(pub)?\\s+)?(enum)\\s+(?:\\w+\\.)?(\\w*)","captures":{"1":{"name":"storage.modifier.$1.v"},"2":{"name":"storage.type.enum.v"},"3":{"name":"entity.name.enum.v"}}},"escaped-fix":{"name":"meta.escaped.keyword.v","match":"((?:@)(?:mut|pub|fn|unsafe|module|import|as|const|map|assert|sizeof|__offsetof|typeof|type|struct|interface|enum|in|is|or|match|if|else|for|go|goto|defer|return|shared|select|rlock|lock|atomic|asm|i?(?:8|16|nt|64|128)|u?(?:16|32|64|128)|f?(?:32|64)|bool|byte|byteptr|charptr|voidptr|string|ustring|rune))","captures":{"0":{"name":"keyword.other.escaped.v"}}},"function-decl":{"name":"meta.definition.function.v","begin":"^\\s*(pub)?\\s*(fn)\\s+","end":"(?:(?:C\\.)?)(\\w+)\\s*((?\u003c=[\\w\\s+])(\\\u003c)(\\w+)(\\\u003e))?","beginCaptures":{"1":{"name":"storage.modifier.v"},"2":{"name":"keyword.function.v"}},"endCaptures":{"1":{"patterns":[{"include":"#illegal-name"},{"name":"entity.name.function.v","match":"\\w+"}]},"2":{"patterns":[{"include":"#generic"}]}}},"function-exist":{"name":"meta.support.function.v","match":"(\\w+)((?\u003c=[\\w\\s+])(\\\u003c)(\\w+)(\\\u003e))?(?=\\s*\\()","captures":{"0":{"name":"meta.function.call.v"},"1":{"patterns":[{"include":"#illegal-name"},{"name":"entity.name.function.v","match":"\\w+"}]},"2":{"patterns":[{"include":"#generic"}]}}},"function-extend-decl":{"name":"meta.definition.function.v","match":"^\\s*(pub)?\\s*(fn)\\s*(\\()([^\\)]*)(\\))\\s*(?:(?:C\\.)?)(\\w+)\\s*((?\u003c=[\\w\\s+])(\\\u003c)(\\w+)(\\\u003e))?","captures":{"1":{"name":"storage.modifier.v"},"2":{"name":"keyword.function.v"},"3":{"name":"punctuation.definition.bracket.round.begin.v"},"4":{"patterns":[{"include":"#brackets"},{"include":"#storage"},{"include":"#generic"},{"include":"#types"},{"include":"#punctuation"}]},"5":{"name":"punctuation.definition.bracket.round.end.v"},"6":{"patterns":[{"include":"#illegal-name"},{"name":"entity.name.function.v","match":"\\w+"}]},"7":{"patterns":[{"include":"#generic"}]}}},"function-limited-overload-decl":{"name":"meta.definition.function.v","match":"^\\s*(pub)?\\s*(fn)\\s*(\\()([^\\)]*)(\\))\\s*([\\+\\-\\*\\/])?\\s*(\\()([^\\)]*)(\\))\\s*(?:(?:C\\.)?)(\\w+)","captures":{"1":{"name":"storage.modifier.v"},"10":{"patterns":[{"include":"#illegal-name"},{"name":"entity.name.function.v","match":"\\w+"}]},"2":{"name":"keyword.function.v"},"3":{"name":"punctuation.definition.bracket.round.begin.v"},"4":{"patterns":[{"include":"#brackets"},{"include":"#storage"},{"include":"#generic"},{"include":"#types"},{"include":"#punctuation"}]},"5":{"name":"punctuation.definition.bracket.round.end.v"},"6":{"patterns":[{"include":"#operators"}]},"7":{"name":"punctuation.definition.bracket.round.begin.v"},"8":{"patterns":[{"include":"#brackets"},{"include":"#storage"},{"include":"#generic"},{"include":"#types"},{"include":"#punctuation"}]},"9":{"name":"punctuation.definition.bracket.round.end.v"}}},"generic":{"patterns":[{"name":"meta.definition.generic.v","match":"(?\u003c=[\\w\\s+])(\\\u003c)(\\w+)(\\\u003e)","captures":{"1":{"name":"punctuation.definition.bracket.angle.begin.v"},"2":{"patterns":[{"include":"#illegal-name"},{"name":"entity.name.generic.v","match":"\\w+"}]},"3":{"name":"punctuation.definition.bracket.angle.end.v"}}}]},"hash-decl":{"name":"markup.bold.v","begin":"^\\s*(#)","end":"$"},"illegal-name":{"name":"invalid.illegal.v","match":"\\d\\w+"},"import-decl":{"name":"meta.import.v","begin":"^\\s*(import)\\s+","end":"([\\w.]+)","beginCaptures":{"1":{"name":"keyword.import.v"}},"endCaptures":{"1":{"name":"entity.name.import.v"}}},"interface":{"name":"meta.definition.interface.v","match":"^\\s*(?:(pub)?\\s+)?(interface)\\s+(\\w*)","captures":{"1":{"name":"storage.modifier.$1.v"},"2":{"name":"keyword.interface.v"},"3":{"patterns":[{"include":"#illegal-name"},{"name":"entity.name.interface.v","match":"\\w+"}]}}},"keywords":{"patterns":[{"name":"keyword.control.v","match":"(\\$if|\\$else)"},{"name":"keyword.control.v","match":"\\b(as|it|is|in|or|break|continue|default|unsafe|match|if|else|for|go|goto|defer|return|shared|select|rlock|lock|atomic|asm)\\b"},{"name":"keyword.$1.v","match":"\\b(fn|type|typeof|enum|struct|interface|map|assert|sizeof|__offsetof)\\b"}]},"module-decl":{"name":"meta.module.v","begin":"^\\s*(module)\\s+","end":"([\\w.]+)","beginCaptures":{"1":{"name":"keyword.module.v"}},"endCaptures":{"1":{"name":"entity.name.module.v"}}},"numbers":{"patterns":[{"name":"constant.numeric.exponential.v","match":"([0-9]+(_?))+(\\.)([0-9]+[eE][-+]?[0-9]+)"},{"name":"constant.numeric.float.v","match":"([0-9]+(_?))+(\\.)([0-9]+)"},{"name":"constant.numeric.binary.v","match":"(?:0b)(?:(?:[0-1]+)(?:_?))+"},{"name":"constant.numeric.octal.v","match":"(?:0o)(?:(?:[0-7]+)(?:_?))+"},{"name":"constant.numeric.hex.v","match":"(?:0x)(?:(?:[0-9a-fA-F]+)(?:_?))+"},{"name":"constant.numeric.integer.v","match":"(?:(?:[0-9]+)(?:[_]?))+"}]},"operators":{"patterns":[{"name":"keyword.operator.arithmetic.v","match":"(\\+|\\-|\\*|\\/|\\%|\\+\\+|\\-\\-|\\\u003e\\\u003e|\\\u003c\\\u003c)"},{"name":"keyword.operator.relation.v","match":"(\\=\\=|\\!\\=|\\\u003e|\\\u003c|\\\u003e\\=|\\\u003c\\=)"},{"name":"keyword.operator.assignment.v","match":"(\\:\\=|\\=|\\+\\=|\\-\\=|\\*\\=|\\/\\=|\\%\\=|\\\u0026\\=|\\|\\=|\\^\\=|\\~\\=|\\\u0026\\\u0026\\=|\\|\\|\\=|\\\u003e\\\u003e\\=|\\\u003c\\\u003c\\=)"},{"name":"keyword.operator.bitwise.v","match":"(\\\u0026|\\||\\^|\\~|\u003c(?!\u003c)|\u003e(?!\u003e))"},{"name":"keyword.operator.logical.v","match":"(\\\u0026\\\u0026|\\|\\||\\!)"},{"name":"keyword.operator.optional.v","match":"\\?"}]},"punctuation":{"patterns":[{"name":"punctuation.delimiter.period.dot.v","match":"\\."},{"name":"punctuation.delimiter.comma.v","match":","},{"name":"punctuation.separator.key-value.colon.v","match":":"},{"name":"punctuation.definition.other.semicolon.v","match":";"},{"name":"punctuation.definition.other.questionmark.v","match":"\\?"},{"name":"punctuation.hash.v","match":"#"}]},"punctuations":{"patterns":[{"name":"punctuation.accessor.v","match":"(?:\\.)"},{"name":"punctuation.separator.comma.v","match":"(?:,)"}]},"storage":{"name":"storage.modifier.v","match":"\\b(const|mut|pub)\\b"},"string-escaped-char":{"patterns":[{"name":"constant.character.escape.v","match":"\\\\([0-7]{3}|[\\$abfnrtv\\\\'\"]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8})"},{"name":"invalid.illegal.unknown-escape.v","match":"\\\\[^0-7\\$xuUabfnrtv\\'\"]"}]},"string-interpolation":{"name":"meta.string.interpolation.v","match":"(\\$([\\w.]+|\\{.*?\\}))","captures":{"1":{"patterns":[{"name":"invalid.illegal.v","match":"\\$\\d[\\.\\w]+"},{"name":"variable.other.interpolated.v","match":"\\$([\\.\\w]+|\\{.*?\\})"}]}}},"string-placeholder":{"name":"constant.other.placeholder.v","match":"%(\\[\\d+\\])?([\\+#\\-0\\x20]{,2}((\\d+|\\*)?(\\.?(\\d+|\\*|(\\[\\d+\\])\\*?)?(\\[\\d+\\])?)?))?[vT%tbcdoqxXUbeEfFgGsp]"},"strings":{"patterns":[{"name":"string.quoted.rune.v","begin":"`","end":"`","patterns":[{"include":"#string-escaped-char"},{"include":"#string-interpolation"},{"include":"#string-placeholder"}]},{"name":"string.quoted.raw.v","begin":"(r)'","end":"'","patterns":[{"include":"#string-interpolation"},{"include":"#string-placeholder"}],"beginCaptures":{"1":{"name":"storage.type.string.v"}}},{"name":"string.quoted.raw.v","begin":"(r)\"","end":"\"","patterns":[{"include":"#string-interpolation"},{"include":"#string-placeholder"}],"beginCaptures":{"1":{"name":"storage.type.string.v"}}},{"name":"string.quoted.v","begin":"(c?)'","end":"'","patterns":[{"include":"#string-escaped-char"},{"include":"#string-interpolation"},{"include":"#string-placeholder"}],"beginCaptures":{"1":{"name":"storage.type.string.v"}}},{"name":"string.quoted.v","begin":"(c?)\"","end":"\"","patterns":[{"include":"#string-escaped-char"},{"include":"#string-interpolation"},{"include":"#string-placeholder"}],"beginCaptures":{"1":{"name":"storage.type.string.v"}}}]},"struct":{"patterns":[{"name":"meta.definition.struct.v","begin":"^\\s*(?:(mut|pub(?:\\s+mut)?|__global)\\s+)?(struct|union)\\s+([\\w.]+)\\s*|({)","end":"\\s*|(})","patterns":[{"include":"#struct-access-modifier"},{"match":"\\b(\\w+)\\s+([\\w\\[\\]\\*\u0026.]+)(?:\\s*(=)\\s*((?:.(?=$|//|/\\*))*+))?","captures":{"1":{"name":"variable.other.property.v"},"2":{"patterns":[{"include":"#numbers"},{"include":"#brackets"},{"include":"#types"},{"name":"storage.type.other.v","match":"\\w+"}]},"3":{"name":"keyword.operator.assignment.v"},"4":{"patterns":[{"include":"$self"}]}}},{"include":"#types"},{"include":"$self"}],"beginCaptures":{"1":{"name":"storage.modifier.$1.v"},"2":{"name":"storage.type.struct.v"},"3":{"name":"entity.name.struct.v"},"4":{"name":"punctuation.definition.bracket.curly.begin.v"}},"endCaptures":{"1":{"name":"punctuation.definition.bracket.curly.end.v"}}},{"name":"meta.definition.struct.v","match":"^\\s*(?:(mut|pub(?:\\s+mut)?|__global))\\s+?(struct)\\s+(?:\\s+([\\w.]+))?","captures":{"1":{"name":"storage.modifier.$1.v"},"2":{"name":"storage.type.struct.v"},"3":{"name":"entity.name.struct.v"}}}]},"struct-access-modifier":{"match":"(?\u003c=\\s|^)(mut|pub(?:\\s+mut)?|__global)(:|\\b)","captures":{"1":{"name":"storage.modifier.$1.v"},"2":{"name":"punctuation.separator.struct.key-value.v"}}},"type":{"name":"meta.definition.type.v","match":"^\\s*(?:(pub)?\\s+)?(type)\\s+(\\w*)\\s+(?:\\w+\\.+)?(\\w*)","captures":{"1":{"name":"storage.modifier.$1.v"},"2":{"name":"storage.type.type.v"},"3":{"patterns":[{"include":"#illegal-name"},{"include":"#types"},{"name":"entity.name.type.v","match":"\\w+"}]},"4":{"patterns":[{"include":"#illegal-name"},{"include":"#types"},{"name":"entity.name.type.v","match":"\\w+"}]}}},"types":{"patterns":[{"name":"storage.type.numeric.v","match":"(?\u003c!\\.)\\b(i(8|16|nt|64|128)|u(8|16|32|64|128)|f(32|64))\\b"},{"name":"storage.type.$1.v","match":"(?\u003c!\\.)\\b(bool|byte|byteptr|charptr|voidptr|string|ustring|rune)\\b"}]}}}
1
+ {"name":"V","scopeName":"source.v","patterns":[{"include":"#comments"},{"include":"#function-decl"},{"include":"#as-is"},{"include":"#attributes"},{"include":"#assignment"},{"include":"#module-decl"},{"include":"#import-decl"},{"include":"#hash-decl"},{"include":"#brackets"},{"include":"#builtin-fix"},{"include":"#escaped-fix"},{"include":"#operators"},{"include":"#function-limited-overload-decl"},{"include":"#function-extend-decl"},{"include":"#function-exist"},{"include":"#generic"},{"include":"#constants"},{"include":"#type"},{"include":"#enum"},{"include":"#interface"},{"include":"#struct"},{"include":"#keywords"},{"include":"#storage"},{"include":"#numbers"},{"include":"#strings"},{"include":"#types"},{"include":"#punctuations"},{"include":"#variable-assign"},{"include":"#function-decl"}],"repository":{"as-is":{"begin":"\\s+(as|is)\\s+","end":"([\\w.]*)","beginCaptures":{"1":{"name":"keyword.$1.v"}},"endCaptures":{"1":{"name":"entity.name.alias.v"}}},"assignment":{"name":"meta.definition.variable.v","match":"\\s+((?:\\:|\\+|\\-|\\*|/|\\%|\\\u0026|\\||\\^)?=)\\s+","captures":{"1":{"patterns":[{"include":"#operators"}]}}},"attributes":{"name":"meta.definition.attribute.v","match":"^\\s*((\\[)(deprecated|unsafe_fn|console|heap|debug|manualfree|typedef|live|inline|flag|ref_only|windows_stdcall|direct_array_access)(\\]))","captures":{"1":{"name":"meta.function.attribute.v"},"2":{"name":"punctuation.definition.begin.bracket.square.v"},"3":{"name":"storage.modifier.attribute.v"},"4":{"name":"punctuation.definition.end.bracket.square.v"}}},"brackets":{"patterns":[{"begin":"{","end":"}","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.definition.bracket.curly.begin.v"}},"endCaptures":{"0":{"name":"punctuation.definition.bracket.curly.end.v"}}},{"begin":"\\(","end":"\\)","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.definition.bracket.round.begin.v"}},"endCaptures":{"0":{"name":"punctuation.definition.bracket.round.end.v"}}},{"begin":"\\[","end":"\\]","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.definition.bracket.square.begin.v"}},"endCaptures":{"0":{"name":"punctuation.definition.bracket.square.end.v"}}}]},"builtin-fix":{"patterns":[{"patterns":[{"name":"storage.modifier.v","match":"(const)(?=\\s*\\()"},{"name":"keyword.$1.v","match":"\\b(fn|type|enum|struct|union|interface|map|assert|sizeof|typeof|__offsetof)\\b(?=\\s*\\()"}]},{"patterns":[{"name":"keyword.control.v","match":"(\\$if|\\$else)(?=\\s*\\()"},{"name":"keyword.control.v","match":"\\b(as|in|is|or|break|continue|default|unsafe|match|if|else|for|go|goto|defer|return|shared|select|rlock|lock|atomic|asm)\\b(?=\\s*\\()"}]},{"patterns":[{"name":"meta.expr.numeric.cast.v","match":"(?\u003c!.)(i?(?:8|16|nt|64|128)|u?(?:16|32|64|128)|f?(?:32|64))(?=\\s*\\()","captures":{"1":{"name":"storage.type.numeric.v"}}},{"name":"meta.expr.bool.cast.v","match":"(bool|byte|byteptr|charptr|voidptr|string|rune|size_t)(?=\\s*\\()","captures":{"1":{"name":"storage.type.$1.v"}}}]}]},"comments":{"patterns":[{"name":"comment.block.documentation.v","begin":"/\\*","end":"\\*/","patterns":[{"include":"#comments"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.v"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.end.v"}}},{"name":"comment.line.double-slash.v","begin":"//","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.v"}}}]},"constants":{"name":"constant.language.v","match":"\\b(true|false|none)\\b"},"enum":{"name":"meta.definition.enum.v","match":"^\\s*(?:(pub)?\\s+)?(enum)\\s+(?:\\w+\\.)?(\\w*)","captures":{"1":{"name":"storage.modifier.$1.v"},"2":{"name":"storage.type.enum.v"},"3":{"name":"entity.name.enum.v"}}},"function-decl":{"name":"meta.definition.function.v","match":"^(\\bpub\\b\\s+)?(\\bfn\\b)\\s+(?:\\([^\\)]+\\)\\s+)?(?:(?:C\\.)?)(\\w+)\\s*((?\u003c=[\\w\\s+])(\\\u003c)(\\w+)(\\\u003e))?","captures":{"1":{"name":"storage.modifier.v"},"2":{"name":"keyword.fn.v"},"3":{"name":"entity.name.function.v"},"4":{"patterns":[{"include":"#generic"}]}}},"function-exist":{"name":"meta.support.function.v","match":"(\\w+)((?\u003c=[\\w\\s+])(\\\u003c)(\\w+)(\\\u003e))?(?=\\s*\\()","captures":{"0":{"name":"meta.function.call.v"},"1":{"patterns":[{"include":"#illegal-name"},{"name":"entity.name.function.v","match":"\\w+"}]},"2":{"patterns":[{"include":"#generic"}]}}},"function-extend-decl":{"name":"meta.definition.function.v","match":"^\\s*(pub)?\\s*(fn)\\s*(\\()([^\\)]*)(\\))\\s*(?:(?:C\\.)?)(\\w+)\\s*((?\u003c=[\\w\\s+])(\\\u003c)(\\w+)(\\\u003e))?","captures":{"1":{"name":"storage.modifier.v"},"2":{"name":"keyword.fn.v"},"3":{"name":"punctuation.definition.bracket.round.begin.v"},"4":{"patterns":[{"include":"#brackets"},{"include":"#storage"},{"include":"#generic"},{"include":"#types"},{"include":"#punctuation"}]},"5":{"name":"punctuation.definition.bracket.round.end.v"},"6":{"patterns":[{"include":"#illegal-name"},{"name":"entity.name.function.v","match":"\\w+"}]},"7":{"patterns":[{"include":"#generic"}]}}},"function-limited-overload-decl":{"name":"meta.definition.function.v","match":"^\\s*(pub)?\\s*(fn)\\s*(\\()([^\\)]*)(\\))\\s*([\\+\\-\\*\\/])?\\s*(\\()([^\\)]*)(\\))\\s*(?:(?:C\\.)?)(\\w+)","captures":{"1":{"name":"storage.modifier.v"},"10":{"patterns":[{"include":"#illegal-name"},{"name":"entity.name.function.v","match":"\\w+"}]},"2":{"name":"keyword.fn.v"},"3":{"name":"punctuation.definition.bracket.round.begin.v"},"4":{"patterns":[{"include":"#brackets"},{"include":"#storage"},{"include":"#generic"},{"include":"#types"},{"include":"#punctuation"}]},"5":{"name":"punctuation.definition.bracket.round.end.v"},"6":{"patterns":[{"include":"#operators"}]},"7":{"name":"punctuation.definition.bracket.round.begin.v"},"8":{"patterns":[{"include":"#brackets"},{"include":"#storage"},{"include":"#generic"},{"include":"#types"},{"include":"#punctuation"}]},"9":{"name":"punctuation.definition.bracket.round.end.v"}}},"generic":{"patterns":[{"name":"meta.definition.generic.v","match":"(?\u003c=[\\w\\s+])(\\\u003c)(\\w+)(\\\u003e)","captures":{"1":{"name":"punctuation.definition.bracket.angle.begin.v"},"2":{"patterns":[{"include":"#illegal-name"},{"name":"entity.name.generic.v","match":"\\w+"}]},"3":{"name":"punctuation.definition.bracket.angle.end.v"}}}]},"hash-decl":{"name":"markup.bold.v","begin":"^\\s*(#)","end":"$"},"illegal-name":{"name":"invalid.illegal.v","match":"\\d\\w+"},"import-decl":{"name":"meta.import.v","begin":"^\\s*(import)\\s+","end":"([\\w.]+)","beginCaptures":{"1":{"name":"keyword.import.v"}},"endCaptures":{"1":{"name":"entity.name.import.v"}}},"interface":{"name":"meta.definition.interface.v","match":"^\\s*(?:(pub)?\\s+)?(interface)\\s+(\\w*)","captures":{"1":{"name":"storage.modifier.$1.v"},"2":{"name":"keyword.interface.v"},"3":{"patterns":[{"include":"#illegal-name"},{"name":"entity.name.interface.v","match":"\\w+"}]}}},"keywords":{"patterns":[{"name":"keyword.control.v","match":"(\\$if|\\$else)"},{"name":"keyword.control.v","match":"(?\u003c!@)\\b(as|it|is|in|or|break|continue|default|unsafe|match|if|else|for|go|goto|defer|return|shared|select|rlock|lock|atomic|asm)\\b"},{"name":"keyword.$1.v","match":"(?\u003c!@)\\b(fn|type|typeof|enum|struct|interface|map|assert|sizeof|__offsetof)\\b"}]},"module-decl":{"name":"meta.module.v","begin":"^\\s*(module)\\s+","end":"([\\w.]+)","beginCaptures":{"1":{"name":"keyword.module.v"}},"endCaptures":{"1":{"name":"entity.name.module.v"}}},"numbers":{"patterns":[{"name":"constant.numeric.exponential.v","match":"([0-9]+(_?))+(\\.)([0-9]+[eE][-+]?[0-9]+)"},{"name":"constant.numeric.float.v","match":"([0-9]+(_?))+(\\.)([0-9]+)"},{"name":"constant.numeric.binary.v","match":"(?:0b)(?:(?:[0-1]+)(?:_?))+"},{"name":"constant.numeric.octal.v","match":"(?:0o)(?:(?:[0-7]+)(?:_?))+"},{"name":"constant.numeric.hex.v","match":"(?:0x)(?:(?:[0-9a-fA-F]+)(?:_?))+"},{"name":"constant.numeric.integer.v","match":"(?:(?:[0-9]+)(?:[_]?))+"}]},"operators":{"patterns":[{"name":"keyword.operator.arithmetic.v","match":"(\\+|\\-|\\*|\\/|\\%|\\+\\+|\\-\\-|\\\u003e\\\u003e|\\\u003c\\\u003c)"},{"name":"keyword.operator.relation.v","match":"(\\=\\=|\\!\\=|\\\u003e|\\\u003c|\\\u003e\\=|\\\u003c\\=)"},{"name":"keyword.operator.assignment.v","match":"(\\:\\=|\\=|\\+\\=|\\-\\=|\\*\\=|\\/\\=|\\%\\=|\\\u0026\\=|\\|\\=|\\^\\=|\\~\\=|\\\u0026\\\u0026\\=|\\|\\|\\=|\\\u003e\\\u003e\\=|\\\u003c\\\u003c\\=)"},{"name":"keyword.operator.bitwise.v","match":"(\\\u0026|\\||\\^|\\~|\u003c(?!\u003c)|\u003e(?!\u003e))"},{"name":"keyword.operator.logical.v","match":"(\\\u0026\\\u0026|\\|\\||\\!)"},{"name":"keyword.operator.optional.v","match":"\\?"}]},"punctuation":{"patterns":[{"name":"punctuation.delimiter.period.dot.v","match":"\\."},{"name":"punctuation.delimiter.comma.v","match":","},{"name":"punctuation.separator.key-value.colon.v","match":":"},{"name":"punctuation.definition.other.semicolon.v","match":";"},{"name":"punctuation.definition.other.questionmark.v","match":"\\?"},{"name":"punctuation.hash.v","match":"#"}]},"punctuations":{"patterns":[{"name":"punctuation.accessor.v","match":"(?:\\.)"},{"name":"punctuation.separator.comma.v","match":"(?:,)"}]},"storage":{"name":"storage.modifier.v","match":"\\b(const|mut|pub)\\b"},"string-escaped-char":{"patterns":[{"name":"constant.character.escape.v","match":"\\\\([0-7]{3}|[\\$abfnrtv\\\\'\"]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8})"},{"name":"invalid.illegal.unknown-escape.v","match":"\\\\[^0-7\\$xuUabfnrtv\\'\"]"}]},"string-interpolation":{"name":"meta.string.interpolation.v","match":"(\\$([\\w.]+|\\{.*?\\}))","captures":{"1":{"patterns":[{"name":"invalid.illegal.v","match":"\\$\\d[\\.\\w]+"},{"name":"variable.other.interpolated.v","match":"\\$([\\.\\w]+|\\{.*?\\})"}]}}},"string-placeholder":{"name":"constant.other.placeholder.v","match":"%(\\[\\d+\\])?([\\+#\\-0\\x20]{,2}((\\d+|\\*)?(\\.?(\\d+|\\*|(\\[\\d+\\])\\*?)?(\\[\\d+\\])?)?))?[vT%tbcdoqxXUbeEfFgGsp]"},"strings":{"patterns":[{"name":"string.quoted.rune.v","begin":"`","end":"`","patterns":[{"include":"#string-escaped-char"},{"include":"#string-interpolation"},{"include":"#string-placeholder"}]},{"name":"string.quoted.raw.v","begin":"(r)'","end":"'","patterns":[{"include":"#string-interpolation"},{"include":"#string-placeholder"}],"beginCaptures":{"1":{"name":"storage.type.string.v"}}},{"name":"string.quoted.raw.v","begin":"(r)\"","end":"\"","patterns":[{"include":"#string-interpolation"},{"include":"#string-placeholder"}],"beginCaptures":{"1":{"name":"storage.type.string.v"}}},{"name":"string.quoted.v","begin":"(c?)'","end":"'","patterns":[{"include":"#string-escaped-char"},{"include":"#string-interpolation"},{"include":"#string-placeholder"}],"beginCaptures":{"1":{"name":"storage.type.string.v"}}},{"name":"string.quoted.v","begin":"(c?)\"","end":"\"","patterns":[{"include":"#string-escaped-char"},{"include":"#string-interpolation"},{"include":"#string-placeholder"}],"beginCaptures":{"1":{"name":"storage.type.string.v"}}}]},"struct":{"patterns":[{"name":"meta.definition.struct.v","begin":"^\\s*(?:(mut|pub(?:\\s+mut)?|__global)\\s+)?(struct|union)\\s+([\\w.]+)\\s*|({)","end":"\\s*|(})","patterns":[{"include":"#struct-access-modifier"},{"match":"\\b(\\w+)\\s+([\\w\\[\\]\\*\u0026.]+)(?:\\s*(=)\\s*((?:.(?=$|//|/\\*))*+))?","captures":{"1":{"name":"variable.other.property.v"},"2":{"patterns":[{"include":"#numbers"},{"include":"#brackets"},{"include":"#types"},{"name":"storage.type.other.v","match":"\\w+"}]},"3":{"name":"keyword.operator.assignment.v"},"4":{"patterns":[{"include":"$self"}]}}},{"include":"#types"},{"include":"$self"}],"beginCaptures":{"1":{"name":"storage.modifier.$1.v"},"2":{"name":"storage.type.struct.v"},"3":{"name":"entity.name.type.v"},"4":{"name":"punctuation.definition.bracket.curly.begin.v"}},"endCaptures":{"1":{"name":"punctuation.definition.bracket.curly.end.v"}}},{"name":"meta.definition.struct.v","match":"^\\s*(?:(mut|pub(?:\\s+mut)?|__global))\\s+?(struct)\\s+(?:\\s+([\\w.]+))?","captures":{"1":{"name":"storage.modifier.$1.v"},"2":{"name":"storage.type.struct.v"},"3":{"name":"entity.name.struct.v"}}}]},"struct-access-modifier":{"match":"(?\u003c=\\s|^)(mut|pub(?:\\s+mut)?|__global)(:|\\b)","captures":{"1":{"name":"storage.modifier.$1.v"},"2":{"name":"punctuation.separator.struct.key-value.v"}}},"type":{"name":"meta.definition.type.v","match":"^\\s*(?:(pub)?\\s+)?(type)\\s+(\\w*)\\s+(?:\\w+\\.+)?(\\w*)","captures":{"1":{"name":"storage.modifier.$1.v"},"2":{"name":"storage.type.type.v"},"3":{"patterns":[{"include":"#illegal-name"},{"include":"#types"},{"name":"entity.name.type.v","match":"\\w+"}]},"4":{"patterns":[{"include":"#illegal-name"},{"include":"#types"},{"name":"entity.name.type.v","match":"\\w+"}]}}},"types":{"patterns":[{"name":"storage.type.numeric.v","match":"(?\u003c!\\.)\\b(i(8|16|nt|64|128)|u(8|16|32|64|128)|f(32|64))\\b"},{"name":"storage.type.$1.v","match":"(?\u003c!\\.)\\b(bool|byte|byteptr|charptr|voidptr|string|ustring|rune)\\b"}]},"variable-assign":{"match":"[a-zA-Z_]\\w*(?:,\\s*[a-zA-Z_]\\w*)*(?=\\s*(?:=|:=))","captures":{"0":{"patterns":[{"name":"variable.other.assignment.v","match":"[a-zA-Z_]\\w*"},{"include":"#punctuation"}]}}}}}
@@ -0,0 +1 @@
1
+ {"name":"Velocity (HTML)","scopeName":"source.velocity.html","patterns":[{"name":"punctuation.definition.comment.velocity","begin":"\u003c!--","end":"--\u003e","patterns":[{"include":"$self"}]},{"include":"source.velocity"},{"include":"text.html.basic"}]}
@@ -0,0 +1 @@
1
+ {"name":"Velocity","scopeName":"source.velocity","patterns":[{"include":"#operators"},{"include":"#comments"},{"include":"#constants"},{"include":"#blocks"},{"include":"#variables"}],"repository":{"blocks":{"patterns":[{"begin":"\\(","end":"\\)","patterns":[{"include":"#strings_double_quote"},{"include":"#strings_single_quote"},{"include":"$self"}]},{"match":"(#\\{?(?:set|foreach|if|else(?:if)?|define|end|include|parse|evaluate|stop|break)\\}?)","captures":{"1":{"name":"keyword.control.velocity"}}},{"match":"(#macro)[\\s]?\\([\\s]?([a-zA-Z_]*)","captures":{"1":{"name":"keyword.control.velocity"},"2":{"name":"entity.name.function.velocity"}}},{"name":"entity.name.function.velocity","match":"#@?([a-zA-Z_][a-zA-Z0-9_]*)"}]},"comments":{"patterns":[{"name":"punctuation.definition.comment.velocity","begin":"#\\*\\*(?!#)","end":"\\*#","patterns":[{"match":"\\*\\s+?(?:(@)([a-zA-Z]*))\\s","captures":{"1":{"name":"keyword.other.documentation.param.javadoc"},"2":{"name":"punctuation.definition.keyword.javadoc"}}}],"captures":{"0":{"name":"punctuation.definition.comment.velocity"}}},{"name":"punctuation.definition.comment.velocity","begin":"#\\*","end":"\\*#","captures":{"0":{"name":"punctuation.definition.comment.velocity"}}},{"name":"punctuation.definition.comment.velocity","match":"##(.+)?"}]},"constants":{"patterns":[{"name":"constant.language.java","match":"(false|true)"},{"name":"constant.numeric.java","match":"((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\.?[0-9]*)|(\\.[0-9]+))((e|E)(\\+|-)?[0-9]+)?)"}]},"operators":{"patterns":[{"name":"keyword.operator.logical.java","match":"(!|\u0026\u0026|\\|\\|)"},{"name":"keyword.operator.arithmetic.java","match":"(\\-|\\+|\\*|/|%)"},{"name":"keyword.operator.comparison.java","match":"(==|!=|\u003c=|\u003e=|\u003c[^a-zA-Z/]|[^a-zA-Z/]\u003e|\u003c\u003e)"},{"name":"keyword.operator.assignment.java","match":"(=|\\s+in\\s+)"}]},"strings_double_quote":{"patterns":[{"name":"string.quoted.double.velocity","begin":"\\\"","end":"\\\"","patterns":[{"name":"constant.character.escape.velocity","match":"\\\\\""},{"include":"#variables"}]}]},"strings_single_quote":{"patterns":[{"name":"string.quoted.single.velocity","begin":"'","end":"'","patterns":[{"name":"constant.character.escape.velocity","match":"\\'"}]}]},"variables":{"patterns":[{"begin":"\\$(!?)\\{","end":"\\}","patterns":[{"match":"(?:([a-zA-Z_][a-zA-Z_\\-0-9]*)|(\\.)(?:((?:[a-zA-Z_][a-zA-Z_\\-0-9]*)(?=\\())|((?:[a-zA-Z_][a-zA-Z_\\-0-9]*))))","captures":{"1":{"name":"variable.other.velocity"},"2":{"name":"keyword.operator.dereference.velocity"},"3":{"name":"entity.name.function.velocity"},"4":{"name":"entity.other.attribute-name.velocity"}}},{"begin":"\\(","end":"\\)","patterns":[{"include":"#strings_double_quote"},{"include":"#strings_single_quote"},{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.definition.method-parameters.begin.velocity"}},"endCaptures":{"0":{"name":"punctuation.definition.method-parameters.end.velocity"}}}],"beginCaptures":{"0":{"name":"punctuation.definition.variable.velocity"},"1":{"name":"keyword.operator.silent"}},"endCaptures":{"0":{"name":"punctuation.definition.variable.velocity"}}},{"name":"variable.other.velocity","match":"((\\$)[a-zA-Z][a-zA-Z0-9_]*)\\b(?:((\\.)[a-zA-Z][a-zA-Z0-9]*))*"},{"name":"variable.other.velocity","match":"\\$[a-zA-Z\\-_][a-zA-Z\\-_0-9]*"}]}}}
@@ -0,0 +1 @@
1
+ {"name":"Whiley","scopeName":"source.whiley","patterns":[{"name":"comment.line.whiley","begin":"//[^/]*","end":"$\\n?"},{"name":"comment.block.whiley","begin":"/\\*","end":"\\*/"},{"name":"constant.language.whiley","match":"\\b(false|true|null)\\b"},{"name":"entity.name.function.whiley","match":"\\b(function|method|property|type|variant)\\b"},{"match":"^(import)\\s*([a-zA-Z0-9:]+)\\s*(with)\\s*([a-zA-Z_0-9]+)","captures":{"1":{"name":"entity.name.class.whiley"},"2":{"name":"variable.whiley"},"3":{"name":"entity.name.class.whiley"},"4":{"name":"variable.whiley"}}},{"match":"^(import)\\s*([a-zA-Z0-9_]+)\\s*(from)\\s*([a-zA-Z0-9:]+)","captures":{"1":{"name":"entity.name.class.whiley"},"2":{"name":"variable.whiley"},"3":{"name":"entity.name.class.whiley"},"4":{"name":"variable.whiley"}}},{"match":"^(import)\\s*([a-zA-Z0-9:]+)","captures":{"1":{"name":"entity.name.class.whiley"},"2":{"name":"variable.whiley"}}},{"name":"keyword.control.whiley","match":"\\b(assert|assume|break|case|continue|debug|default|do|else|ensures|fail|for|if|requires|return|skip|switch|where|while)\\b"},{"name":"keyword.operator.word.whiley","match":"\\b(all|in|is|new|no|old|some)\\b"},{"name":"keyword.other.whiley","match":"\\b(bool|byte|export|final|int|native|private|protected|public|unsafe|void)\\b"},{"name":"constant.numeric.whiley","match":"\\b(-)?[0-9.]+\\b"},{"name":"keyword.operator.logical.whiley","match":"(\u0026\u0026|\\|\\||!|==\u003e|\u003c==\u003e)"},{"name":"keyword.operator.arithmetic.whiley","match":"(\u003c=|\u003c|\u003e=|\u003e|==|!=|\\+|-|\\*|/)"},{"name":"entity.name.class.whiley","match":"^package\\b"},{"name":"punctuation.definition.string.whiley","begin":"\"","end":"\"","patterns":[{"include":"#escaped-char"}]},{"name":"variable.constant.whiley","match":"\\b[_A-Z][_A-Z0-9]+\\b"},{"name":"entity.name.type.whiley","match":"\\b[_a-zA-Z][_a-zA-Z0-9]*_t\\b"},{"name":"variable.whiley","match":"\\b[_a-zA-Z][_a-zA-Z0-9]*\\b"}],"repository":{"escaped-char":{"match":"\\\\."}}}
@@ -0,0 +1 @@
1
+ {"name":"Wren","scopeName":"source.wren","patterns":[{"include":"#code"},{"include":"#class"}],"repository":{"block":{"name":"meta.block.wren","begin":"{","end":"}","patterns":[{"include":"#code"},{"name":"meta.block.parameters.wren","begin":"\\|","end":"\\|","patterns":[{"name":"variable.parameter.function.wren","match":"\\w+"}]}],"beginCaptures":{"0":{"name":"punctuation.section.block.begin.wren"}},"endCaptures":{"0":{"name":"punctuation.section.block.end.wren"}}},"blockComment":{"name":"comment.block.wren","begin":"/\\*","end":"\\*/","patterns":[{"include":"#blockComment"}]},"class":{"name":"meta.class","begin":"(?:\\b(foreign)\\s+)?(\\bclass)\\s+(\\w+)\\s+(?:(\\bis)\\s+(\\w+))?","end":"}","patterns":[{"name":"meta.class.body.wren","begin":"{","end":"(?=})","patterns":[{"include":"#comment"},{"include":"#blockComment"},{"include":"#foreignMethod"},{"include":"#subscriptOperator"},{"include":"#method"}],"beginCaptures":{"0":{"name":"punctuation.section.class.begin.wren"}}}],"beginCaptures":{"1":{"name":"storage.modifier.wren"},"2":{"name":"storage.modifier.wren"},"3":{"name":"entity.name.class.wren"},"4":{"name":"storage.modifier.wren"},"5":{"name":"entity.name.class.wren"}},"endCaptures":{"0":{"name":"punctuation.section.class.end.wren"}}},"code":{"patterns":[{"include":"#blockComment"},{"include":"#comment"},{"include":"#block"},{"include":"#keyword"},{"include":"#constant"},{"include":"#variable"},{"include":"#string"},{"include":"#function"},{"include":"#static_function"},{"include":"#static_constant"}]},"comment":{"name":"comment.line.wren","match":"//.*"},"constant":{"patterns":[{"name":"constant.language.wren","match":"\\b(true|false|null)\\b"},{"name":"constant.numeric.wren","match":"\\b(0x[0-9a-fA-F]*|[0-9]+(\\.?[0-9]*)?(e(\\+|-)?[0-9]+)?)\\b"},{"name":"constant.numeric.hexadecimal.wren","match":"0x[A-Fa-f0-9]+"}]},"foreignMethod":{"name":"meta.method.wren","begin":"\\b(foreign)\\s+(?:\\b(construct|static)\\s+)?(\\w+=|\\w+|\\+|-|\\*|\\/|%|\u003c=?|\u003e=?|==|!=?|\u0026|\\||~)","end":"\n","patterns":[{"include":"#comment"},{"name":"meta.method.identifier.wren","begin":"\\(","end":"\\)","patterns":[{"name":"variable.parameter.function.wren","match":"\\w+"}]}],"beginCaptures":{"1":{"name":"storage.modifier.wren"},"2":{"name":"storage.modifier.wren"},"3":{"name":"entity.name.function.wren"}}},"function":{"name":"meta.function.wren","match":"(?:[.]|\\b)(\\w+)\\(","captures":{"1":{"name":"entity.name.function.wren"}}},"keyword":{"patterns":[{"name":"keyword.control.wren","match":"\\b(?:break|else|for|if|import|in|return|while|var)\\b"},{"name":"keyword.operator.wren","match":"\\b(is)\\b"},{"name":"keyword.operator.logical.wren","match":"!|\u0026\u0026|\\|\\|"},{"name":"keyword.operator.range.wren","match":"(\\.\\.\\.?)"},{"name":"keyword.operator.arithmetic.wren","match":"(\\-|\\+|\\*|/|%)"},{"name":"keyword.operator.comparison.wren","match":"(==|!=|\u003c=|\u003e=|\u003c|\u003e)"},{"name":"keyword.operator.assignment.wren","match":"(=)"}]},"method":{"name":"meta.method.wren","begin":"(?:\\b(construct|static)\\s+)?(\\w+=|\\w+|\\+|-|\\*|\\/|%|\u003c=?|\u003e=?|==|!=?|\u0026|\\||~)","end":"}","patterns":[{"name":"meta.method.identifier.wren","begin":"\\(","end":"\\)","patterns":[{"name":"variable.parameter.function.wren","match":"\\w+"}]},{"name":"meta.method.body.wren","begin":"{","end":"(?=})","patterns":[{"include":"#code"}]}],"beginCaptures":{"1":{"name":"storage.modifier.wren"},"2":{"name":"entity.name.function.wren"}}},"static_constant":{"name":"meta.static_constant.wren","match":"\\b([A-Z]+\\w*)[.](\\w+)\\b","captures":{"1":{"name":"entity.name.type.wren"},"2":{"name":"variable.other.constant"}}},"static_function":{"name":"meta.static_function.wren","match":"\\b([A-Z]+\\w*)[.](\\w+)\\(","captures":{"1":{"name":"entity.name.type.wren"},"2":{"name":"entity.name.function.class.wren"}}},"string":{"name":"string.quoted.double.wren","begin":"\"","end":"\"","patterns":[{"include":"#stringEscapes"}]},"stringEscapes":{"patterns":[{"name":"constant.character.escape.wren","match":"\\\\(?:[0\"\\abfnrtv]|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{4})"},{"name":"invalid.illegal.unknown-escape.wren","match":"\\\\(?:x[0-9A-Fa-f]{0,1}|u[0-9A-Fa-f]{0,3}|U[0-9A-Fa-f]{0,7}|.)"},{"name":"constant.character.interpolation.wren","match":"%\\((.*?)\\)"}]},"subscriptOperator":{"name":"meta.method.wren","begin":"\\[","end":"}","patterns":[{"name":"meta.method.identifier.wren","begin":"\\w","end":"\\]","patterns":[{"name":"variable.parameter.function.wren","match":"\\w+"}],"beginCaptures":{"0":{"name":"variable.parameter.function.wren"}},"endCaptures":{"0":{"name":"entity.name.function.wren"}}},{"name":"meta.method.body.wren","begin":"{","end":"(?=})","patterns":[{"include":"#code"}]}],"beginCaptures":{"0":{"name":"entity.name.function.wren"}}},"variable":{"patterns":[{"name":"variable.language.wren","match":"\\b(this|super)\\b"},{"name":"variable.other.class.wren","match":"\\b__\\w*"},{"name":"variable.other.instance.wren","match":"\\b_\\w*"}]}}}
@@ -1 +1 @@
1
- {"name":"Diagram","scopeName":"source.wsd","patterns":[{"name":"diagram.source.wsd","begin":"(?i)^\\s*(@start[a-z]+)((\\s+)(.+?))?\\s*$","end":"(?i)^\\s*(@end[a-z]+)\\s*$","patterns":[{"include":"#Quoted"},{"include":"#Comment"},{"include":"#Style"},{"include":"#Class"},{"include":"#Object"},{"include":"#Activity"},{"include":"#Sequence"},{"include":"#State"},{"include":"#Keywords"},{"include":"#General"}],"beginCaptures":{"1":{"name":"keyword.control.diagram.source.wsd"},"5":{"name":"entity.name.function.diagram.source.wsd"}},"endCaptures":{"1":{"name":"keyword.control.diagram.source.wsd"}}},{"include":"#Quoted"},{"include":"#Comment"},{"include":"#Style"},{"include":"#Class"},{"include":"#Object"},{"include":"#Activity"},{"include":"#Sequence"},{"include":"#State"},{"include":"#Keywords"},{"include":"#General"}],"repository":{"Activity":{"patterns":[{"match":"(?i)^\\s*(else *if|if)\\s?\\((.+?)\\)\\s?(then)(\\s?\\((.+?)\\))?\\s*$","captures":{"1":{"name":"keyword.other.activity.if.source.wsd"},"2":{"name":"string.quoted.double.activity.if.source.wsd"},"3":{"name":"keyword.other.activity.if.source.wsd"},"5":{"name":"meta.comment.activity.if.source.wsd"}}},{"match":"(?i)^\\s*(else)(\\s?\\((.+?)\\))?\\s*$","captures":{"1":{"name":"keyword.other.activity.else.source.wsd"},"3":{"name":"meta.comment.activity.else.source.wsd"}}},{"match":"(?i)^\\s*(repeat\\s+)?(while)\\s*\\((.+?)\\)(\\s*(is)(\\s*\\((.+?)\\))?)?\\s*$","captures":{"1":{"name":"keyword.other.activity.while.source.wsd"},"2":{"name":"keyword.other.activity.while.source.wsd"},"3":{"name":"string.quoted.double.activity.while.source.wsd"},"5":{"name":"keyword.other.activity.while.source.wsd"},"7":{"name":"meta.comment.activity.while.source.wsd"}}},{"match":"(?i)^\\s*(end)\\s?(while)(\\s*\\((.+?)\\))?\\s*$","captures":{"1":{"name":"keyword.other.activity.endwhile.source.wsd"},"2":{"name":"keyword.other.activity.endwhile.source.wsd"},"4":{"name":"meta.comment.activity.endwhile.source.wsd"}}}]},"Class":{"patterns":[{"begin":"(?i)^\\s*(enum|abstract\\s+class|abstract|class)\\s+([\\w\\d_\\.]+|\"[^\"]+\")(\\s*(\u003c\u003c.+?\u003e\u003e))?(\\s+(as)\\s+([\\w\\d_\\.]+|\"[^\"]+\")(\\s*(\u003c\u003c.+?\u003e\u003e))?)?(\\s+#(([\\w\\|\\\\\\/\\-]+)))?\\s*\\{\\s*$","end":"^\\s*(?\u003c!\\\\)\\}\\s*$","patterns":[{"match":"(?i)^\\s*([.=_-]{2,})\\s*((.+?)\\s*([.=_-]{2,}))?","captures":{"1":{"name":"meta.comment.class.group.separator.source.wsd"},"3":{"name":"string.quoted.double.class.group.separator.source.wsd"},"4":{"name":"meta.comment.class.group.separator.source.wsd"}}},{"match":"(?i)^\\s*(\\s*\\{(static|abstract)\\}\\s*)?(\\s*[~#+-]\\s*)?(([\\p{L}0-9_]+(\\[\\])?\\s+)?([\\p{L}0-9_]+)(\\(\\))|([\\p{L}0-9_]+)(\\(\\))\\s*:\\s*([\\p{L}0-9_]+)?)\\s*$","captures":{"1":{"name":"storage.modifier.class.function.source.wsd"},"11":{"name":"support.type.class.function.source.wsd"},"3":{"name":"keyword.other.class.function.source.wsd"},"5":{"name":"support.type.class.function.source.wsd"},"7":{"name":"support.variable.class.function.source.wsd"},"9":{"name":"support.variable.class.function.source.wsd"}}},{"match":"(?i)^\\s*(\\s*\\{(static|abstract)\\}\\s*)?(\\s*[~#+-]\\s*)?(([\\p{L}0-9_]+(\\[\\])?\\s+)?([\\p{L}0-9_]+)|([\\p{L}0-9_]+)\\s*:\\s*(\\w+)?)\\s*$","captures":{"1":{"name":"storage.modifier.class.fields.source.wsd"},"3":{"name":"keyword.other.class.fields.source.wsd"},"5":{"name":"support.type.class.fields.source.wsd"},"7":{"name":"support.variable.class.fields.source.wsd"},"8":{"name":"support.variable.class.fields.source.wsd"},"9":{"name":"support.type.class.fields.source.wsd"}}},{"match":"(?i)^\\s*(\\s*\\{(static|abstract)\\}\\s*)?(\\s*[~#+-]\\s*)?(.+?)\\s*$","captures":{"1":{"name":"storage.modifier.class.fields.source.wsd"},"3":{"name":"keyword.other.class.fields.source.wsd"},"4":{"name":"string.quoted.double.class.other.source.wsd"}}}],"beginCaptures":{"1":{"name":"keyword.other.class.group.source.wsd"},"10":{"name":"constant.numeric.class.definition.source.wsd"},"2":{"name":"support.variable.class.group.source.wsd"},"4":{"name":"string.quoted.double.class.definition.source.wsd"},"6":{"name":"keyword.other.class.group.source.wsd"},"7":{"name":"support.variable.class.group.source.wsd"},"9":{"name":"string.quoted.double.class.definition.source.wsd"}}},{"match":"(?i)^\\s*(hide|show)\\s+(([\\w\\d_\\.]+|\"[^\"]+\")|\u003c\u003c.+?\u003e\u003e|Stereotypes|class|interface|enum)(\\s+(empty fields|empty methods|fields|attributes|methods|members|circle))?\\s*$","captures":{"1":{"name":"keyword.other.class.hideshow.source.wsd"},"2":{"name":"support.variable.class.hideshow.source.wsd"},"5":{"name":"constant.numeric.class.hideshow.source.wsd"}}}]},"Comment":{"patterns":[{"name":"comment.line.comment.source.wsd","begin":"(?i)^\\s*(')","end":"(?i)\\n"},{"name":"comment.block.source.wsd","begin":"(?i)\\s*(/')","end":"(?i)('/)\\s*"}]},"General":{"patterns":[{"begin":"(?i)^\\s*(title)\\s*$","end":"(?i)^\\s*\\b(end\\s+title)\\b","patterns":[{"match":"(?i)^\\s*(.+?)\\s*$","captures":{"1":{"name":"entity.name.function.title.source.wsd"}}}],"beginCaptures":{"1":{"name":"keyword.other.title.source.wsd"}},"endCaptures":{"1":{"name":"keyword.other.title.source.wsd"}}},{"match":"(?i)^\\s*(title)\\s+(.+?)\\s*$","captures":{"1":{"name":"keyword.other.title.source.wsd"},"2":{"name":"entity.name.function.title.source.wsd"}}},{"name":"keyword.other.scale.source.wsd","match":"(?i)^\\s*(scale)\\s+((max)\\s+)?(\\d+(\\.?\\d+)?)\\s*((([\\*/])\\s*(\\d+\\.?(\\.?\\d+)?))|(width|height))?\\s*$","captures":{"1":{"name":"keyword.other.scale.source.wsd"},"11":{"name":"keyword.other.scale.source.wsd"},"3":{"name":"keyword.other.scale.source.wsd"},"4":{"name":"constant.numeric.scale.source.wsd"},"8":{"name":"keyword.operator.scale.source.wsd"},"9":{"name":"constant.numeric.scale.source.wsd"}}},{"match":"(?i)^\\s*(caption)\\s+(.+)\\s*$","captures":{"1":{"name":"keyword.other.note.source.wsd"},"2":{"name":"constant.numeric.caption.source.wsd"}}},{"match":"(?i)^\\s*(note\\s(left|right))\\s*:\\s*(.+)\\s*$","captures":{"1":{"name":"keyword.other.note.source.wsd"},"3":{"name":"meta.comment.note.source.wsd"}}},{"begin":"(?i)^\\s*(note\\s(left|right))\\s*$","end":"(?i)^\\s*(end\\s*note)","patterns":[{"name":"meta.comment.multiple.note.source.wsd","match":".+?"}],"beginCaptures":{"1":{"name":"keyword.other.note.source.wsd"}},"endCaptures":{"1":{"name":"keyword.other.note.source.wsd"}}},{"match":"(?i)^\\s*([rh]?note)(?:\\s+(right|left|top|bottom))?\\s+(?:(?:(of|over)\\s*(?:[^\\s\\w\\d]([\\w\\s]+)[^\\s\\w\\d]|(?:(\".+?\"|\\w+)(?:,\\s*(\".+?\"|\\w+))*)))|(on\\s+link))\\s*(#\\w+)?\\s*:\\s*(.+)$","captures":{"1":{"name":"keyword.other.noteof.source.wsd"},"2":{"name":"constant.numeric.noteof.source.wsd"},"3":{"name":"keyword.other.noteof.source.wsd"},"4":{"name":"support.variable.noteof.source.wsd"},"5":{"name":"support.variable.noteof.source.wsd"},"6":{"name":"support.variable.noteof.source.wsd"},"7":{"name":"keyword.other.noteof.source.wsd"},"8":{"name":"constant.numeric.noteof.source.wsd"},"9":{"name":"meta.comment.noteof.source.wsd"}}},{"begin":"(?i)^\\s*([rh]?note)(?:\\s+(right|left|top|bottom))?\\s+(?:(?:(of|over)\\s*(?:[^\\s\\w\\d]([\\w\\s]+)[^\\s\\w\\d]|(?:(\".+?\"|\\w+)(?:,\\s*(\".+?\"|\\w+))*)))|(on\\s+link))\\s*(#\\w+)?\\s*$","end":"(?i)^\\s*(end\\s*[rh]?note)","patterns":[{"name":"meta.comment.multline.noteof.source.wsd","match":".+?"}],"beginCaptures":{"1":{"name":"keyword.other.noteof.source.wsd"},"2":{"name":"constant.numeric.noteof.source.wsd"},"3":{"name":"keyword.other.noteof.source.wsd"},"4":{"name":"support.variable.noteof.source.wsd"},"5":{"name":"support.variable.noteof.source.wsd"},"6":{"name":"support.variable.noteof.source.wsd"},"7":{"name":"keyword.other.noteof.source.wsd"},"8":{"name":"constant.numeric.noteof.source.wsd"}},"endCaptures":{"1":{"name":"keyword.other.multline.noteof.source.wsd"}}},{"match":"(?i)^\\s*(note)\\s+(\".+?\")\\s+(as)\\s+([\\w\\d]+)\\s*$","captures":{"1":{"name":"keyword.other.noteas.source.wsd"},"2":{"name":"meta.comment.noteas.source.wsd"},"3":{"name":"keyword.other.noteas.source.wsd"},"4":{"name":"support.variable.noteas.source.wsd"}}},{"begin":"(?i)^\\s*(?:(center|left|right)\\s+)?(header|legend|footer)\\s*\\n","end":"(?i)^\\s*(end\\s?(header|legend|footer))","patterns":[{"name":"meta.comment.header_legend_footer.source.wsd","match":".+?"}],"beginCaptures":{"1":{"name":"constant.numeric.header_legend_footer.source.wsd"},"2":{"name":"keyword.other.header_legend_footer.source.wsd"}},"endCaptures":{"1":{"name":"keyword.other.header_legend_footer.source.wsd"}}},{"match":"(?i)^\\s*(?:(center|left|right)\\s+)?(header|legend|footer)\\s+(.+?)\\s*$","captures":{"1":{"name":"constant.numeric.header_legend_footer.source.wsd"},"2":{"name":"keyword.other.header_legend_footer.source.wsd"},"3":{"name":"meta.comment.header_legend_footer.source.wsd"}}},{"name":"entity.name.function.preprocessings.source.wsd","match":"(?i)(!includesub|!include|!enddefinelong|!definelong|!define|!startsub|!endsub|!ifdef|!else|!endif|!ifndef|!if|!elseif|!endif|!while|!endwhile|!(unquoted\\s|final\\s)*procedure|!(unquoted\\s|final\\s)*function|!end\\s*(function|procedure)|!return|!import|!includedef|!includeurl|!include_many|!include_once|!log|!dump_memory|!theme|!pragma|!assume\\s+transparent\\s+(dark|light))"},{"begin":"(?i)((?:(?:(?:\\s+[ox]|[+*])?(?:\u003c\u003c|\u003c\\|?|\\\\\\\\|\\\\|//|\\}|\\^|#|0|0\\))?)(?=[-.~=]))[-.~=]+(\\[(?:\\#(?:[0-9a-f]{6}|[0-9a-f]{3}|\\w+)(?:[-\\\\/](?:[0-9a-f]{6}|[0-9a-f]{3}|\\w+))?\\b)\\])?(?:(left|right|up|down)(?:[-.~=]))?[-.]*(?:(?:\u003e\u003e|\\|?\u003e|\\\\\\\\|\\\\|//|\\{|\\^|#|0|\\(0)?(?:[ox]\\s+|[+*])?))","end":"$","patterns":[{"include":"#General"},{"match":"(?i):([^:]+):\\s*:(.+)$","captures":{"1":{"name":"support.variable.actor.link.source.wsd"},"2":{"name":"meta.comment.message.link.source.wsd"}}},{"match":"(?i):(.+)$","captures":{"1":{"name":"meta.comment.message.link.source.wsd"}}}],"beginCaptures":{"1":{"name":"keyword.control.note.source.wsd"},"2":{"name":"constant.numeric.link.color.source.wsd"},"3":{"name":"constant.language.link.source.wsd"}}},{"name":"constant.numeric.colors.source.wsd","match":"(?i)#(?:[0-9a-f]{6}|[0-9a-f]{3}|\\w+)"},{"name":"support.variable.source.wsd","match":"\\b[\\w_]+"}]},"Keywords":{"patterns":[{"name":"keyword.other.linebegin.source.wsd","match":"(?i)^\\s*(usecase|actor|object|participant|boundary|control|entity|database|create|component|interface|package|node|folder|frame|cloud|annotation|enum|abstract\\s+class|abstract|class|state|autonumber(\\s+stop|\\s+resume|\\s+inc)?|activate|deactivate|return|destroy|newpage|alt|else|opt|loop|par|break|critical|group|box|rectangle|namespace|partition|agent|artifact|card|circle|collections|file|hexagon|label|person|queue|stack|storage|mainframe|map|repeat|backward|diamond|goto|binary|clock|concise|robust)\\b"},{"name":"keyword.other.wholeline.source.wsd","match":"(?i)^\\s*(split( again)?|endif|repeat|start|stop|end|end\\s+fork|end\\s+split|fork( again)?|detach|end\\s+box|top\\s+to\\s+bottom\\s+direction|left\\s+to\\s+right\\s+direction|kill|end\\s+merge|allow(_)?mixing)\\s*$"},{"name":"keyword.other.other.source.wsd","match":"(?i)\\b(as|{(static|abstract)\\})\\b"}]},"Object":{"patterns":[{"match":"(?i)^\\s*([\\w\\d_]+)\\s+:\\s+s*$","captures":{"1":{"name":"support.variable.object.addfields.source.wsd"},"2":{"name":"meta.comment.object.addfields.source.wsd"}}}]},"Quoted":{"patterns":[{"name":"support.variable.definitions.source.wsd","begin":"(?i)^\\s*(:)","end":"(?i)(:)|[\\];|\u003c\u003e/}]?\\s*$"},{"name":"string.quoted.double.source.wsd","begin":"\"","end":"\""}]},"Sequence":{"patterns":[{"match":"(?i)^\\s*(={2,})\\s*(.+?)\\s*(={2,})\\s*$","captures":{"1":{"name":"keyword.operator.sequence.divider.source.wsd"},"2":{"name":"string.quoted.double.sequence.divider.source.wsd"},"3":{"name":"keyword.operator.sequence.divider.source.wsd"}}},{"match":"(?i)^\\s*(\\.{3,})\\s*$","captures":{"1":{"name":"keyword.operator.sequence.omission.source.wsd"}}},{"match":"(?i)^\\s*(ref\\s+over)\\s+(.+?)\\s*:\\s*(.+)\\s*$","captures":{"1":{"name":"keyword.other.sequence.ref.source.wsd"},"2":{"name":"support.variable.sequence.ref.source.wsd"},"3":{"name":"meta.comment.sequence.ref.source.wsd"}}},{"begin":"(?i)^\\s*(ref\\s+over)\\s+(.+?)\\s*$","end":"(?i)end\\s+ref","patterns":[{"name":"meta.comment.sequence.ref.source.wsd","match":".+?"}],"beginCaptures":{"1":{"name":"keyword.other.sequence.ref.source.wsd"},"2":{"name":"support.variable.sequence.ref.source.wsd"}},"endCaptures":{"0":{"name":"keyword.other.sequence.ref.source.wsd"}}},{"match":"(?i)^\\s*(\\.{3,})\\s*(.+)\\s*(\\.{3,})\\s*$","captures":{"1":{"name":"keyword.operator.sequence.delay.source.wsd"},"2":{"name":"meta.comment.sequence.delay.source.wsd"},"3":{"name":"keyword.operator.sequence.delay.source.wsd"}}},{"match":"(?i)(\\|{2,})(\\d+)?(\\|{1,})","captures":{"1":{"name":"keyword.operator.sequence.space.source.wsd"},"2":{"name":"constant.numeric.sequence.space.source.wsd"},"3":{"name":"keyword.operator.sequence.space.source.wsd"}}}]},"State":{"patterns":[{"match":"(?i)^\\s*(-{2,})\\s*$","captures":{"1":{"name":"keyword.other.state.concurrent.source.wsd"}}}]},"Style":{"patterns":[{"match":"(?i)^\\s*(skinparam)\\s+(\\w+)(\u003c\u003c\\s*.+?\\s*\u003e\u003e)?\\s+([^\\{\\}]+?)\\s*$","captures":{"1":{"name":"keyword.other.skinparam.source.wsd"},"2":{"name":"keyword.other.skinparam.keyword.source.wsd"},"3":{"name":"constant.numeric.skinparam.keyword.source.wsd"},"4":{"name":"string.quoted.double.skinparam.value.source.wsd"}}},{"begin":"(?i)^\\s*(?:(skinparam)(?:\\s+(\\w+?)(\u003c\u003c\\s*.+?\\s*\u003e\u003e)?)?|(\\w+)(\u003c\u003c\\s*.+?\\s*\u003e\u003e)?)\\s*\\{\\s*$","end":"^\\s*(?\u003c!\\\\)\\}\\s*$","patterns":[{"match":"(?i)^\\s*(\\w+)(\u003c\u003c\\s*.+?\\s*\u003e\u003e)?\\s+([^\\{\\}]+?)\\s*$","captures":{"1":{"name":"keyword.other.skinparam.keyword.source.wsd"},"2":{"name":"constant.numeric.skinparam.keyword.source.wsd"},"3":{"name":"string.quoted.double.skinparam.value.source.wsd"}}},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.other.skinparam.source.wsd"},"2":{"name":"keyword.other.skinparam.keyword.source.wsd"},"3":{"name":"constant.numeric.skinparam.keyword.source.wsd"},"4":{"name":"keyword.other.skinparam.keyword.source.wsd"},"5":{"name":"constant.numeric.skinparam.keyword.source.wsd"}}}]}}}
1
+ {"name":"Diagram","scopeName":"source.wsd","patterns":[{"name":"diagram.source.wsd","begin":"(?i)^\\s*(@start[a-z]+)((\\s+)(.+?))?\\s*$","end":"(?i)^\\s*(@end[a-z]+)\\s*$","patterns":[{"include":"#Quoted"},{"include":"#Comment"},{"include":"#Style"},{"include":"#Class"},{"include":"#Object"},{"include":"#Activity"},{"include":"#Sequence"},{"include":"#State"},{"include":"#Keywords"},{"include":"#General"}],"beginCaptures":{"1":{"name":"keyword.control.diagram.source.wsd"},"5":{"name":"entity.name.function.diagram.source.wsd"}},"endCaptures":{"1":{"name":"keyword.control.diagram.source.wsd"}}},{"include":"#Quoted"},{"include":"#Comment"},{"include":"#Style"},{"include":"#Class"},{"include":"#Object"},{"include":"#Activity"},{"include":"#Sequence"},{"include":"#State"},{"include":"#Keywords"},{"include":"#General"}],"repository":{"Activity":{"patterns":[{"match":"(?i)^\\s*(else *if|if)\\s?\\((.+?)\\)\\s?(then)(\\s?\\((.+?)\\))?\\s*$","captures":{"1":{"name":"keyword.other.activity.if.source.wsd"},"2":{"name":"string.quoted.double.activity.if.source.wsd"},"3":{"name":"keyword.other.activity.if.source.wsd"},"5":{"name":"meta.comment.activity.if.source.wsd"}}},{"match":"(?i)^\\s*(else)(\\s?\\((.+?)\\))?\\s*$","captures":{"1":{"name":"keyword.other.activity.else.source.wsd"},"3":{"name":"meta.comment.activity.else.source.wsd"}}},{"match":"(?i)^\\s*(repeat\\s+)?(while)\\s*\\((.+?)\\)(\\s*(is)(\\s*\\((.+?)\\))?)?\\s*$","captures":{"1":{"name":"keyword.other.activity.while.source.wsd"},"2":{"name":"keyword.other.activity.while.source.wsd"},"3":{"name":"string.quoted.double.activity.while.source.wsd"},"5":{"name":"keyword.other.activity.while.source.wsd"},"7":{"name":"meta.comment.activity.while.source.wsd"}}},{"match":"(?i)^\\s*(end)\\s?(while)(\\s*\\((.+?)\\))?\\s*$","captures":{"1":{"name":"keyword.other.activity.endwhile.source.wsd"},"2":{"name":"keyword.other.activity.endwhile.source.wsd"},"4":{"name":"meta.comment.activity.endwhile.source.wsd"}}}]},"Class":{"patterns":[{"begin":"(?i)^\\s*(enum|abstract\\s+class|abstract|class)\\s+([\\w\\d_\\.]+|\"[^\"]+\")(\\s*(\u003c\u003c.+?\u003e\u003e))?(\\s+(as)\\s+([\\w\\d_\\.]+|\"[^\"]+\")(\\s*(\u003c\u003c.+?\u003e\u003e))?)?(\\s+#(([\\w\\|\\\\\\/\\-]+)))?\\s*\\{\\s*$","end":"^\\s*(?\u003c!\\\\)\\}\\s*$","patterns":[{"match":"(?i)^\\s*([.=_-]{2,})\\s*((.+?)\\s*([.=_-]{2,}))?","captures":{"1":{"name":"meta.comment.class.group.separator.source.wsd"},"3":{"name":"string.quoted.double.class.group.separator.source.wsd"},"4":{"name":"meta.comment.class.group.separator.source.wsd"}}},{"match":"(?i)^\\s*(\\s*\\{(static|abstract)\\}\\s*)?(\\s*[~#+-]\\s*)?(([\\p{L}0-9_]+(\\[\\])?\\s+)?([\\p{L}0-9_]+)(\\(\\))|([\\p{L}0-9_]+)(\\(\\))\\s*:\\s*([\\p{L}0-9_]+)?)\\s*$","captures":{"1":{"name":"storage.modifier.class.function.source.wsd"},"11":{"name":"support.type.class.function.source.wsd"},"3":{"name":"keyword.other.class.function.source.wsd"},"5":{"name":"support.type.class.function.source.wsd"},"7":{"name":"support.variable.class.function.source.wsd"},"9":{"name":"support.variable.class.function.source.wsd"}}},{"match":"(?i)^\\s*(\\s*\\{(static|abstract)\\}\\s*)?(\\s*[~#+-]\\s*)?(([\\p{L}0-9_]+(\\[\\])?\\s+)?([\\p{L}0-9_]+)|([\\p{L}0-9_]+)\\s*:\\s*(\\w+)?)\\s*$","captures":{"1":{"name":"storage.modifier.class.fields.source.wsd"},"3":{"name":"keyword.other.class.fields.source.wsd"},"5":{"name":"support.type.class.fields.source.wsd"},"7":{"name":"support.variable.class.fields.source.wsd"},"8":{"name":"support.variable.class.fields.source.wsd"},"9":{"name":"support.type.class.fields.source.wsd"}}},{"match":"(?i)^\\s*(\\s*\\{(static|abstract)\\}\\s*)?(\\s*[~#+-]\\s*)?(.+?)\\s*$","captures":{"1":{"name":"storage.modifier.class.fields.source.wsd"},"3":{"name":"keyword.other.class.fields.source.wsd"},"4":{"name":"string.quoted.double.class.other.source.wsd"}}}],"beginCaptures":{"1":{"name":"keyword.other.class.group.source.wsd"},"10":{"name":"constant.numeric.class.definition.source.wsd"},"2":{"name":"support.variable.class.group.source.wsd"},"4":{"name":"string.quoted.double.class.definition.source.wsd"},"6":{"name":"keyword.other.class.group.source.wsd"},"7":{"name":"support.variable.class.group.source.wsd"},"9":{"name":"string.quoted.double.class.definition.source.wsd"}}},{"match":"(?i)^\\s*(hide|show|remove)\\s+(([\\w\\d_\\.\\$]+|\"[^\"]+\")|\u003c\u003c.+?\u003e\u003e|Stereotypes|class|interface|enum|@unlinked)(\\s+(empty fields|empty attributes|empty methods|empty description|fields|attributes|methods|members|circle))?\\s*$","captures":{"1":{"name":"keyword.other.class.hideshow.source.wsd"},"2":{"name":"support.variable.class.hideshow.source.wsd"},"5":{"name":"constant.numeric.class.hideshow.source.wsd"}}}]},"Comment":{"patterns":[{"name":"comment.line.comment.source.wsd","begin":"(?i)^\\s*(')","end":"(?i)\\n"},{"name":"comment.block.source.wsd","begin":"(?i)\\s*(/')","end":"(?i)('/)\\s*"}]},"General":{"patterns":[{"begin":"(?i)^\\s*(title)\\s*$","end":"(?i)^\\s*\\b(end\\s+title)\\b","patterns":[{"match":"(?i)^\\s*(.+?)\\s*$","captures":{"1":{"name":"entity.name.function.title.source.wsd"}}}],"beginCaptures":{"1":{"name":"keyword.other.title.source.wsd"}},"endCaptures":{"1":{"name":"keyword.other.title.source.wsd"}}},{"match":"(?i)^\\s*(title)\\s+(.+?)\\s*$","captures":{"1":{"name":"keyword.other.title.source.wsd"},"2":{"name":"entity.name.function.title.source.wsd"}}},{"name":"keyword.other.scale.source.wsd","match":"(?i)^\\s*(scale)\\s+((max)\\s+)?(\\d+(\\.?\\d+)?)\\s*((([\\*/])\\s*(\\d+\\.?(\\.?\\d+)?))|(width|height))?\\s*$","captures":{"1":{"name":"keyword.other.scale.source.wsd"},"11":{"name":"keyword.other.scale.source.wsd"},"3":{"name":"keyword.other.scale.source.wsd"},"4":{"name":"constant.numeric.scale.source.wsd"},"8":{"name":"keyword.operator.scale.source.wsd"},"9":{"name":"constant.numeric.scale.source.wsd"}}},{"match":"(?i)^\\s*(caption)\\s+(.+)\\s*$","captures":{"1":{"name":"keyword.other.note.source.wsd"},"2":{"name":"constant.numeric.caption.source.wsd"}}},{"match":"(?i)^\\s*(note\\s(left|right))\\s*:\\s*(.+)\\s*$","captures":{"1":{"name":"keyword.other.note.source.wsd"},"3":{"name":"meta.comment.note.source.wsd"}}},{"begin":"(?i)^\\s*(note\\s(left|right))\\s*$","end":"(?i)^\\s*(end\\s*note)","patterns":[{"name":"meta.comment.multiple.note.source.wsd","match":".+?"}],"beginCaptures":{"1":{"name":"keyword.other.note.source.wsd"}},"endCaptures":{"1":{"name":"keyword.other.note.source.wsd"}}},{"match":"(?i)^\\s*([rh]?note)(?:\\s+(right|left|top|bottom))?\\s+(?:(?:(of|over)\\s*(?:[^\\s\\w\\d]([\\w\\s]+)[^\\s\\w\\d]|(?:(\".+?\"|\\w+)(?:,\\s*(\".+?\"|\\w+))*)))|(on\\s+link))\\s*(#\\w+)?\\s*:\\s*(.+)$","captures":{"1":{"name":"keyword.other.noteof.source.wsd"},"2":{"name":"constant.numeric.noteof.source.wsd"},"3":{"name":"keyword.other.noteof.source.wsd"},"4":{"name":"support.variable.noteof.source.wsd"},"5":{"name":"support.variable.noteof.source.wsd"},"6":{"name":"support.variable.noteof.source.wsd"},"7":{"name":"keyword.other.noteof.source.wsd"},"8":{"name":"constant.numeric.noteof.source.wsd"},"9":{"name":"meta.comment.noteof.source.wsd"}}},{"begin":"(?i)^\\s*([rh]?note)(?:\\s+(right|left|top|bottom))?\\s+(?:(?:(of|over)\\s*(?:[^\\s\\w\\d]([\\w\\s]+)[^\\s\\w\\d]|(?:(\".+?\"|\\w+)(?:,\\s*(\".+?\"|\\w+))*)))|(on\\s+link))\\s*(#\\w+)?\\s*$","end":"(?i)^\\s*(end\\s*[rh]?note)","patterns":[{"name":"meta.comment.multline.noteof.source.wsd","match":".+?"}],"beginCaptures":{"1":{"name":"keyword.other.noteof.source.wsd"},"2":{"name":"constant.numeric.noteof.source.wsd"},"3":{"name":"keyword.other.noteof.source.wsd"},"4":{"name":"support.variable.noteof.source.wsd"},"5":{"name":"support.variable.noteof.source.wsd"},"6":{"name":"support.variable.noteof.source.wsd"},"7":{"name":"keyword.other.noteof.source.wsd"},"8":{"name":"constant.numeric.noteof.source.wsd"}},"endCaptures":{"1":{"name":"keyword.other.multline.noteof.source.wsd"}}},{"match":"(?i)^\\s*(note)\\s+(\".+?\")\\s+(as)\\s+([\\w\\d]+)\\s*$","captures":{"1":{"name":"keyword.other.noteas.source.wsd"},"2":{"name":"meta.comment.noteas.source.wsd"},"3":{"name":"keyword.other.noteas.source.wsd"},"4":{"name":"support.variable.noteas.source.wsd"}}},{"begin":"(?i)^\\s*(?:(center|left|right)\\s+)?(header|legend|footer)\\s*\\n","end":"(?i)^\\s*(end\\s?(header|legend|footer))","patterns":[{"name":"meta.comment.header_legend_footer.source.wsd","match":".+?"}],"beginCaptures":{"1":{"name":"constant.numeric.header_legend_footer.source.wsd"},"2":{"name":"keyword.other.header_legend_footer.source.wsd"}},"endCaptures":{"1":{"name":"keyword.other.header_legend_footer.source.wsd"}}},{"match":"(?i)^\\s*(?:(center|left|right)\\s+)?(header|legend|footer)\\s+(.+?)\\s*$","captures":{"1":{"name":"constant.numeric.header_legend_footer.source.wsd"},"2":{"name":"keyword.other.header_legend_footer.source.wsd"},"3":{"name":"meta.comment.header_legend_footer.source.wsd"}}},{"name":"entity.name.function.preprocessings.source.wsd","match":"(?i)(!includesub|!include|!enddefinelong|!definelong|!define|!startsub|!endsub|!ifdef|!else|!endif|!ifndef|!if|!elseif|!endif|!while|!endwhile|!(unquoted\\s|final\\s)*procedure|!(unquoted\\s|final\\s)*function|!end\\s*(function|procedure)|!return|!import|!includedef|!includeurl|!include_many|!include_once|!log|!dump_memory|!theme|!pragma|!assume\\s+transparent\\s+(dark|light))"},{"begin":"(?i)((?:(?:(?:\\s+[ox]|[+*])?(?:\u003c\u003c|\u003c\\|?|\\\\\\\\|\\\\|//|\\}|\\^|#|0|0\\))?)(?=[-.~=]))[-.~=]+(\\[(?:\\#(?:[0-9a-f]{6}|[0-9a-f]{3}|\\w+)(?:[-\\\\/](?:[0-9a-f]{6}|[0-9a-f]{3}|\\w+))?\\b)\\])?(?:(left|right|up|down)(?:[-.~=]))?[-.]*(?:(?:\u003e\u003e|\\|?\u003e|\\\\\\\\|\\\\|//|\\{|\\^|#|0|\\(0)?(?:[ox]\\s+|[+*])?))","end":"$","patterns":[{"include":"#General"},{"match":"(?i):([^:]+):\\s*:(.+)$","captures":{"1":{"name":"support.variable.actor.link.source.wsd"},"2":{"name":"meta.comment.message.link.source.wsd"}}},{"match":"(?i):(.+)$","captures":{"1":{"name":"meta.comment.message.link.source.wsd"}}}],"beginCaptures":{"1":{"name":"keyword.control.note.source.wsd"},"2":{"name":"constant.numeric.link.color.source.wsd"},"3":{"name":"constant.language.link.source.wsd"}}},{"name":"constant.numeric.colors.source.wsd","match":"(?i)#(?:[0-9a-f]{6}|[0-9a-f]{3}|\\w+)"},{"name":"support.variable.source.wsd","match":"\\b[\\w_]+"}]},"Keywords":{"patterns":[{"name":"keyword.other.linebegin.source.wsd","match":"(?i)^\\s*(usecase|actor|object|participant|boundary|control|entity|database|create|component|interface|package|node|folder|frame|cloud|annotation|enum|abstract\\s+class|abstract|class|state|autonumber(\\s+stop|\\s+resume|\\s+inc)?|activate|deactivate|return|destroy|newpage|alt|else|opt|loop|par|break|critical|group|box|rectangle|namespace|partition|agent|artifact|card|circle|collections|file|hexagon|label|person|queue|stack|storage|mainframe|map|repeat|backward|diamond|goto|binary|clock|concise|robust|compact\\s+concise|compact\\s+robust|json|protocol|struct)\\b"},{"name":"keyword.other.wholeline.source.wsd","match":"(?i)^\\s*(split( again)?|endif|repeat|start|stop|end|end\\s+fork|end\\s+split|fork( again)?|detach|end\\s+box|top\\s+to\\s+bottom\\s+direction|left\\s+to\\s+right\\s+direction|kill|end\\s+merge|allow(_)?mixing)\\s*$"},{"name":"keyword.other.other.source.wsd","match":"(?i)\\b(as|{(static|abstract)\\})\\b"}]},"Object":{"patterns":[{"match":"(?i)^\\s*([\\w\\d_]+)\\s+:\\s+s*$","captures":{"1":{"name":"support.variable.object.addfields.source.wsd"},"2":{"name":"meta.comment.object.addfields.source.wsd"}}}]},"Quoted":{"patterns":[{"name":"support.variable.definitions.source.wsd","begin":"(?i)^\\s*(:)","end":"(?i)(:)|[\\];|\u003c\u003e/}]?\\s*$"},{"name":"string.quoted.double.source.wsd","begin":"\"","end":"\""}]},"Sequence":{"patterns":[{"match":"(?i)^\\s*(={2,})\\s*(.+?)\\s*(={2,})\\s*$","captures":{"1":{"name":"keyword.operator.sequence.divider.source.wsd"},"2":{"name":"string.quoted.double.sequence.divider.source.wsd"},"3":{"name":"keyword.operator.sequence.divider.source.wsd"}}},{"match":"(?i)^\\s*(\\.{3,})\\s*$","captures":{"1":{"name":"keyword.operator.sequence.omission.source.wsd"}}},{"match":"(?i)^\\s*(ref\\s+over)\\s+(.+?)\\s*:\\s*(.+)\\s*$","captures":{"1":{"name":"keyword.other.sequence.ref.source.wsd"},"2":{"name":"support.variable.sequence.ref.source.wsd"},"3":{"name":"meta.comment.sequence.ref.source.wsd"}}},{"begin":"(?i)^\\s*(ref\\s+over)\\s+(.+?)\\s*$","end":"(?i)end\\s+ref","patterns":[{"name":"meta.comment.sequence.ref.source.wsd","match":".+?"}],"beginCaptures":{"1":{"name":"keyword.other.sequence.ref.source.wsd"},"2":{"name":"support.variable.sequence.ref.source.wsd"}},"endCaptures":{"0":{"name":"keyword.other.sequence.ref.source.wsd"}}},{"match":"(?i)^\\s*(\\.{3,})\\s*(.+)\\s*(\\.{3,})\\s*$","captures":{"1":{"name":"keyword.operator.sequence.delay.source.wsd"},"2":{"name":"meta.comment.sequence.delay.source.wsd"},"3":{"name":"keyword.operator.sequence.delay.source.wsd"}}},{"match":"(?i)(\\|{2,})(\\d+)?(\\|{1,})","captures":{"1":{"name":"keyword.operator.sequence.space.source.wsd"},"2":{"name":"constant.numeric.sequence.space.source.wsd"},"3":{"name":"keyword.operator.sequence.space.source.wsd"}}}]},"State":{"patterns":[{"match":"(?i)^\\s*(-{2,})\\s*$","captures":{"1":{"name":"keyword.other.state.concurrent.source.wsd"}}}]},"Style":{"patterns":[{"match":"(?i)^\\s*(skinparam)\\s+(\\w+)(\u003c\u003c\\s*.+?\\s*\u003e\u003e)?\\s+([^\\{\\}]+?)\\s*$","captures":{"1":{"name":"keyword.other.skinparam.source.wsd"},"2":{"name":"keyword.other.skinparam.keyword.source.wsd"},"3":{"name":"constant.numeric.skinparam.keyword.source.wsd"},"4":{"name":"string.quoted.double.skinparam.value.source.wsd"}}},{"begin":"(?i)^\\s*(?:(skinparam)(?:\\s+(\\w+?)(\u003c\u003c\\s*.+?\\s*\u003e\u003e)?)?|(\\w+)(\u003c\u003c\\s*.+?\\s*\u003e\u003e)?)\\s*\\{\\s*$","end":"^\\s*(?\u003c!\\\\)\\}\\s*$","patterns":[{"match":"(?i)^\\s*(\\w+)(\u003c\u003c\\s*.+?\\s*\u003e\u003e)?\\s+([^\\{\\}]+?)\\s*$","captures":{"1":{"name":"keyword.other.skinparam.keyword.source.wsd"},"2":{"name":"constant.numeric.skinparam.keyword.source.wsd"},"3":{"name":"string.quoted.double.skinparam.value.source.wsd"}}},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.other.skinparam.source.wsd"},"2":{"name":"keyword.other.skinparam.keyword.source.wsd"},"3":{"name":"constant.numeric.skinparam.keyword.source.wsd"},"4":{"name":"keyword.other.skinparam.keyword.source.wsd"},"5":{"name":"constant.numeric.skinparam.keyword.source.wsd"}}}]}}}
@@ -0,0 +1 @@
1
+ {"name":"Yul","scopeName":"source.yul","patterns":[{"name":"comment","match":"\\/\\/.*"},{"name":"comment","begin":"(\\/\\*)","end":"(\\*\\/)"},{"name":"keyword","match":"\\b(event|enum)\\s+([A-Za-z_]\\w*)\\b","captures":{"2":{"name":"entity.name.function"}}},{"name":"scope","begin":"\\b(object)\\s+(\\\"[A-Za-z_]\\w*\\\")(?:\\s+(is)\\s+)?","end":"\\{","patterns":[{"name":"string.quoted","match":"\\\"[A-Za-z_]\\w*\\\""},{"include":"#numbers"}],"beginCaptures":{"1":{"name":"keyword"},"2":{"name":"string.quoted"},"3":{"name":"keyword"}}},{"name":"keyword","match":"\\b(constructor|error|using|struct|type|modifier|fallback)(\\s+[A-Za-z_]\\w*)?\\b","captures":{"2":{"name":"entity.name.function"}}},{"name":"keyword","match":"\\b(function)(\\s+[A-Za-z_]\\w*)?\\b","captures":{"2":{"name":"entity.name.function"}}},{"match":"\\.(selector)\\b","captures":{"1":{"name":"markup.italic"}}},{"name":"markup.italic","match":"\\bthis\\b"},{"name":"markup.italic","match":"\\bsuper\\b"},{"match":"\\b(address(?:\\s+payable)?|string|bytes?\\d*|int\\d*|uint\\d*|bool|u?fixed\\d+x\\d+)\\s*(?:\\[(\\d*)\\])?\\s*(?:\\[(\\d*)\\])?\\s*(?:(indexed|memory|storage|calldata|payable|immutable)?\\s*(\\b[A-Za-z_]\\w*)?\\s*)?(?=[,\\)\\n])","captures":{"1":{"name":"constant.language"},"2":{"name":"constant.numeric"},"3":{"name":"constant.numeric"},"4":{"name":"keyword"},"5":{"name":"variable.parameter"}}},{"match":"\\b(?:(indexed|memory|storage|calldata|payable|immutable)\\s*(\\b[A-Za-z_]\\w*)?\\s*)(?=[,\\)\\n])","captures":{"1":{"name":"keyword"},"2":{"name":"variable.parameter"}}},{"name":"constant.language","match":"\\b(true|false)\\b"},{"match":"\\b(address(?:\\s*payable)?|string|bytes?\\d*|int\\d*|uint\\d*|bool|u?fixed\\d+x\\d+)\\b(?:(?:\\s*\\[(\\d*)\\])?(?:\\s*\\[(\\d*)\\])?(?:\\s*\\[(\\d*)\\])?\\s*((?:private\\s|public\\s|internal\\s|external\\s|constant\\s|immutable\\s|memory\\s|storage\\s)*)\\s*(?:[A-Za-z_]\\w*)\\s*(\\=))?","captures":{"1":{"name":"constant.language"},"2":{"name":"constant.numeric"},"3":{"name":"constant.numeric"},"4":{"name":"constant.numeric"},"5":{"name":"keyword"},"6":{"name":"keyword"}}},{"match":"\\b(payable)\\s*\\(","captures":{"1":{"name":"constant.language"}}},{"match":"\\b(from)\\s*(?=[\\'\\\"])","captures":{"1":{"name":"keyword"}}},{"match":"\\b(?:[A-Za-z_]\\w*)\\s+(as)\\s+(?:[A-Za-z_]\\w*)","captures":{"1":{"name":"keyword"}}},{"match":"\\b(global);","captures":{"1":{"name":"keyword"}}},{"name":"keyword","match":"\\b(var|solidity|constant|pragma\\s*(?:experimental|abicoder)?|code|data|hex|import|const|mstruct|mapping|payable|storage|memory|calldata|if|else|for|while|do|break|continue|returns?|try|catch|private|public|pure|view|internal|immutable|external|virtual|override|abstract|suicide|emit|is|throw|revert|assert|require|receive|delete)\\b"},{"include":"#numbers"},{"name":"constant.numeric","match":"\\b(0[xX][a-fA-F0-9]+)\\b"},{"name":"keyword.operator","match":"(=|:=|!|\u003e|\u003c|\\||\u0026|\\?|\\^|~|\\*|\\+|\\-|\\/|\\%)"},{"name":"markup.italic","match":"(\\bhex\\b|\\bunicode\\b)"},{"name":"keyword.operator","match":"\\s\\:\\s"},{"name":"support.type","match":"\\bnow\\b"},{"name":"keyword","match":"\\b_;"},{"match":"\\b(msg|block|tx)\\.([A-Za-z_]\\w*)\\b","captures":{"1":{"name":"support.type"},"2":{"name":"support.type"}}},{"name":"support.type","match":"\\b(abi)\\.([A-Za-z_]\\w*)\\b"},{"match":"\\b(blockhash|gasleft)\\s*\\(","captures":{"1":{"name":"support.type"}}},{"match":"\\b([A-Za-z_]\\w*)(?:\\s*\\[(\\d*)\\]\\s*)?(?:\\s*\\[(\\d*)\\]\\s*)?\\(","captures":{"1":{"name":"entity.name.function"},"2":{"name":"constant.numeric"},"3":{"name":"constant.numeric"}}},{"match":"(?:\\.|(new\\s+))([A-Za-z_]\\w*)\\{","captures":{"1":{"name":"keyword"},"2":{"name":"entity.name.function"}}},{"match":"\\b(wei|gwei|ether|seconds|minutes|hours|days|weeks)\\b","captures":{"1":{"name":"support.type"}}},{"name":"keyword","match":"\\bnew\\b"},{"name":"keyword","match":"\\banonymous\\b"},{"name":"keyword","match":"\\bunchecked\\b"},{"name":"keyword","match":"\\b(assembly|switch|let|case|default)\\b"},{"name":"string.quoted","match":"([\\\"].*?[\\\"])"},{"name":"string.quoted","match":"([\\'].*?[\\'])"}],"repository":{"numbers":{"patterns":[{"name":"constant.numeric","match":"\\b(?:[+-]?\\.?\\d[\\d_eE]*)(?:\\.\\d+[\\deE]*)?\\b"}]}}}
@@ -0,0 +1 @@
1
+ {"name":"Generic Hash-Commented","scopeName":"text.hash-commented","patterns":[{"include":"#main"}],"repository":{"comment":{"name":"comment.line.hash-commented","begin":"#","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.hash-commented"}}},"content":{"name":"meta.content.hash-commented","match":"^.+$"},"main":{"patterns":[{"include":"#comment"},{"include":"#content"}]}}}
@@ -0,0 +1 @@
1
+ {"name":"Antlers (Statamic Syntax)","scopeName":"text.html.statamic","patterns":[{"include":"#php-tag"},{"include":"#statamic-comments"},{"include":"#frontMatter"},{"include":"#antlers-tags"}],"repository":{"antlers-conditionals":{"name":"keyword.control.statamic","match":"(?\u003c!:)(/?else|/?elseif|/?if|/?unless|endif|endunless|unlesselse|stop)"},"antlers-constants":{"match":"(\\G|\\s|\\b)(true|TRUE|false|FALSE|yes|YES|no|NO|null|as)\\s","captures":{"2":{"name":"constant.language.statamic"}}},"antlers-expression":{"patterns":[{"name":"punctuation.terminator.expression.statamic","match":";"},{"include":"#antlers-strings"},{"include":"#antlers-numbers"},{"name":"keyword.operator.key.statamic","match":"=\u003e"},{"name":"keyword.operator.class.statamic","match":"-\u003e"},{"include":"#statamic-explicit-tags"},{"include":"#statamic-core-tags"},{"name":"keyword.operator.comparison.statamic","match":"===|==|!==|!=|\u003c\u003e"},{"name":"keyword.operator.string.statamic","match":"\\\u0026=?"},{"name":"keyword.operator.assignment.statamic","match":"=|\\+=|\\-=|\\*\\*?=|/=|%=|\\|=|\\^=|\u003c\u003c=|\u003e\u003e="},{"name":"keyword.operator.logical.statamic","match":"(?i)(!|\\?\\?|\\?=|\\?|\u0026\u0026|\u0026|\\|\\|)|\\b(and|or|xor)\\b"},{"name":"keyword.operator.bitwise.statamic","match":"(?i)\\b(bwa|bwo|bxor|bnot|bsl|bsr)\\b"},{"name":"keyword.operator.comparison.statamic","match":"\u003c=\u003e|\u003c=|\u003e=|\u003c|\u003e"},{"name":"keyword.operator.arithmetic.statamic","match":"\\-|\\+|\\*\\*?|/|%"},{"name":"meta.array.statamic","begin":"(arr|list|switch)\\s*(\\()","end":"\\)|(?=\\?\u003e)","patterns":[{"include":"#antlers-expression"}],"beginCaptures":{"1":{"name":"support.function.construct.statamic"},"2":{"name":"punctuation.definition.array.begin.bracket.round.statamic"}},"endCaptures":{"0":{"name":"punctuation.definition.array.end.bracket.round.statamic"}}},{"begin":"(?\u003c!@){(\\s?)","end":"(\\s?)}","patterns":[{"include":"#antlers-expression"}]},{"include":"#antlers-tag-parameter-variable"},{"include":"#antlers-language-operators"},{"include":"#antlers-variable"},{"include":"#antlers-modifier-pipe"},{"include":"#antlers-variable-modifier-name"},{"include":"#antlers-variable-modifiers"},{"include":"#antlers-constants"}]},"antlers-language-operators":{"match":"(\\w+)[\\s]","captures":{"1":{"name":"variable.statamic","patterns":[{"include":"#antlers-numbers"},{"include":"#language-operators"}]}}},"antlers-modifier-pipe":{"name":"keyword.operator.other.statamic","match":"(\\|)"},"antlers-numbers":{"name":"constant.numeric.statamic","match":"0|[1-9](?:_?[0-9]+)*"},"antlers-strings":{"patterns":[{"include":"#string-double-quoted"},{"include":"#string-single-quoted"}]},"antlers-tag-parameter-variable":{"match":"(:?([\\S:]+?)(=)('|\")([^\\4]*?)(\\4))","captures":{"1":{"patterns":[{"match":":([\\S:]+?)(=)('|\")(.*?)(\\3)","captures":{"1":{"name":"entity.other.attribute-name"},"2":{"name":"keyword.operator.assignment.statamic"},"3":{"name":"punctuation.definition.string.begin.statamic"},"4":{"patterns":[{"include":"#antlers-expression"}]},"5":{"name":"punctuation.definition.string.end.statamic"}}},{"match":"([\\S]+?)(=)(('|\")(.*?)(\\4))","captures":{"1":{"name":"entity.other.attribute-name"},"2":{"name":"keyword.operator.assignment.statamic"},"3":{"patterns":[{"include":"#string-single-quoted"},{"include":"#string-double-quoted"}]}}}]}}},"antlers-tags":{"name":"meta.embedded.block.statamic","begin":"(?\u003c!@){{(?!\\$)(\\s?)","end":"(\\s?)}}","patterns":[{"include":"#statamic-comments"},{"include":"#php-tag"},{"include":"#antlers-conditionals"},{"include":"#antlers-expression"}]},"antlers-variable":{"match":"(/?\\w+)(:)?(\\w+)?","captures":{"1":{"name":"variable.statamic"},"2":{"name":"keyword.operator.statamic"},"3":{"name":"variable.statamic","patterns":[{"include":"$self"}]}}},"antlers-variable-modifier-name":{"match":"(\\s)?(\\|)(\\s)?(\\w+((^:([a-zA-Z0-9-_/-@]+)){1,2})?|((-|\\+|\\*|/|\\^|\\%):(\\d*)?\\.?(\\d+)))+","captures":{"2":{"name":"keyword.operator.statamic"},"4":{"name":"support.function.statamic"}}},"antlers-variable-modifiers":{"match":"(\\s)?(\\|)(\\s)?(\\w+((:([a-zA-Z0-9-_/-@]+)){1,2})?|((-|\\+|\\*|/|\\^|\\%):(\\d*)?\\.?(\\d+)))+","captures":{"2":{"name":"keyword.operator.statamic"},"4":{"name":"support.function.statamic","patterns":[{"include":"#antlers-expression"}]}}},"core-tag-names":{"patterns":[{"name":"entity.name.tag.statamic","match":"(?i)\\b(taxonomy|collection|asset|vite|mount_url|form|assets|cache|can|dd|ddd|dump|get_content|get_error|get_errors|get_files|glide|in|increment|installed|is|iterate|foreach|link|locales|markdown|member|mix|nav|not_found|404|obfuscate|parent|partial|path|query|range|loop|redirect|relate|rotate|route|scope|section|session|set|structure|svg|theme|trans|trans_choice|user|users|widont|yields|yield|slot|once|noparse|view|stack|push)\\b"}]},"frontMatter":{"contentName":"meta.embedded.block.frontmatter","begin":"\\A-{3}\\s*$","end":"(^|\\G)-{3}|\\.{3}\\s*$","patterns":[{"include":"source.yaml"}]},"language-operators":{"patterns":[{"name":"support.function.array.statamic","match":"(?i)\\b(pluck|take|skip|arr|orderby|groupby|merge|where|switch|bwa|bwo|bxor|bnot|bsl|bsr|if|elseif|else|void)(\\b)"}]},"php-tag":{"patterns":[{"name":"meta.embedded.block.statamic","contentName":"source.php","begin":"\u003c\\?(?i:php|=)?(?![^?]*\\?\u003e)","end":"(\\?)\u003e","patterns":[{"include":"text.html.php"}],"beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.statamic"}},"endCaptures":{"0":{"name":"punctuation.section.embedded.end.statamic"},"1":{"name":"source.php"}}},{"name":"meta.embedded.line.statamic","contentName":"source.php","begin":"(?\u003c!@){{([\\$\\?]\\s?)","end":"(\\s?)[\\$\\?]}}","patterns":[{"include":"text.html.php"}],"beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.statamic"}},"endCaptures":{"0":{"name":"punctuation.section.embedded.end.statamic"},"1":{"name":"source.php"}}},{"name":"meta.embedded.line.statamic","contentName":"source.php","begin":"\u003c\\?(?i:php|=)?","end":"(\\?)\u003e","patterns":[{"include":"text.html.php"}],"beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.statamic"}},"endCaptures":{"0":{"name":"punctuation.section.embedded.end.statamic"},"1":{"name":"source.php"}}}]},"statamic-comments":{"name":"comment.block.statamic","begin":"{{#","end":"#}}"},"statamic-core-closing-tags":{"match":"\\/(\\w+)+","captures":{"1":{"name":"variable.statamic","patterns":[{"include":"#core-tag-names"}]}}},"statamic-core-tags":{"match":"\\G(/?\\w+)+","captures":{"1":{"name":"variable.statamic","patterns":[{"include":"#core-tag-names"}]}}},"statamic-explicit-tags":{"match":"\\G(/?%\\w+)+","captures":{"1":{"name":"entity.name.tag.statamic"}}},"string-double-quoted":{"name":"string.quoted.double.statamic","begin":"\"","end":"\"","patterns":[{"begin":"(?\u003c!@){(\\s?)","end":"(\\s?)}","patterns":[{"include":"#antlers-expression"}]}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.statamic"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.statamic"}}},"string-single-quoted":{"name":"string.quoted.single.statamic","begin":"'","end":"'","patterns":[{"name":"constant.character.escape.statamic","match":"\\\\[\\\\']"},{"begin":"(?\u003c!@){(\\s?)","end":"(\\s?)}","patterns":[{"include":"#antlers-expression"}]}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.statamic"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.statamic"}}}},"injections":{"text.html.statamic":{"patterns":[{"include":"#statamic-comments"},{"include":"#antlers-tags"}]},"text.html.statamic - (meta.embedded | meta.tag | comment.block.statamic), L:(text.html.statamic meta.tag - (comment.block.statamic | meta.embedded.statamic))":{"patterns":[{"include":"text.html.basic"}]},"text.html.statamic - (meta.embedded | meta.tag), L:((text.html.statamic meta.tag) - (meta.embedded.block.php | meta.embedded.line.php)), L:(source.js - (meta.embedded.block.php | meta.embedded.line.php)), L:(source.css - (meta.embedded.block.php | meta.embedded.line.php))":{"patterns":[{"include":"#php-tag"}]}}}
@@ -1 +1 @@
1
- {"name":"SRT Subtitle","scopeName":"text.srt","patterns":[{"include":"#subtitle"}],"repository":{"bold":{"name":"markup.bold.srt","begin":"(?i)\u003cb\u003e","end":"(?i)\u003c/b\u003e","patterns":[{"include":"#sound"},{"include":"#person"},{"include":"#bold"},{"include":"#italic"},{"include":"#underline"},{"include":"#font"}]},"font":{"name":"markup.link.font.srt","begin":"(?i)\u003cfont\\b.*?\u003e","end":"(?i)\u003c/font\u003e","patterns":[{"include":"#sound"},{"include":"#person"},{"include":"#bold"},{"include":"#italic"},{"include":"#underline"},{"include":"#font"}]},"italic":{"name":"markup.italic.srt","begin":"(?i)\u003ci\u003e","end":"(?i)\u003c/i\u003e","patterns":[{"include":"#sound"},{"include":"#person"},{"include":"#bold"},{"include":"#italic"},{"include":"#underline"},{"include":"#font"}]},"person":{"name":"entity.name.tag.srt","match":"^\\w+:"},"sound":{"name":"string.quoted.other.sound.srt","match":"\\[.*?\\]|\\(.*?\\)"},"subtitle":{"name":"meta.subtitle.srt","begin":"\\b\\d+$","end":"^\\s*$","patterns":[{"include":"#time"},{"include":"#sound"},{"include":"#person"},{"include":"#bold"},{"include":"#italic"},{"include":"#underline"},{"include":"#font"}],"beginCaptures":{"0":{"name":"entity.name.section.srt"}}},"time":{"match":"^(\\d{2}:\\d{2}:\\d{2},\\d{3})\\s*(--\u003e)\\s*(\\d{2}:\\d{2}:\\d{2},\\d{3})$","captures":{"1":{"name":"constant.numeric.time.srt"},"2":{"name":"punctuation.definition.separator.srt"},"3":{"name":"constant.numeric.time.srt"}}},"underline":{"name":"markup.underline.srt","begin":"(?i)\u003cu\u003e","end":"(?i)\u003c/u\u003e","patterns":[{"include":"#sound"},{"include":"#person"},{"include":"#bold"},{"include":"#italic"},{"include":"#underline"},{"include":"#font"}]}}}
1
+ {"name":"SubRip Text","scopeName":"text.srt","patterns":[{"include":"#main"}],"repository":{"action":{"patterns":[{"name":"string.quoted.other.sound.action.square-brackets.srt","begin":"\\[","end":"\\]|(?=^[ \\t]*$)","patterns":[{"include":"#formatting"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.srt"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.srt"}}},{"name":"string.quoted.other.sound.action.round-brackets.srt","begin":"\\(","end":"\\)|(?=^[ \\t]*$)","patterns":[{"include":"#formatting"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.srt"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.srt"}}}]},"arrow":{"name":"keyword.operator.timespan.srt","match":"--\u003e","captures":{"0":{"name":"punctuation.definition.separator.srt"}}},"bold":{"contentName":"markup.bold.srt","begin":"(\u003c)([Bb])(?=$|\u003e|\\s)([^\u003e]*)(\u003e)","end":"(\u003c/)([Bb])[ \\t]*(\u003e)|(?=^[ \\t]*$)","patterns":[{"include":"#text"}],"beginCaptures":{"0":{"name":"meta.tag.inline.b.html.srt"},"1":{"name":"punctuation.definition.tag.begin.html.srt"},"2":{"name":"entity.name.tag.inline.b.html.srt"},"3":{"patterns":[{"include":"text.html.basic#tag-stuff"}]},"4":{"name":"punctuation.definition.tag.end.html.srt"}},"endCaptures":{"0":{"name":"meta.tag.inline.b.html.srt"},"1":{"name":"punctuation.definition.tag.begin.html.srt"},"2":{"name":"entity.name.tag.inline.b.html"},"3":{"name":"punctuation.definition.tag.end.html.srt"}}},"dash":{"name":"markup.quote.quotation-dash.srt","match":"(?:^|\\G)(-)","captures":{"1":{"name":"punctuation.section.quote.srt"}}},"escapes":{"patterns":[{"name":"constant.character.whitespace.escape.hard-space.srt","match":"(\\\\)h","captures":{"1":{"name":"punctuation.definition.escape.backslash.srt"}}},{"name":"constant.character.whitespace.escape.forced-newline.srt","match":"(\\\\)N","captures":{"1":{"name":"punctuation.definition.escape.backslash.srt"}}}]},"font":{"contentName":"markup.other.font.srt","begin":"(?i)(\u003c)(font)(?=$|\u003e|\\s)([^\u003e]*)(\u003e)","end":"(?i)(\u003c/)(font)[ \\t]*(\u003e)|(?=^[ \\t]*$)","patterns":[{"include":"#text"}],"beginCaptures":{"0":{"name":"meta.tag.inline.font.html.srt"},"1":{"name":"punctuation.definition.tag.begin.html.srt"},"2":{"name":"entity.name.tag.inline.font.html.srt"},"3":{"patterns":[{"include":"text.html.basic#tag-stuff"}]},"4":{"name":"punctuation.definition.tag.end.html.srt"}},"endCaptures":{"0":{"name":"meta.tag.inline.font.html.srt"},"1":{"name":"punctuation.definition.tag.begin.html.srt"},"2":{"name":"entity.name.tag.inline.font.html.srt"},"3":{"name":"punctuation.definition.tag.end.html.srt"}}},"formatting":{"patterns":[{"include":"#bold"},{"include":"#italic"},{"include":"#underline"},{"include":"#strike"},{"include":"#font"}]},"italic":{"contentName":"markup.italic.srt","begin":"(\u003c)([Ii])(?=$|\u003e|\\s)([^\u003e]*)(\u003e)","end":"(\u003c/)([Ii])[ \\t]*(\u003e)|(?=^[ \\t]*$)","patterns":[{"include":"#text"}],"beginCaptures":{"0":{"name":"meta.tag.inline.i.html.srt"},"1":{"name":"punctuation.definition.tag.begin.html.srt"},"2":{"name":"entity.name.tag.inline.i.html.srt"},"3":{"patterns":[{"include":"text.html.basic#tag-stuff"}]},"4":{"name":"punctuation.definition.tag.end.html.srt"}},"endCaptures":{"0":{"name":"meta.tag.inline.i.html.srt"},"1":{"name":"punctuation.definition.tag.begin.html.srt"},"2":{"name":"entity.name.tag.inline.i.html"},"3":{"name":"punctuation.definition.tag.end.html.srt"}}},"linePosition":{"name":"meta.line-position.${2:/downcase}-axis.srt","match":"\\b(([XY])[0-9]+)(:)(?:([-+]?[0-9]+\\.[0-9]+)|([-+]?[0-9]+))\\b","captures":{"1":{"name":"variable.parameter.position.srt"},"3":{"name":"keyword.operator.assignment.key-value.colon.srt"},"4":{"name":"constant.numeric.float.srt"},"5":{"name":"constant.numeric.integer.srt"}}},"lyrics":{"name":"markup.quote.lyrics.srt","begin":"(♪+)[ \\t]*","end":"[ \\t]*(♪+)|(?=^-|^[ \\t]*$|\\s*\u003c/)","patterns":[{"include":"#formatting"}],"beginCaptures":{"1":{"name":"punctuation.definition.lyrics.begin.srt"}},"endCaptures":{"1":{"name":"punctuation.definition.lyrics.end.srt"}}},"main":{"patterns":[{"include":"#subtitle"}]},"speaker":{"match":"(?:^|\\G)(-[ \\t]*)?((?:[^-\u003c\u003e\\s:][^:]*(?=:[ \\t]*\\S)|[^-\u003c\u003e\\s:a-z][^:a-z]*)(:))(?=$|\\s)","captures":{"1":{"patterns":[{"include":"#dash"}]},"2":{"name":"entity.name.speaker.srt","patterns":[{"include":"#formatting"},{"include":"#action"}]},"3":{"name":"punctuation.separator.speaker.colon.srt"}}},"strike":{"contentName":"markup.strike.srt","begin":"(\u003c)([Ss])(?=$|\u003e|\\s)([^\u003e]*)(\u003e)","end":"(\u003c/)([Ss])[ \\t]*(\u003e)|(?=^[ \\t]*$)","patterns":[{"include":"#text"}],"beginCaptures":{"0":{"name":"meta.tag.inline.s.html.srt"},"1":{"name":"punctuation.definition.tag.begin.html.srt"},"2":{"name":"entity.name.tag.inline.s.html.srt"},"3":{"patterns":[{"include":"text.html.basic#tag-stuff"}]},"4":{"name":"punctuation.definition.tag.end.html.srt"}},"endCaptures":{"0":{"name":"meta.tag.inline.s.html.srt"},"1":{"name":"punctuation.definition.tag.begin.html.srt"},"2":{"name":"entity.name.tag.inline.s.html"},"3":{"name":"punctuation.definition.tag.end.html.srt"}}},"subtitle":{"name":"meta.subtitle.srt","begin":"^(?:?)(\\d+)$","end":"^[ \\t]*$","patterns":[{"begin":"\\G\\s*","end":"(?!\\G)$","patterns":[{"name":"meta.timespan.empty.srt","contentName":"comment.block.ignored.hidden-subtitle.srt","begin":"(?x) ^\n([0-9]{2}:[0-9]{2}:[0-9]{2}[,.][0-9]{3}) \\x20(--\u003e)\\x20 (\\1)\n((?:\\s*[XY][0-9]+:[-+]?[0-9]+(?:\\.[0-9]+)?)++)?\n[ \\t]* $ ","end":"(?=^[ \\t]*$)","beginCaptures":{"1":{"name":"constant.numeric.time.timecode.start.srt","patterns":[{"include":"#timecode"}]},"2":{"patterns":[{"include":"#arrow"}]},"3":{"name":"constant.numeric.time.timecode.end.srt","patterns":[{"include":"#timecode"}]},"4":{"patterns":[{"include":"#linePosition"}]}}},{"name":"meta.timespan.srt","match":"(?x) ^\n([0-9]{2}:[0-9]{2}:[0-9]{2}[,.][0-9]{3}) \\x20(--\u003e)\\x20\n([0-9]{2}:[0-9]{2}:[0-9]{2}[,.][0-9]{3})\n((?:\\s*[XY][0-9]+:[-+]?[0-9]+(?:\\.[0-9]+)?)++)?\n[ \\t]* $ ","captures":{"1":{"name":"constant.numeric.time.timecode.start.srt","patterns":[{"include":"#timecode"}]},"2":{"patterns":[{"include":"#arrow"}]},"3":{"name":"constant.numeric.time.timecode.end.srt","patterns":[{"include":"#timecode"}]},"4":{"patterns":[{"include":"#linePosition"}]}}},{"include":"#text"}]},{"include":"#text"}],"beginCaptures":{"1":{"name":"entity.name.section.srt"}}},"text":{"patterns":[{"include":"#speaker"},{"include":"#dash"},{"include":"#action"},{"include":"#lyrics"},{"include":"#formatting"},{"include":"#escapes"}]},"timecode":{"patterns":[{"name":"invalid.illegal.syntax.decimal-separator.srt","match":"\\."},{"name":"invalid.illegal.value.out-of-range.vtt","match":"(?\u003c=:)([6-9][0-9])"}]},"underline":{"contentName":"markup.underline.srt","begin":"(\u003c)([Uu])(?=$|\u003e|\\s)([^\u003e]*)(\u003e)","end":"(\u003c/)([Uu])[ \\t]*(\u003e)|(?=^[ \\t]*$)","patterns":[{"include":"#text"}],"beginCaptures":{"0":{"name":"meta.tag.inline.u.html.srt"},"1":{"name":"punctuation.definition.tag.begin.html.srt"},"2":{"name":"entity.name.tag.inline.u.html.srt"},"3":{"patterns":[{"include":"text.html.basic#tag-stuff"}]},"4":{"name":"punctuation.definition.tag.end.html.srt"}},"endCaptures":{"0":{"name":"meta.tag.inline.u.html.srt"},"1":{"name":"punctuation.definition.tag.begin.html.srt"},"2":{"name":"entity.name.tag.inline.u.html"},"3":{"name":"punctuation.definition.tag.end.html.srt"}}}}}
@@ -0,0 +1 @@
1
+ {"name":"WebVTT","scopeName":"text.vtt","patterns":[{"name":"meta.file-body.vtt","begin":"\\A?(WEBVTT)(?=$|[ \\t])","end":"(?=A)B","patterns":[{"name":"meta.header.vtt","contentName":"comment.line.ignored.vtt","begin":"\\G","end":"^[ \\t]*$","patterns":[{"include":"#setting"}]},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.control.start-file.vtt"}}},{"include":"#main"}],"repository":{"badArrow":{"name":"invalid.illegal.syntax.unexpected-separator.vtt","match":"\\S*?--\u003e\\S*"},"charRef":{"patterns":[{"include":"text.html.basic#character-reference"}]},"class":{"patterns":[{"name":"support.constant.colour.foreground.$2.vtt","match":"(\\.)(black|blue|cyan|lime|magenta|red|white|yellow)(?=$|[\\s\u0026\u003c\u003e.])","captures":{"1":{"name":"punctuation.definition.entity.class.vtt"}}},{"name":"support.constant.colour.background.$2.vtt","match":"(\\.)bg_(black|blue|cyan|lime|magenta|red|white|yellow)(?=$|[\\s\u0026\u003c\u003e.])","captures":{"1":{"name":"punctuation.definition.entity.class.vtt"}}},{"name":"entity.other.attribute-name.class.vtt","match":"(\\.)[^\\s\u0026\u003c\u003e.]+","captures":{"1":{"name":"punctuation.definition.entity.class.vtt"}}}]},"comment":{"name":"comment.block.vtt","begin":"^NOTE(?=$|\\s)","end":"^[ \\t]*$","beginCaptures":{"0":{"name":"storage.type.start-comment.vtt"}}},"cue":{"name":"meta.cue.block.vtt","begin":"(?x)\n(?=\n\t^\n\t(?:\\d{2,}:)?\\d{2}:\\d{2}\\.\\d{3} # Start time\n\t[ \\t]+ --\u003e [ \\t]+ # Separator\n\t(?:\\d{2,}:)?\\d{2}:\\d{2}\\.\\d{3} # End time\n\t(?:$|[ \\t])\n)\n|\n# Cue identifier\n^((?!.*?--\u003e)[^\\r\\n]+)$","end":"^[ \\t]*$","patterns":[{"include":"#cueTimings"},{"include":"#cuePayload"}],"beginCaptures":{"1":{"name":"entity.name.cue.vtt"}}},"cueComponents":{"patterns":[{"include":"#cueSpan"},{"include":"#cueTimestamp"},{"include":"#cueDash"},{"include":"#charRef"}]},"cueDash":{"name":"markup.quote.quotation-dash.vtt","match":"(?:^|\\G)([-–—―⸺⸻〜〰︱︲﹘﹣-])","captures":{"1":{"name":"punctuation.section.quote.vtt"}}},"cuePayload":{"name":"meta.cue.payload.vtt","begin":"^(?=[ \\t]*\\S)","end":"(?=^[ \\t]*$)(?!\\G)","patterns":[{"include":"#cueComponents"}]},"cueSettings":{"name":"meta.cue.settings-list.vtt","begin":"(?\u003c=[ \\t]|^)(?!$)","end":"$","patterns":[{"include":"#badArrow"},{"include":"#setting"}]},"cueSpan":{"patterns":[{"name":"meta.span.class-span.vtt","begin":"(\u003c)(c)(?=$|\\s|/?\u003e|\\.)","end":"(?=^[ \\t]*$)|((\u003c/)(c)\\s*(\u003e))|(/\u003e)","patterns":[{"include":"#cueSpanStart"},{"include":"#cueSpanBody"}],"beginCaptures":{"0":{"name":"meta.tag.opening.vtt"},"1":{"name":"punctuation.definition.tag.begin.vtt"},"2":{"name":"entity.name.tag.localname.vtt"}},"endCaptures":{"1":{"name":"meta.tag.closing.vtt"},"2":{"name":"punctuation.definition.tag.begin.vtt"},"3":{"name":"entity.name.tag.localname.vtt"},"4":{"name":"punctuation.definition.tag.end.vtt"},"5":{"name":"punctuation.definition.tag.end.self-closing.vtt"}}},{"name":"meta.span.italics-span.vtt","begin":"(\u003c)(i)(?=$|\\s|/?\u003e|\\.)","end":"(?=^[ \\t]*$)|((\u003c/)(i)\\s*(\u003e))|(/\u003e)","patterns":[{"include":"#cueSpanStart"},{"name":"markup.italic.vtt","begin":"(?\u003c=\u003e)","end":"(?=\u003c/[A-Za-z_:]|^[ \\t]*$)","patterns":[{"include":"#cueComponents"}]}],"beginCaptures":{"0":{"name":"meta.tag.opening.vtt"},"1":{"name":"punctuation.definition.tag.begin.vtt"},"2":{"name":"entity.name.tag.localname.vtt"}},"endCaptures":{"1":{"name":"meta.tag.closing.vtt"},"2":{"name":"punctuation.definition.tag.begin.vtt"},"3":{"name":"entity.name.tag.localname.vtt"},"4":{"name":"punctuation.definition.tag.end.vtt"},"5":{"name":"punctuation.definition.tag.end.self-closing.vtt"}}},{"name":"meta.span.bold-span.vtt","begin":"(\u003c)(b)(?=$|\\s|/?\u003e|\\.)","end":"(?=^[ \\t]*$)|((\u003c/)(b)\\s*(\u003e))|(/\u003e)","patterns":[{"include":"#cueSpanStart"},{"name":"markup.bold.vtt","begin":"(?\u003c=\u003e)","end":"(?=\u003c/[A-Za-z_:]|^[ \\t]*$)","patterns":[{"include":"#cueComponents"}]}],"beginCaptures":{"0":{"name":"meta.tag.opening.vtt"},"1":{"name":"punctuation.definition.tag.begin.vtt"},"2":{"name":"entity.name.tag.localname.vtt"}},"endCaptures":{"1":{"name":"meta.tag.closing.vtt"},"2":{"name":"punctuation.definition.tag.begin.vtt"},"3":{"name":"entity.name.tag.localname.vtt"},"4":{"name":"punctuation.definition.tag.end.vtt"},"5":{"name":"punctuation.definition.tag.end.self-closing.vtt"}}},{"name":"meta.span.underline-span.vtt","begin":"(\u003c)(u)(?=$|\\s|/?\u003e|\\.)","end":"(?=^[ \\t]*$)|((\u003c/)(u)\\s*(\u003e))|(/\u003e)","patterns":[{"include":"#cueSpanStart"},{"name":"markup.underline.vtt","contentName":"string.other.link.vtt","begin":"(?\u003c=\u003e)","end":"(?=\u003c/[A-Za-z_:]|^[ \\t]*$)","patterns":[{"include":"#cueComponents"}]}],"beginCaptures":{"0":{"name":"meta.tag.opening.vtt"},"1":{"name":"punctuation.definition.tag.begin.vtt"},"2":{"name":"entity.name.tag.localname.vtt"}},"endCaptures":{"1":{"name":"meta.tag.closing.vtt"},"2":{"name":"punctuation.definition.tag.begin.vtt"},"3":{"name":"entity.name.tag.localname.vtt"},"4":{"name":"punctuation.definition.tag.end.vtt"},"5":{"name":"punctuation.definition.tag.end.self-closing.vtt"}}},{"name":"meta.span.ruby-span.vtt","begin":"(\u003c)(ruby)(?=$|\\s|/?\u003e|\\.)","end":"(?=^[ \\t]*$)|((\u003c/)(ruby)\\s*(\u003e))|(/\u003e)","patterns":[{"include":"#cueSpanStart"},{"include":"#cueSpanBody"}],"beginCaptures":{"0":{"name":"meta.tag.opening.vtt"},"1":{"name":"punctuation.definition.tag.begin.vtt"},"2":{"name":"entity.name.tag.localname.vtt"}},"endCaptures":{"1":{"name":"meta.tag.closing.vtt"},"2":{"name":"punctuation.definition.tag.begin.vtt"},"3":{"name":"entity.name.tag.localname.vtt"},"4":{"name":"punctuation.definition.tag.end.vtt"},"5":{"name":"punctuation.definition.tag.end.self-closing.vtt"}}},{"name":"meta.span.ruby-text-span.vtt","begin":"(\u003c)(rt)(?=$|\\s|/?\u003e|\\.)","end":"(?=^[ \\t]*$)|((\u003c/)(rt)\\s*(\u003e))|(/\u003e)|(?=\\s*\u003c/ruby\\s*\u003e)","patterns":[{"include":"#cueSpanStart"},{"include":"#cueSpanBody"}],"beginCaptures":{"0":{"name":"meta.tag.opening.vtt"},"1":{"name":"punctuation.definition.tag.begin.vtt"},"2":{"name":"entity.name.tag.localname.vtt"}},"endCaptures":{"1":{"name":"meta.tag.closing.vtt"},"2":{"name":"punctuation.definition.tag.begin.vtt"},"3":{"name":"entity.name.tag.localname.vtt"},"4":{"name":"punctuation.definition.tag.end.vtt"},"5":{"name":"punctuation.definition.tag.end.self-closing.vtt"}}},{"name":"meta.span.voice-span.vtt","begin":"(\u003c)(v)(?=$|\\s|/?\u003e|\\.)","end":"(?=^[ \\t]*$)|((\u003c/)(v)\\s*(\u003e))|(/\u003e)","patterns":[{"name":"meta.tag.opening.vtt","begin":"\\G(?!\\s*/\u003e)((?:\\.[^\\s\u0026\u003c\u003e.]+)*\\.?)?","end":"\u003e|(?=\\s*/\u003e|^[ \\t]*$)","patterns":[{"name":"meta.annotation.vtt","contentName":"entity.name.voice.vtt","begin":"(?:[ \\t]|^|\\G)(?=\\S)(?!\u003e|\u0026)","end":"(?=$|\u003e|\u0026|^[ \\t]*$)","patterns":[{"include":"#charRef"}]}],"beginCaptures":{"1":{"patterns":[{"include":"#class"}]}},"endCaptures":{"0":{"name":"punctuation.definition.tag.end.vtt"}}},{"include":"#cueSpanBody"}],"beginCaptures":{"0":{"name":"meta.tag.opening.vtt"},"1":{"name":"punctuation.definition.tag.begin.vtt"},"2":{"name":"entity.name.tag.localname.vtt"}},"endCaptures":{"1":{"name":"meta.tag.closing.vtt"},"2":{"name":"punctuation.definition.tag.begin.vtt"},"3":{"name":"entity.name.tag.localname.vtt"},"4":{"name":"punctuation.definition.tag.end.vtt"},"5":{"name":"punctuation.definition.tag.end.self-closing.vtt"}}},{"name":"meta.span.language-span.vtt","begin":"(\u003c)(lang)(?=$|\\s|/?\u003e|\\.)","end":"(?=^[ \\t]*$)|((\u003c/)(lang)\\s*(\u003e))|(/\u003e)","patterns":[{"name":"meta.tag.opening.vtt","begin":"\\G(?!\\s*/\u003e)((?:\\.[^\\s\u0026\u003c\u003e.]+)*\\.?)?","end":"\u003e|(?=\\s*/\u003e|^[ \\t]*$)","patterns":[{"name":"meta.annotation.vtt","contentName":"constant.language.locale.bcp47.vtt","begin":"(?:[ \\t]|^|\\G)(?=\\S)(?!\u003e|\u0026)","end":"(?=$|\u003e|\u0026|^[ \\t]*$)","patterns":[{"include":"#charRef"}]}],"beginCaptures":{"1":{"patterns":[{"include":"#class"}]}},"endCaptures":{"0":{"name":"punctuation.definition.tag.end.vtt"}}},{"include":"#cueSpanBody"}],"beginCaptures":{"0":{"name":"meta.tag.opening.vtt"},"1":{"name":"punctuation.definition.tag.begin.vtt"},"2":{"name":"entity.name.tag.localname.vtt"}},"endCaptures":{"1":{"name":"meta.tag.closing.vtt"},"2":{"name":"punctuation.definition.tag.begin.vtt"},"3":{"name":"entity.name.tag.localname.vtt"},"4":{"name":"punctuation.definition.tag.end.vtt"},"5":{"name":"punctuation.definition.tag.end.self-closing.vtt"}}},{"name":"meta.span.$2-span.vtt","begin":"(\u003c)([A-Za-z_:][-\\w:]*)(?=$|\\s|/?\u003e|\\.)","end":"(?=^[ \\t]*$)|((\u003c/)(\\2)\\s*(\u003e))|(/\u003e)","patterns":[{"name":"meta.tag.opening.vtt","begin":"\\G(?!\\s*/\u003e)((?:\\.[^\\s\u0026\u003c\u003e.]+)*\\.?)?","end":"\u003e|(?=\\s*/\u003e|^[ \\t]*$)","patterns":[{"name":"meta.annotation.vtt","contentName":"string.unquoted.annotation.vtt","begin":"(?:[ \\t]|^|\\G)(?=\\S)(?!\u003e|\u0026)","end":"(?=$|\u003e|\u0026|^[ \\t]*$)","patterns":[{"include":"#charRef"}]}],"beginCaptures":{"1":{"patterns":[{"include":"#class"}]}},"endCaptures":{"0":{"name":"punctuation.definition.tag.end.vtt"}}},{"include":"#cueSpanBody"}],"beginCaptures":{"0":{"name":"meta.tag.opening.vtt"},"1":{"name":"punctuation.definition.tag.begin.vtt"},"2":{"name":"entity.name.tag.localname.vtt"}},"endCaptures":{"1":{"name":"meta.tag.closing.vtt"},"2":{"name":"punctuation.definition.tag.begin.vtt"},"3":{"name":"entity.name.tag.localname.vtt"},"4":{"name":"punctuation.definition.tag.end.vtt"},"5":{"name":"punctuation.definition.tag.end.self-closing.vtt"}}}]},"cueSpanBody":{"name":"meta.content.vtt","begin":"(?\u003c=\u003e)","end":"(?=\u003c/[A-Za-z_:]|^[ \\t]*$)","patterns":[{"include":"#cueComponents"}]},"cueSpanStart":{"name":"meta.tag.opening.vtt","contentName":"invalid.illegal.unexpected-annotation.vtt","begin":"\\G(?!\\s*/\u003e)((?:\\.[^\\s\u0026\u003c\u003e.]+)*\\.?)?","end":"\u003e|(?=\\s*/\u003e|^[ \\t]*$)","patterns":[{"include":"#charRef"}],"beginCaptures":{"1":{"patterns":[{"include":"#class"}]}},"endCaptures":{"0":{"name":"punctuation.definition.tag.end.vtt"}}},"cueTimestamp":{"name":"constant.other.cue-timestamp.vtt","match":"(\u003c)((?:\\d{2,}:)?\\d{2}:\\d{2}\\.\\d{3})(\u003e)","captures":{"1":{"name":"punctuation.definition.timestamp.begin.vtt"},"2":{"patterns":[{"include":"#timestamp"}]},"3":{"name":"punctuation.definition.timestamp.end.vtt"}}},"cueTimings":{"name":"meta.cue.timings.vtt","begin":"(?x) (?:^|\\G)\n((?:\\d{2,}:)?\\d{2}:\\d{2}\\.\\d{3}) # Start time\n[ \\t]+ (--\u003e) [ \\t]+ # Separator\n((?:\\d{2,}:)?\\d{2}:\\d{2}\\.\\d{3}) # End time\n(?=$|[ \\t]) [ \\t]* # Gap before “#cueSettings”","end":"$","patterns":[{"include":"#cueSettings"}],"beginCaptures":{"1":{"name":"meta.start-time.vtt","patterns":[{"include":"#timestamp"}]},"2":{"name":"keyword.operator.timespan.vtt"},"3":{"name":"meta.end-time.vtt","patterns":[{"include":"#timestamp"}]}}},"main":{"patterns":[{"include":"#comment"},{"include":"#region"},{"include":"#style"},{"include":"#cue"}]},"region":{"name":"meta.region-definition.block.vtt","begin":"^(REGION)[ \\t]*$","end":"^[ \\t]*$","patterns":[{"name":"meta.setting.with-value.vtt","match":"^(id)(:)(?:(.*?--\u003e.*?)|(\\S+))","captures":{"1":{"name":"variable.assignment.setting-name.vtt"},"2":{"name":"keyword.operator.assignment.key-value.colon.vtt"},"3":{"patterns":[{"include":"#badArrow"}]},"4":{"name":"entity.name.region.vtt"}}},{"include":"#setting"}],"beginCaptures":{"1":{"name":"storage.type.region.vtt"}}},"setting":{"name":"meta.setting.generic.vtt","begin":"([^\\s:]+?)(:)","end":"(?!\\G)","patterns":[{"begin":"\\G(?=[ \\t]*\\S)","end":"(?!\\G)(?=\\s|$)","patterns":[{"match":"(?\u003c=scroll:)\\G([ \\t]*)(up)(?=$|\\s)","captures":{"1":{"name":"punctuation.whitespace.inline.vtt"},"2":{"name":"constant.language.scroll-setting.vtt"}}},{"match":"(?\u003c=vertical:)\\G([ \\t]*)(rl|lr)(?=$|\\s)","captures":{"1":{"name":"punctuation.whitespace.inline.vtt"},"2":{"name":"constant.language.vertical-setting.vtt"}}},{"match":"(?\u003c=line:)\\G([ \\t]*)(start|center|end)(?=$|\\s)","captures":{"1":{"name":"punctuation.whitespace.inline.vtt"},"2":{"name":"constant.language.line-setting.vtt"}}},{"match":"(?\u003c=position:)\\G([ \\t]*)([0-9]+%,)(center|line-left|line-right)(?=$|\\s)","captures":{"1":{"name":"punctuation.whitespace.inline.vtt"},"2":{"patterns":[{"include":"#settingValue"}]},"3":{"name":"constant.language.position-setting.vtt"}}},{"match":"(?\u003c=align:)\\G([ \\t]*)(center|end|left|right|start)(?=$|\\s)","captures":{"1":{"name":"punctuation.whitespace.inline.vtt"},"2":{"patterns":[{"include":"#settingValue"}]},"3":{"name":"constant.language.align-setting.vtt"}}},{"include":"#settingValue"}]}],"beginCaptures":{"1":{"name":"variable.assignment.setting-name.vtt"},"2":{"name":"keyword.operator.assignment.key-value.colon.vtt"}}},"settingValue":{"patterns":[{"name":"constant.numeric.percentage.vtt","match":"[0-9]+(?:\\.[0-9]+)?(%)","captures":{"1":{"name":"punctuation.definition.percentage.vtt"}}},{"name":"constant.numeric.integer.int.vtt","match":"[0-9]+\\b(?!%|\\.[0-9])"},{"name":"constant.language.auto.vtt","match":"\\bauto\\b(?=$|\\s|,)"},{"name":"punctuation.separator.delimiter.comma.vtt","match":","},{"include":"#badArrow"},{"name":"constant.other.setting-value.vtt","match":".+"}]},"style":{"name":"meta.style.block.vtt","contentName":"source.embedded.css","begin":"^(STYLE)[ \\t]*$","end":"^[ \\t]*$","patterns":[{"include":"source.css"}],"beginCaptures":{"1":{"name":"storage.type.style.vtt"}}},"timestamp":{"name":"meta.timestamp.vtt","match":"(?x)\n(?:(\\d{2,})(:))? # Hours (≥ 00)\n(?:([0-5]\\d)|(\\d{2}))(:) # Minutes (00-59)\n(?:([0-5]\\d)|(\\d{2}))(\\.) # Seconds (00-59)\n(\\d{3}) # Milliseconds (000-999)","captures":{"1":{"name":"constant.numeric.timestamp.unit.hour.vtt"},"2":{"patterns":[{"include":"#timestampColon"}]},"3":{"name":"constant.numeric.timestamp.unit.minute.vtt"},"4":{"name":"invalid.illegal.value.out-of-range.vtt"},"5":{"patterns":[{"include":"#timestampColon"}]},"6":{"name":"constant.numeric.timestamp.unit.second.vtt"},"7":{"name":"invalid.illegal.value.out-of-range.vtt"},"8":{"patterns":[{"include":"#timestampDecimal"}]},"9":{"name":"constant.numeric.timestamp.unit.millisecond.vtt"}}},"timestampColon":{"name":"meta.separator.colon.vtt","match":":","captures":{"0":{"name":"punctuation.separator.delimiter.vtt"}}},"timestampDecimal":{"name":"meta.separator.decimal.fraction.radix-point.vtt","match":"\\.","captures":{"0":{"name":"punctuation.separator.decimal.vtt"}}}}}
data/grammars/version CHANGED
@@ -1 +1 @@
1
- 7.20.0
1
+ 7.22.1
data/lib/linguist/VERSION CHANGED
@@ -1 +1 @@
1
- 7.20.0
1
+ 7.22.1
@@ -1,6 +1,6 @@
1
1
  require 'linguist/generated'
2
+ require 'cgi'
2
3
  require 'charlock_holmes'
3
- require 'escape_utils'
4
4
  require 'mini_mime'
5
5
  require 'yaml'
6
6
 
@@ -94,7 +94,7 @@ module Linguist
94
94
  elsif name.nil?
95
95
  "attachment"
96
96
  else
97
- "attachment; filename=#{EscapeUtils.escape_url(name)}"
97
+ "attachment; filename=#{CGI.escape(name)}"
98
98
  end
99
99
  end
100
100
 
@@ -16,4 +16,5 @@ extensions:
16
16
  - ".9"
17
17
  - ".cmp"
18
18
  - ".sol"
19
+ - ".stl"
19
20
  - ".url"
@@ -94,10 +94,22 @@ disambiguations:
94
94
  pattern: '(<^\s*; |End Function)'
95
95
  - language: BitBake
96
96
  pattern: '^\s*(# |include|require)\b'
97
+ - language: Clojure
98
+ pattern: '\((def|defn|defmacro|let)\s'
97
99
  - extensions: ['.bi']
98
100
  rules:
99
101
  - language: FreeBasic
100
102
  pattern: '^[ \t]*#(?:define|endif|endmacro|ifn?def|if|include|lang|macro)\s'
103
+ - extensions: ['.bs']
104
+ rules:
105
+ - language: Bikeshed
106
+ pattern: '^(?i:<pre\s+class)\s*=\s*(''|\"|\b)metadata\b\1[^>\r\n]*>'
107
+ - language: BrighterScript
108
+ pattern:
109
+ - (?i:^\s*(?=^sub\s)(?:sub\s*\w+\(.*?\))|(?::\s*sub\(.*?\))$)
110
+ - (?i:^\s*(end\ssub)$)
111
+ - (?i:^\s*(?=^function\s)(?:function\s*\w+\(.*?\)\s*as\s*\w*)|(?::\s*function\(.*?\)\s*as\s*\w*)$)
112
+ - (?i:^\s*(end\sfunction)$)
101
113
  - extensions: ['.builds']
102
114
  rules:
103
115
  - language: XML
@@ -129,7 +141,7 @@ disambiguations:
129
141
  - language: Smalltalk
130
142
  pattern: '![\w\s]+methodsFor: '
131
143
  - language: 'C#'
132
- pattern: '^(\s*namespace\s*[\w\.]+\s*{|\s*\/\/)'
144
+ pattern: '^(\s*namespace\s*[\w\.]+\s*({|;)|\s*\/\/)'
133
145
  - extensions: ['.csc']
134
146
  rules:
135
147
  - language: GSC
@@ -592,6 +604,15 @@ disambiguations:
592
604
  pattern: '\$\w+[($]|(.)!\s*.+?\s*!\1|<!\s*.+?\s*!>|\[!\s*.+?\s*!\]|\{!\s*.+?\s*!\}'
593
605
  - language: Smalltalk
594
606
  pattern: '\A\s*[\[{(^"''\w#]|[a-zA-Z_]\w*\s*:=\s*[a-zA-Z_]\w*|class\s*>>\s*[a-zA-Z_]\w*|^[a-zA-Z_]\w*\s+[a-zA-Z_]\w*:|^Class\s*{|if(?:True|False):\s*\['
607
+ - extensions: ['.star']
608
+ rules:
609
+ - language: STAR
610
+ pattern: '^loop_\s*$'
611
+ - language: Starlark
612
+ - extensions: ['.stl']
613
+ rules:
614
+ - language: STL
615
+ pattern: '\A\s*solid(?=$|\s)(?m:.*?)\Rendsolid(?:$|\s)'
595
616
  - extensions: ['.t']
596
617
  rules:
597
618
  - language: Perl
@@ -1,4 +1,4 @@
1
- require 'escape_utils'
1
+ require 'cgi'
2
2
  require 'yaml'
3
3
  begin
4
4
  require 'yajl'
@@ -291,12 +291,11 @@ module Linguist
291
291
 
292
292
  # If group name is set, save the name so we can lazy load it later
293
293
  if attributes[:group_name]
294
- @group = nil
295
294
  @group_name = attributes[:group_name]
296
295
 
297
296
  # Otherwise we can set it to self now
298
297
  else
299
- @group = self
298
+ @group_name = self.name
300
299
  end
301
300
  end
302
301
 
@@ -434,7 +433,7 @@ module Linguist
434
433
  #
435
434
  # Returns the escaped String.
436
435
  def escaped_name
437
- EscapeUtils.escape_url(name).gsub('+', '%20')
436
+ CGI.escape(name).gsub('+', '%20')
438
437
  end
439
438
 
440
439
  # Public: Get default alias name