@kong-ui-public/documentation 0.7.15 → 0.7.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{arc-CinmSIDH-Dcn7KGvc.js → arc-TomPQHIy---TPh_09.js} +1 -1
- package/dist/{blockDiagram-6b2b5046-lWu5MHZ2-BoOEWYD6.js → blockDiagram-6b2b5046-ZGxr7RGf-EFYzImkx.js} +5 -5
- package/dist/{c4Diagram-b947cdbb-_2ZSBCRj-BUDh5aYq.js → c4Diagram-b947cdbb-Bo6xALld-By3Ipo31.js} +2 -2
- package/dist/{channel-DxVjAaZy-IJf5_8CK.js → channel-BX3TjCqa-BSbXCWf0.js} +1 -1
- package/dist/{classDiagram-35230388-C7cMop8F-DuBGfvGp.js → classDiagram-35230388-C60SAKfJ-BIzFDuBu.js} +5 -5
- package/dist/{classDiagram-v2-412acd34-Sr_pGTUt-AuJo5LIE.js → classDiagram-v2-412acd34-CHK1KDqU-6VImEfmh.js} +5 -5
- package/dist/{clone-BaxuDe_X-CSbtQIgr.js → clone-BSWoNj0I-tckXyhCL.js} +1 -1
- package/dist/{cpp-DizfY48B-CA38N4Mn.js → cpp-Cxnlk9aI-CRrZJBoZ.js} +45 -14
- package/dist/{createText-423428c9-DSXJlj3p-CmtLQWob.js → createText-423428c9-DeHbckoy-BD9j3egy.js} +1 -1
- package/dist/{csharp-uGDiXTZn-uGDiXTZn.js → csharp-lrxu4vbW-lrxu4vbW.js} +1 -1
- package/dist/documentation.es.js +1 -1
- package/dist/documentation.umd.js +120 -95
- package/dist/{edges-d417c7a0-D20zX-94-B8CphGxt.js → edges-d417c7a0-D7e9Y4V--CivEDAj5.js} +3 -3
- package/dist/{erDiagram-0ea73325-p8FwyJvU-C0OgYqUN.js → erDiagram-0ea73325-E3jchkiK-BxNGtI50.js} +4 -4
- package/dist/{flowDb-d35e309a-Ca4FSAVM-WQMmXDja.js → flowDb-d35e309a-Dch1VW7i-WcIHFymz.js} +1 -1
- package/dist/{flowDiagram-d949d7c1-OwxKQJQE-D3HzuONU.js → flowDiagram-d949d7c1-CxjmKfBF-fN72q9OZ.js} +6 -6
- package/dist/{flowDiagram-v2-49332944-CmJFqFX3-BpyxAjBd.js → flowDiagram-v2-49332944-Duf6j7PN-F_OgPOA9.js} +5 -5
- package/dist/{flowchart-elk-definition-27cc417a-BK-QJI5S-CNQPwu_u.js → flowchart-elk-definition-27cc417a-M-lK4i48-BrhcUjqH.js} +4 -4
- package/dist/{ganttDiagram-5c869e3b-DsJMAz4f-CtgkK1FL.js → ganttDiagram-5c869e3b-CgjZsm2H-Cz1ShEgl.js} +2 -2
- package/dist/{gitGraphDiagram-b9d81de9-CgW7vwTs-Dww-gIrc.js → gitGraphDiagram-b9d81de9-DhOfBQfl-XNLvuj9e.js} +1 -1
- package/dist/go-vGwKyyRt-vGwKyyRt.js +7 -0
- package/dist/{graph-_GyIwSxm-B_vR7apB.js → graph-Ch18bQn5-DLZlxaOx.js} +1 -1
- package/dist/{haml-BW9Ug1pj-rFDS-Rd4.js → haml-DADkvXbc--0AW274F.js} +1 -1
- package/dist/{handlebars-Cr5ro0bH-CLcCNLtV.js → handlebars-Cs7BocNX-Bbsv9Jpf.js} +1 -1
- package/dist/{index-8fae9850-CyqCz_ca-cnk5n7Fe.js → index-8fae9850-kUIz8xNo-DThnA9iZ.js} +6 -6
- package/dist/{index-BIPKSlhn.js → index-DwEVUtAn.js} +1216 -1158
- package/dist/{infoDiagram-db7b18fc-0P3OTShw-Bp1eVumE.js → infoDiagram-db7b18fc-BpBtHVy2-CzlbkPep.js} +1 -1
- package/dist/{journeyDiagram-d5636530-DaBgA-aj-Z9L2Q9UD.js → journeyDiagram-d5636530-CZUFMDTA-B6x8SC3m.js} +3 -3
- package/dist/{latex-BOFs-Cxs-XUibdaju.js → latex-BQR4t-v7-DUtGkmwG.js} +3 -3
- package/dist/{layout-Bk7AdqJz-DRyrmTYm.js → layout-BzV691RN-Dwqgf_2b.js} +2 -2
- package/dist/{line-B7Dd0TiT-HVx0CjRf.js → line-JCh8JM-V-BbfA3RBV.js} +1 -1
- package/dist/{linear-bMW21eJn-BiTwGlLg.js → linear-cwTFOJBq-CaAAYk8b.js} +1 -1
- package/dist/{markdown-BXjY0Nyq-BXjY0Nyq.js → markdown-QuoPq0lm-QuoPq0lm.js} +1 -1
- package/dist/{material-theme-lighter-BRE1Bis3-BRE1Bis3.js → material-theme-lighter-CtwOYHJ5-CtwOYHJ5.js} +4 -4
- package/dist/{material-theme-palenight-Dhz61Tee-Dhz61Tee.js → material-theme-palenight-LzvMi3a5-LzvMi3a5.js} +4 -4
- package/dist/{mdc-B5nxCaLl-DMu34E1J.js → mdc-BZ-izL1S-5yLspiGp.js} +2 -2
- package/dist/mermaid-BDRJ-IyY-BDRJ-IyY.js +7 -0
- package/dist/{mindmap-definition-377f8f1f-ufN3tUA6-DrATq7p8.js → mindmap-definition-377f8f1f-BzIPdpBG-DGui0RqE.js} +2 -2
- package/dist/{pieDiagram-b0208e96-DrO8Y6_Q-qz1Vqf8G.js → pieDiagram-b0208e96-BQfpnZHG-CVSpIMRU.js} +2 -2
- package/dist/{quadrantDiagram-0332be45-DIp67xs6-CWxwUwJf.js → quadrantDiagram-0332be45-CNL4JCrn-B-f5sqU9.js} +2 -2
- package/dist/{requirementDiagram-bf7890df-BSzVPfZD-CzxSaoYW.js → requirementDiagram-bf7890df-NBqqCuPF-DAcckKVN.js} +4 -4
- package/dist/{rst-BrJuKOw1-B4ad15qt.js → rst-C6H9eA63-CVvBdizz.js} +2 -2
- package/dist/{sankeyDiagram-0acdec17-prPA1qqX-DBebH8FH.js → sankeyDiagram-0acdec17-YE0ROy8d-BWnyTcog.js} +1 -1
- package/dist/{sequenceDiagram-c18d009d-BAWs2OYL-Cl7Uk4w9.js → sequenceDiagram-c18d009d-Yucxrjw7-DpvimznV.js} +2 -2
- package/dist/{stateDiagram-43596fc0-DXEJ0R4o-cB0WlEf9.js → stateDiagram-43596fc0-D9IY4Ssi-CWdS8tlp.js} +5 -5
- package/dist/{stateDiagram-v2-2ead4f9c-DnzyCUgr-DQ4IkVrl.js → stateDiagram-v2-2ead4f9c-5IZQWbnV-6NEZ7lDP.js} +5 -5
- package/dist/{styles-6860f46c-DzVPBoYT-g58cIxdl.js → styles-6860f46c-DHqkrPDU-CvROn0Ze.js} +1 -1
- package/dist/{styles-7383a064-BL-LjhLx-DdruT6_O.js → styles-7383a064-DLbSva3T-D6oc5Ax7.js} +4 -4
- package/dist/{styles-b2c874b6-BCYk3bdu-CLfur12t.js → styles-b2c874b6-pUAi9-OK-C2ht5iWP.js} +1 -1
- package/dist/{svelte-BmPQnTph-DumSF5rK.js → svelte-DQ3ivDeH-pP8_2byG.js} +1 -1
- package/dist/{svgDrawCommon-0ee1b4e9-CUz2naLo-Bok-bE1n.js → svgDrawCommon-0ee1b4e9-rbw7BPwi-Do627-9u.js} +1 -1
- package/dist/{swift-x2DVyVjN-Bz5PC9YM.js → swift-DZjxY9Jt-5mfhvx3X.js} +2 -2
- package/dist/{timeline-definition-d977decf-BSETSy08-C-kk4S0n.js → timeline-definition-d977decf-CtlVf6FF-DxPrMfc5.js} +2 -2
- package/dist/{vue-DoU_Nr9K-Cj2gXb1y.js → vue-CdtKg2_f-Bw_hVDv3.js} +7 -7
- package/dist/{vue-html-iC7i5f9n-Cfh5ktA3.js → vue-html-CSuHLn0Q-CWbLQcnI.js} +1 -1
- package/dist/{xychartDiagram-e50adddc-C82b8cby-B-sVwnzU.js → xychartDiagram-e50adddc-B9qgoJob-BowGMlAq.js} +4 -4
- package/dist/{yaml-PGla5xPP-HJurM_FJ.js → yaml-BEu5ErCD-82IBfEy4.js} +1 -1
- package/package.json +6 -6
- package/dist/go-BEtjQGEI-BEtjQGEI.js +0 -7
- package/dist/mermaid-D-iYNLeg-D-iYNLeg.js +0 -7
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
const e = Object.freeze({ displayName: "Go", name: "go", patterns: [{ include: "#statements" }], repository: { after_control_variables: { captures: { 1: { patterns: [{ include: "#type-declarations-without-brackets" }, { match: "\\[", name: "punctuation.definition.begin.bracket.square.go" }, { match: "\\]", name: "punctuation.definition.end.bracket.square.go" }, { match: "(?:\\w+)", name: "variable.other.go" }] } }, comment: "After control variables, to not highlight as a struct/interface (before formatting with gofmt)", match: "(?:(?<=\\brange\\b|\\bswitch\\b|\\;|\\bif\\b|\\bfor\\b|\\<|\\>|\\<\\=|\\>\\=|\\=\\=|\\!\\=|\\w(?:\\+|/|\\-|\\*|\\%)|\\w(?:\\+|/|\\-|\\*|\\%)\\=|\\|\\||\\&\\&)(?:\\s*)((?![\\[\\]]+)[[:alnum:]\\-\\_\\!\\.\\[\\]\\<\\>\\=\\*/\\+\\%\\:]+)(?:\\s*)(?=\\{))" }, brackets: { patterns: [{ begin: "\\{", beginCaptures: { 0: { name: "punctuation.definition.begin.bracket.curly.go" } }, end: "\\}", endCaptures: { 0: { name: "punctuation.definition.end.bracket.curly.go" } }, patterns: [{ include: "$self" }] }, { begin: "\\(", beginCaptures: { 0: { name: "punctuation.definition.begin.bracket.round.go" } }, end: "\\)", endCaptures: { 0: { name: "punctuation.definition.end.bracket.round.go" } }, patterns: [{ include: "$self" }] }, { begin: "\\[", beginCaptures: { 0: { name: "punctuation.definition.begin.bracket.square.go" } }, end: "\\]", endCaptures: { 0: { name: "punctuation.definition.end.bracket.square.go" } }, patterns: [{ include: "$self" }] }] }, built_in_functions: { comment: "Built-in functions", patterns: [{ match: "\\b(append|cap|close|complex|copy|delete|imag|len|panic|print|println|real|recover|min|max|clear)\\b(?=\\()", name: "entity.name.function.support.builtin.go" }, { begin: "(?:(\\bnew\\b)(\\())", beginCaptures: { 1: { name: "entity.name.function.support.builtin.go" }, 2: { name: "punctuation.definition.begin.bracket.round.go" } }, comment: "new keyword", end: "\\)", endCaptures: { 0: { name: "punctuation.definition.end.bracket.round.go" } }, patterns: [{ include: "#functions" }, { include: "#struct_variables_types" }, { include: "#type-declarations" }, { include: "#generic_types" }, { match: "(?:\\w+)", name: "entity.name.type.go" }, { include: "$self" }] }, { begin: "(?:(\\bmake\\b)(?:(\\()((?:(?:(?:[\\*\\[\\]]+)?(?:\\<\\-\\s*)?\\bchan\\b(?:\\s*\\<\\-)?\\s*)+(?:\\([^\\)]+\\))?)?(?:[\\[\\]\\*]+)?(?:(?!\\bmap\\b)(?:[\\w\\.]+))?(\\[(?:(?:[\\S]+)(?:(?:\\,\\s*(?:[\\S]+))*))?\\])?(?:\\,)?)?))", beginCaptures: { 1: { name: "entity.name.function.support.builtin.go" }, 2: { name: "punctuation.definition.begin.bracket.round.go" }, 3: { patterns: [{ include: "#type-declarations-without-brackets" }, { include: "#parameter-variable-types" }, { match: "\\w+", name: "entity.name.type.go" }] } }, comment: "make keyword", end: "\\)", endCaptures: { 0: { name: "punctuation.definition.end.bracket.round.go" } }, patterns: [{ include: "$self" }] }] }, comments: { patterns: [{ begin: "(\\/\\*)", beginCaptures: { 1: { name: "punctuation.definition.comment.go" } }, end: "(\\*\\/)", endCaptures: { 1: { name: "punctuation.definition.comment.go" } }, name: "comment.block.go" }, { begin: "(\\/\\/)", beginCaptures: { 1: { name: "punctuation.definition.comment.go" } }, end: "(?:\\n|$)", name: "comment.line.double-slash.go" }] }, delimiters: { patterns: [{ match: "\\,", name: "punctuation.other.comma.go" }, { match: "\\.(?!\\.\\.)", name: "punctuation.other.period.go" }, { match: ":(?!=)", name: "punctuation.other.colon.go" }] }, double_parentheses_types: { captures: { 1: { patterns: [{ include: "#type-declarations-without-brackets" }, { match: "\\(", name: "punctuation.definition.begin.bracket.round.go" }, { match: "\\)", name: "punctuation.definition.end.bracket.round.go" }, { match: "\\[", name: "punctuation.definition.begin.bracket.square.go" }, { match: "\\]", name: "punctuation.definition.end.bracket.square.go" }, { match: "\\w+", name: "entity.name.type.go" }] } }, comment: "double parentheses types", match: "(?:(?<!\\w)(\\((?:[\\w\\.\\[\\]\\*\\&]+)\\))(?=\\())" }, field_hover: { captures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "\\w+", name: "variable.other.property.go" }] }, 2: { patterns: [{ include: "#type-declarations" }, { match: "\\binvalid\\b\\s+\\btype\\b", name: "invalid.field.go" }, { match: "\\w+", name: "entity.name.type.go" }] } }, comment: "struct field property and types when hovering with the mouse", match: "(?:(?<=^\\bfield\\b)\\s+([\\w\\*\\.]+)\\s+([\\s\\S]+))" }, function_declaration: { begin: "(?:^(\\bfunc\\b)(?:\\s*(\\([^\\)]+\\)\\s*)?(?:(\\w+)(?=\\(|\\[))?))", beginCaptures: { 1: { name: "keyword.function.go" }, 2: { patterns: [{ begin: "\\(", beginCaptures: { 0: { name: "punctuation.definition.begin.bracket.round.go" } }, end: "\\)", endCaptures: { 0: { name: "punctuation.definition.end.bracket.round.go" } }, patterns: [{ captures: { 1: { name: "variable.parameter.go" }, 2: { patterns: [{ include: "#type-declarations-without-brackets" }, { include: "#parameter-variable-types" }, { match: "(?:\\w+)", name: "entity.name.type.go" }] } }, match: "(?:(\\w+(?:\\s+))?((?:[\\w\\.\\*]+)(?:\\[(?:(?:(?:[\\w\\.\\*]+)(?:\\,\\s+)?)+)?\\])?))" }, { include: "$self" }] }] }, 3: { patterns: [{ match: "\\d\\w*", name: "invalid.illegal.identifier.go" }, { match: "\\w+", name: "entity.name.function.go" }] } }, comment: "Function declarations", end: "(?:(?<=\\))\\s*((?:(?:(?:[\\*\\[\\]]+)?(?:\\<\\-\\s*)?\\bchan\\b(?:\\s*\\<\\-)?\\s*)+)?(?!(?:[\\[\\]\\*]+)?(?:\\bstruct\\b|\\binterface\\b))[\\w\\.\\-\\*\\[\\]]+)?\\s*(?=\\{))", endCaptures: { 1: { patterns: [{ include: "#type-declarations-without-brackets" }, { include: "#parameter-variable-types" }, { match: "(?:\\w+)", name: "entity.name.type.go" }] } }, patterns: [{ begin: "\\(", beginCaptures: { 0: { name: "punctuation.definition.begin.bracket.round.go" } }, end: "\\)", endCaptures: { 0: { name: "punctuation.definition.end.bracket.round.go" } }, patterns: [{ include: "#function_param_types" }] }, { begin: "(?:([\\w\\.\\*]+)?(\\[))", beginCaptures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "(?:\\w+)", name: "entity.name.type.go" }] }, 2: { name: "punctuation.definition.begin.bracket.square.go" } }, end: "\\]", endCaptures: { 0: { name: "punctuation.definition.end.bracket.square.go" } }, patterns: [{ include: "#generic_param_types" }] }, { captures: { 1: { patterns: [{ include: "#type-declarations-without-brackets" }, { include: "#parameter-variable-types" }, { match: "\\w+", name: "entity.name.type.go" }] } }, comment: "single function as a type returned type(s) declaration", match: "(?:(?<=\\))(?:\\s*)((?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\<\\-\\s*)?\\bchan\\b(?:\\s*\\<\\-)?\\s*)+)?[\\w\\*\\.\\[\\]\\<\\>\\-]+(?:\\s*)(?:\\/(?:\\/|\\*).*)?)$)" }, { include: "$self" }] }, function_param_types: { comment: "function parameter variables and types", patterns: [{ include: "#struct_variables_types" }, { include: "#interface_variables_types" }, { include: "#type-declarations-without-brackets" }, { captures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "\\w+", name: "variable.parameter.go" }] } }, comment: "struct/interface type declaration", match: "((?:(?:\\b\\w+\\,\\s*)+)?\\b\\w+)\\s+(?=(?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\<\\-\\s*)?\\bchan\\b(?:\\s*\\<\\-)?\\s*)+)?(?:[\\[\\]\\*]+)?\\b(?:struct|interface)\\b\\s*\\{)" }, { captures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "\\w+", name: "variable.parameter.go" }] } }, comment: "multiple parameters one type -with multilines", match: "(?:(?:(?<=\\()|^\\s*)((?:(?:\\b\\w+\\,\\s*)+)(?:/(?:/|\\*).*)?)$)" }, { captures: { 1: { patterns: [{ include: "#delimiters" }, { match: "\\w+", name: "variable.parameter.go" }] }, 2: { patterns: [{ include: "#type-declarations-without-brackets" }, { include: "#parameter-variable-types" }, { match: "(?:\\w+)", name: "entity.name.type.go" }] } }, comment: "multiple params and types | multiple params one type | one param one type", match: "(?:((?:(?:\\b\\w+\\,\\s*)+)?\\b\\w+)(?:\\s+)((?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\<\\-\\s*)?\\bchan\\b(?:\\s*\\<\\-)?\\s*)+)?(?:(?:(?:[\\w\\[\\]\\.\\*]+)?(?:(?:\\bfunc\\b\\((?:[^\\)]+)?\\))(?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\<\\-\\s*)?\\bchan\\b(?:\\s*\\<\\-)?\\s*)+)?(?:\\s*))+(?:(?:(?:[\\w\\*\\.\\[\\]]+)|(?:\\((?:[^\\)]+)?\\))))?)|(?:(?:[\\[\\]\\*]+)?[\\w\\*\\.]+(?:\\[(?:[^\\]]+)\\])?(?:[\\w\\.\\*]+)?)+)))" }, { include: "#parameter-variable-types" }, { captures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "(?:\\w+)", name: "entity.name.type.go" }] } }, comment: "other types", match: "([\\w\\.]+)" }, { include: "$self" }] }, functions: { begin: "(?:(\\bfunc\\b)(?=\\())", beginCaptures: { 1: { name: "keyword.function.go" } }, comment: "Functions", end: "(?:(?<=\\))(\\s*(?:(?:[\\*\\[\\]]+)?(?:\\<\\-\\s*)?\\bchan\\b(?:\\s*\\<\\-)?\\s*)+)?((?:(?:\\s*(?:(?:[\\[\\]\\*]+)?[\\w\\.\\*]+)?(?:(?:\\[(?:(?:[\\w\\.\\*]+)?(?:\\[(?:[^\\]]+)?\\])?(?:\\,\\s+)?)+\\])|(?:\\((?:[^\\)]+)?\\)))?(?:[\\w\\.\\*]+)?)(?:\\s*)(?=\\{))|(?:\\s*(?:(?:(?:[\\[\\]\\*]+)?(?!\\bfunc\\b)(?:[\\w\\.\\*]+)(?:\\[(?:(?:[\\w\\.\\*]+)?(?:\\[(?:[^\\]]+)?\\])?(?:\\,\\s+)?)+\\])?(?:[\\w\\.\\*]+)?)|(?:\\((?:[^\\)]+)?\\)))))?)", endCaptures: { 1: { patterns: [{ include: "#type-declarations" }] }, 2: { patterns: [{ include: "#type-declarations-without-brackets" }, { include: "#parameter-variable-types" }, { match: "(?:\\w+)", name: "entity.name.type.go" }] } }, patterns: [{ include: "#parameter-variable-types" }] }, functions_inline: { captures: { 1: { name: "keyword.function.go" }, 2: { patterns: [{ include: "#type-declarations-without-brackets" }, { begin: "\\(", beginCaptures: { 0: { name: "punctuation.definition.begin.bracket.round.go" } }, end: "\\)", endCaptures: { 0: { name: "punctuation.definition.end.bracket.round.go" } }, patterns: [{ include: "#function_param_types" }, { include: "$self" }] }, { match: "\\[", name: "punctuation.definition.begin.bracket.square.go" }, { match: "\\]", name: "punctuation.definition.end.bracket.square.go" }, { match: "\\{", name: "punctuation.definition.begin.bracket.curly.go" }, { match: "\\}", name: "punctuation.definition.end.bracket.curly.go" }, { match: "(?:\\w+)", name: "entity.name.type.go" }] } }, comment: "functions in-line with multi return types", match: "(?:(\\bfunc\\b)((?:\\((?:[^/]*?)\\))(?:\\s+)(?:\\((?:[^/]*?)\\)))(?:\\s+)(?=\\{))" }, generic_param_types: { comment: "generic parameter variables and types", patterns: [{ include: "#struct_variables_types" }, { include: "#interface_variables_types" }, { include: "#type-declarations-without-brackets" }, { captures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "\\w+", name: "variable.parameter.go" }] } }, comment: "struct/interface type declaration", match: "((?:(?:\\b\\w+\\,\\s*)+)?\\b\\w+)\\s+(?=(?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\<\\-\\s*)?\\bchan\\b(?:\\s*\\<\\-)?\\s*)+)?(?:[\\[\\]\\*]+)?\\b(?:struct|interface)\\b\\s*\\{)" }, { captures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "\\w+", name: "variable.parameter.go" }] } }, comment: "multiple parameters one type -with multilines", match: "(?:(?:(?<=\\()|^\\s*)((?:(?:\\b\\w+\\,\\s*)+)(?:/(?:/|\\*).*)?)$)" }, { captures: { 1: { patterns: [{ include: "#delimiters" }, { match: "\\w+", name: "variable.parameter.go" }] }, 2: { patterns: [{ include: "#type-declarations-without-brackets" }, { include: "#parameter-variable-types" }, { match: "(?:\\w+)", name: "entity.name.type.go" }] }, 3: { patterns: [{ include: "#type-declarations" }, { match: "(?:\\w+)", name: "entity.name.type.go" }] } }, comment: "multiple params and types | multiple types one param", match: "(?:((?:(?:\\b\\w+\\,\\s*)+)?\\b\\w+)(?:\\s+)((?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\<\\-\\s*)?\\bchan\\b(?:\\s*\\<\\-)?\\s*)+)?(?:(?:(?:[\\w\\[\\]\\.\\*]+)?(?:(?:\\bfunc\\b\\((?:[^\\)]+)?\\))(?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\<\\-\\s*)?\\bchan\\b(?:\\s*\\<\\-)?\\s*)+)?(?:\\s*))+(?:(?:(?:[\\w\\*\\.]+)|(?:\\((?:[^\\)]+)?\\))))?)|(?:(?:(?:[\\w\\*\\.\\~]+)|(?:\\[(?:(?:[\\w\\.\\*]+)?(?:\\[(?:[^\\]]+)?\\])?(?:\\,\\s+)?)+\\]))(?:[\\w\\.\\*]+)?)+)))" }, { include: "#parameter-variable-types" }, { captures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "(?:\\w+)", name: "entity.name.type.go" }] } }, comment: "other types", match: "(?:\\b([\\w\\.]+))" }, { include: "$self" }] }, generic_types: { captures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "\\w+", name: "entity.name.type.go" }] }, 2: { patterns: [{ include: "#parameter-variable-types" }] } }, comment: "Generic support for all types", match: "(?:([\\w\\.\\*]+)(\\[(?:[^\\]]+)?\\]))" }, "group-functions": { comment: "all statements related to functions", patterns: [{ include: "#function_declaration" }, { include: "#functions_inline" }, { include: "#functions" }, { include: "#built_in_functions" }, { include: "#support_functions" }] }, "group-types": { comment: "all statements related to types", patterns: [{ include: "#other_struct_interface_expressions" }, { include: "#type_assertion_inline" }, { include: "#struct_variables_types" }, { include: "#interface_variables_types" }, { include: "#single_type" }, { include: "#multi_types" }, { include: "#struct_interface_declaration" }, { include: "#double_parentheses_types" }, { include: "#switch_types" }, { include: "#type-declarations" }] }, "group-variables": { comment: "all statements related to variables", patterns: [{ include: "#var_const_assignment" }, { include: "#variable_assignment" }, { include: "#label_loop_variables" }, { include: "#slice_index_variables" }, { include: "#property_variables" }, { include: "#switch_select_case_variables" }, { include: "#other_variables" }] }, import: { comment: "import", patterns: [{ begin: "\\b(import)\\s+", beginCaptures: { 1: { name: "keyword.control.import.go" } }, comment: "import", end: "(?!\\G)", patterns: [{ include: "#imports" }] }] }, imports: { comment: "import package(s)", patterns: [{ captures: { 1: { patterns: [{ include: "#delimiters" }, { match: "(?:\\w+)", name: "variable.other.import.go" }] }, 2: { name: "string.quoted.double.go" }, 3: { name: "punctuation.definition.string.begin.go" }, 4: { name: "entity.name.import.go" }, 5: { name: "punctuation.definition.string.end.go" } }, match: '(\\s*[\\w\\.]+)?\\s*((")([^"]*)("))' }, { begin: "\\(", beginCaptures: { 0: { name: "punctuation.definition.imports.begin.bracket.round.go" } }, end: "\\)", endCaptures: { 0: { name: "punctuation.definition.imports.end.bracket.round.go" } }, patterns: [{ include: "#comments" }, { include: "#imports" }] }, { include: "$self" }] }, interface_variables_types: { begin: "(\\binterface\\b)\\s*(\\{)", beginCaptures: { 1: { name: "keyword.interface.go" }, 2: { name: "punctuation.definition.begin.bracket.curly.go" } }, comment: "interface variable types", end: "\\}", endCaptures: { 0: { name: "punctuation.definition.end.bracket.curly.go" } }, patterns: [{ include: "#interface_variables_types_field" }, { include: "$self" }] }, interface_variables_types_field: { comment: "interface variable type fields", patterns: [{ include: "#support_functions" }, { include: "#type-declarations-without-brackets" }, { begin: "(?:([\\w\\.\\*]+)?(\\[))", beginCaptures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "(?:\\w+)", name: "entity.name.type.go" }] }, 2: { name: "punctuation.definition.begin.bracket.square.go" } }, end: "\\]", endCaptures: { 0: { name: "punctuation.definition.end.bracket.square.go" } }, patterns: [{ include: "#generic_param_types" }] }, { begin: "\\(", beginCaptures: { 0: { name: "punctuation.definition.begin.bracket.round.go" } }, end: "\\)", endCaptures: { 0: { name: "punctuation.definition.end.bracket.round.go" } }, patterns: [{ include: "#function_param_types" }] }, { captures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "\\w+", name: "entity.name.type.go" }] } }, comment: "other types", match: "([\\w\\.]+)" }] }, keywords: { patterns: [{ comment: "Flow control keywords", match: "\\b(break|case|continue|default|defer|else|fallthrough|for|go|goto|if|range|return|select|switch)\\b", name: "keyword.control.go" }, { match: "\\bchan\\b", name: "keyword.channel.go" }, { match: "\\bconst\\b", name: "keyword.const.go" }, { match: "\\bvar\\b", name: "keyword.var.go" }, { match: "\\bfunc\\b", name: "keyword.function.go" }, { match: "\\binterface\\b", name: "keyword.interface.go" }, { match: "\\bmap\\b", name: "keyword.map.go" }, { match: "\\bstruct\\b", name: "keyword.struct.go" }, { match: "\\bimport\\b", name: "keyword.control.import.go" }, { match: "\\btype\\b", name: "keyword.type.go" }] }, label_loop_variables: { captures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "\\w+", name: "variable.other.label.go" }] } }, comment: "labeled loop variable name", match: "((?:^\\s*\\w+:\\s*$)|(?:^\\s*(?:\\bbreak\\b|\\bgoto\\b|\\bcontinue\\b)\\s+\\w+(?:\\s*/(?:/|\\*)\\s*.*)?$))" }, language_constants: { captures: { 1: { name: "constant.language.boolean.go" }, 2: { name: "constant.language.null.go" }, 3: { name: "constant.language.iota.go" } }, comment: "Language constants", match: "\\b(?:(true|false)|(nil)|(iota))\\b" }, map_types: { begin: "(?:(\\bmap\\b)(\\[))", beginCaptures: { 1: { name: "keyword.map.go" }, 2: { name: "punctuation.definition.begin.bracket.square.go" } }, comment: "map types", end: "(?:(\\])((?:(?:(?:[\\*\\[\\]]+)?(?:\\<\\-\\s*)?\\bchan\\b(?:\\s*\\<\\-)?\\s*)+)?(?!(?:[\\[\\]\\*]+)?\\b(?:func|struct|map)\\b)(?:[\\*\\[\\]]+)?(?:[\\w\\.]+))?)", endCaptures: { 1: { name: "punctuation.definition.end.bracket.square.go" }, 2: { patterns: [{ include: "#type-declarations-without-brackets" }, { match: "\\[", name: "punctuation.definition.begin.bracket.square.go" }, { match: "\\]", name: "punctuation.definition.end.bracket.square.go" }, { match: "\\w+", name: "entity.name.type.go" }] } }, patterns: [{ include: "#type-declarations-without-brackets" }, { include: "#parameter-variable-types" }, { include: "#functions" }, { match: "\\[", name: "punctuation.definition.begin.bracket.square.go" }, { match: "\\]", name: "punctuation.definition.end.bracket.square.go" }, { match: "\\{", name: "punctuation.definition.begin.bracket.curly.go" }, { match: "\\}", name: "punctuation.definition.end.bracket.curly.go" }, { match: "\\(", name: "punctuation.definition.begin.bracket.round.go" }, { match: "\\)", name: "punctuation.definition.end.bracket.round.go" }, { match: "\\w+", name: "entity.name.type.go" }] }, multi_types: { begin: "(\\btype\\b)\\s*(\\()", beginCaptures: { 1: { name: "keyword.type.go" }, 2: { name: "punctuation.definition.begin.bracket.round.go" } }, comment: "multi type declaration", end: "\\)", endCaptures: { 0: { name: "punctuation.definition.end.bracket.round.go" } }, patterns: [{ include: "#struct_variables_types" }, { include: "#type-declarations-without-brackets" }, { include: "#parameter-variable-types" }, { match: "(?:\\w+)", name: "entity.name.type.go" }] }, numeric_literals: { captures: { 0: { patterns: [{ begin: "(?=.)", end: "(?:\\n|$)", patterns: [{ captures: { 1: { name: "constant.numeric.decimal.go", patterns: [{ match: "(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])", name: "punctuation.separator.constant.numeric.go" }] }, 2: { name: "punctuation.separator.constant.numeric.go" }, 3: { name: "constant.numeric.decimal.point.go" }, 4: { name: "constant.numeric.decimal.go", patterns: [{ match: "(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])", name: "punctuation.separator.constant.numeric.go" }] }, 5: { name: "punctuation.separator.constant.numeric.go" }, 6: { name: "keyword.other.unit.exponent.decimal.go" }, 7: { name: "keyword.operator.plus.exponent.decimal.go" }, 8: { name: "keyword.operator.minus.exponent.decimal.go" }, 9: { name: "constant.numeric.exponent.decimal.go", patterns: [{ match: "(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])", name: "punctuation.separator.constant.numeric.go" }] }, 10: { name: "keyword.other.unit.imaginary.go" }, 11: { name: "constant.numeric.decimal.go", patterns: [{ match: "(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])", name: "punctuation.separator.constant.numeric.go" }] }, 12: { name: "punctuation.separator.constant.numeric.go" }, 13: { name: "keyword.other.unit.exponent.decimal.go" }, 14: { name: "keyword.operator.plus.exponent.decimal.go" }, 15: { name: "keyword.operator.minus.exponent.decimal.go" }, 16: { name: "constant.numeric.exponent.decimal.go", patterns: [{ match: "(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])", name: "punctuation.separator.constant.numeric.go" }] }, 17: { name: "keyword.other.unit.imaginary.go" }, 18: { name: "constant.numeric.decimal.point.go" }, 19: { name: "constant.numeric.decimal.go", patterns: [{ match: "(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])", name: "punctuation.separator.constant.numeric.go" }] }, 20: { name: "punctuation.separator.constant.numeric.go" }, 21: { name: "keyword.other.unit.exponent.decimal.go" }, 22: { name: "keyword.operator.plus.exponent.decimal.go" }, 23: { name: "keyword.operator.minus.exponent.decimal.go" }, 24: { name: "constant.numeric.exponent.decimal.go", patterns: [{ match: "(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])", name: "punctuation.separator.constant.numeric.go" }] }, 25: { name: "keyword.other.unit.imaginary.go" }, 26: { name: "keyword.other.unit.hexadecimal.go" }, 27: { name: "constant.numeric.hexadecimal.go", patterns: [{ match: "(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])", name: "punctuation.separator.constant.numeric.go" }] }, 28: { name: "punctuation.separator.constant.numeric.go" }, 29: { name: "constant.numeric.hexadecimal.go" }, 30: { name: "constant.numeric.hexadecimal.go", patterns: [{ match: "(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])", name: "punctuation.separator.constant.numeric.go" }] }, 31: { name: "punctuation.separator.constant.numeric.go" }, 32: { name: "keyword.other.unit.exponent.hexadecimal.go" }, 33: { name: "keyword.operator.plus.exponent.hexadecimal.go" }, 34: { name: "keyword.operator.minus.exponent.hexadecimal.go" }, 35: { name: "constant.numeric.exponent.hexadecimal.go", patterns: [{ match: "(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])", name: "punctuation.separator.constant.numeric.go" }] }, 36: { name: "keyword.other.unit.imaginary.go" }, 37: { name: "keyword.other.unit.hexadecimal.go" }, 38: { name: "constant.numeric.hexadecimal.go", patterns: [{ match: "(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])", name: "punctuation.separator.constant.numeric.go" }] }, 39: { name: "punctuation.separator.constant.numeric.go" }, 40: { name: "keyword.other.unit.exponent.hexadecimal.go" }, 41: { name: "keyword.operator.plus.exponent.hexadecimal.go" }, 42: { name: "keyword.operator.minus.exponent.hexadecimal.go" }, 43: { name: "constant.numeric.exponent.hexadecimal.go", patterns: [{ match: "(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])", name: "punctuation.separator.constant.numeric.go" }] }, 44: { name: "keyword.other.unit.imaginary.go" }, 45: { name: "keyword.other.unit.hexadecimal.go" }, 46: { name: "constant.numeric.hexadecimal.go" }, 47: { name: "constant.numeric.hexadecimal.go", patterns: [{ match: "(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])", name: "punctuation.separator.constant.numeric.go" }] }, 48: { name: "punctuation.separator.constant.numeric.go" }, 49: { name: "keyword.other.unit.exponent.hexadecimal.go" }, 50: { name: "keyword.operator.plus.exponent.hexadecimal.go" }, 51: { name: "keyword.operator.minus.exponent.hexadecimal.go" }, 52: { name: "constant.numeric.exponent.hexadecimal.go", patterns: [{ match: "(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])", name: "punctuation.separator.constant.numeric.go" }] }, 53: { name: "keyword.other.unit.imaginary.go" } }, match: "(?:(?:(?:(?:(?:\\G(?=[0-9.])(?!0[xXbBoO])([0-9](?:[0-9]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)((?:(?<=[0-9])\\.|\\.(?=[0-9])))([0-9](?:[0-9]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)?(?:(?<!_)([eE])(\\+?)(\\-?)((?:[0-9](?:[0-9]|(?:(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)))?(i(?!\\w))?(?:\\n|$)|\\G(?=[0-9.])(?!0[xXbBoO])([0-9](?:[0-9]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(?<!_)([eE])(\\+?)(\\-?)((?:[0-9](?:[0-9]|(?:(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*))(i(?!\\w))?(?:\\n|$))|\\G((?:(?<=[0-9])\\.|\\.(?=[0-9])))([0-9](?:[0-9]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(?:(?<!_)([eE])(\\+?)(\\-?)((?:[0-9](?:[0-9]|(?:(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)))?(i(?!\\w))?(?:\\n|$))|(\\G0[xX])_?([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)((?:(?<=[0-9a-fA-F])\\.|\\.(?=[0-9a-fA-F])))([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)?(?<!_)([pP])(\\+?)(\\-?)((?:[0-9](?:[0-9]|(?:(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*))(i(?!\\w))?(?:\\n|$))|(\\G0[xX])_?([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(?<!_)([pP])(\\+?)(\\-?)((?:[0-9](?:[0-9]|(?:(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*))(i(?!\\w))?(?:\\n|$))|(\\G0[xX])((?:(?<=[0-9a-fA-F])\\.|\\.(?=[0-9a-fA-F])))([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(?<!_)([pP])(\\+?)(\\-?)((?:[0-9](?:[0-9]|(?:(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*))(i(?!\\w))?(?:\\n|$))" }, { captures: { 1: { name: "constant.numeric.decimal.go", patterns: [{ match: "(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])", name: "punctuation.separator.constant.numeric.go" }] }, 2: { name: "punctuation.separator.constant.numeric.go" }, 3: { name: "keyword.other.unit.imaginary.go" }, 4: { name: "keyword.other.unit.binary.go" }, 5: { name: "constant.numeric.binary.go", patterns: [{ match: "(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])", name: "punctuation.separator.constant.numeric.go" }] }, 6: { name: "punctuation.separator.constant.numeric.go" }, 7: { name: "keyword.other.unit.imaginary.go" }, 8: { name: "keyword.other.unit.octal.go" }, 9: { name: "constant.numeric.octal.go", patterns: [{ match: "(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])", name: "punctuation.separator.constant.numeric.go" }] }, 10: { name: "punctuation.separator.constant.numeric.go" }, 11: { name: "keyword.other.unit.imaginary.go" }, 12: { name: "keyword.other.unit.hexadecimal.go" }, 13: { name: "constant.numeric.hexadecimal.go", patterns: [{ match: "(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])", name: "punctuation.separator.constant.numeric.go" }] }, 14: { name: "punctuation.separator.constant.numeric.go" }, 15: { name: "keyword.other.unit.imaginary.go" } }, match: "(?:(?:(?:\\G(?=[0-9.])(?!0[xXbBoO])([0-9](?:[0-9]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(i(?!\\w))?(?:\\n|$)|(\\G0[bB])_?([01](?:[01]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(i(?!\\w))?(?:\\n|$))|(\\G0[oO]?)_?((?:[0-7]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))+)(i(?!\\w))?(?:\\n|$))|(\\G0[xX])_?([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(i(?!\\w))?(?:\\n|$))" }, { match: "(?:(?:[0-9a-zA-Z_\\.])|(?<=[eEpP])[+-])+", name: "invalid.illegal.constant.numeric.go" }] }] } }, match: "(?<!\\w)\\.?\\d(?:(?:[0-9a-zA-Z_\\.])|(?<=[eEpP])[+-])*" }, operators: { comment: "Note that the order here is very important!", patterns: [{ match: "((?:\\*|\\&)+)(?:(?!\\d)(?=(?:[\\w\\[\\]])|(?:\\<\\-)))", name: "keyword.operator.address.go" }, { match: "<\\-", name: "keyword.operator.channel.go" }, { match: "\\-\\-", name: "keyword.operator.decrement.go" }, { match: "\\+\\+", name: "keyword.operator.increment.go" }, { match: "(==|!=|<=|>=|<(?!<)|>(?!>))", name: "keyword.operator.comparison.go" }, { match: "(&&|\\|\\||!)", name: "keyword.operator.logical.go" }, { match: "(=|\\+=|\\-=|\\|=|\\^=|\\*=|/=|:=|%=|<<=|>>=|&\\^=|&=)", name: "keyword.operator.assignment.go" }, { match: "(\\+|\\-|\\*|/|%)", name: "keyword.operator.arithmetic.go" }, { match: "(&(?!\\^)|\\||\\^|&\\^|<<|>>|\\~)", name: "keyword.operator.arithmetic.bitwise.go" }, { match: "\\.\\.\\.", name: "keyword.operator.ellipsis.go" }] }, other_struct_interface_expressions: { comment: "struct and interface expression in-line (before curly bracket)", patterns: [{ comment: "after control variables must be added exactly here, do not move it! (changing may not affect tests, so be careful!)", include: "#after_control_variables" }, { captures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "\\w+", name: "entity.name.type.go" }] }, 2: { patterns: [{ begin: "\\[", beginCaptures: { 0: { name: "punctuation.definition.begin.bracket.square.go" } }, end: "\\]", endCaptures: { 0: { name: "punctuation.definition.end.bracket.square.go" } }, patterns: [{ include: "#type-declarations" }, { match: "\\w+", name: "entity.name.type.go" }, { include: "$self" }] }] } }, match: "(\\b[\\w\\.]+)(\\[(?:[^\\]]+)?\\])?(?=\\{)(?<!\\bstruct\\b|\\binterface\\b)" }] }, other_variables: { comment: "all other variables", match: "\\w+", name: "variable.other.go" }, package_name: { patterns: [{ begin: "\\b(package)\\s+", beginCaptures: { 1: { name: "keyword.package.go" } }, comment: "package name", end: "(?!\\G)", patterns: [{ match: "\\d\\w*", name: "invalid.illegal.identifier.go" }, { match: "\\w+", name: "entity.name.type.package.go" }] }] }, "parameter-variable-types": { comment: "function and generic parameter types", patterns: [{ match: "\\{", name: "punctuation.definition.begin.bracket.curly.go" }, { match: "\\}", name: "punctuation.definition.end.bracket.curly.go" }, { begin: "(?:([\\w\\.\\*]+)?(\\[))", beginCaptures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "(?:\\w+)", name: "entity.name.type.go" }] }, 2: { name: "punctuation.definition.begin.bracket.square.go" } }, end: "\\]", endCaptures: { 0: { name: "punctuation.definition.end.bracket.square.go" } }, patterns: [{ include: "#generic_param_types" }] }, { begin: "\\(", beginCaptures: { 0: { name: "punctuation.definition.begin.bracket.round.go" } }, end: "\\)", endCaptures: { 0: { name: "punctuation.definition.end.bracket.round.go" } }, patterns: [{ include: "#function_param_types" }] }] }, property_variables: { captures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "\\w+", name: "variable.other.property.go" }] }, 2: { patterns: [{ include: "#type-declarations" }, { match: "\\w+", name: "variable.other.go" }, { include: "$self" }] }, 3: { patterns: [{ include: "#type-declarations" }, { match: "\\w+", name: "variable.other.property.field.go" }, { include: "$self" }] }, 4: { patterns: [{ captures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "\\w+", name: "variable.other.go" }] }, 2: { patterns: [{ include: "#type-declarations" }, { match: "\\w+", name: "variable.other.property.field.go" }] } }, match: "([\\w\\.\\*\\&\\[\\]]+)(\\.\\w+)" }, { include: "$self" }] } }, comment: "Property variables in struct | parameter field in struct initialization", match: "(?:(?:((?:\\b[\\w\\.]+)(?:\\:(?!\\=))))(?:(?:\\s*([\\w\\.\\*\\&\\[\\]]+)(\\.\\w+)(?![\\w\\.\\*\\&\\[\\]]*(?:\\{|\\()))((?:\\s*(?:\\<|\\>|\\<\\=|\\>\\=|\\=\\=|\\!\\=|\\|\\||\\&\\&|\\+|/|\\-|\\*|\\%|\\||\\&)\\s*(?:[\\w\\.\\*\\&\\[\\]]+)(?:\\.\\w+)(?![\\w\\.\\*\\&\\[\\]]*(?:\\{|\\()))*))?)" }, raw_string_literals: { begin: "`", beginCaptures: { 0: { name: "punctuation.definition.string.begin.go" } }, comment: "Raw string literals", end: "`", endCaptures: { 0: { name: "punctuation.definition.string.end.go" } }, name: "string.quoted.raw.go", patterns: [{ include: "#string_placeholder" }] }, runes: { patterns: [{ begin: "'", beginCaptures: { 0: { name: "punctuation.definition.string.begin.go" } }, end: "'", endCaptures: { 0: { name: "punctuation.definition.string.end.go" } }, name: "string.quoted.rune.go", patterns: [{ match: `\\G(\\\\([0-7]{3}|[abfnrtv\\\\'"]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8})|.)(?=')`, name: "constant.other.rune.go" }, { match: "[^']+", name: "invalid.illegal.unknown-rune.go" }] }] }, single_type: { patterns: [{ captures: { 1: { name: "keyword.type.go" }, 2: { patterns: [{ include: "#type-declarations" }, { match: "\\w+", name: "entity.name.type.go" }] }, 3: { patterns: [{ begin: "\\(", beginCaptures: { 0: { name: "punctuation.definition.begin.bracket.round.go" } }, end: "\\)", endCaptures: { 0: { name: "punctuation.definition.end.bracket.round.go" } }, patterns: [{ include: "#function_param_types" }, { include: "$self" }] }, { include: "#type-declarations" }, { include: "#generic_types" }, { match: "\\w+", name: "entity.name.type.go" }] } }, comment: "single type declaration", match: "(?:(?:^\\s*)(\\btype\\b)(?:\\s*)([\\w\\.\\*]+)(?:\\s+)(?!(?:\\=\\s*)?(?:[\\[\\]\\*]+)?\\b(?:struct|interface)\\b)([\\s\\S]+))" }, { begin: "(?:(?:^|\\s+)(\\btype\\b)(?:\\s*)([\\w\\.\\*]+)(?=\\[))", beginCaptures: { 1: { name: "keyword.type.go" }, 2: { patterns: [{ include: "#type-declarations-without-brackets" }, { match: "\\w+", name: "entity.name.type.go" }] } }, comment: "single type declaration with generics", end: "(?:(?<=\\])((?:\\s+)(?:(?:(?:[\\*\\[\\]]+)?(?:\\<\\-\\s*)?\\bchan\\b(?:\\s*\\<\\-)?\\s*)+)?(?:(?!(?:[\\[\\]\\*]+)?(?:\\bstruct\\b|\\binterface\\b|\\bfunc\\b))[\\w\\.\\-\\*\\[\\]]+))?)", endCaptures: { 1: { patterns: [{ include: "#type-declarations-without-brackets" }, { match: "\\[", name: "punctuation.definition.begin.bracket.square.go" }, { match: "\\]", name: "punctuation.definition.end.bracket.square.go" }, { match: "\\w+", name: "entity.name.type.go" }] } }, patterns: [{ include: "#struct_variables_types" }, { include: "#type-declarations-without-brackets" }, { include: "#parameter-variable-types" }, { match: "\\[", name: "punctuation.definition.begin.bracket.square.go" }, { match: "\\]", name: "punctuation.definition.end.bracket.square.go" }, { match: "\\{", name: "punctuation.definition.begin.bracket.curly.go" }, { match: "\\}", name: "punctuation.definition.end.bracket.curly.go" }, { match: "\\(", name: "punctuation.definition.begin.bracket.round.go" }, { match: "\\)", name: "punctuation.definition.end.bracket.round.go" }, { match: "\\w+", name: "entity.name.type.go" }] }] }, slice_index_variables: { captures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "\\w+", name: "variable.other.go" }] } }, comment: "slice index and capacity variables, to not scope them as property variables", match: "(?<=\\w\\[)((?:(?:\\b[\\w\\.\\*\\+/\\-\\*\\%\\<\\>\\|\\&]+\\:)|(?:\\:\\b[\\w\\.\\*\\+/\\-\\*\\%\\<\\>\\|\\&]+))(?:\\b[\\w\\.\\*\\+/\\-\\*\\%\\<\\>\\|\\&]+)?(?:\\:\\b[\\w\\.\\*\\+/\\-\\*\\%\\<\\>\\|\\&]+)?)(?=\\])" }, statements: { patterns: [{ include: "#package_name" }, { include: "#import" }, { include: "#syntax_errors" }, { include: "#group-functions" }, { include: "#group-types" }, { include: "#group-variables" }, { include: "#field_hover" }] }, storage_types: { patterns: [{ match: "\\bbool\\b", name: "storage.type.boolean.go" }, { match: "\\bbyte\\b", name: "storage.type.byte.go" }, { match: "\\berror\\b", name: "storage.type.error.go" }, { match: "\\b(complex(64|128)|float(32|64)|u?int(8|16|32|64)?)\\b", name: "storage.type.numeric.go" }, { match: "\\brune\\b", name: "storage.type.rune.go" }, { match: "\\bstring\\b", name: "storage.type.string.go" }, { match: "\\buintptr\\b", name: "storage.type.uintptr.go" }, { match: "\\bany\\b", name: "entity.name.type.any.go" }] }, string_escaped_char: { patterns: [{ match: `\\\\([0-7]{3}|[abfnrtv\\\\'"]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8})`, name: "constant.character.escape.go" }, { match: `\\\\[^0-7xuUabfnrtv\\'"]`, name: "invalid.illegal.unknown-escape.go" }] }, string_literals: { patterns: [{ begin: '"', beginCaptures: { 0: { name: "punctuation.definition.string.begin.go" } }, comment: "Interpreted string literals", end: '"', endCaptures: { 0: { name: "punctuation.definition.string.end.go" } }, name: "string.quoted.double.go", patterns: [{ include: "#string_escaped_char" }, { include: "#string_placeholder" }] }] }, string_placeholder: { patterns: [{ match: "%(\\[\\d+\\])?([\\+#\\-0\\x20]{,2}((\\d+|\\*)?(\\.?(\\d+|\\*|(\\[\\d+\\])\\*?)?(\\[\\d+\\])?)?))?[vT%tbcdoqxXUbeEfFgGspw]", name: "constant.other.placeholder.go" }] }, struct_interface_declaration: { captures: { 1: { name: "keyword.type.go" }, 2: { patterns: [{ include: "#type-declarations" }, { match: "\\w+", name: "entity.name.type.go" }] } }, comment: "struct, interface type declarations (related to: struct_variables_types, interface_variables_types)", match: "(?:(?:^\\s*)(\\btype\\b)(?:\\s*)([\\w\\.]+))" }, struct_variable_types_fields_multi: { comment: "struct variable and type fields with multi lines", patterns: [{ begin: "(?:((?:\\w+(?:\\,\\s*\\w+)*)(?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\<\\-\\s*)?\\bchan\\b(?:\\s*\\<\\-)?\\s*)+)?(?:\\s+)(?:[\\[\\]\\*]+)?)(\\bstruct\\b)(?:\\s*)(\\{))", beginCaptures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "\\w+", name: "variable.other.property.go" }] }, 2: { name: "keyword.struct.go" }, 3: { name: "punctuation.definition.begin.bracket.curly.go" } }, comment: "struct in struct types", end: "\\}", endCaptures: { 0: { name: "punctuation.definition.end.bracket.curly.go" } }, patterns: [{ include: "#struct_variables_types_fields" }, { include: "$self" }] }, { begin: "(?:((?:\\w+(?:\\,\\s*\\w+)*)(?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\<\\-\\s*)?\\bchan\\b(?:\\s*\\<\\-)?\\s*)+)?(?:\\s+)(?:[\\[\\]\\*]+)?)(\\binterface\\b)(?:\\s*)(\\{))", beginCaptures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "\\w+", name: "variable.other.property.go" }] }, 2: { name: "keyword.interface.go" }, 3: { name: "punctuation.definition.begin.bracket.curly.go" } }, comment: "interface in struct types", end: "\\}", endCaptures: { 0: { name: "punctuation.definition.end.bracket.curly.go" } }, patterns: [{ include: "#interface_variables_types_field" }, { include: "$self" }] }, { begin: "(?:((?:\\w+(?:\\,\\s*\\w+)*)(?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\<\\-\\s*)?\\bchan\\b(?:\\s*\\<\\-)?\\s*)+)?(?:\\s+)(?:[\\[\\]\\*]+)?)(\\bfunc\\b)(?:\\s*)(\\())", beginCaptures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "\\w+", name: "variable.other.property.go" }] }, 2: { name: "keyword.function.go" }, 3: { name: "punctuation.definition.begin.bracket.round.go" } }, comment: "function in struct types", end: "\\)", endCaptures: { 0: { name: "punctuation.definition.end.bracket.round.go" } }, patterns: [{ include: "#function_param_types" }, { include: "$self" }] }, { include: "#parameter-variable-types" }] }, struct_variables_types: { begin: "(\\bstruct\\b)\\s*(\\{)", beginCaptures: { 1: { name: "keyword.struct.go" }, 2: { name: "punctuation.definition.begin.bracket.curly.go" } }, comment: "Struct variable type", end: "\\}", endCaptures: { 0: { name: "punctuation.definition.end.bracket.curly.go" } }, patterns: [{ include: "#struct_variables_types_fields" }, { include: "$self" }] }, struct_variables_types_fields: { comment: "Struct variable type fields", patterns: [{ include: "#struct_variable_types_fields_multi" }, { captures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "(?:\\w+)", name: "entity.name.type.go" }] } }, comment: "one line - single type", match: "(?:(?<=\\{)\\s*((?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\<\\-\\s*)?\\bchan\\b(?:\\s*\\<\\-)?\\s*)+)?(?:[\\w\\.\\*\\[\\]]+))\\s*(?=\\}))" }, { captures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "(?:\\w+)", name: "variable.other.property.go" }] }, 2: { patterns: [{ include: "#type-declarations" }, { match: "(?:\\w+)", name: "entity.name.type.go" }] } }, comment: "one line - property variables and types", match: "(?:(?<=\\{)\\s*((?:(?:\\w+\\,\\s*)+)?(?:\\w+\\s+))((?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\<\\-\\s*)?\\bchan\\b(?:\\s*\\<\\-)?\\s*)+)?(?:[\\w\\.\\*\\[\\]]+))\\s*(?=\\}))" }, { captures: { 1: { patterns: [{ captures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "(?:\\w+)", name: "variable.other.property.go" }] }, 2: { patterns: [{ include: "#type-declarations" }, { match: "(?:\\w+)", name: "entity.name.type.go" }] } }, match: "(?:((?:(?:\\w+\\,\\s*)+)?(?:\\w+\\s+))?((?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\<\\-\\s*)?\\bchan\\b(?:\\s*\\<\\-)?\\s*)+)?(?:[\\S]+)(?:\\;)?))" }] } }, comment: "one line with semicolon(;) without formatting gofmt - single type | property variables and types", match: "(?:(?<=\\{)((?:\\s*(?:(?:(?:\\w+\\,\\s*)+)?(?:\\w+\\s+))?(?:(?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\<\\-\\s*)?\\bchan\\b(?:\\s*\\<\\-)?\\s*)+)?(?:[\\S]+)(?:\\;)?))+)\\s*(?=\\}))" }, { captures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "(?:\\w+)", name: "entity.name.type.go" }] } }, comment: "one type only", match: '(?:((?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\<\\-\\s*)?\\bchan\\b(?:\\s*\\<\\-)?\\s*)+)?(?<!\\,\\s*)(?:[\\w\\.\\*]+)\\s*(?:(?:(?:".*")|(?:\\`.*\\`))\\s*)?(?:/(?:/|\\*).*)?)$)' }, { captures: { 1: { patterns: [{ include: "#type-declarations" }, { match: "(?:\\w+)", name: "variable.other.property.go" }] }, 2: { patterns: [{ include: "#type-declarations-without-brackets" }, { include: "#parameter-variable-types" }, { match: "(?:\\w+)", name: "entity.name.type.go" }] } }, comment: "property variables and types", match: "(?:((?:(?:\\w+\\,\\s*)+)?(?:\\w+\\s+))([\\s\\S]+))" }] }, support_functions: { captures: { 1: { name: "entity.name.function.support.go" }, 2: { patterns: [{ include: "#type-declarations" }, { match: "\\d\\w*", name: "invalid.illegal.identifier.go" }, { match: "\\w+", name: "entity.name.function.support.go" }] }, 3: { patterns: [{ include: "#type-declarations-without-brackets" }, { match: "\\[", name: "punctuation.definition.begin.bracket.square.go" }, { match: "\\]", name: "punctuation.definition.end.bracket.square.go" }, { match: "\\{", name: "punctuation.definition.begin.bracket.curly.go" }, { match: "\\}", name: "punctuation.definition.end.bracket.curly.go" }, { match: "\\w+", name: "entity.name.type.go" }] } }, comment: "Support Functions", match: `(?:(?:((?<=\\.)\\b\\w+)|(\\b\\w+))(\\[(?:(?:[\\w\\.\\*\\[\\]\\{\\}"\\']+)(?:(?:\\,\\s*(?:[\\w\\.\\*\\[\\]\\{\\}]+))*))?\\])?(?=\\())` }, switch_select_case_variables: { captures: { 1: { name: "keyword.control.go" }, 2: { patterns: [{ include: "#type-declarations" }, { include: "#support_functions" }, { include: "#variable_assignment" }, { match: "\\w+", name: "variable.other.go" }] } }, comment: "variables after case control keyword in switch/select expression, to not scope them as property variables", match: "(?:(?:^\\s*(\\bcase\\b))(?:\\s+)([\\s\\S]+(?:\\:)\\s*(?:/(?:/|\\*).*)?)$)" }, switch_types: { begin: "(?<=\\bswitch\\b)(?:\\s*)(?:(\\w+\\s*\\:\\=)?\\s*([\\w\\.\\*\\(\\)\\[\\]]+))(\\.\\(\\btype\\b\\)\\s*)(\\{)", beginCaptures: { 1: { patterns: [{ include: "#operators" }, { match: "\\w+", name: "variable.other.assignment.go" }] }, 2: { patterns: [{ include: "#support_functions" }, { include: "#type-declarations" }, { match: "\\w+", name: "variable.other.go" }] }, 3: { patterns: [{ include: "#delimiters" }, { include: "#brackets" }, { match: "\\btype\\b", name: "keyword.type.go" }] }, 4: { name: "punctuation.definition.begin.bracket.curly.go" } }, comment: "switch type assertions, only highlights types after case keyword", end: "(?:\\})", endCaptures: { 0: { name: "punctuation.definition.end.bracket.curly.go" } }, patterns: [{ captures: { 1: { name: "keyword.control.go" }, 2: { patterns: [{ include: "#type-declarations" }, { match: "\\w+", name: "entity.name.type.go" }] }, 3: { name: "punctuation.other.colon.go" }, 4: { patterns: [{ include: "#comments" }] } }, comment: "types after case keyword with single line", match: "(?:^\\s*(\\bcase\\b))(?:\\s+)([\\w\\.\\,\\*\\=\\<\\>\\!\\s]+)(:)(\\s*/(?:/|\\*)\\s*.*)?$" }, { begin: "\\bcase\\b", beginCaptures: { 0: { name: "keyword.control.go" } }, comment: "types after case keyword with multi lines", end: "\\:", endCaptures: { 0: { name: "punctuation.other.colon.go" } }, patterns: [{ include: "#type-declarations" }, { match: "\\w+", name: "entity.name.type.go" }] }, { include: "$self" }] }, syntax_errors: { patterns: [{ captures: { 1: { name: "invalid.illegal.slice.go" } }, comment: "Syntax error using slices", match: "\\[\\](\\s+)" }, { comment: "Syntax error numeric literals", match: "\\b0[0-7]*[89]\\d*\\b", name: "invalid.illegal.numeric.go" }] }, terminators: { comment: "Terminators", match: ";", name: "punctuation.terminator.go" }, "type-declarations": { comment: "includes all type declarations", patterns: [{ include: "#language_constants" }, { include: "#comments" }, { include: "#map_types" }, { include: "#brackets" }, { include: "#delimiters" }, { include: "#keywords" }, { include: "#operators" }, { include: "#runes" }, { include: "#storage_types" }, { include: "#raw_string_literals" }, { include: "#string_literals" }, { include: "#numeric_literals" }, { include: "#terminators" }] }, "type-declarations-without-brackets": { comment: "includes all type declarations without brackets (in some cases, brackets need to be captured manually)", patterns: [{ include: "#language_constants" }, { include: "#comments" }, { include: "#map_types" }, { include: "#delimiters" }, { include: "#keywords" }, { include: "#operators" }, { include: "#runes" }, { include: "#storage_types" }, { include: "#raw_string_literals" }, { include: "#string_literals" }, { include: "#numeric_literals" }, { include: "#terminators" }] }, type_assertion_inline: { captures: { 1: { name: "keyword.type.go" }, 2: { patterns: [{ include: "#type-declarations" }, { match: "(?:\\w+)", name: "entity.name.type.go" }] } }, comment: "struct/interface types in-line (type assertion) | switch type keyword", match: "(?:(?<=\\.\\()(?:(\\btype\\b)|((?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\<\\-\\s*)?\\bchan\\b(?:\\s*\\<\\-)?\\s*)+)?[\\w\\.\\[\\]\\*]+))(?=\\)))" }, var_const_assignment: { comment: "variable assignment with var and const keyword", patterns: [{ captures: { 1: { patterns: [{ include: "#delimiters" }, { match: "\\w+", name: "variable.other.assignment.go" }] }, 2: { patterns: [{ include: "#type-declarations-without-brackets" }, { include: "#generic_types" }, { match: "\\(", name: "punctuation.definition.begin.bracket.round.go" }, { match: "\\)", name: "punctuation.definition.end.bracket.round.go" }, { match: "\\[", name: "punctuation.definition.begin.bracket.square.go" }, { match: "\\]", name: "punctuation.definition.end.bracket.square.go" }, { match: "\\w+", name: "entity.name.type.go" }] } }, comment: "var and const with single type assignment", match: "(?:(?<=\\bvar\\b|\\bconst\\b)(?:\\s*)(\\b[\\w\\.]+(?:\\,\\s*[\\w\\.]+)*)(?:\\s*)((?:(?:(?:[\\*\\[\\]]+)?(?:\\<\\-\\s*)?\\bchan\\b(?:\\s*\\<\\-)?\\s*)+(?:\\([^\\)]+\\))?)?(?!(?:[\\[\\]\\*]+)?\\b(?:struct|func|map)\\b)(?:[\\w\\.\\[\\]\\*]+(?:\\,\\s*[\\w\\.\\[\\]\\*]+)*)?(?:\\s*)(?:\\=)?)?)" }, { begin: "(?:(?<=\\bvar\\b|\\bconst\\b)(?:\\s*)(\\())", beginCaptures: { 1: { name: "punctuation.definition.begin.bracket.round.go" } }, comment: "var and const with multi type assignment", end: "\\)", endCaptures: { 0: { name: "punctuation.definition.end.bracket.round.go" } }, patterns: [{ captures: { 1: { patterns: [{ include: "#delimiters" }, { match: "\\w+", name: "variable.other.assignment.go" }] }, 2: { patterns: [{ include: "#type-declarations-without-brackets" }, { include: "#generic_types" }, { match: "\\(", name: "punctuation.definition.begin.bracket.round.go" }, { match: "\\)", name: "punctuation.definition.end.bracket.round.go" }, { match: "\\[", name: "punctuation.definition.begin.bracket.square.go" }, { match: "\\]", name: "punctuation.definition.end.bracket.square.go" }, { match: "\\w+", name: "entity.name.type.go" }] } }, match: "(?:(?:^\\s*)(\\b[\\w\\.]+(?:\\,\\s*[\\w\\.]+)*)(?:\\s*)((?:(?:(?:[\\*\\[\\]]+)?(?:\\<\\-\\s*)?\\bchan\\b(?:\\s*\\<\\-)?\\s*)+(?:\\([^\\)]+\\))?)?(?!(?:[\\[\\]\\*]+)?\\b(?:struct|func|map)\\b)(?:[\\w\\.\\[\\]\\*]+(?:\\,\\s*[\\w\\.\\[\\]\\*]+)*)?(?:\\s*)(?:\\=)?)?)" }, { include: "$self" }] }] }, variable_assignment: { comment: "variable assignment", patterns: [{ captures: { 0: { patterns: [{ include: "#delimiters" }, { match: "\\d\\w*", name: "invalid.illegal.identifier.go" }, { match: "\\w+", name: "variable.other.assignment.go" }] } }, comment: "variable assignment with :=", match: "\\b\\w+(?:\\,\\s*\\w+)*(?=\\s*:=)" }, { captures: { 0: { patterns: [{ include: "#delimiters" }, { include: "#operators" }, { match: "\\d\\w*", name: "invalid.illegal.identifier.go" }, { match: "\\w+", name: "variable.other.assignment.go" }] } }, comment: "variable assignment with =", match: "\\b[\\w\\.\\*]+(?:\\,\\s*[\\w\\.\\*]+)*(?=\\s*=(?!=))" }] } }, scopeName: "source.go" });
|
|
2
|
-
var t = [
|
|
3
|
-
e
|
|
4
|
-
];
|
|
5
|
-
export {
|
|
6
|
-
t as default
|
|
7
|
-
};
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
const e = Object.freeze({ displayName: "Mermaid", fileTypes: [], injectionSelector: "L:text.html.markdown", name: "mermaid", patterns: [{ include: "#mermaid-code-block" }, { include: "#mermaid-code-block-with-attributes" }, { include: "#mermaid-ado-code-block" }], repository: { mermaid: { patterns: [{ begin: "^\\s*(classDiagram)", beginCaptures: { 1: { name: "keyword.control.mermaid" } }, comment: "Class Diagram", end: "(^|\\G)(?=\\s*[`:~]{3,}\\s*$)", patterns: [{ match: "\\%%.*", name: "comment" }, { captures: { 1: { name: "entity.name.type.class.mermaid" }, 2: { name: "keyword.control.mermaid" }, 3: { name: "keyword.control.mermaid" }, 4: { name: "keyword.control.mermaid" }, 5: { name: "entity.name.type.class.mermaid" }, 6: { name: "keyword.control.mermaid" }, 7: { name: "string" } }, comment: '(class name) ("multiplicity relationship")? (relationship) ("multiplicity relationship")? (class name) :? (labelText)?', match: '([\\w-]+)\\s("(?:\\d+|\\*|0..\\d+|1..\\d+|1..\\*)")?\\s?(--o|--\\*|\\<--|--\\>|<\\.\\.|\\.\\.\\>|\\<\\|\\.\\.|\\.\\.\\|\\>|\\<\\|--|--\\|>|--\\*|--|\\.\\.|\\*--|o--)\\s("(?:\\d+|\\*|0..\\d+|1..\\d+|1..\\*)")?\\s?([\\w-]+)\\s?(:)?\\s(.*)$' }, { captures: { 1: { name: "entity.name.type.class.mermaid" }, 2: { name: "keyword.control.mermaid" }, 3: { name: "keyword.control.mermaid" }, 4: { name: "entity.name.function.mermaid" }, 5: { name: "punctuation.parenthesis.open.mermaid" }, 6: { name: "storage.type.mermaid" }, 7: { name: "punctuation.definition.typeparameters.begin.mermaid" }, 8: { name: "storage.type.mermaid" }, 9: { name: "punctuation.definition.typeparameters.end.mermaid" }, 10: { name: "entity.name.variable.parameter.mermaid" }, 11: { name: "punctuation.parenthesis.closed.mermaid" }, 12: { name: "keyword.control.mermaid" }, 13: { name: "storage.type.mermaid" }, 14: { name: "punctuation.definition.typeparameters.begin.mermaid" }, 15: { name: "storage.type.mermaid" }, 16: { name: "punctuation.definition.typeparameters.end.mermaid" } }, comment: "(class name) : (visibility)?(function)( (function param/generic param)? )(classifier)? (return/generic return)?$", match: "([\\w-]+)\\s?(:)\\s([\\+~#-])?([\\w-]+)(\\()([\\w-]+)?(~)?([\\w-]+)?(~)?\\s?([\\w-]+)?(\\))([*\\$]{0,2})\\s?([\\w-]+)?(~)?([\\w-]+)?(~)?$" }, { captures: { 1: { name: "entity.name.type.class.mermaid" }, 2: { name: "keyword.control.mermaid" }, 3: { name: "keyword.control.mermaid" }, 4: { name: "storage.type.mermaid" }, 5: { name: "punctuation.definition.typeparameters.begin.mermaid" }, 6: { name: "storage.type.mermaid" }, 7: { name: "punctuation.definition.typeparameters.end.mermaid" }, 8: { name: "entity.name.variable.field.mermaid" } }, comment: "(class name) : (visibility)?(datatype/generic data type) (attribute name)$", match: "([\\w-]+)\\s?(:)\\s([\\+~#-])?([\\w-]+)(~)?([\\w-]+)?(~)?\\s([\\w-]+)?$" }, { captures: { 1: { name: "punctuation.definition.typeparameters.begin.mermaid" }, 2: { name: "storage.type.mermaid" }, 3: { name: "punctuation.definition.typeparameters.end.mermaid" }, 4: { name: "entity.name.type.class.mermaid" } }, comment: "<<(Annotation)>> (class name)", match: "(<<)([\\w-]+)(>>)\\s?([\\w-]+)?" }, { begin: "(class)\\s+([\\w-]+)(~)?([\\w-]+)?(~)?\\s?({)", beginCaptures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "entity.name.type.class.mermaid" }, 3: { name: "punctuation.definition.typeparameters.begin.mermaid" }, 4: { name: "storage.type.mermaid" }, 5: { name: "punctuation.definition.typeparameters.end.mermaid" }, 6: { name: "keyword.control.mermaid" } }, comment: "class (class name) ~?(generic type)?~? ({)", end: "(})", endCaptures: { 1: { name: "keyword.control.mermaid" } }, patterns: [{ match: "\\%%.*", name: "comment" }, { begin: "\\s([\\+~#-])?([\\w-]+)(\\()", beginCaptures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "entity.name.function.mermaid" }, 3: { name: "punctuation.parenthesis.open.mermaid" } }, comment: "(visibility)?(function)( (function param/generic param)? )(classifier)? (return/generic return)?$", end: "(\\))([*\\$]{0,2})\\s?([\\w-]+)?(~)?([\\w-]+)?(~)?$", endCaptures: { 1: { name: "punctuation.parenthesis.closed.mermaid" }, 2: { name: "keyword.control.mermaid" }, 3: { name: "storage.type.mermaid" }, 4: { name: "punctuation.definition.typeparameters.begin.mermaid" }, 5: { name: "storage.type.mermaid" }, 6: { name: "punctuation.definition.typeparameters.end.mermaid" } }, patterns: [{ captures: { 1: { name: "storage.type.mermaid" }, 2: { name: "punctuation.definition.typeparameters.begin.mermaid" }, 3: { name: "storage.type.mermaid" }, 4: { name: "punctuation.definition.typeparameters.end.mermaid" }, 5: { name: "entity.name.variable.parameter.mermaid" } }, comment: "(TBD)", match: "\\s*,?\\s*([\\w-]+)?(~)?([\\w-]+)?(~)?\\s?([\\w-]+)?" }] }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "storage.type.mermaid" }, 3: { name: "punctuation.definition.typeparameters.begin.mermaid" }, 4: { name: "storage.type.mermaid" }, 5: { name: "punctuation.definition.typeparameters.end.mermaid" }, 6: { name: "entity.name.variable.field.mermaid" } }, comment: "(visibility)?(datatype/generic data type) (attribute name)$", match: "\\s([\\+~#-])?([\\w-]+)(~)?([\\w-]+)?(~)?\\s([\\w-]+)?$" }, { captures: { 1: { name: "punctuation.definition.typeparameters.begin.mermaid" }, 2: { name: "storage.type.mermaid" }, 3: { name: "punctuation.definition.typeparameters.end.mermaid" }, 4: { name: "entity.name.type.class.mermaid" } }, comment: "<<(Annotation)>> (class name)", match: "(<<)([\\w-]+)(>>)\\s?([\\w-]+)?" }] }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "entity.name.type.class.mermaid" }, 3: { name: "punctuation.definition.typeparameters.begin.mermaid" }, 4: { name: "storage.type.mermaid" }, 5: { name: "punctuation.definition.typeparameters.end.mermaid" } }, comment: "class (class name) ~?(generic type)?~?", match: "(class)\\s+([\\w-]+)(~)?([\\w-]+)?(~)?" }] }, { begin: "^\\s*(erDiagram)", beginCaptures: { 1: { name: "keyword.control.mermaid" } }, comment: "Entity Relationship Diagram", end: "(^|\\G)(?=\\s*[`:~]{3,}\\s*$)", patterns: [{ match: "\\%%.*", name: "comment" }, { comment: "(entity)", match: "^\\s*([\\w-]+)$", name: "variable" }, { begin: "\\s+([\\w-]+)\\s*({)", beginCaptures: { 1: { name: "variable" }, 2: { name: "keyword.control.mermaid" } }, comment: "(entity) {", end: "(})", endCaptures: { 1: { name: "keyword.control.mermaid" } }, patterns: [{ captures: { 1: { name: "storage.type.mermaid" }, 2: { name: "variable" }, 3: { name: "keyword.control.mermaid" }, 4: { name: "string" } }, comment: '(type) (name) (PK|FK)? ("comment")?', match: `\\s*([\\w-]+)\\s+([\\w-]+)\\s+(PK|FK)?\\s*("["\\($&%\\^/#.,?!;:*+=<>\\'\\\\\\-\\w\\s]*")?\\s*` }, { match: "\\%%.*", name: "comment" }] }, { captures: { 1: { name: "variable" }, 2: { name: "keyword.control.mermaid" }, 3: { name: "variable" }, 4: { name: "keyword.control.mermaid" }, 5: { name: "string" } }, comment: "(entity) (relationship) (entity) : (label)", match: '\\s*([\\w-]+)\\s*((?:\\|o|\\|\\||}o|}\\||one or (?:zero|more|many)|zero or (?:one|more|many)|many\\((?:0|1)\\)|only one|0\\+|1\\+?)(?:..|--)(?:o\\||\\|\\||o{|\\|{|one or (?:zero|more|many)|zero or (?:one|more|many)|many\\((?:0|1)\\)|only one|0\\+|1\\+?))\\s*([\\w-]+)\\s*(:)\\s*((?:"[\\w\\s]*")|(?:[\\w-]+))' }] }, { begin: "^\\s*(gantt)", beginCaptures: { 1: { name: "keyword.control.mermaid" } }, comment: "Gantt Diagram", end: "(^|\\G)(?=\\s*[`:~]{3,}\\s*$)", patterns: [{ match: "\\%%.*", name: "comment" }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "entity.name.function.mermaid" } }, match: "(dateFormat)\\s+([\\w\\-\\.]+)" }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "entity.name.function.mermaid" } }, match: "(axisFormat)\\s+([\\w\\%\\/\\\\\\-\\.]+)" }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "string" } }, match: "(tickInterval)\\s+(([1-9][0-9]*)(millisecond|second|minute|hour|day|week|month))" }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "string" } }, match: `(title)\\s+(\\s*["\\(\\)$&%\\^/#.,?!;:*+=<>\\'\\\\\\-\\w\\s]*)` }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "string" } }, match: "(excludes)\\s+((?:[\\d\\-,\\s]+|monday|tuesday|wednesday|thursday|friday|saturday|sunday|weekends)+)" }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "string" } }, match: "^\\s+(todayMarker)\\s+(.*)$" }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "string" } }, match: `(section)\\s+(\\s*["\\(\\)$&%\\^/#.,?!;:*+=<>\\'\\\\\\-\\w\\s]*)` }, { begin: "^\\s(.*)(:)", beginCaptures: { 1: { name: "string" }, 2: { name: "keyword.control.mermaid" } }, end: "$", patterns: [{ match: "(crit|done|active|after)", name: "entity.name.function.mermaid" }, { match: "\\%%.*", name: "comment" }] }] }, { begin: "^\\s*(gitGraph)", beginCaptures: { 1: { name: "keyword.control.mermaid" } }, comment: "Git Graph", end: "(^|\\G)(?=\\s*[`:~]{3,}\\s*$)", patterns: [{ match: "\\%%.*", name: "comment" }, { begin: "\\s*(commit)", beginCaptures: { 1: { name: "keyword.control.mermaid" } }, comment: "commit", end: "$", patterns: [{ captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "keyword.control.mermaid" }, 3: { name: "string" } }, comment: '(id)(:) ("id")', match: '\\s*(id)(:)\\s?("[^"\\n]*")' }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "keyword.control.mermaid" }, 3: { name: "entity.name.function.mermaid" } }, comment: "(type)(:) (COMMIT_TYPE)", match: "\\s*(type)(:)\\s?(NORMAL|REVERSE|HIGHLIGHT)" }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "keyword.control.mermaid" }, 3: { name: "string" } }, comment: '(tag)(:) ("tag")', match: `\\s*(tag)(:)\\s?("[\\($&%\\^/#.,?!;:*+=<>\\'\\\\\\-\\w\\s]*")` }] }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "variable" } }, comment: "(checkout) (branch-name)", match: '\\s*(checkout)\\s*([^\\s"]*)' }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "variable" }, 3: { name: "keyword.control.mermaid" }, 4: { name: "keyword.control.mermaid" }, 5: { name: "constant.numeric.decimal.mermaid" } }, comment: "(branch) (branch-name) (order)?(:) (number)", match: '\\s*(branch)\\s*([^\\s"]*)\\s*(?:(order)(:)\\s?(\\d+))?' }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "variable" }, 3: { name: "keyword.control.mermaid" }, 4: { name: "keyword.control.mermaid" }, 5: { name: "string" } }, comment: '(merge) (branch-name) (tag: "tag-name")?', match: '\\s*(merge)\\s*([^\\s"]*)\\s*(?:(tag)(:)\\s?("[^"\\n]*"))?' }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "keyword.control.mermaid" }, 3: { name: "keyword.control.mermaid" }, 4: { name: "string" } }, comment: '(cherry-pick) (id)(:)("commit-id")', match: '\\s*(cherry-pick)\\s+(id)(:)\\s*("[^"\\n]*")' }] }, { begin: "^\\s*(graph|flowchart)\\s+([\\p{Letter}\\ 0-9]+)", beginCaptures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "entity.name.function.mermaid" } }, comment: "Graph", end: "(^|\\G)(?=\\s*[`:~]{3,}\\s*$)", patterns: [{ match: "\\%%.*", name: "comment" }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "variable" }, 3: { name: "keyword.control.mermaid" }, 4: { name: "string" }, 5: { name: "keyword.control.mermaid" } }, comment: "", match: '\\b(subgraph)\\s+(\\w+)(\\[)("?[\\w\\s*+%=\\\\/:\\.\\-\'`,&^#$!?<>]*"?)(\\])' }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "entity.name.function.mermaid" } }, match: "\\b(subgraph)\\s+([\\p{Letter}\\ 0-9<>]+)", name: "meta.function.mermaid" }, { match: "\\b(end|RB|BT|RL|TD|LR)\\b", name: "keyword.control.mermaid" }, { begin: "(\\b(?:(?!--|==)[-\\w])+\\b\\s*)(\\(\\[|\\[\\[|\\[\\(|\\[|\\(+|\\>|\\{|\\(\\()", beginCaptures: { 1: { name: "variable" }, 2: { name: "keyword.control.mermaid" }, 3: { name: "string" } }, comment: "(Entity)(Edge/Shape)(Text)(Edge/Shape)", end: "(\\]\\)|\\]\\]|\\)\\]|\\]|\\)+|\\}|\\)\\))", endCaptures: { 1: { name: "keyword.control.mermaid" } }, patterns: [{ begin: '\\s*(")', beginCaptures: { 1: { name: "string" } }, comment: '("multi-line text")', end: '(")', endCaptures: { 1: { name: "string" } }, patterns: [{ begin: '([^"]*)', beginCaptures: { 1: { name: "string" } }, comment: "capture inner text between quotes", end: '(?=")', patterns: [{ captures: { 1: { name: "comment" } }, match: '([^"]*)' }] }] }, { captures: { 1: { name: "string" } }, comment: "(single line text)", match: "\\s*([$&%\\^/#.,?!;:*+<>_\\'\\\\\\w\\s]+)" }] }, { begin: "\\s*((?:-{2,5}|={2,5})[xo>]?\\|)", beginCaptures: { 1: { name: "keyword.control.mermaid" } }, comment: '(Graph Link)("Multiline text")(Graph Link)', end: "(\\|)", endCaptures: { 1: { name: "keyword.control.mermaid" } }, patterns: [{ begin: '\\s*(")', beginCaptures: { 1: { name: "string" } }, comment: '("multi-line text")', end: '(")', endCaptures: { 1: { name: "string" } }, patterns: [{ begin: '([^"]*)', beginCaptures: { 1: { name: "string" } }, comment: "capture inner text between quotes", end: '(?=")', patterns: [{ captures: { 1: { name: "comment" } }, match: '([^"]*)' }] }] }, { captures: { 1: { name: "string" } }, comment: "(single line text)", match: "\\s*([$&%\\^/#.,?!;:*+<>_\\'\\\\\\w\\s]+)" }] }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "string" }, 3: { name: "keyword.control.mermaid" } }, comment: "(Graph Link Start Arrow)(Text)(Graph Link End Arrow)", match: "\\s*([xo<]?(?:-{2,5}|={2,5}|-\\.{1,3}|-\\.))((?:(?!--|==)[\\w\\s*+%=\\\\/:\\.\\-'`,\"&^#$!?<>\\[\\]])*)((?:-{2,5}|={2,5}|\\.{1,3}-|\\.-)[xo>]?)" }, { captures: { 1: { name: "keyword.control.mermaid" } }, comment: "(Graph Link)", match: "\\s*([ox<]?(?:-.{1,3}-|-{1,3}|={1,3})[ox>]?)" }, { comment: "Entity", match: "(\\b(?:(?!--|==)[-\\w])+\\b\\s*)", name: "variable" }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "variable" }, 3: { name: "string" } }, comment: "(Class)(Node(s))(ClassName)", match: "\\s*(class)\\s+(\\b[-,\\w]+)\\s+(\\b\\w+\\b)" }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "variable" }, 3: { name: "string" } }, comment: "(ClassDef)(ClassName)(Styles)", match: "\\s*(classDef)\\s+(\\b\\w+\\b)\\s+(\\b[-,:;#\\w]+)" }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "variable" }, 3: { name: "variable" }, 4: { name: "string" } }, comment: "(Click)(Entity)(Link)?(Tooltip)", match: '\\s*(click)\\s+(\\b[-\\w]+\\b\\s*)(\\b\\w+\\b)?\\s("*.*")' }] }, { begin: "^\\s*(pie)", beginCaptures: { 1: { name: "keyword.control.mermaid" } }, comment: "Pie Chart", end: "(^|\\G)(?=\\s*[`:~]{3,}\\s*$)", patterns: [{ match: "\\%%.*", name: "comment" }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "string" } }, match: `(title)\\s+(\\s*["\\(\\)$&%\\^/#.,?!;:*+=<>\\'\\\\\\-\\w\\s]*)` }, { begin: "\\s(.*)(:)", beginCaptures: { 1: { name: "string" }, 2: { name: "keyword.control.mermaid" } }, end: "$", patterns: [{ match: "\\%%.*", name: "comment" }] }] }, { begin: "^\\s*(requirementDiagram)", beginCaptures: { 1: { name: "keyword.control.mermaid" } }, comment: "Requirement Diagram", end: "(^|\\G)(?=\\s*[`:~]{3,}\\s*$)", patterns: [{ match: "\\%%.*", name: "comment" }, { begin: `^\\s*((?i)(?:functional|interface|performance|physical)?requirement|designConstraint)\\s*(["\\(\\)$&%\\^/#.,?!;:*+=<>\\'\\\\\\-\\w\\s]*)\\s*({)`, beginCaptures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "variable" }, 3: { name: "keyword.control.mermaid" } }, comment: "(requirement) (name) ({)", end: "\\s*(})", endCaptures: { 1: { name: "keyword.control.mermaid" } }, patterns: [{ captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "variable" } }, comment: "(id:) (variable id)", match: "\\s*(id:)\\s*([$&%\\^/#.,?!;:*+<>_\\'\\\\\\w\\s]+)" }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "string" } }, comment: "(text:) (text string)", match: "\\s*(text:)\\s*([$&%\\^/#.,?!;:*+<>_\\'\\\\\\w\\s]+)" }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "entity.name.function.mermaid" } }, comment: "(risk:) (risk option)", match: "\\s*(risk:)\\s*(low|medium|high)\\s*$" }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "entity.name.function.mermaid" } }, comment: "(verifyMethod)(:) (method)", match: "\\s*(verifymethod:)\\s*(analysis|inspection|test|demonstration)\\s*$" }] }, { begin: `^\\s*(element)\\s*(["\\(\\)$&%\\^/#.,?!;:*+=<>\\'\\\\\\-\\w\\s]*)\\s*({)`, beginCaptures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "variable" }, 3: { name: "keyword.control.mermaid" } }, comment: "(element) (name) ({)", end: "\\s*(})", endCaptures: { 1: { name: "keyword.control.mermaid" } }, patterns: [{ captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "variable" } }, comment: "(type:) (user type)", match: `\\s*(type:)\\s*(["$&%\\^/#.,?!;:*+<>_\\'\\\\\\w\\s]+)` }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "variable" } }, comment: "(docref:) (user ref)", match: "\\s*(?i)(docref:)\\s*([$&%\\^/#.,?!;:*+<>_\\'\\\\\\w\\s]+)" }] }, { captures: { 1: { name: "variable" }, 2: { name: "keyword.control.mermaid" }, 3: { name: "keyword.control.mermaid" }, 4: { name: "keyword.control.mermaid" }, 5: { name: "variable" } }, comment: "(source) (-) (type) (->) (destination)", match: "^\\s*([\\w]+)\\s*(-)\\s*((?i)contains|copies|derives|satisfies|verifies|refines|traces)\\s*(->)\\s*([\\w]+)\\s*$" }, { captures: { 1: { name: "variable" }, 2: { name: "keyword.control.mermaid" }, 3: { name: "keyword.control.mermaid" }, 4: { name: "keyword.control.mermaid" }, 5: { name: "variable" } }, comment: "(destination) (<-) (type) (-) (source)", match: "^\\s*([\\w]+)\\s*(<-)\\s*((?i)contains|copies|derives|satisfies|verifies|refines|traces)\\s*(-)\\s*([\\w]+)\\s*$" }] }, { begin: "^\\s*(sequenceDiagram)", beginCaptures: { 1: { name: "keyword.control.mermaid" } }, comment: "Sequence Diagram", end: "(^|\\G)(?=\\s*[`:~]{3,}\\s*$)", patterns: [{ match: "(\\%%|#).*", name: "comment" }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "keyword.control.mermaid" }, 3: { name: "string" } }, comment: "(title)(title text)", match: `(title)\\s*(:)?\\s+(\\s*["\\(\\)$&%\\^/#.,?!:*+=<>\\'\\\\\\-\\w\\s]*)` }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "variable" }, 3: { name: "keyword.control.mermaid" }, 4: { name: "string" } }, comment: "(participant)(Actor)(as)?(Label)?", match: `\\s*(participant|actor)\\s+((?:(?! as )["\\(\\)$&%\\^/#.?!*=<>\\'\\\\\\w\\s])+)\\s*(as)?\\s(["\\(\\)$&%\\^/#.,?!*=<>\\'\\\\\\w\\s]+)?` }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "variable" } }, comment: "(activate/deactivate)(Actor)", match: `\\s*((?:de)?activate)\\s+(\\b["()$&%^/#.?!*=<>'\\\\\\w\\s]+\\b\\)?\\s*)` }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "entity.name.function.mermaid" }, 3: { name: "variable" }, 4: { name: "keyword.control.mermaid" }, 5: { name: "variable" }, 6: { name: "keyword.control.mermaid" }, 7: { name: "string" } }, comment: "(Note)(direction)(Actor)(,)?(Actor)?(:)(Message)", match: `\\s*(Note)\\s+((?:left|right)\\sof|over)\\s+(\\b["()$&%^/#.?!*=<>'\\\\\\w\\s]+\\b\\)?\\s*)(,)?(\\b["()$&%^/#.?!*=<>'\\\\\\w\\s]+\\b\\)?\\s*)?(:)(?:\\s+([^;#]*))?` }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "string" } }, comment: "(loop)(loop text)", match: "\\s*(loop)(?:\\s+([^;#]*))?" }, { captures: { 1: { name: "keyword.control.mermaid" } }, comment: "(end)", match: "\\s*(end)" }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "string" } }, comment: "(alt/else/option/par/and/autonumber/critical/opt)(text)", match: "\\s*(alt|else|option|par|and|rect|autonumber|critical|opt)(?:\\s+([^#;]*))?" }, { captures: { 1: { name: "variable" }, 2: { name: "keyword.control.mermaid" }, 3: { name: "variable" }, 4: { name: "keyword.control.mermaid" }, 5: { name: "string" } }, comment: "(Actor)(Arrow)(Actor)(:)(Message)", match: `\\s*(\\b["()$&%^/#.?!*=<>'\\\\\\w\\s]+\\b\\)?)\\s*(-?-(?:\\>|x|\\))\\>?[+-]?)\\s*(["()$&%^/#.?!*=<>'\\\\\\w\\s]+\\b\\)?)\\s*(:)\\s*([^;#]*)` }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "entity.name.function.mermaid" }, 3: { name: "string" } }, comment: "(box transparent text)", match: "\\s*(box)\\s+(transparent)(?:\\s+([^;#]*))?" }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "string" } }, comment: "(box text)", match: "\\s*(box)(?:\\s+([^;#]*))?" }] }, { begin: "^\\s*(stateDiagram(?:-v2)?)", beginCaptures: { 1: { name: "keyword.control.mermaid" } }, comment: "State Diagram", end: "(^|\\G)(?=\\s*[`:~]{3,}\\s*$)", patterns: [{ match: "\\%%.*", name: "comment" }, { captures: { 1: { name: "keyword.control.mermaid" } }, comment: "}", match: "\\s+(})\\s+" }, { captures: { 1: { name: "keyword.control.mermaid" } }, comment: "--", match: "\\s+(--)\\s+" }, { comment: "(state)", match: "^\\s*([\\w-]+)$", name: "variable" }, { captures: { 1: { name: "variable" }, 2: { name: "keyword.control.mermaid" }, 3: { name: "string" } }, comment: "(state) : (description)", match: "([\\w-]+)\\s+(:)\\s+(\\s*[-\\w\\s]+\\b)" }, { begin: "(state)", beginCaptures: { 1: { name: "keyword.control.mermaid" } }, comment: "state", end: "$", patterns: [{ captures: { 1: { name: "string" }, 2: { name: "keyword.control.mermaid" }, 3: { name: "variable" } }, comment: '"(description)" as (state)', match: '\\s+("[-\\w\\s]+\\b")\\s+(as)\\s+([\\w-]+)' }, { captures: { 1: { name: "variable" }, 2: { name: "keyword.control.mermaid" } }, comment: "(state name) {", match: "\\s+([\\w-]+)\\s+({)" }, { captures: { 1: { name: "variable" }, 2: { name: "keyword.control.mermaid" } }, comment: "(state name) <<fork|join>>", match: "\\s+([\\w-]+)\\s+(<<(?:fork|join)>>)" }] }, { begin: "([\\w-]+)\\s+(-->)", beginCaptures: { 1: { name: "variable" }, 2: { name: "keyword.control.mermaid" } }, comment: "(state) -->", end: "$", patterns: [{ captures: { 1: { name: "variable" }, 2: { name: "keyword.control.mermaid" }, 3: { name: "string" } }, comment: "(state) (:)? (transition text)?", match: "\\s+([\\w-]+)\\s*(:)?\\s*([^\\n:]+)?" }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "keyword.control.mermaid" }, 3: { name: "string" } }, comment: "[*] (:)? (transition text)?", match: "(\\[\\*\\])\\s*(:)?\\s*([^\\n:]+)?" }] }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "keyword.control.mermaid" }, 3: { name: "variable" }, 4: { name: "keyword.control.mermaid" }, 5: { name: "string" } }, comment: "[*] --> (state) (:)? (transition text)?", match: "(\\[\\*\\])\\s+(-->)\\s+([\\w-]+)\\s*(:)?\\s*([^\\n:]+)?" }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "variable" }, 3: { name: "keyword.control.mermaid" }, 4: { name: "string" } }, comment: "note left|right of (state name)", match: "(note (?:left|right) of)\\s+([\\w-]+)\\s+(:)\\s*([^\\n:]+)" }, { begin: "(note (?:left|right) of)\\s+([\\w-]+)(.|\\n)", beginCaptures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "variable" } }, comment: "note left|right of (state name) (note text) end note", contentName: "string", end: "(end note)", endCaptures: { 1: { name: "keyword.control.mermaid" } } }] }, { begin: "^\\s*(journey)", beginCaptures: { 1: { name: "keyword.control.mermaid" } }, comment: "User Journey", end: "(^|\\G)(?=\\s*[`:~]{3,}\\s*$)", patterns: [{ match: "\\%%.*", name: "comment" }, { captures: { 1: { name: "keyword.control.mermaid" }, 2: { name: "string" } }, match: `(title|section)\\s+(\\s*["\\(\\)$&%\\^/#.,?!;:*+=<>\\'\\\\\\-\\w\\s]*)` }, { begin: `\\s*(["\\(\\)$&%\\^/.,?!*+=<>\\'\\\\\\-\\w\\s]*)\\s*(:)\\s*(\\d+)\\s*(:)`, beginCaptures: { 1: { name: "string" }, 2: { name: "keyword.control.mermaid" }, 3: { name: "constant.numeric.decimal.mermaid" }, 4: { name: "keyword.control.mermaid" } }, end: "$", patterns: [{ captures: { 1: { name: "variable" } }, comment: "(taskName)", match: "\\s*,?\\s*([^,#\\n]+)" }] }] }] }, "mermaid-ado-code-block": { begin: "(?i)\\s*:::\\s*mermaid\\s*$", contentName: "meta.embedded.block.mermaid", end: "\\s*:::\\s*", patterns: [{ include: "#mermaid" }] }, "mermaid-code-block": { begin: "(?i)(?<=[`~])mermaid(\\s+[^`~]*)?$", contentName: "meta.embedded.block.mermaid", end: "(^|\\G)(?=\\s*[`~]{3,}\\s*$)", patterns: [{ include: "#mermaid" }] }, "mermaid-code-block-with-attributes": { begin: "(?i)(?<=[`~])\\{\\s*\\.?mermaid(\\s+[^`~]*)?$", contentName: "meta.embedded.block.mermaid", end: "(^|\\G)(?=\\s*[`~]{3,}\\s*$)", patterns: [{ include: "#mermaid" }] } }, scopeName: "markdown.mermaid.codeblock" });
|
|
2
|
-
var a = [
|
|
3
|
-
e
|
|
4
|
-
];
|
|
5
|
-
export {
|
|
6
|
-
a as default
|
|
7
|
-
};
|