// This is a TextMate grammar distributed by `starry-night`. // This grammar is developed at // // and licensed `isc`. // See for more info. /** * @import {Grammar} from '@wooorm/starry-night' */ /** @type {Grammar} */ const grammar = { dependencies: ['source.mermaid'], extensions: [], names: [], patterns: [{include: '#main'}], repository: { axes: { begin: '(?i)^\\s*([xy]-axis)(?=$|\\s)', beginCaptures: {1: {name: 'keyword.operator.axis.mermaid'}}, end: '(?=\\s*(?:$|%%))', name: 'meta.${1:/downcase}.statement.mermaid', patterns: [ { captures: {1: {name: 'string.unquoted.axis-label.first.mermaid'}}, match: '\\G\\s*(\\S.+?)(?=\\s+--+>\\s|\\s*(?:$|%%))' }, { begin: '(?!\\G)[ \\t]+((--+>))(?:[ \\t]+|$)', beginCaptures: { 1: {name: 'keyword.operator.label-separator.mermaid'}, 2: {name: 'punctuation.definition.separator.mermaid'} }, contentName: 'string.unquoted.axis-label.second.mermaid', end: '(?=\\s*(?:$|%%))' } ] }, class: { begin: '(?i)^\\s*(classDef)(?:\\s+(\\w+))?(?=\\s|$)', beginCaptures: { 1: {name: 'storage.type.style-definition.mermaid'}, 2: {name: 'entity.name.class.mermaid'} }, end: '(?=\\s*(?:$|%%))', name: 'meta.class-definition.statement.mermaid', patterns: [{include: 'source.mermaid#inline-css'}] }, coordinates: { begin: '(\\[)', beginCaptures: { 0: {name: 'punctuation.definition.array.begin.mermaid'}, 1: {name: 'brackethighlighter.square'} }, end: '(\\])', endCaptures: { 0: {name: 'punctuation.definition.array.end.mermaid'}, 1: {name: 'brackethighlighter.square'} }, name: 'meta.array.coordinates.mermaid', patterns: [ { match: '[-+]?\\d+(?:\\.\\d+)?', name: 'constant.numeric.decimal.ordinate.mermaid' }, {include: 'source.mermaid#comma'} ] }, main: { patterns: [ {include: 'source.mermaid#a11y'}, {include: 'source.mermaid#directive'}, {include: 'source.mermaid#comment'}, {include: 'source.mermaid#title'}, {include: '#axes'}, {include: '#quads'}, {include: '#class'}, {include: '#points'} ] }, points: { applyEndPatternLast: true, begin: '^\\s*((?!\\s)(?:[-\\s\\w,!?.\'"*/\\\\&#`+=$]|%(?!%))++(?