github-linguist 9.4.0 → 9.6.0
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.
- checksums.yaml +4 -4
- data/grammars/etc.json +1 -1
- data/grammars/markdown.mojo.codeblock.json +1 -0
- data/grammars/markdown.move.codeblock.json +1 -1
- data/grammars/source.4dm.json +1 -1
- data/grammars/source.abl.json +1 -1
- data/grammars/source.apex.json +1 -1
- data/grammars/source.astro.json +1 -1
- data/grammars/source.baml-jinja.json +1 -0
- data/grammars/source.baml.json +1 -0
- data/grammars/source.bb.json +1 -1
- data/grammars/source.brs.embedded.xml.json +1 -0
- data/grammars/source.bsl.json +1 -1
- data/grammars/source.c++.json +1 -1
- data/grammars/source.c.json +1 -1
- data/grammars/source.c3.json +1 -1
- data/grammars/source.cel.json +1 -0
- data/grammars/source.clarion.json +1 -1
- data/grammars/source.cmake.json +1 -1
- data/grammars/source.cmakecache.json +1 -1
- data/grammars/source.cpan-mirror.json +1 -0
- data/grammars/source.cpan-skiplist.json +1 -0
- data/grammars/source.cs.json +1 -1
- data/grammars/source.csv.json +1 -1
- data/grammars/source.curlrc.json +1 -1
- data/grammars/source.dart.json +1 -1
- data/grammars/source.daslang.json +1 -1
- data/grammars/source.data-weave.json +1 -1
- data/grammars/source.emacs.lisp.json +1 -1
- data/grammars/source.firrtl.json +1 -1
- data/grammars/source.flatbuffers.json +1 -0
- data/grammars/source.gdscript.json +1 -1
- data/grammars/source.gimprc.json +1 -0
- data/grammars/source.gimpres.json +1 -0
- data/grammars/source.graphql.json +1 -1
- data/grammars/source.gtkrc.json +1 -0
- data/grammars/source.hack.json +1 -1
- data/grammars/source.hosts.json +1 -1
- data/grammars/source.il.json +1 -0
- data/grammars/source.ilecobol.json +1 -1
- data/grammars/source.ink.json +1 -1
- data/grammars/source.interp.json +1 -0
- data/grammars/source.jac.json +1 -1
- data/grammars/source.jactoml.json +1 -0
- data/grammars/source.jai.json +1 -1
- data/grammars/source.julia.json +1 -1
- data/grammars/source.just.json +1 -1
- data/grammars/source.lean4.markdown.json +1 -1
- data/grammars/source.liquidsoap.json +1 -0
- data/grammars/source.llvm.json +1 -1
- data/grammars/source.luau.json +1 -1
- data/grammars/source.m2.json +1 -1
- data/grammars/source.m3u.json +1 -1
- data/grammars/source.matlab.json +1 -1
- data/grammars/source.mc.json +1 -1
- data/grammars/source.mdx.astro.json +1 -1
- data/grammars/source.mermaid.json +1 -1
- data/grammars/source.metta.json +1 -0
- data/grammars/source.mo.json +1 -1
- data/grammars/source.mojo.json +1 -1
- data/grammars/source.moonbit.config.json +1 -0
- data/grammars/source.moonbit.json +1 -1
- data/grammars/source.move.json +1 -1
- data/grammars/source.opy.json +1 -0
- data/grammars/source.pic.json +1 -1
- data/grammars/source.pkgconf.json +1 -0
- data/grammars/source.powerquery.json +1 -0
- data/grammars/source.powershell.json +1 -1
- data/grammars/source.prisma.json +1 -1
- data/grammars/source.quint.json +1 -0
- data/grammars/source.rascal.json +1 -1
- data/grammars/source.rascript.json +1 -1
- data/grammars/source.record-jar.json +1 -1
- data/grammars/source.redscript.json +1 -0
- data/grammars/source.rego.json +1 -1
- data/grammars/source.ron.json +1 -1
- data/grammars/source.rpgle.json +1 -1
- data/grammars/source.slang.json +1 -1
- data/grammars/source.slint.json +1 -1
- data/grammars/source.soql.json +1 -1
- data/grammars/source.spicedb-yaml.json +1 -0
- data/grammars/source.spicedb.json +1 -0
- data/grammars/source.stan.json +1 -1
- data/grammars/source.surrealql.json +1 -1
- data/grammars/source.swift.json +1 -1
- data/grammars/source.tsp.json +1 -1
- data/grammars/source.uri-list.json +1 -0
- data/grammars/source.v.json +1 -1
- data/grammars/source.vento.json +1 -1
- data/grammars/source.wgsl.json +1 -1
- data/grammars/spicedb-yaml.injection.json +1 -0
- data/grammars/text.cachedir.json +1 -0
- data/grammars/text.cookie-jar.json +1 -0
- data/grammars/text.html.vue.json +1 -1
- data/grammars/text.mac-tts.json +1 -0
- data/grammars/text.roff.json +1 -1
- data/grammars/text.srt.json +1 -1
- data/grammars/version +1 -1
- data/lib/linguist/VERSION +1 -1
- data/lib/linguist/classifier.rb +2 -1
- data/lib/linguist/generated.rb +16 -0
- data/lib/linguist/generic.yml +2 -0
- data/lib/linguist/heuristics.yml +17 -0
- data/lib/linguist/language.rb +8 -0
- data/lib/linguist/languages.json +1 -1
- data/lib/linguist/languages.yml +173 -12
- data/lib/linguist/lazy_blob.rb +19 -1
- data/lib/linguist/samples.json +1 -1
- data/lib/linguist/source/rugged.rb +16 -1
- data/lib/linguist/vendor.yml +3 -0
- metadata +30 -3
- data/grammars/source.vscode.c3.json +0 -1
- data/grammars/text.html.vento.json +0 -1
data/grammars/source.m2.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"Macaulay2","scopeName":"source.m2","patterns":[{"include":"#keywords"},{"include":"#comment"},{"include":"#strings"},{"include":"#fields"},{"include":"#math"},{"include":"#autogen"}],"repository":{"autogen":{"patterns":[{"name":"entity.name.type.m2","match":"(?x)(\\b|^)(ANCHOR|Adjacent|AffineVariety|Analyzer|AngleBarList|Array|AssociativeExpression|AtomicInt|BLOCKQUOTE|BODY|BOLD|BR|BUTTON|Bag|BasicList|BettiTally|BinaryOperation|Boolean|CC|CDATA|CODE|COMMENT|CacheTable|ChainComplex|ChainComplexMap|CoherentSheaf|Command|CompiledFunction|CompiledFunctionBody|CompiledFunctionClosure|ComplexField|Constant|DD|DIV|DL|DT|Database|Descent|Describe|Dictionary|DirectSum|Divide|DocumentTag|EM|Eliminate|EngineRing|Equation|ExampleItem|Expression|File|FilePosition|FractionField|Function|FunctionApplication|FunctionBody|FunctionClosure|GaloisField|GeneralOrderedMonoid|GlobalDictionary|GradedModule|GradedModuleMap|GroebnerBasis|GroebnerBasisOptions|HEAD|HEADER1|HEADER2|HEADER3|HEADER4|HEADER5|HEADER6|HR|HREF|HTML|HashTable|HeaderType|Holder|Hybrid|Hypertext|HypertextContainer|HypertextParagraph|HypertextVoid|IFRAME|IMG|INDENT|INPUT|ITALIC|Ideal|ImmutableType|IndeterminateNumber|IndexedVariable|IndexedVariableTable|InexactField|InexactFieldFamily|InexactNumber|InfiniteNumber|IntermediateMarkUpType|Iterator|KBD|Keyword|LABEL|LATER|LI|LINK|LITERAL|List|LocalDictionary|LowerBound|MENU|META|Manipulator|MapExpression|MarkUpType|Matrix|MatrixExpression|MethodFunction|MethodFunctionBinary|MethodFunctionSingle|MethodFunctionWithOptions|Minus|Module|Monoid|MonoidElement|MonomialIdeal|MultigradedBettiTally|MutableHashTable|MutableList|MutableMatrix|Net|NetFile|Nothing|Number|NumberedVerticalList|OL|OneExpression|Option|OptionTable|OrderedMonoid|PARA|PRE|Package|Parenthesize|Parser|Partition|PolynomialRing|Power|Product|ProductOrder|Program|ProgramRun|ProjectiveHilbertPolynomial|ProjectiveVariety|Pseudocode|PseudocodeClosure|QQ|QuotientRing|RR|RRi|RealField|Resolution|Ring|RingElement|RingFamily|RingMap|RowExpression|SAMP|SCRIPT|SMALL|SPAN|STRONG|STYLE|SUB|SUBSECTION|SUP|ScriptedFunctor|SelfInitializingType|Sequence|Set|SheafExpression|SheafMap|SheafOfRings|SparseMonomialVectorExpression|SparseVectorExpression|String|Subscript|Sum|SumOfTwists|Superscript|Symbol|SymbolBody|TABLE|TD|TEX|TH|TITLE|TO|TO2|TOH|TR|TT|Table|Tally|Task|TensorProduct|TestInput|Thing|Time|Type|UL|URL|VAR|Variety|Vector|VectorExpression|VerticalList|VirtualTally|VisibleList|WrapperType|ZZ|ZeroExpression)\\b"},{"name":"entity.name.function.m2","match":"(?x)(\\b|^)(BesselJ|BesselY|Beta|Digamma|EXAMPLE|End|Fano|GCstats|GF|Gamma|Grassmannian|Hom|LLL|LUdecomposition|M2CODE|NNParser|Proj|QQParser|QRDecomposition|SVD|SYNOPSIS|Schubert|Spec|ZZParser|about|abs|accumulate|acos|acosh|acot|acoth|addCancelTask|addDependencyTask|addEndFunction|addHook|addStartTask|adjoint|agm|alarm|all|ambient|analyticSpread|ancestor|ancestors|andP|ann|annihilator|antipode|any|append|applicationDirectory|apply|applyKeys|applyPairs|applyTable|applyValues|apropos|arXiv|ascii|asin|asinh|ass|assert|associatedGradedRing|associatedPrimes|atEndOfFile|atan|atan2|atanh|autoload|baseFilename|baseName|baseRing|basis|beginDocumentation|benchmark|betti|between|binomial|borel|cacheValue|cancelTask|canonicalBundle|capture|ceiling|centerString|chainComplex|changeBase|changeDirectory|char|charAnalyzer|characters|check|checkDegrees|chi|class|clean|clearEcho|code|codim|coefficient|coefficientRing|coefficients|cohomology|coimage|coker|cokernel|collectGarbage|columnAdd|columnMult|columnPermute|columnRankProfile|columnSwap|columnate|combine|commandInterpreter|commonRing|commonest|comodule|compareExchange|complement|complete|components|compose|compositions|compress|concatenate|conductor|cone|conjugate|connectionCount|constParser|content|contract|conwayPolynomial|copy|copyDirectory|copyFile|cos|cosh|cot|cotangentSheaf|coth|cover|coverMap|cpuTime|createTask|csc|csch|currentColumnNumber|currentDirectory|currentPosition|currentRowNumber|currentTime|deadParser|debug|debugError|decompose|deepSplice|default|degree|degreeGroup|degreeLength|degrees|degreesMonoid|degreesRing|delete|demark|denominator|depth|describe|det|determinant|diagonalMatrix|diameter|dictionary|diff|difference|dim|directProduct|directSum|disassemble|discriminant|dismiss|distinguished|divideByVariable|doc|document|drop|dual|eagonNorthcott|echoOff|echoOn|eigenvalues|eigenvectors|eint|elements|eliminate|endPackage|entries|erase|erf|erfc|error|euler|eulers|even|examples|exchange|exec|exp|expectedReesIdeal|expm1|exponents|export|exportFrom|exportMutable|expression|extend|exteriorPower|factor|fileExecutable|fileExists|fileLength|fileMode|fileReadable|fileTime|fileWritable|fillMatrix|findFiles|findHeft|findProgram|findSynonyms|first|firstkey|fittingIdeal|flagLookup|flatten|flattenRing|flip|floor|fold|forceGB|fork|format|formation|frac|fraction|frames|fromDividedPowers|fromDual|functionBody|futureParser|gb|gbRemove|gbSnapshot|gcd|gcdCoefficients|gcdLLL|genera|generateAssertions|generator|generators|genericMatrix|genericSkewMatrix|genericSymmetricMatrix|gens|genus|get|getChangeMatrix|getGlobalSymbol|getIOThreadMode|getNetFile|getNonUnit|getPrimeWithRootOfUnity|getSymbol|getWWW|getc|getenv|globalAssign|globalAssignFunction|globalAssignment|globalReleaseFunction|gradedModule|gradedModuleMap|gramm|graphIdeal|graphRing|groebnerBasis|groupID|hash|hashTable|headlines|heft|height|hermite|hilbertFunction|hilbertPolynomial|hilbertSeries|hold|homogenize|homology|homomorphism|hooks|horizontalJoin|html|httpHeaders|hypertext|icFracP|icFractions|icMap|icPIdeal|ideal|idealSheaf|idealizer|identity|image|imaginaryPart|importFrom|independentSets|index|indices|inducedMap|inducesWellDefinedMap|info|input|insert|installAssignmentMethod|installHilbertFunction|installMethod|installMinprimes|installPackage|installedPackages|instance|instances|integralClosure|integrate|intersect|intersectInP|intersection|interval|inverse|inverseErf|inversePermutation|inverseRegularizedBeta|inverseRegularizedGamma|inverseSystem|irreducibleCharacteristicSeries|irreducibleDecomposition|isANumber|isAffineRing|isBorel|isCanceled|isCommutative|isConstant|isDirectSum|isDirectory|isEmpty|isExact|isField|isFinite|isFinitePrimeField|isFreeModule|isGlobalSymbol|isHomogeneous|isIdeal|isInfinite|isInjective|isInputFile|isIsomorphic|isIsomorphism|isLLL|isLinearType|isListener|isLocallyFree|isMember|isModule|isMonomialIdeal|isMutable|isNormal|isOpen|isOutputFile|isPolynomialRing|isPrimary|isPrime|isPrimitive|isProjective|isPseudoprime|isQuotientModule|isQuotientOf|isQuotientRing|isReady|isReal|isReduction|isRegularFile|isRing|isSkewCommutative|isSmooth|isSorted|isSquareFree|isStandardGradedPolynomialRing|isSubmodule|isSubquotient|isSubset|isSupportedInZeroLocus|isSurjective|isTable|isUnit|isVeryAmple|isWellDefined|isWeylAlgebra|isc|isomorphism|iterator|jacobian|jacobianDual|join|ker|kernel|kernelLLL|kernelOfLocalization|keys|kill|koszul|last|lcm|leadCoefficient|leadComponent|leadMonomial|leadTerm|left|length|letterParser|lift|liftable|limitFiles|limitProcesses|lines|linkFile|listForm|listSymbols|lngamma|load|loadPackage|localDictionaries|localize|locate|log|log1p|lookup|lookupCount|makeDirectory|makeDocumentTag|makePackageIndex|makeS2|map|markedGB|match|mathML|matrix|max|maxPosition|member|memoize|memoizeClear|memoizeValues|merge|mergePairs|method|methodOptions|methods|midpoint|min|minPosition|minPres|mingens|mingle|minimalBetti|minimalPresentation|minimalPrimes|minimalReduction|minimize|minimizeFilename|minors|minprimes|minus|mkdir|mod|module|modulo|monoid|monomialCurveIdeal|monomialIdeal|monomialSubideal|monomials|moveFile|multidegree|multidoc|multigraded|multiplicity|mutable|mutableIdentity|mutableMatrix|nanosleep|needs|needsPackage|net|netList|newClass|newCoordinateSystem|newNetFile|newPackage|newRing|next|nextPrime|nextkey|nonspaceAnalyzer|norm|normalCone|notImplemented|nullParser|nullSpace|nullhomotopy|numColumns|numRows|number|numcols|numerator|numeric|numericInterval|numgens|numrows|odd|oeis|ofClass|on|openDatabase|openDatabaseOut|openFiles|openIn|openInOut|openListener|openOut|openOutAppend|optP|optionalSignParser|options|orP|override|pack|package|packageTemplate|pad|pager|pairs|parallelApply|parent|part|partition|partitions|parts|pdim|peek|permanents|permutations|pfaffian|pfaffians|pivots|plus|poincare|poincareN|polarize|poly|position|positions|power|powermod|precision|preimage|prepend|presentation|pretty|primaryComponent|primaryDecomposition|print|printString|printerr|processID|product|projectiveHilbertPolynomial|promote|protect|prune|pseudoRemainder|pseudocode|pullback|pushForward|pushout|quotient|quotientRemainder|radical|radicalContainment|random|randomKRationalPoint|randomMutableMatrix|randomSubset|rank|rays|read|readDirectory|readPackage|readlink|realPart|realpath|recursionDepth|reduceHilbert|reducedRowEchelonForm|reductionNumber|reesAlgebra|reesAlgebraIdeal|reesIdeal|regSeqInIdeal|regex|regexQuote|registerFinalizer|regularity|regularizedBeta|regularizedGamma|relations|relativizeFilename|remainder|remove|removeDirectory|removeFile|removeLowestDimension|reorganize|replace|res|reshape|resolution|resultant|reverse|right|ring|ringFromFractions|roots|rotate|round|rowAdd|rowMult|rowPermute|rowRankProfile|rowSwap|rsort|run|runHooks|runLengthEncode|runProgram|same|saturate|scan|scanKeys|scanLines|scanPairs|scanValues|schedule|schreyerOrder|searchPath|sec|sech|seeParsing|select|selectInSubring|selectKeys|selectPairs|selectValues|selectVariables|separate|separateRegexp|sequence|serialNumber|set|setEcho|setGroupID|setIOExclusive|setIOSynchronized|setIOUnSynchronized|setRandomSeed|setup|setupEmacs|setupLift|setupPromote|sheaf|sheafHom|sheafMap|show|showHtml|showTex|sign|simpleDocFrob|sin|singularLocus|sinh|size|size2|sleep|smithNormalForm|solve|someTerms|sort|sortColumns|source|span|specialFiber|specialFiberIdeal|splice|splitWWW|sqrt|stack|stacksProject|stacktrace|standardForm|standardPairs|stashValue|status|store|style|sub|sublists|submatrix|submatrixByDegrees|subquotient|subsets|substitute|substring|subtable|sum|super|support|switch|sylvesterMatrix|symbolBody|symlinkDirectory|symlinkFile|symmetricAlgebra|symmetricAlgebraIdeal|symmetricKernel|symmetricPower|synonym|syz|syzygyScheme|table|take|tally|tan|tangentCone|tangentSheaf|tanh|target|taskResult|temporaryFileName|tensor|tensorAssociativity|terminalParser|terms|testHunekeQuestion|tests|tex|texMath|times|toAbsolutePath|toCC|toDividedPowers|toDual|toExternalString|toField|toList|toLower|toRR|toRRi|toSequence|toString|toUpper|top|topCoefficients|topComponents|trace|transpose|trim|truncate|truncateOutput|tutorial|ultimate|unbag|uncurry|undocumented|uniform|uninstallAllPackages|uninstallPackage|union|unique|uniquePermutations|unsequence|unstack|urlEncode|use|userSymbols|utf8|utf8check|utf8substring|validate|value|values|variety|vars|vector|versalEmbedding|wait|wedgeProduct|weightRange|whichGm|width|wikipedia|wrap|youngest|zero|zeta)\\b"},{"name":"constant.other.m2","match":"(?x)(\\b|^)(A1BrouwerDegrees|AbstractSimplicialComplexes|AbstractToricVarieties|Acknowledgement|AdditionalPaths|AdjointIdeal|AdjunctionForSurfaces|AfterEval|AfterNoPrint|AfterPrint|AInfinity|AlgebraicSplines|Algorithm|Alignment|AllCodimensions|AllMarkovBases|allowableThreads|AnalyzeSheafOnP1|applicationDirectorySuffix|argument|Ascending|AssociativeAlgebras|Authors|AuxiliaryFiles|backtrace|Bareiss|Base|BaseFunction|baseRings|BaseRow|BasisElementLimit|Bayer|BeforePrint|BeginningMacaulay2|Benchmark|BernsteinSato|Bertini|BettiCharacters|BGG|BIBasis|Binary|Binomial|BinomialEdgeIdeals|Binomials|BKZ|blockMatrixForm|Body|BoijSoederberg|Book3264Examples|BooleanGB|Boxes|Brackets|Browse|Bruns|cache|CacheExampleOutput|CallLimit|CannedExample|CatalanConstant|Caveat|CellularResolutions|Center|Certification|ChainComplexExtras|ChainComplexOperations|ChangeMatrix|CharacteristicClasses|CheckDocumentation|Chordal|Citation|cite|Classic|clearAll|clearOutput|close|closeIn|closeOut|ClosestFit|Code|CodimensionLimit|CodingTheory|CoefficientRing|Cofactor|CohenEngine|CohenTopLevel|CohomCalg|CoincidentRootLoci|commandLine|compactMatrixForm|Complement|CompleteIntersection|CompleteIntersectionResolutions|Complexes|ConductorElement|Configuration|ConformalBlocks|ConnectionMatrices|Consequences|Constants|Contributors|ConvexInterface|ConwayPolynomials|copyright|Core|CorrespondenceScrolls|CotangentSchubert|cotangentSurjection|coverageSummary|CpMackeyFunctors|Cremona|currentFileDirectory|currentFileName|currentLayout|currentPackage|Cyclotomic|Date|dd|DebuggingMode|debuggingMode|debugLevel|DecomposableSparseSystems|Decompose|Default|defaultPrecision|Degree|DegreeGroup|DegreeLift|DegreeLimit|DegreeMap|DegreeOrder|DegreeRank|Degrees|Dense|Density|Depth|Descending|Description|DeterminantalRepresentations|DGAlgebras|dictionaryPath|DiffAlg|Dispatch|DivideConquer|DividedPowers|Dmodules|docExample|docTemplate|Down|Dynamic|EagonResolution|EdgeIdeals|edit|EigenSolver|EisenbudHunekeVasconcelos|Elimination|EliminationMatrices|EllipticCurves|EllipticIntegrals|Email|embeddedToAbstract|end|endl|Engine|engineDebugLevel|EngineTests|EnumerationCurves|environment|EquivariantGB|errorDepth|EulerConstant|eulerSequence|Example|ExampleFiles|ExampleSystems|Exclude|exit|Ext|ExteriorExtensions|ExteriorIdeals|ExteriorModules|ExtLongExactSequence|false|FastMinors|FastNonminimal|FGLM|fileDictionaries|fileExitHooks|FileName|FindOne|FiniteFittingIdeals|First|FirstPackage|FlatMonoid|Flexible|flush|FollowLinks|ForeignFunctions|FormalGroupLaws|Format|FourierMotzkin|FourTiTwo|fpLLL|FrobeniusThresholds|FunctionFieldDesingularization|GameTheory|GBDegrees|gbTrace|GenerateAssertions|Generic|GenericInitialIdeal|GeometricDecomposability|gfanInterface|Givens|GKMVarieties|GLex|Global|GlobalAssignHook|globalAssignmentHooks|GlobalHookStore|GlobalReleaseHook|GlobalSectionLimit|Gorenstein|GradedLieAlgebras|GraphicalModels|GraphicalModelsMLE|Graphics|Graphs|GRevLex|GroebnerStrata|GroebnerWalk|GroupLex|GroupRevLex|GTZ|Hadamard|handleInterrupts|HardDegreeLimit|Heading|Headline|Heft|Height|help|Hermite|Hermitian|HH|hh|HigherCIOperators|HighestWeights|Hilbert|HodgeIntegrals|HolonomicSystems|homeDirectory|HomePage|Homogeneous|Homogeneous2|HomologicalAlgebraPackage|HomotopyLieAlgebra|HorizontalSpace|HyperplaneArrangements|id|idealSheafSequence|IgnoreExampleErrors|ii|IncidenceCorrespondenceCohomology|incomparable|Increment|indeterminate|Index|indexComponents|infinity|InfoDirSection|infoHelp|Inhomogeneous|Inputs|InstallPrefix|IntegerProgramming|IntegralClosure|interpreterDepth|Intersection|InvariantRing|InverseMethod|Inverses|InverseSystems|Invertible|InvolutiveBases|Isomorphism|Item|Iterate|Jacobian|Jets|Join|JSON|JSONRPC|K3Carpets|K3Surfaces|Keep|KeepFiles|KeepZeroes|Key|Keywords|Kronecker|KustinMiller|lastMatch|LatticePolytopes|Layout|Left|LengthLimit|Lex|LexIdeals|LieAlgebraRepresentations|Limit|Linear|LinearAlgebra|LinearTruncations|lineNumber|listLocalSymbols|listUserSymbols|LLLBases|loadDepth|LoadDocumentation|loadedFiles|loadedPackages|Local|LocalRings|LongPolynomial|M0nbar|Macaulay2Doc|Maintainer|MakeDocumentation|MakeHTML|MakeInfo|MakePDF|MapleInterface|Markov|MatchingFields|MatrixFactorizations|MatrixSchubert|Matroids|maxAllowableThreads|maxExponent|MaximalRank|MaxReductionCount|MCMApproximations|MergeTeX|minExponent|MinimalGenerators|MinimalMatrix|minimalPresentationMap|minimalPresentationMapInv|MinimalPrimes|Minimize|MinimumVersion|Miura|MixedMultiplicity|ModuleDeformations|MonodromySolver|Monomial|MonomialAlgebras|MonomialIntegerPrograms|MonomialOrbits|MonomialOrder|Monomials|MonomialSize|Msolve|MultigradedBGG|MultigradedImplicitization|MultiGradedRationalMap|MultiplicitySequence|MultiplierIdeals|MultiplierIdealsDim2|MultiprojectiveVarieties|NAGtypes|Name|Nauty|NautyGraphs|NCAlgebra|NCLex|NewFromMethod|newline|NewMethod|NewOfFromMethod|NewOfMethod|nil|Node|NoetherianOperators|NoetherNormalization|NonminimalComplexes|NonPrincipalTestIdeals|NoPrint|Normaliz|NormalToricVarieties|NotANumber|notify|NTL|null|nullaryMethods|NumericalAlgebraicGeometry|NumericalCertification|NumericalImplicitization|NumericalLinearAlgebra|NumericalSchubertCalculus|NumericalSemigroups|NumericSolutions|numTBBThreads|OIGroebnerBases|OldChainComplexes|OldPolyhedra|OldToricVectorBundles|OnlineLookup|OO|oo|ooo|oooo|OpenMath|operatorAttributes|OptionalComponentsPresent|Options|Order|order|Oscillators|OutputDictionary|Outputs|PackageCitations|PackageDictionary|PackageExports|PackageImports|PackageTemplate|PairLimit|PairsRemaining|ParallelF4|ParallelizeByDegree|Parametrization|Parsing|path|PathSignatures|PencilsOfQuadrics|Permanents|Permutations|PHCpack|PhylogeneticTrees|pi|PieriMaps|PlaneCurveLinearSeries|PlaneCurveSingularities|Points|Polyhedra|Polymake|PolyominoIdeals|Posets|Position|PositivityToricBundles|POSIX|Postfix|Pre|Precision|Prefix|prefixDirectory|prefixPath|PrimaryDecomposition|PrimaryTag|PrimitiveElement|Print|printingAccuracy|printingLeadLimit|printingPrecision|printingSeparator|printingTimeLimit|printingTrailLimit|printWidth|Probability|profileSummary|programPaths|Projective|Prune|PruneComplex|pruningMap|PseudomonomialPrimaryDecomposition|Pullback|pullbackMaps|PushForward|pushoutMaps|Python|QthPower|QuadraticIdealExamplesByRoos|Quasidegrees|QuaternaryQuartics|QuillenSuslin|quit|Quotient|Radical|RadicalCodim1|RaiseError|RandomCanonicalCurves|RandomComplexes|RandomCurves|RandomCurvesOverVerySmallFiniteFields|RandomGenus14Curves|RandomIdeals|RandomMonomialIdeals|RandomObjects|RandomPlaneCurves|RandomPoints|RandomSpaceCurves|Range|RationalMaps|RationalPoints|RationalPoints2|ReactionNetworks|RealFP|RealQP|RealQP1|RealRoots|RealRR|RealXD|recursionLimit|Reduce|ReesAlgebra|References|ReflexivePolytopesDB|Regularity|RelativeCanonicalResolution|Reload|RemakeAllDocumentation|RerunExamples|ResidualIntersections|ResLengthThree|ResolutionsOfStanleyReisnerRings|restart|Result|Resultants|returnCode|Reverse|RevLex|RHom|Right|RInterface|rootPath|rootURI|RunDirectory|RunExamples|RunExternalM2|SagbiGbDetection|Saturation|SaturationMap|Schubert2|SchurComplexes|SchurFunctors|SchurRings|SchurVeronese|SCMAlgebras|scriptCommandLine|SCSCP|SectionRing|SeeAlso|SegreClasses|SemidefiniteProgramming|Seminormalization|SeparateExec|Serialization|sheafExt|ShimoyamaYokoyama|showClassStructure|showStructure|showUserStructure|SimpleDoc|SimplicialComplexes|SimplicialDecomposability|SimplicialPosets|SimplifyFractions|SizeLimit|SkewCommutative|SlackIdeals|SLnEquivariantMatrices|SLPexpressions|Sort|SortStrategy|SourceCode|SourceRing|SpaceCurves|SparseResultants|SpechtModule|SpecialFanoFourfolds|SpectralSequences|SRdeformations|Standard|StartWithOneMinor|StatePolytope|StatGraphs|stderr|stdio|StopBeforeComputation|stopIfError|StopIteration|StopWithMinimalGenerators|Strategy|Strict|StronglyStableIdeals|Style|SubalgebraBases|Subnodes|SubringLimit|subscript|Sugarless|SumsOfSquares|SuperLinearAlgebra|superscript|SVDComplexes|SwitchingFields|SymbolicPowers|SymmetricPolynomials|Synopsis|Syzygies|SyzygyLimit|SyzygyMatrix|SyzygyRows|Tableaux|TangentCone|TateOnProducts|TensorComplexes|TerraciniLoci|Test|testExample|TestIdeals|TeXmacs|Text|ThinSincereQuivers|ThreadedGB|Threads|Threshold|Topcom|topLevelMode|Tor|TorAlgebra|Toric|ToricHigherDirectImages|ToricInvariants|ToricTopology|ToricVectorBundles|Torsion|TorsionFree|TotalPairs|Tree|TriangularSets|Triangulations|Tries|Trim|Triplets|Tropical|TropicalToric|true|Truncate|Truncations|TSpreadIdeals|TypicalValue|typicalValues|Undo|Unique|Units|Unmixed|Up|UpdateOnly|UpperTriangular|Usage|UseCachedExampleOutput|UseHilbertFunction|UserMode|UseSyzygies|Valuations|Variable|VariableBaseName|Variables|Varieties|Vasconcelos|VectorFields|VectorGraphics|Verbose|Verbosity|Verify|VersalDeformations|Version|version|VerticalSpace|viewHelp|VirtualResolutions|Visualize|VNumber|WebApp|Weights|WeilDivisors|WeylAlgebra|WeylAlgebras|WeylGroups|WhitneyStratifications|Wrap|XML|yonedaSheafExtension)\\b"}]},"comment":{"patterns":[{"name":"comment.line.double-dash.m2","match":"(--).*$","captures":{"1":{"name":"punctuation.definition.comment.m2"}}},{"contentName":"comment.block.m2","begin":"-\\*","end":"\\*-","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.m2"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.end.m2"}}}]},"fields":{"patterns":[{"name":"entity.name.type.m2","match":"(ZZ|QQ)(\\/\\d+)?"}]},"keywords":{"patterns":[{"name":"keyword.control.m2","match":"(?x)(\\b|^)(SPACE|TEST|and|break|breakpoint|catch|continue|do|elapsedTime|elapsedTiming|else|for|from|global|if|in|list|local|new|not|of|or|profile|return|shield|step|symbol|then|threadLocal|threadVariable|throw|time|timing|to|try|when|while|xor)\\b"},{"name":"keyword.operator.m2","match":"(?x)(\\b|^)(and|not|or)\\b"}]},"math":{"patterns":[{"name":"keyword.operator.arithmetic.m2","match":"(\\+|\\*)"},{"name":"constant.numeric.integer.m2","match":"(?\u003c=\\s)\\d+"}]},"strings":{"patterns":[{"name":"string.quoted.double.m2","begin":"\"","end":"\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.m2"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.m2"}}},{"name":"string.unquoted.m2","match":"\"///\\(/?/?[^/]\\|\\(//\\)*////[^/]\\)*\\(//\\)*///\""}]}}}
|
|
1
|
+
{"name":"Macaulay2","scopeName":"source.m2","patterns":[{"include":"#keywords"},{"include":"#comment"},{"include":"#strings"},{"include":"#fields"},{"include":"#math"},{"include":"#autogen"}],"repository":{"autogen":{"patterns":[{"name":"entity.name.type.m2","match":"(?x)(\\b|^)(ANCHOR|Adjacent|AffineVariety|Analyzer|AngleBarList|Array|AssociativeExpression|AtomicInt|BLOCKQUOTE|BODY|BOLD|BR|BUTTON|Bag|BasicList|BettiTally|BinaryOperation|Boolean|CC|CCi|CDATA|CODE|COMMENT|CacheTable|CoherentSheaf|Command|CompiledFunction|CompiledFunctionBody|CompiledFunctionClosure|Complex|ComplexField|ComplexMap|Constant|DD|DIV|DL|DT|Database|Descent|Describe|Dictionary|DirectSum|Divide|DocumentTag|EM|Eliminate|EngineRing|Equation|Error|ExampleItem|Expression|File|FilePosition|FractionField|Function|FunctionApplication|FunctionBody|FunctionClosure|GaloisField|GeneralOrderedMonoid|GlobalDictionary|GradedModule|GradedModuleMap|GroebnerBasis|GroebnerBasisOptions|HEAD|HEADER1|HEADER2|HEADER3|HEADER4|HEADER5|HEADER6|HR|HREF|HTML|HashTable|HeaderType|Holder|Hybrid|Hypertext|HypertextContainer|HypertextParagraph|HypertextVoid|IFRAME|IMG|INDENT|INPUT|ITALIC|Ideal|ImmutableType|IndeterminateNumber|IndexedVariable|IndexedVariableTable|InexactField|InexactFieldFamily|InexactNumber|InfiniteNumber|IntermediateMarkUpType|Iterator|KBD|Keyword|LABEL|LATER|LI|LINK|LITERAL|List|LocalDictionary|LowerBound|MENU|META|Manipulator|MapExpression|MarkUpType|Matrix|MatrixExpression|MethodFunction|MethodFunctionBinary|MethodFunctionSingle|MethodFunctionWithOptions|Minus|Module|Monoid|MonoidElement|MonomialIdeal|MultigradedBettiTally|MutableHashTable|MutableList|MutableMatrix|Mutex|Net|NetFile|Nothing|Number|NumberedVerticalList|OL|OneExpression|Option|OptionTable|OrderedMonoid|PARA|PRE|Package|Parenthesize|Parser|Partition|PolynomialRing|Power|Product|ProductOrder|Program|ProgramRun|ProjectiveHilbertPolynomial|ProjectiveVariety|Pseudocode|PseudocodeClosure|QQ|QuotientRing|RR|RRi|RealField|Resolution|Ring|RingElement|RingFamily|RingMap|RowExpression|SAMP|SCRIPT|SMALL|SPAN|STRONG|STYLE|SUB|SUBSECTION|SUP|ScriptedFunctor|SelfInitializingType|Sequence|Set|SheafExpression|SheafMap|SheafOfRings|SparseMonomialVectorExpression|SparseVectorExpression|String|Subscript|Sum|SumOfTwists|Superscript|Symbol|SymbolBody|TABLE|TD|TEX|TH|TITLE|TO|TO2|TOH|TR|TT|Table|Tally|Task|TensorProduct|TestInput|Thing|Time|Type|UL|URL|VAR|Variety|Vector|VectorExpression|VerticalList|VirtualTally|VisibleList|WrapperType|ZZ|ZeroExpression)\\b"},{"name":"entity.name.function.m2","match":"(?x)(\\b|^)(BesselJ|BesselY|Beta|Digamma|EXAMPLE|End|Fano|GCstats|GF|Gamma|Grassmannian|Hom|LLL|LUdecomposition|M2CODE|NNParser|Proj|QQParser|QRDecomposition|SVD|SYNOPSIS|Schubert|Spec|ZZParser|about|abs|accumulate|acos|acosh|acot|acoth|addCancelTask|addDependencyTask|addEndFunction|addHook|addStartTask|adjoint|agm|alarm|all|ambient|analyticSpread|ancestor|ancestors|andP|ann|annihilator|antipode|any|append|applicationDirectory|apply|applyKeys|applyPairs|applyTable|applyValues|apropos|arXiv|ascii|asin|asinh|ass|assert|associatedGradedRing|associatedPrimes|atEndOfFile|atan|atan2|atanh|augmentationMap|autoload|baseFilename|baseName|baseRing|basis|beginDocumentation|benchmark|betti|between|binomial|borel|cacheValue|cancelTask|canonicalBundle|canonicalMap|canonicalTruncation|capture|ceiling|centerString|changeBase|changeDirectory|char|charAnalyzer|characters|check|checkDegrees|chi|class|clean|clearEcho|code|codim|coefficient|coefficientRing|coefficients|cohomology|coimage|coker|cokernel|collectGarbage|columnAdd|columnMult|columnPermute|columnRankProfile|columnSwap|columnate|combine|commandInterpreter|commonRing|commonest|comodule|compareExchange|complement|complete|complex|component|components|compose|compositions|compress|concatenate|concentration|conductor|cone|conjugate|connectingExtMap|connectingMap|connectingTorMap|connectionCount|constParser|constantStrand|content|contract|conwayPolynomial|copy|copyDirectory|copyFile|cos|cosh|cot|cotangentSheaf|coth|cover|coverMap|cpuTime|createTask|csc|csch|currentColumnNumber|currentDirectory|currentPosition|currentRowNumber|currentTime|cylinder|deadParser|debug|debugError|decompose|deepSplice|default|degree|degreeGroup|degreeLength|degrees|degreesMonoid|degreesRing|delete|demark|denominator|depth|describe|det|determinant|diagonalMatrix|diameter|dictionary|diff|difference|dim|directProduct|directSum|disassemble|discriminant|dismiss|distinguished|divideByVariable|doc|document|drop|dual|eagonNorthcott|eagonNorthcottComplex|echoOff|echoOn|eigenvalues|eigenvectors|eint|elements|eliminate|endPackage|entries|epicResolutionMap|erase|erf|erfc|error|euler|eulers|even|examples|exchange|exec|exp|expectedReesIdeal|expm1|exponents|export|exportFrom|exportMutable|expression|extend|exteriorPower|factor|fileExecutable|fileExists|fileLength|fileMode|fileReadable|fileTime|fileWritable|fillMatrix|findFiles|findHeft|findProgram|findSynonyms|first|firstkey|fittingIdeal|flagLookup|flatten|flattenRing|flip|floor|fold|forceGB|fork|format|formation|frac|fraction|frames|freeResolution|fromDividedPowers|fromDual|functionBody|futureParser|gb|gbRemove|gbSnapshot|gcd|gcdCoefficients|gcdLLL|genera|generateAssertions|generator|generators|genericMatrix|genericSkewMatrix|genericSymmetricMatrix|gens|genus|get|getChangeMatrix|getGlobalSymbol|getIOThreadMode|getNetFile|getNonUnit|getPrimeWithRootOfUnity|getSymbol|getWWW|getc|getenv|globalAssign|globalAssignFunction|globalAssignment|globalReleaseFunction|gradedModule|gramm|graphIdeal|graphRing|groebnerBasis|groupID|hash|hashTable|headlines|heft|height|hermite|hilbertFunction|hilbertPolynomial|hilbertSeries|hold|homogenize|homology|homomorphism|homotopyMap|hooks|horizontalJoin|horseshoeResolution|html|httpHeaders|hypertext|icFracP|icFractions|icMap|icPIdeal|ideal|idealSheaf|idealizer|identity|image|imaginaryPart|importFrom|independentSets|index|indices|inducedMap|inducesWellDefinedMap|info|input|insert|installAssignmentMethod|installHilbertFunction|installMethod|installMinprimes|installPackage|installedPackages|instance|instances|integralClosure|integrate|intersect|intersectInP|intersection|interval|inverse|inverseErf|inversePermutation|inverseRegularizedBeta|inverseRegularizedGamma|inverseSystem|irreducibleCharacteristicSeries|irreducibleDecomposition|isANumber|isAffineRing|isBorel|isCanceled|isCommutative|isComplexMorphism|isConstant|isDirectSum|isDirectory|isEmpty|isExact|isField|isFinite|isFinitePrimeField|isFree|isFreeModule|isGlobalSymbol|isHomogeneous|isIdeal|isInfinite|isInjective|isInputFile|isIsomorphic|isIsomorphism|isLLL|isLinearType|isListener|isLocallyFree|isMember|isModule|isMonomialIdeal|isMutable|isNormal|isNullHomotopic|isNullHomotopyOf|isOpen|isOutputFile|isPolynomialRing|isPrimary|isPrime|isPrimitive|isProjective|isPseudoprime|isQuasiIsomorphism|isQuotientModule|isQuotientOf|isQuotientRing|isReady|isReal|isReduction|isRegularFile|isRing|isScalar|isShortExactSequence|isSkewCommutative|isSmooth|isSorted|isSquareFree|isStandardGradedPolynomialRing|isSubmodule|isSubquotient|isSubset|isSupportedInZeroLocus|isSurjective|isTable|isUnit|isVeryAmple|isWellDefined|isWeylAlgebra|isc|isomorphism|iterator|jacobian|jacobianDual|join|ker|kernel|kernelLLL|kernelOfLocalization|keys|kill|koszul|koszulComplex|last|lcm|leadCoefficient|leadComponent|leadMonomial|leadTerm|left|length|letterParser|lift|liftMapAlongQuasiIsomorphism|liftable|limitFiles|limitProcesses|lines|linkFile|listForm|listSymbols|lngamma|load|loadPackage|localDictionaries|localize|locate|lock|log|log1p|longExactSequence|lookup|lookupCount|lowerLeft|lowerRight|makeDirectory|makeDocumentTag|makePackageIndex|makeS2|map|markedGB|match|mathML|matrix|max|maxPosition|member|memoize|memoizeClear|memoizeValues|merge|mergePairs|method|methodOptions|methods|midpoint|min|minPosition|minPres|mingens|mingle|minimalBetti|minimalPresentation|minimalPrimes|minimalReduction|minimize|minimizeFilename|minors|minprimes|minus|mkdir|mod|module|modulo|monoid|monomialCurveIdeal|monomialIdeal|monomialSubideal|monomials|moveFile|multidegree|multidoc|multigraded|multiplicity|mutable|mutableIdentity|mutableMatrix|naiveTruncation|nanosleep|needs|needsPackage|net|netList|newClass|newCoordinateSystem|newNetFile|newPackage|newRing|next|nextPrime|nextkey|nonspaceAnalyzer|norm|normalCone|notImplemented|nullHomotopy|nullParser|nullSpace|nullhomotopy|numColumns|numRows|number|numcols|numerator|numeric|numericInterval|numgens|numrows|odd|oeis|ofClass|on|openDatabase|openDatabaseOut|openFiles|openIn|openInOut|openListener|openOut|openOutAppend|optP|optionalSignParser|options|orP|override|pack|package|packageTemplate|pad|pager|pairs|parallelApply|parent|parse|part|partition|partitions|parts|pdim|peek|permanents|permutations|pfaffian|pfaffians|pivots|plus|poincare|poincareN|polarize|poly|polylog|position|positions|power|powermod|precision|preimage|prepend|presentation|pretty|primaryComponent|primaryDecomposition|print|printString|printerr|processID|product|projectiveHilbertPolynomial|promote|protect|prune|pruneComplex|pruneDiff|pruneUnit|pseudoRemainder|pseudocode|pullback|pushForward|pushout|quotient|quotientRemainder|radical|radicalContainment|random|randomComplexMap|randomElement|randomKRationalPoint|randomMutableMatrix|randomSubset|rank|rays|read|readDirectory|readPackage|readlink|realPart|realpath|recursionDepth|reduceHilbert|reducedRowEchelonForm|reductionNumber|reesAlgebra|reesAlgebraIdeal|reesIdeal|regSeqInIdeal|regex|regexQuote|registerFinalizer|regularity|regularizedBeta|regularizedGamma|relations|relativizeFilename|remainder|remove|removeDirectory|removeFile|removeLowestDimension|reorganize|replace|res|reshape|resolution|resolutionMap|resultant|reverse|right|ring|ringFromFractions|roots|rotate|round|rowAdd|rowMult|rowPermute|rowRankProfile|rowSwap|rsort|run|runHooks|runLengthEncode|runProgram|same|saturate|scan|scanKeys|scanLines|scanPairs|scanValues|schedule|schreyerOrder|searchPath|sec|sech|seeParsing|select|selectInSubring|selectKeys|selectPairs|selectValues|selectVariables|separate|separateRegexp|sequence|serialNumber|set|setEcho|setGroupID|setIOExclusive|setIOSynchronized|setIOUnSynchronized|setRandomSeed|setup|setupEmacs|setupLift|setupPromote|sheaf|sheafHom|show|showHtml|showTex|shuffle|sign|simpleDocFrob|sin|singularLocus|sinh|size|size2|sleep|smithNormalForm|solve|someTerms|sort|sortColumns|source|span|specialFiber|specialFiberIdeal|splice|splitWWW|sqrt|stack|stacksProject|stacktrace|standardForm|standardPairs|stashValue|status|store|style|sub|sublists|submatrix|submatrixByDegrees|subquotient|subsets|substitute|substring|subtable|sum|super|support|switch|sylvesterMatrix|symbolBody|symlinkDirectory|symlinkFile|symmetricAlgebra|symmetricAlgebraIdeal|symmetricKernel|symmetricPower|synonym|syz|table|take|tally|tan|tangentCone|tangentSheaf|tanh|target|taskResult|temporaryFileName|tensor|tensorAssociativity|tensorCommutativity|terminalParser|terms|testHunekeQuestion|tests|tex|texMath|times|toAbsolutePath|toCC|toCCi|toChainComplex|toDividedPowers|toDual|toExternalString|toField|toList|toLower|toMutableComplex|toRR|toRRi|toSequence|toString|toUpper|top|topCoefficients|topComponents|torSymmetry|trace|transpose|trim|truncate|truncateOutput|tryLock|tutorial|ultimate|unbag|uncurry|undocumented|uniform|uninstallAllPackages|uninstallPackage|union|unique|uniquePermutations|unlock|unsequence|unstack|upperLeft|upperRight|urlEncode|use|userSymbols|utf8|utf8check|utf8substring|validate|value|values|variety|vars|vector|versalEmbedding|wait|wedgeProduct|weightRange|whichGm|width|wikipedia|wrap|yonedaExtension|yonedaMap|yonedaProduct|youngest|zero|zeta)\\b"},{"name":"constant.other.m2","match":"(?x)(\\b|^)(A1BrouwerDegrees|AbstractSimplicialComplexes|AbstractToricVarieties|Acknowledgement|AdditionalPaths|AdjointIdeal|AdjunctionForSurfaces|AfterEval|AfterNoPrint|AfterPrint|AInfinity|AlgebraicSplines|Algorithm|Alignment|AllCodimensions|AllMarkovBases|allowableThreads|AnalyzeSheafOnP1|applicationDirectorySuffix|argument|Ascending|AssociativeAlgebras|Authors|AuxiliaryFiles|backtrace|Bareiss|Base|BaseFunction|baseRings|BaseRow|BasisElementLimit|Bayer|BeforePrint|BeginningMacaulay2|Benchmark|BernsteinSato|Bertini|BettiCharacters|BGG|BIBasis|Binary|Binomial|BinomialEdgeIdeals|Binomials|BKZ|blockMatrixForm|Body|BoijSoederberg|Book3264Examples|BooleanGB|Boundary|Boxes|Brackets|Browse|Bruns|cache|CacheExampleOutput|CallLimit|CannedExample|CatalanConstant|Caveat|CellularResolutions|Center|Certification|ChainComplexExtras|ChainComplexOperations|ChangeMatrix|CharacteristicClasses|CheckDocumentation|Chordal|Citation|cite|Classic|clearAll|clearOutput|close|closeIn|closeOut|ClosestFit|Code|CodimensionLimit|CodingTheory|CoefficientRing|Cofactor|CohenEngine|CohenTopLevel|CohomCalg|CoincidentRootLoci|commandLine|compactMatrixForm|Complement|CompleteIntersection|CompleteIntersectionResolutions|Complexes|Concentration|ConductorElement|Configuration|ConformalBlocks|ConnectionMatrices|Consequences|Constants|Contributors|ConvexInterface|ConwayPolynomials|copyright|Core|CorrespondenceScrolls|CotangentSchubert|coverageSummary|CpMackeyFunctors|Cremona|currentFileDirectory|currentFileName|currentLayout|currentPackage|Cycle|Cyclotomic|Date|dd|DebuggingMode|debuggingMode|debugLevel|DecomposableSparseSystems|Decompose|Default|defaultPrecision|Degree|DegreeGroup|DegreeLift|DegreeLimit|DegreeMap|DegreeOrder|DegreeRank|Degrees|Dense|Density|Depth|Descending|Description|DeterminantalRepresentations|DGAlgebras|dictionaryPath|DiffAlg|Direction|Dispatch|DivideConquer|DividedPowers|Dmodules|docExample|docTemplate|Down|Dynamic|EagonResolution|EdgeIdeals|edit|EigenSolver|EisenbudHunekeVasconcelos|Elimination|EliminationMatrices|EliminationTemplates|EllipticCurves|EllipticIntegrals|Email|end|endl|Engine|engineDebugLevel|EngineTests|EnumerationCurves|environment|EquivariantGB|errorDepth|EulerConstant|Example|ExampleFiles|ExampleSystems|Exclude|exit|Ext|ExteriorExtensions|ExteriorIdeals|ExteriorModules|false|FastMinors|FastNonminimal|FGLM|fileDictionaries|fileExitHooks|FileName|FindOne|FiniteFittingIdeals|First|FirstPackage|FlatMonoid|Flexible|flush|FollowLinks|ForeignFunctions|FormalGroupLaws|Format|FourierMotzkin|FourTiTwo|fpLLL|FreeToExact|FrobeniusThresholds|FunctionFieldDesingularization|GameTheory|GBDegrees|gbTrace|GenerateAssertions|Generic|GenericInitialIdeal|GeometricDecomposability|gfanInterface|Givens|GKMVarieties|GLex|Global|GlobalAssignHook|globalAssignmentHooks|GlobalHookStore|GlobalReleaseHook|GlobalSectionLimit|Gorenstein|GradedLieAlgebras|GraphicalModels|GraphicalModelsMLE|Graphics|Graphs|GRevLex|GroebnerStrata|GroebnerWalk|GroupLex|GroupRevLex|GTZ|Hadamard|handleInterrupts|HardDegreeLimit|Heading|Headline|Heft|Height|help|Hermite|Hermitian|HH|hh|HigherCIOperators|HighestWeights|Hilbert|HodgeIntegrals|HolonomicSystems|homeDirectory|HomePage|Homogeneous|Homogeneous2|Homogenization|HomologicalAlgebraPackage|HomotopyLieAlgebra|HorizontalSpace|HyperplaneArrangements|id|IgnoreExampleErrors|ii|IncidenceCorrespondenceCohomology|incomparable|Increment|indeterminate|Index|indexComponents|infinity|InfoDirSection|infoHelp|Inhomogeneous|Inputs|InstallPrefix|IntegerProgramming|IntegralClosure|InternalDegree|interpreterDepth|Intersection|InvariantRing|InverseMethod|Inverses|InverseSystems|Invertible|InvolutiveBases|Isomorphism|Item|Iterate|Jacobian|Jets|Join|JSON|JSONRPC|K3Carpets|K3Surfaces|Keep|KeepFiles|KeepZeroes|Key|Keywords|Kronecker|KustinMiller|lastMatch|LatticePolytopes|Layout|Left|LengthLimit|Lex|LexIdeals|LieAlgebraRepresentations|Limit|Linear|LinearAlgebra|LinearTruncations|lineNumber|listLocalSymbols|listUserSymbols|LLLBases|loadDepth|LoadDocumentation|loadedFiles|loadedPackages|Local|LocalRings|LongPolynomial|M0nbar|Macaulay2Doc|MacaulayPosets|Maintainer|MakeDocumentation|MakeHTML|MakeInfo|MakePDF|MapleInterface|Markov|MatchingFields|MatrixFactorizations|MatrixSchubert|Matroids|maxAllowableThreads|maxExponent|MaximalRank|MaxReductionCount|MCMApproximations|MergeTeX|minExponent|MinimalGenerators|MinimalMatrix|minimalPresentationMap|minimalPresentationMapInv|MinimalPrimes|Minimize|minimizingMap|MinimumVersion|Miura|MixedMultiplicity|ModuleDeformations|MonodromySolver|Monomial|MonomialAlgebras|MonomialIntegerPrograms|MonomialOrbits|MonomialOrder|Monomials|MonomialSize|MRDI|Msolve|MultigradedBGG|MultigradedImplicitization|MultiGradedRationalMap|MultiplicitySequence|MultiplierIdeals|MultiplierIdealsDim2|MultiprojectiveVarieties|NAGtypes|Name|Nauty|NautyGraphs|NCAlgebra|NCLex|NewFromMethod|newline|NewMethod|NewOfFromMethod|NewOfMethod|nil|Node|NoetherianOperators|NoetherNormalization|Nonminimal|NonminimalWithGB|NonPrincipalTestIdeals|NoPrint|Normaliz|NormalToricVarieties|NotANumber|notify|NTL|null|nullaryMethods|NumericalAlgebraicGeometry|NumericalCertification|NumericalImplicitization|NumericalLinearAlgebra|NumericalSchubertCalculus|NumericalSemigroups|NumericSolutions|numTBBThreads|OIGroebnerBases|OldChainComplexes|OnlineLookup|OO|oo|ooo|oooo|OpenMath|operatorAttributes|OptionalComponentsPresent|Options|Order|order|Oscillators|OutputDictionary|Outputs|OverField|OverZZ|PackageCitations|PackageDictionary|PackageExports|PackageImports|PackageTemplate|Padic|PairLimit|PairsRemaining|ParallelF4|ParallelizeByDegree|Parametrization|Parsing|path|PathSignatures|PencilsOfQuadrics|Permanents|Permutations|PHCpack|PhylogeneticTrees|pi|PieriMaps|PlaneCurveLinearSeries|PlaneCurveSingularities|Points|Polyhedra|Polymake|PolyominoIdeals|Posets|Position|PositivityToricBundles|POSIX|Postfix|Pre|Precision|Prefix|prefixDirectory|prefixPath|PrimaryDecomposition|PrimaryTag|PrimitiveElement|Print|printingAccuracy|printingLeadLimit|printingPrecision|printingSeparator|printingTimeLimit|printingTrailLimit|printWidth|Probability|profileSummary|programPaths|Projective|Prune|PruningMap|pruningMap|PseudomonomialPrimaryDecomposition|Pullback|pullbackMaps|PushForward|pushoutMaps|Python|QthPower|QuadraticIdealExamplesByRoos|Quasidegrees|QuaternaryQuartics|QuillenSuslin|quit|Quotient|Radical|RadicalCodim1|RaiseError|RandomCanonicalCurves|RandomComplexes|RandomCurves|RandomCurvesOverVerySmallFiniteFields|RandomGenus14Curves|RandomIdeals|RandomMonomialIdeals|RandomObjects|RandomPlaneCurves|RandomPoints|RandomSpaceCurves|Range|RationalMaps|RationalPoints|RationalPoints2|ReactionNetworks|RealFP|RealQP|RealQP1|RealRoots|RealRR|RealXD|recursionLimit|Reduce|ReesAlgebra|References|ReflexivePolytopesDB|Regularity|RelativeCanonicalResolution|Reload|RemakeAllDocumentation|RerunExamples|ResidualIntersections|ResLengthThree|ResolutionsOfStanleyReisnerRings|restart|Result|Resultants|returnCode|Reverse|RevLex|Right|RInterface|rootPath|rootURI|RunDirectory|RunExamples|RunExternalM2|SagbiGbDetection|Saturation|SaturationMap|Schubert2|SchurComplexes|SchurFunctors|SchurRings|SchurVeronese|SCMAlgebras|scriptCommandLine|SCSCP|SectionRing|SeeAlso|SegreClasses|SemidefiniteProgramming|Seminormalization|SeparateExec|Serialization|sheafExt|ShimoyamaYokoyama|showClassStructure|showStructure|showUserStructure|SimpleDoc|SimplicialComplexes|SimplicialDecomposability|SimplicialModules|SimplicialPosets|SimplifyFractions|SizeLimit|SkewCommutative|SlackIdeals|SLnEquivariantMatrices|SLPexpressions|Sort|SortStrategy|SourceCode|SourceRing|SpaceCurves|SparseResultants|SpechtModule|SpecialFanoFourfolds|SpectralSequences|SRdeformations|Standard|StartWithOneMinor|StatePolytope|StatGraphs|stderr|stdio|StopBeforeComputation|stopIfError|StopIteration|StopWithMinimalGenerators|Strategy|Strict|StronglyStableIdeals|Style|SubalgebraBases|Subnodes|SubringLimit|subscript|Sugarless|SumsOfSquares|SuperLinearAlgebra|superscript|SVDComplexes|SwitchingFields|SymbolicPowers|SymmetricPolynomials|Synopsis|Syzygies|SyzygyLimit|SyzygyMatrix|SyzygyRows|Tableaux|TangentCone|TateOnProducts|TensorComplexes|TerraciniLoci|Test|testExample|TestIdeals|TeXmacs|Text|ThinSincereQuivers|ThreadedGB|Threads|Threshold|Topcom|topLevelMode|Tor|TorAlgebra|Toric|ToricHigherDirectImages|ToricInvariants|ToricTopology|ToricVectorBundles|Torsion|TorsionFree|TotalPairs|Tree|TriangularSets|Triangulations|Tries|Trim|Triplets|Tropical|TropicalToric|true|Truncate|Truncations|TSpreadIdeals|TypicalValue|typicalValues|Undo|Unique|Units|UnitTest|Unmixed|Up|UpdateOnly|UpperTriangular|Usage|UseCachedExampleOutput|UseHilbertFunction|UserMode|UseSyzygies|UseTarget|Valuations|Variable|VariableBaseName|Variables|Varieties|Vasconcelos|VectorFields|VectorGraphics|Verbose|Verbosity|Verify|VersalDeformations|Version|version|VerticalSpace|viewHelp|VirtualResolutions|Visualize|VNumber|WebApp|Weights|WeilDivisors|WeylAlgebra|WeylAlgebras|WeylGroups|WhitneyStratifications|WittVectors|Wrap|XML)\\b"}]},"comment":{"patterns":[{"name":"comment.line.double-dash.m2","match":"(--).*$","captures":{"1":{"name":"punctuation.definition.comment.m2"}}},{"contentName":"comment.block.m2","begin":"-\\*","end":"\\*-","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.m2"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.end.m2"}}}]},"fields":{"patterns":[{"name":"entity.name.type.m2","match":"(ZZ|QQ)(\\/\\d+)?"}]},"keywords":{"patterns":[{"name":"keyword.control.m2","match":"(?x)(\\b|^)(SPACE|TEST|and|break|breakpoint|catch|continue|do|elapsedTime|elapsedTiming|else|except|for|from|global|if|in|list|local|new|not|of|or|profile|return|shield|step|symbol|then|threadLocal|threadVariable|throw|time|timing|to|trap|try|when|while|xor)\\b"},{"name":"keyword.operator.m2","match":"(?x)(\\b|^)(and|not|or)\\b"}]},"math":{"patterns":[{"name":"keyword.operator.arithmetic.m2","match":"(\\+|\\*)"},{"name":"constant.numeric.integer.m2","match":"(?\u003c=\\s)\\d+"}]},"strings":{"patterns":[{"name":"string.quoted.double.m2","begin":"\"","end":"\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.m2"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.m2"}}},{"name":"string.unquoted.m2","match":"\"///\\(/?/?[^/]\\|\\(//\\)*////[^/]\\)*\\(//\\)*///\""}]}}}
|
data/grammars/source.m3u.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"M3U Playlist","scopeName":"source.m3u","patterns":[{"include":"#main"}],"repository":{"attr":{"name":"meta.attribute.m3u","begin":"([^\\s=\"',]+)\\s*(=)\\s*(?=[^\\s,])","end":"(?!\\G)","patterns":[{"name":"string.quoted.double.m3u","begin":"\\G\"","end":"(\")|([^\"]+)$","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.m3u"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.m3u"},"2":{"name":"invalid.illegal.syntax.unclosed-string.m3u"}}},{"name":"string.quoted.single.m3u","begin":"\\G'","end":"(')|([^']+)$","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.m3u"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.m3u"},"2":{"name":"invalid.illegal.syntax.unclosed-string.m3u"}}},{"match":"\\G[^\\s\"',][^\\s,]*","captures":{"0":{"patterns":[{"include":"#unquoted"}]}}}],"beginCaptures":{"1":{"name":"entity.other.attribute-name.m3u"},"2":{"name":"keyword.operator.assignment.separator.key-value.m3u"}}},"attrList":{"patterns":[{"include":"etc#comma"},{"include":"#attr"}]},"comment":{"begin":"(?:\\A?|^)(\\s+)?(?=#)","end":"(?!\\G)","patterns":[{"name":"comment.line.number-sign.directive.file-header.m3u","match":"\\G(#)(EXTM3U8?)(?=$|\\s)(\\s+[^\\r\\n]*)?$","captures":{"1":{"name":"punctuation.definition.comment.m3u"},"2":{"name":"keyword.control.start.file.m3u"},"3":{"patterns":[{"include":"#attrList"}]}}},{"name":"comment.line.number-sign.directive.extinf.m3u","begin":"\\G(#)(EXTINF)(:)","end":"$","patterns":[{"begin":"\\G\\s*([-+]?\\d+(?:\\.\\d+)?)","end":"(?=,|\\s*$)","patterns":[{"include":"#attr"}],"beginCaptures":{"1":{"name":"constant.numeric.track-length.m3u"}}},{"contentName":"markup.list.title.m3u","begin":"\\s*(,)[ \\t]*","end":"(?=\\s*$)","beginCaptures":{"1":{"name":"punctuation.separator.title.m3u"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.comment.m3u"},"2":{"name":"keyword.operator.field.extinf.m3u"},"3":{"patterns":[{"include":"etc#kolon"}]}}},{"name":"comment.line.number-sign.directive.extbyt.m3u","begin":"\\G(#)(EXTBYT)(:)","end":"$","patterns":[{"include":"#hex"},{"include":"etc#num"}],"beginCaptures":{"1":{"name":"punctuation.definition.comment.m3u"},"2":{"name":"keyword.operator.field.extbyt.m3u"},"3":{"patterns":[{"include":"etc#kolon"}]}}},{"name":"comment.line.number-sign.directive.${2:/downcase}.m3u","contentName":"string.unquoted.directive.m3u","begin":"\\G(#)(PLAYLIST|EXT(?:[A-Z]+))(?:(:)|(?=\\s*$))","end":"(?=\\s*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.m3u"},"2":{"name":"keyword.operator.field.${2:/downcase}.m3u"},"3":{"patterns":[{"include":"etc#kolon"}]}}},{"name":"comment.line.number-sign.directive.${2:/downcase}.hls.m3u","begin":"(?x)\\G(\\#)\n(EXT-X-\n\t(?: CONTENT-STEERING\n\t| DATERANGE\n\t| DEFINE\n\t| I-FRAME-STREAM-INF\n\t| KEY\n\t| MAP\n\t| MEDIA\n\t| PART-INF\n\t| PART\n\t| PRELOAD-HINT\n\t| RENDITION-REPORT\n\t| SERVER-CONTROL\n\t| SESSION-DATA\n\t| SESSION-KEY\n\t| SKIP\n\t| START\n\t| STREAM-INF\n\t)\n)(:)","end":"$","patterns":[{"include":"#attrList"}],"beginCaptures":{"1":{"name":"punctuation.definition.comment.m3u"},"2":{"name":"keyword.operator.field.${2:/downcase}.m3u"},"3":{"patterns":[{"include":"etc#kolon"}]}}},{"name":"comment.line.number-sign.directive.byterange.hls.m3u","begin":"\\G(#)(EXT-X-BYTERANGE)(:)[ \\t]*","end":"$","patterns":[{"name":"meta.byte-range.m3u","match":"\\G(\\d+)(?:(@)(\\d+))?","captures":{"1":{"name":"constant.numeric.integer.range-length.m3u"},"2":{"name":"punctuation.separator.range.m3u"},"3":{"name":"constant.numeric.integer.offset.m3u"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.comment.m3u"},"2":{"name":"keyword.operator.field.byterange.m3u"},"3":{"patterns":[{"include":"etc#kolon"}]}}},{"name":"comment.line.number-sign.directive.${2:/downcase}.hls.m3u","begin":"\\G(#)(EXT-X(?:-[A-Z0-9]+)++)(?:(:)|(?=\\s*$))","end":"(?=\\s*$)","patterns":[{"include":"#unquoted"}],"beginCaptures":{"1":{"name":"punctuation.definition.comment.m3u"},"2":{"name":"keyword.operator.field.${2:/downcase}.m3u"},"3":{"patterns":[{"include":"etc#kolon"}]}}},{"name":"comment.line.number-sign.m3u","begin":"\\G#","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.m3u"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.leading.m3u"}}},"hex":{"name":"constant.numeric.integer.int.hexadecimal.hex.m3u","match":"(?i)[-+]?0x[0-9A-F]+"},"main":{"patterns":[{"include":"#comment"},{"include":"#mediaSpec"}]},"mediaSpec":{"contentName":"meta.media-source.m3u","begin":"(?:\\A?|^)(\\s+)?(?=[^\\s#])","end":"(?=\\s*$)","patterns":[{"include":"#url"},{"include":"#path"}],"beginCaptures":{"1":{"name":"punctuation.whitespace.leading.m3u"}}},"path":{"name":"constant.other.reference.link.underline.file.path.m3u","match":"[^\\s:][^\\r\\n]*(?=\\s*$)","captures":{"0":{"patterns":[{"include":"#urlEncoded"}]}}},"resolution":{"name":"meta.screen-resolution.m3u","match":"(?:^|\\G|(?\u003c=\\s))(\\d+)(x)(\\d+)(?=$|\\s)","captures":{"1":{"name":"constant.numeric.integer.width.m3u"},"2":{"name":"punctuation.separator.dimensions.m3u"},"3":{"name":"constant.numeric.integer.height.m3u"}}},"unquoted":{"patterns":[{"include":"#resolution"},{"include":"#hex"},{"include":"etc#boolish"},{"include":"etc#num"},{"include":"etc#bareword"}]},"url":{"name":"constant.other.reference.link.underline.${1:/downcase}.m3u","match":"(?xi)\\b\n((?=[A-Z])\\w+(?:[-+.]\\w+)*+) # URI scheme\n:// # Separator\n[^#?\\s\"]* # Pathname\n(?:\\?[^\\s\"#]*)? # Query variable(s)\n(?:\\#[^\\s\"]*)? # Fragment identifier","captures":{"0":{"patterns":[{"include":"#urlEncoded"}]}}},"urlEncoded":{"name":"constant.character.escape.url-encoded.m3u","match":"(%)[0-9A-F]{2}","captures":{"1":{"name":"punctuation.definition.escape.m3u"}}}}}
|
|
1
|
+
{"name":"M3U Playlist","scopeName":"source.m3u","patterns":[{"include":"#main"}],"repository":{"attr":{"name":"meta.attribute.m3u","begin":"([^\\s=\"',]+)\\s*(=)\\s*(?=[^\\s,])","end":"(?!\\G)","patterns":[{"name":"string.quoted.double.m3u","begin":"\\G\"","end":"(\")|([^\"]+)$","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.m3u"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.m3u"},"2":{"name":"invalid.illegal.syntax.unclosed-string.m3u"}}},{"name":"string.quoted.single.m3u","begin":"\\G'","end":"(')|([^']+)$","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.m3u"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.m3u"},"2":{"name":"invalid.illegal.syntax.unclosed-string.m3u"}}},{"match":"\\G[^\\s\"',][^\\s,]*","captures":{"0":{"patterns":[{"include":"#unquoted"}]}}}],"beginCaptures":{"1":{"name":"entity.other.attribute-name.m3u"},"2":{"name":"keyword.operator.assignment.separator.key-value.m3u"}}},"attrList":{"patterns":[{"include":"etc#comma"},{"include":"#attr"}]},"comment":{"begin":"(?:\\A?|^)(\\s+)?(?=#)","end":"(?!\\G)","patterns":[{"name":"comment.line.number-sign.directive.file-header.m3u","match":"\\G(#)(EXTM3U8?)(?=$|\\s)(\\s+[^\\r\\n]*)?$","captures":{"1":{"name":"punctuation.definition.comment.m3u"},"2":{"name":"keyword.control.start.file.m3u"},"3":{"patterns":[{"include":"#attrList"}]}}},{"name":"comment.line.number-sign.directive.extinf.m3u","begin":"\\G(#)(EXTINF)(:)","end":"$","patterns":[{"begin":"\\G\\s*([-+]?\\d+(?:\\.\\d+)?)","end":"(?=,|\\s*$)","patterns":[{"include":"#attr"}],"beginCaptures":{"1":{"name":"constant.numeric.track-length.m3u"}}},{"contentName":"markup.list.title.m3u","begin":"\\s*(,)[ \\t]*","end":"(?=\\s*$)","beginCaptures":{"1":{"name":"punctuation.separator.title.m3u"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.comment.m3u"},"2":{"name":"keyword.operator.field.extinf.m3u"},"3":{"patterns":[{"include":"etc#kolon"}]}}},{"name":"comment.line.number-sign.directive.extbyt.m3u","begin":"\\G(#)(EXTBYT)(:)","end":"$","patterns":[{"include":"#hex"},{"include":"etc#num"}],"beginCaptures":{"1":{"name":"punctuation.definition.comment.m3u"},"2":{"name":"keyword.operator.field.extbyt.m3u"},"3":{"patterns":[{"include":"etc#kolon"}]}}},{"name":"comment.line.number-sign.directive.vlc-option.${4:/downcase}.m3u","begin":"\\G(#)(EXTVLCOPT)(:)[ \\t]*([-\\w]+)(=)","end":"$","patterns":[{"match":"(?xi) \\G\\s* (?:\n\t([-+]?(?:\\d+(?:\\.\\d+)?|\\.\\d+)) |\n\t(true|false|yes|no|on|off) |\n\t(\\S.*?)\n)(?=\\s*$)","captures":{"1":{"patterns":[{"include":"etc#num"}]},"2":{"patterns":[{"include":"etc#boolish"}]},"3":{"name":"string.unquoted.vlc-option.m3u"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.comment.m3u"},"2":{"name":"keyword.operator.field.vlc-option.m3u"},"3":{"patterns":[{"include":"etc#kolon"}]},"4":{"name":"variable.assignment.option.m3u"},"5":{"patterns":[{"include":"etc#eql"}]}}},{"name":"comment.line.number-sign.directive.${2:/downcase}.m3u","contentName":"string.unquoted.directive.m3u","begin":"\\G(#)(PLAYLIST|EXT(?:[A-Z]+))(?:(:)|(?=\\s*$))","end":"(?=\\s*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.m3u"},"2":{"name":"keyword.operator.field.${2:/downcase}.m3u"},"3":{"patterns":[{"include":"etc#kolon"}]}}},{"name":"comment.line.number-sign.directive.${2:/downcase}.hls.m3u","begin":"(?x)\\G(\\#)\n(EXT-X-\n\t(?: CONTENT-STEERING\n\t| DATERANGE\n\t| DEFINE\n\t| I-FRAME-STREAM-INF\n\t| KEY\n\t| MAP\n\t| MEDIA\n\t| PART-INF\n\t| PART\n\t| PRELOAD-HINT\n\t| RENDITION-REPORT\n\t| SERVER-CONTROL\n\t| SESSION-DATA\n\t| SESSION-KEY\n\t| SKIP\n\t| START\n\t| STREAM-INF\n\t)\n)(:)","end":"$","patterns":[{"include":"#attrList"}],"beginCaptures":{"1":{"name":"punctuation.definition.comment.m3u"},"2":{"name":"keyword.operator.field.${2:/downcase}.m3u"},"3":{"patterns":[{"include":"etc#kolon"}]}}},{"name":"comment.line.number-sign.directive.byterange.hls.m3u","begin":"\\G(#)(EXT-X-BYTERANGE)(:)[ \\t]*","end":"$","patterns":[{"name":"meta.byte-range.m3u","match":"\\G(\\d+)(?:(@)(\\d+))?","captures":{"1":{"name":"constant.numeric.integer.range-length.m3u"},"2":{"name":"punctuation.separator.range.m3u"},"3":{"name":"constant.numeric.integer.offset.m3u"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.comment.m3u"},"2":{"name":"keyword.operator.field.byterange.m3u"},"3":{"patterns":[{"include":"etc#kolon"}]}}},{"name":"comment.line.number-sign.directive.${2:/downcase}.hls.m3u","begin":"\\G(#)(EXT-X(?:-[A-Z0-9]+)++)(?:(:)|(?=\\s*$))","end":"(?=\\s*$)","patterns":[{"include":"#unquoted"}],"beginCaptures":{"1":{"name":"punctuation.definition.comment.m3u"},"2":{"name":"keyword.operator.field.${2:/downcase}.m3u"},"3":{"patterns":[{"include":"etc#kolon"}]}}},{"name":"comment.line.number-sign.m3u","begin":"\\G#","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.m3u"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.leading.m3u"}}},"hex":{"name":"constant.numeric.integer.int.hexadecimal.hex.m3u","match":"(?i)[-+]?0x[0-9A-F]+"},"main":{"patterns":[{"include":"#comment"},{"include":"#mediaSpec"}]},"mediaSpec":{"contentName":"meta.media-source.m3u","begin":"(?:\\A?|^)(\\s+)?(?=[^\\s#])","end":"(?=\\s*$)","patterns":[{"include":"#url"},{"include":"#path"}],"beginCaptures":{"1":{"name":"punctuation.whitespace.leading.m3u"}}},"path":{"name":"constant.other.reference.link.underline.file.path.m3u","match":"[^\\s:][^\\r\\n]*(?=\\s*$)","captures":{"0":{"patterns":[{"include":"#urlEncoded"}]}}},"resolution":{"name":"meta.screen-resolution.m3u","match":"(?:^|\\G|(?\u003c=\\s))(\\d+)(x)(\\d+)(?=$|\\s)","captures":{"1":{"name":"constant.numeric.integer.width.m3u"},"2":{"name":"punctuation.separator.dimensions.m3u"},"3":{"name":"constant.numeric.integer.height.m3u"}}},"unquoted":{"patterns":[{"include":"#resolution"},{"include":"#hex"},{"include":"etc#boolish"},{"include":"etc#num"},{"include":"etc#bareword"}]},"url":{"name":"constant.other.reference.link.underline.${1:/downcase}.m3u","match":"(?xi)\\b\n((?=[A-Z])\\w+(?:[-+.]\\w+)*+) # URI scheme\n:// # Separator\n[^#?\\s\"]* # Pathname\n(?:\\?[^\\s\"#]*)? # Query variable(s)\n(?:\\#[^\\s\"]*)? # Fragment identifier","captures":{"0":{"patterns":[{"include":"#urlEncoded"}]}}},"urlEncoded":{"name":"constant.character.escape.url-encoded.m3u","match":"(%)[0-9A-F]{2}","captures":{"1":{"name":"punctuation.definition.escape.m3u"}}}}}
|
data/grammars/source.matlab.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"MATLAB","scopeName":"source.matlab","patterns":[{"include":"#rules_before_command_dual"},{"include":"#command_dual"},{"include":"#rules_after_command_dual"}],"repository":{"anonymous_function":{"name":"meta.function.anonymous.matlab","begin":"(@)[^\\S\\n]*(?=\\()","patterns":[{"name":"meta.parameters.matlab","begin":"\\G(\\()","end":"\\)","patterns":[{"name":"variable.parameter.input.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"name":"punctuation.separator.parameter.comma.matlab","match":","},{"include":"#line_continuation"}],"beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.definition.parameters.end.matlab"}}},{"name":"meta.parameters.matlab","begin":"(?\u003c=\\))[^\\S\\n]*(\\()?","patterns":[{"include":"$self"},{"include":"#line_continuation"}],"beginCaptures":{"1":{"name":"punctuation.section.group.begin.matlab"}},"endCaptures":{"1":{"name":"punctuation.section.group.end.matlab"}}},{"include":"#line_continuation"}],"beginCaptures":{"1":{"name":"punctuation.definition.function.anonymous.matlab"}}},"blocks":{"patterns":[{"name":"meta.for.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(for)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.for.declaration.matlab","begin":"\\G(?!$)","patterns":[{"include":"$self"}]},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.for.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.for.matlab"}}},{"name":"meta.if.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(if)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.if.declaration.matlab","begin":"\\G(?!$)","patterns":[{"include":"$self"}]},{"name":"meta.elseif.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(elseif)\\b","end":"\\s*(?\u003c=^|[\\s,;])(?=elseif|else|end)\\b","patterns":[{"name":"meta.elseif.declaration.matlab","begin":"\\G(?!$)","patterns":[{"include":"$self"}]},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.elseif.matlab"}}},{"name":"meta.else.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(else)\\b","end":"\\s*(?\u003c=^|[\\s,;])(?=end)\\b","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.else.matlab"}}},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.if.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.if.matlab"},"2":{"patterns":[{"include":"$self"}]}}},{"name":"meta.for.parallel.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(parfor)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.for.parallel.declaration.matlab","begin":"\\G(?!$)","patterns":[{"include":"$self"}]},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.for.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.for.matlab"}}},{"name":"meta.repeat.parallel.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(spmd)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.repeat.parallel.declaration.matlab","begin":"\\G(?!$)","patterns":[{"include":"$self"}]},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.repeat.parallel.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.repeat.parallel.matlab"}}},{"name":"meta.switch.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(switch)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.switch.declaration.matlab","begin":"\\G(?!$)","patterns":[{"include":"$self"}]},{"name":"meta.case.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(case)\\b","end":"\\s*(?\u003c=^|[\\s,;])(?=case|otherwise|end)\\b","patterns":[{"name":"meta.case.declaration.matlab","begin":"\\G(?!$)","patterns":[{"include":"$self"}]},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.switch.case.matlab"}}},{"name":"meta.otherwise.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(otherwise)\\b","end":"\\s*(?\u003c=^|[\\s,;])(?=end)\\b","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.switch.otherwise.matlab"}}},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.switch.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.switch.matlab"},"2":{"patterns":[{"include":"$self"}]}}},{"name":"meta.try.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(try)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.catch.matlab","match":"(\\s*)(?\u003c=^|[\\s,;])(catch)\\b\\s*(\\w+)?","captures":{"2":{"name":"keyword.control.catch.matlab"},"3":{"name":"variable.other.constant.matlab"}}},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.try.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.try.matlab"}}},{"name":"meta.while.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(while)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.while.declaration.matlab","begin":"\\G(?!$)","patterns":[{"include":"$self"}]},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.while.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.while.matlab"}}}]},"braced_validator_list":{"contentName":"meta.block.validation.matlab","begin":"\\s*({)\\s*","end":"}","patterns":[{"include":"#function_call"},{"include":"#braced_validator_list"},{"include":"#validator_strings"},{"include":"#line_continuation"},{"name":"punctuation.accessor.dot.matlab","match":"\\."}],"beginCaptures":{"1":{"name":"punctuation.section.block.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.block.end.matlab"}}},"classdef":{"patterns":[{"name":"meta.class.matlab","begin":"(?x)\n\t\t\t\t\t\t\t^\\s* \t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t(classdef)\n\t\t\t\t\t\t\t\\s*\n\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.class.declaration.matlab","begin":"\\G","end":"(?\u003c!\\.{3})(?=\\n)","patterns":[{"name":"storage.modifier.section.class.matlab","begin":"\\G\\(","end":"\\)","patterns":[{"name":"punctuation.separator.modifier.comma.matlab","match":","},{"name":"storage.modifier.class.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"begin":"(=)\\s*","end":"(?=\\)|,)","patterns":[{"name":"constant.language.boolean.matlab","match":"true|false"},{"name":"keyword.operator.other.question.matlab","match":"(?\u003c!\\w)\\?(?=\\w)"},{"include":"#metaclass_literal"},{"include":"#string"},{"include":"#curly_brackets"},{"include":"#line_continuation"}],"beginCaptures":{"1":{"name":"keyword.operator.assignment.matlab"}}},{"include":"#comments"},{"include":"#line_continuation"}]},{"begin":"\\s*(\\w+)","end":"(?\u003c!\\.{3})(?=\\s*%|\\n)","patterns":[{"begin":"\\G","end":"(?\u003c!\\.{3})(?=\\n)","patterns":[{"include":"#comments"},{"include":"#line_continuation"},{"name":"punctuation.separator.lt.inheritance.matlab","match":"\u003c"},{"name":"meta.inherited-class.matlab","begin":"(?\u003c!\\.)\\b(?=[a-zA-Z])","end":"(?\u003c=[a-zA-Z0-9_])(?!\\.)","patterns":[{"name":"entity.other.inherited-class.matlab","match":"(?\u003c=[\\s.\u003c])[a-zA-Z][a-zA-Z0-9_]*(?=\\s|$)"},{"name":"entity.name.namespace.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"name":"punctuation.accessor.dot.matlab","match":"\\."}]},{"name":"keyword.operator.type.matlab","match":"\u0026"}]},{"include":"#comments"},{"include":"#line_continuation"}],"beginCaptures":{"1":{"name":"entity.name.type.class.matlab"}}},{"include":"#comments"},{"include":"#line_continuation"}]},{"name":"meta.properties.matlab","begin":"(?x)\n\t\t\t\t\t\t\t\t\t(^\\s*)\t\t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t\t\t(properties)\\b([^%]*)\n\t\t\t\t\t\t\t\t\t\\s*\n\t\t\t\t\t\t\t\t\t(\t\t\t\t\t\t\t\t\t# Optional attributes\n\t\t\t\t\t\t\t\t\t\t\\( [^)]* \\)\n\t\t\t\t\t\t\t\t\t)?\n\t\t\t\t\t\t\t\t\t\\s*($|(?=%))\n\t\t\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"include":"#validators"},{"include":"$self"}],"beginCaptures":{"2":{"name":"keyword.control.properties.matlab"},"3":{"patterns":[{"name":"punctuation.separator.modifier.comma.matlab","match":","},{"name":"storage.modifier.properties.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"begin":"(=)\\s*","end":"(?=\\)|,)","patterns":[{"include":"#string"},{"name":"constant.language.boolean.matlab","match":"true|false"},{"name":"storage.modifier.access.matlab","match":"public|protected|private|immutable"},{"include":"#curly_brackets"},{"include":"#metaclass_literal"},{"name":"constant.integer.matlab","match":"[0-9]+"}],"beginCaptures":{"1":{"name":"keyword.operator.assignment.matlab"}}}]}},"endCaptures":{"1":{"name":"keyword.control.end.properties.matlab"}}},{"name":"meta.methods.matlab","begin":"(?x)\n\t\t\t\t\t\t\t\t\t(^\\s*)\t\t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t\t\t(methods)\\b([^%]*)\n\t\t\t\t\t\t\t\t\t\\s*\n\t\t\t\t\t\t\t\t\t(\t\t\t\t\t\t\t\t\t# Optional attributes\n\t\t\t\t\t\t\t\t\t\t\\( [^)]* \\)\n\t\t\t\t\t\t\t\t\t)?\n\t\t\t\t\t\t\t\t\t\\s*($|(?=%))\n\t\t\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"include":"$self"}],"beginCaptures":{"2":{"name":"keyword.control.methods.matlab"},"3":{"patterns":[{"name":"punctuation.separator.modifier.comma.matlab","match":","},{"name":"storage.modifier.methods.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"begin":"(=)\\s*","end":"(?=\\)|,)","patterns":[{"include":"#string"},{"name":"constant.language.boolean.matlab","match":"true|false"},{"name":"storage.modifier.access.matlab","match":"public|protected|private|immutable"},{"include":"#curly_brackets"},{"include":"#metaclass_literal"},{"name":"constant.integer.matlab","match":"[0-9]+"}],"beginCaptures":{"1":{"name":"keyword.operator.assignment.matlab"}}}]}},"endCaptures":{"1":{"name":"keyword.control.end.methods.matlab"}}},{"name":"meta.events.matlab","begin":"(?x)\n\t\t\t\t\t\t\t\t\t(^\\s*)\t\t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t\t\t(events)\\b([^%]*)\n\t\t\t\t\t\t\t\t\t\\s*\n\t\t\t\t\t\t\t\t\t(\t\t\t\t\t\t\t\t\t# Optional attributes\n\t\t\t\t\t\t\t\t\t\t\\( [^)]* \\)\n\t\t\t\t\t\t\t\t\t)?\n\t\t\t\t\t\t\t\t\t\\s*($|(?=%))\n\t\t\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.assignment.definition.event.matlab","match":"(?:^\\s*|,\\s*)([a-zA-Z0-9_]+)","captures":{"1":{"name":"entity.name.type.event.matlab"}}},{"include":"$self"}],"beginCaptures":{"2":{"name":"keyword.control.events.matlab"},"3":{"patterns":[{"name":"punctuation.separator.modifier.comma.matlab","match":","},{"name":"storage.modifier.events.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"begin":"(=)\\s*","end":"(?=\\)|,)","patterns":[{"include":"#string"},{"name":"constant.language.boolean.matlab","match":"true|false"},{"name":"storage.modifier.access.matlab","match":"public|protected|private|immutable"},{"include":"#curly_brackets"},{"include":"#metaclass_literal"},{"name":"constant.integer.matlab","match":"[0-9]+"}],"beginCaptures":{"1":{"name":"keyword.operator.assignment.matlab"}}}]}},"endCaptures":{"1":{"name":"keyword.control.end.events.matlab"}}},{"name":"meta.enum.matlab","begin":"(?x)\n\t\t\t\t\t\t\t\t\t(^\\s*)\t\t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t\t\t(enumeration)\\b([^%]*)\n\t\t\t\t\t\t\t\t\t\\s*($|(?=%))\n\t\t\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.assignment.definition.enummember.matlab","match":"(?:^\\s*|,\\s*)([a-zA-Z0-9_]+)","captures":{"1":{"name":"variable.other.enummember.matlab"}}},{"name":"punctuation.separator.comma.matlab","match":","},{"include":"#parentheses"},{"include":"#comments"}],"beginCaptures":{"2":{"name":"keyword.control.enum.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.enum.matlab"}}},{"include":"#comments"}],"beginCaptures":{"1":{"name":"storage.type.class.matlab"}},"endCaptures":{"1":{"name":"storage.type.class.end.matlab"}}}]},"command_dual":{"name":"meta.function-call.command.matlab","match":"(?\u003c=^|[^.]\\n|;|,|=)([^\\S\\n]*)(?# A\u003e )(\\b\\w+\\b)([^\\S\\n]+)(?# B\u003e )((?!(\\+|-|\\*|\\.\\*|\\/|\\.\\/|\\\\|\\.\\\\|\\^|\\.\\^|==|~=|\u0026|\u0026\u0026|\\||\\|\\||=|:|\u003e|\u003e=|\u003c|\u003c=|\\.{3})[^\\S\\n]?)[^\\s({=;%][^\\n;%]*)","captures":{"2":{"name":"entity.name.function.command.matlab","patterns":[{"include":"$self"}]},"4":{"name":"string.unquoted.matlab","patterns":[{"include":"#string_quoted_single"}]}}},"comment_block":{"name":"comment.block.percentage.matlab","begin":"(^[\\s]*)(%\\{)[^\\S\\n]*+\\n","end":"(^[\\s]*)(%\\})[^\\S\\n]*+(?:\\n|$)","patterns":[{"include":"#comment_block"},{"match":"^[^\\n]*\\n"}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.matlab"},"2":{"name":"punctuation.definition.comment.begin.matlab"}},"endCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.matlab"},"2":{"name":"punctuation.definition.comment.end.matlab"}}},"comments":{"patterns":[{"begin":"(^[ \\t]+)?(?=%%\\s)","end":"\\Z","patterns":[{"name":"comment.line.double-percentage.matlab","begin":"%%","end":"\\n","patterns":[{"contentName":"entity.name.section.matlab","begin":"\\G[^\\S\\n]*(?![\\n\\s])","end":"(?=\\n)","beginCaptures":{"0":{"name":"punctuation.whitespace.comment.leading.matlab"}}}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.matlab"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.matlab"}}},{"include":"#comment_block"},{"begin":"(^[ \\t]+)?(?=%)","end":"\\Z","patterns":[{"name":"comment.line.percentage.matlab","begin":"%","end":"\\Z","beginCaptures":{"0":{"name":"punctuation.definition.comment.matlab"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.matlab"}}}]},"conjugate_transpose":{"name":"keyword.operator.transpose.matlab","match":"((?\u003c=[^\\s])|(?\u003c=\\])|(?\u003c=\\))|(?\u003c=\\}))'"},"constants":{"patterns":[{"name":"constant.numeric.matlab","match":"(?\u003c!\\.)\\b(eps|Inf|inf|intmax|intmin|namelengthmax|realmax|realmin|pi)\\b"},{"name":"constant.language.nan.matlab","match":"(?\u003c!\\.)\\b(NaN|nan|NaT|nat)\\b"},{"name":"constant.language.boolean.matlab","match":"(?\u003c!\\.)\\b(on|off|false|true)\\b"}]},"control_statements":{"name":"meta.control.matlab","match":"\\s*(?\u003c=^|[\\s,;])(break|continue|return)\\b","captures":{"1":{"name":"keyword.control.flow.matlab"}}},"curly_brackets":{"contentName":"meta.cell.literal.matlab","begin":"\\{","end":"\\}","patterns":[{"include":"#end_in_parentheses"},{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"0":{"name":"punctuation.section.braces.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.braces.end.matlab"}}},"end_in_parentheses":{"name":"keyword.operator.word.matlab","match":"\\bend\\b"},"function":{"patterns":[{"name":"meta.function.matlab","begin":"(?x)\n\t\t\t\t\t\t\t(^\\s*)\t\t\t\t\t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t(function)\n\t\t\t\t\t\t\t\\s+\n\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b(\\s*\\n)?","patterns":[{"name":"meta.function.declaration.matlab","begin":"\\G","patterns":[{"contentName":"meta.assignment.variable.output.matlab","begin":"\\G(?=[^\\(]*?(?:=|\\[|\\.{3}))","end":"\\s*(=)\\s*","patterns":[{"name":"punctuation.section.assignment.group.begin.matlab","match":"\\G\\["},{"match":"(\\])\\s*","captures":{"1":{"name":"punctuation.section.assignment.group.end.matlab"}}},{"name":"variable.parameter.output.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"name":"punctuation.separator.parameter.comma.matlab","match":","},{"include":"#line_continuation"},{"include":"#comments"}],"endCaptures":{"1":{"name":"keyword.operator.assignment.matlab"}}},{"name":"entity.name.function.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*(?\u003e\\.[a-zA-Z0-9_]+)*","patterns":[{"name":"punctuation.accessor.dot.matlab","match":"\\."},{"include":"#line_continuation"}]},{"name":"meta.parameters.matlab","begin":"\\s*\\(","end":"\\)","patterns":[{"name":"variable.parameter.input.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"name":"variable.language.anonymous.matlab","match":"~"},{"name":"punctuation.separator.parameter.comma.matlab","match":","},{"include":"#comments"},{"include":"#line_continuation"}],"beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.definition.parameters.end.matlab"}}},{"include":"#line_continuation"},{"include":"#comments"}]},{"name":"meta.arguments.matlab","begin":"(?x)\n\t\t\t\t\t\t\t\t\t(^\\s*)\t\t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t\t\t(arguments)\\b([^%]*)\n\t\t\t\t\t\t\t\t\t\\s*\n\t\t\t\t\t\t\t\t\t(\t\t\t\t\t\t\t\t\t# Optional attributes\n\t\t\t\t\t\t\t\t\t\t\\( [^)]* \\)\n\t\t\t\t\t\t\t\t\t)?\n\t\t\t\t\t\t\t\t\t\\s*($|(?=%))\n\t\t\t\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"keyword.operator.other.matlab","match":"(?\u003c=\\w)\\.\\?(?=\\w)"},{"include":"#validators"},{"include":"$self"}],"beginCaptures":{"2":{"name":"keyword.control.arguments.matlab"},"3":{"name":"meta.arguments.declaration.matlab","patterns":[{"name":"punctuation.section.parens.begin.matlab","match":"\\("},{"name":"storage.modifier.arguments.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"name":"punctuation.section.parens.end.matlab","match":"\\)"}]}},"endCaptures":{"1":{"name":"keyword.control.end.arguments.matlab"}}},{"include":"$self"}],"beginCaptures":{"2":{"name":"storage.type.function.matlab"}},"endCaptures":{"1":{"name":"storage.type.function.end.matlab"}}}]},"function_call":{"name":"meta.function-call.parens.matlab","begin":"([a-zA-Z][a-zA-Z0-9_]*)\\s*(\\()","patterns":[{"include":"#end_in_parentheses"},{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"1":{"name":"entity.name.function.matlab","patterns":[{"include":"$self"}]},"2":{"name":"punctuation.section.parens.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.parens.end.matlab"}}},"global_persistent":{"match":"^\\s*(global|persistent)\\b","captures":{"1":{"name":"storage.modifier.matlab"}}},"import":{"name":"meta.import.matlab","match":"[^\\S\\r\\n]*\\b(import)\\b[^\\S\\n]+([a-zA-Z0-9.\\*]*)[^\\S\\n]*(?=;|%|$)","captures":{"1":{"name":"keyword.other.import.matlab"},"2":{"name":"entity.name.namespace.matlab","patterns":[{"name":"entity.name.module.matlab","match":"\\w+"},{"name":"punctuation.separator.matlab","match":"\\."},{"name":"variable.language.wildcard.matlab","match":"\\*"}]}}},"indexing_by_expression":{"contentName":"meta.parens.matlab","begin":"([a-zA-Z][a-zA-Z0-9_]*)\\s*(\\.)(\\()","patterns":[{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"1":{"name":"variable.other.readwrite.matlab"},"2":{"name":"punctuation.accessor.dot.matlab"},"3":{"name":"punctuation.section.parens.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.parens.end.matlab"}}},"indexing_curly_brackets":{"begin":"([a-zA-Z][a-zA-Z0-9_\\.]*\\s*)\\{","patterns":[{"include":"#end_in_parentheses"},{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"1":{"patterns":[{"include":"#variables"}]}}},"line_continuation":{"name":"meta.continuation.line.matlab","match":"(\\.{3})(.*)$","captures":{"1":{"name":"punctuation.separator.continuation.line.matlab"},"2":{"name":"comment.continuation.line.matlab"}}},"metaclass_literal":{"name":"meta.metaclass.matlab","begin":"(?\u003c=\\?)(?=[a-zA-Z])","end":"(?\u003c=[a-zA-Z0-9_])(?![a-zA-Z0-9_]|\\.|\\(|{)","patterns":[{"name":"entity.other.class.matlab","match":"(?\u003c=[.\\?])[a-zA-Z][a-zA-Z0-9_]*(?![a-zA-Z0-9_.])"},{"name":"entity.name.namespace.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"}]},"multiple_assignment":{"contentName":"meta.assignment.variable.group.matlab","begin":"\\[(?=[^\\]]+\\]\\s*=[a-zA-Z0-9_\\s(])","end":"\\]","patterns":[{"name":"variable.language.anonymous.matlab","match":"(?\u003c=[\\[,])\\s{0,4}~\\s{0,4}(?=[\\],])"},{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"0":{"name":"punctuation.section.assignment.group.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.assignment.group.end.matlab"}}},"numbers":{"patterns":[{"name":"constant.numeric.decimal.matlab","match":"(?\u003c=[\\s\\+\\-\\*\\/\\\\=:\\[\\(\\{,^]|^)\\d*\\.?\\d+([eE][+-]?\\d)?([0-9\u0026\u0026[^\\.]])*(i|j)?\\b","captures":{"3":{"name":"storage.type.number.imaginary.matlab"}}},{"name":"constant.numeric.hex.matlab","match":"(?\u003c=[\\s\\+\\-\\*\\/\\\\=:\\[\\(\\{,^]|^)0[xX][[:xdigit:]]+([su](?:8|16|32|64))?\\b","captures":{"1":{"name":"storage.type.number.hex.matlab"}}},{"name":"constant.numeric.binary.matlab","match":"(?\u003c=[\\s\\+\\-\\*\\/\\\\=:\\[\\(\\{,^]|^)0[bB][10]+([su](?:8|16|32|64))?\\b","captures":{"1":{"name":"storage.type.number.binary.matlab"}}}]},"operators":{"patterns":[{"name":"keyword.operator.storage.at.matlab","match":"(?\u003c!\\w)@(?=\\s{,4}\\w)"},{"name":"keyword.operator.other.question.matlab","match":"(?\u003c!\\w)\\?(?=\\w)"},{"name":"keyword.operator.arithmetic.matlab","match":"(?\u003c=[a-zA-Z0-9\\s])(\\+|-|\\*|\\.\\*|/|\\./|\\\\|\\.\\\\|\\^|\\.\\^)(?=[a-zA-Z0-9\\s]|(?:\\.{3}))"},{"name":"keyword.operator.logical.matlab","match":"(?\u003c=[a-zA-Z0-9\\s])(==|~=|\u0026|\u0026\u0026|\\||\\|\\|)(?=[a-zA-Z0-9\\s]|(?:\\.{3}))"},{"name":"keyword.operator.assignment.matlab","match":"(?\u003c=[a-zA-Z0-9\\s])(=)(?!=)"},{"name":"keyword.operator.vector.colon.matlab","match":"(?\u003c=[a-zA-Z0-9_\\s(){,]|^):(?=[a-zA-Z0-9_\\s()},]|$||(?:\\.{3}))"},{"name":"keyword.operator.relational.matlab","match":"(?\u003c=[a-zA-Z0-9\\s])(\u003e|\u003e=|\u003c|\u003c=)(?=[a-zA-Z0-9\\s]|(?:\\.{3}))"}]},"parentheses":{"contentName":"meta.parens.matlab","begin":"\\(","patterns":[{"include":"#end_in_parentheses"},{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"0":{"name":"punctuation.section.parens.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.parens.end.matlab"}}},"property":{"name":"variable.other.property.matlab","match":"(?\u003c=\\.)[a-zA-Z][a-zA-Z0-9_]*(?![a-zA-Z0-9_]|(?:\\(|\\{|\\.\\())"},"property_access":{"name":"punctuation.accessor.dot.matlab","match":"\\."},"punctuation":{"patterns":[{"name":"punctuation.accessor.dot.matlab","match":"(?\u003c=\\w)\\.(?!\\()"},{"name":"punctuation.separator.comma.matlab","match":","},{"name":"punctuation.terminator.semicolon.matlab","match":";(?=\\s|$)"}]},"readwrite_operations":{"match":"(?\u003c![a-zA-Z0-9_]|\\.)[a-zA-Z][a-zA-Z0-9_]*(?:\\.[a-zA-Z][a-zA-Z0-9_]*)*(?![a-zA-Z0-9_]|(?:\\(|\\{|\\.\\())","captures":{"0":{"patterns":[{"include":"#property"},{"include":"#readwrite_variable"},{"include":"#property_access"}]}}},"readwrite_variable":{"name":"variable.other.readwrite.matlab","match":"(?\u003c![a-zA-Z0-9_]|\\.|\\?)[a-zA-Z][a-zA-Z0-9_]*(?![a-zA-Z0-9_]|(?:\\(|\\{|\\.\\())"},"rules_after_command_dual":{"patterns":[{"include":"#string"},{"include":"#line_continuation"},{"include":"#comments"},{"include":"#conjugate_transpose"},{"include":"#transpose"},{"include":"#constants"},{"include":"#variables"},{"include":"#numbers"},{"include":"#operators"},{"include":"#punctuation"}]},"rules_before_command_dual":{"patterns":[{"include":"#classdef"},{"include":"#function"},{"include":"#blocks"},{"include":"#control_statements"},{"include":"#global_persistent"},{"include":"#import"},{"include":"#superclass_method_call"},{"include":"#anonymous_function"},{"include":"#function_call"},{"include":"#parentheses"},{"include":"#indexing_curly_brackets"},{"include":"#indexing_by_expression"},{"include":"#multiple_assignment"},{"include":"#single_assignment"},{"include":"#square_brackets"},{"include":"#curly_brackets"},{"include":"#metaclass_literal"}]},"shell_string":{"match":"^\\s*((!)(.*)$\\n?)","captures":{"1":{"name":"meta.interpolation.shell.matlab"},"2":{"name":"punctuation.section.interpolation.begin.matlab"},"3":{"name":"source.shell.embedded.matlab","patterns":[{"include":"source.shell"}]}}},"single_assignment":{"match":"(?\u003c=^|,|;|for)\\s*([a-zA-Z][a-zA-Z0-9_.]*)(?=\\s*=)","captures":{"1":{"name":"meta.assignment.variable.single.matlab","patterns":[{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}]}}},"square_brackets":{"contentName":"meta.brackets.matlab","begin":"\\[(?![^\\]]+\\]\\s{,4}=)","end":"\\]","patterns":[{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"0":{"name":"punctuation.section.brackets.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.brackets.end.matlab"}}},"string":{"patterns":[{"include":"#shell_string"},{"include":"#string_quoted_single"},{"include":"#string_quoted_double"}]},"string_quoted_double":{"name":"string.quoted.double.matlab","begin":"((?\u003c=(\\[|\\(|\\{|=|\\s|;|:|,|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|\\/|\\\\|\\.|\\^))|^)\"","end":"\"(?=(\\[|\\(|\\{|\\]|\\)|\\}|=|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|\\/|\\\\|\\.|\\^|\\||\\s|;|:|,)|$)","patterns":[{"name":"constant.character.escape.matlab","match":"\"\""},{"name":"invalid.illegal.unescaped-quote.matlab","match":"\"(?=.)"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.matlab"}}},"string_quoted_single":{"name":"string.quoted.single.matlab","begin":"((?\u003c=(\\[|\\(|\\{|=|\\s|;|:|,|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|/|\\\\|\\.|\\^))|^)'","end":"'(?=(\\[|\\(|\\{|\\]|\\)|\\}|=|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|/|\\\\|\\.|\\^|\\s|;|:|,)|$)","patterns":[{"name":"constant.character.escape.matlab","match":"''"},{"name":"invalid.illegal.unescaped-quote.matlab","match":"'(?=.)"},{"name":"constant.character.escape.matlab","match":"((\\%([\\+\\-0]?\\d{0,3}(\\.\\d{1,3})?)(c|d|e|E|f|g|i|G|s|((b|t)?(o|u|x|X))))|\\%\\%|\\\\(b|f|n|r|t|\\\\))"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.matlab"}}},"superclass_method_call":{"name":"meta.method-call.parens.matlab","begin":"([a-zA-Z][a-zA-Z0-9_]*)(@)\\s*([a-zA-Z][a-zA-Z0-9_]*(?:\\.[a-zA-Z][a-zA-Z0-9_]*)*)(\\()","patterns":[{"include":"#end_in_parentheses"},{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"1":{"name":"entity.name.function.matlab","patterns":[{"include":"$self"}]},"2":{"name":"punctuation.accessor.scope-resolution.superclass.matlab"},"3":{"patterns":[{"name":"entity.name.type.class.matlab","match":"(\\w+)(?=\\s*\\z)"},{"match":"([a-zA-Z][a-zA-Z0-9_]*)(\\.)","captures":{"1":{"name":"entity.name.module.matlab"},"2":{"name":"punctuation.accessor.dot.matlab"}}},{"include":"$self"}]},"4":{"name":"punctuation.section.parens.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.parens.end.matlab"}}},"transpose":{"name":"keyword.operator.transpose.matlab","match":"\\.'"},"validator_strings":{"patterns":[{"patterns":[{"name":"string.quoted.single.matlab","begin":"((?\u003c=(\\[|\\(|\\{|=|\\s|;|:|,|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|\\/|\\\\|\\.|\\^))|^)'","end":"'(?=(\\[|\\(|\\{|\\]|\\)|\\}|=|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|\\/|\\\\|\\.|\\^|\\s|;|:|,)|$)","patterns":[{"match":"''"},{"match":"'(?=.)"},{"match":"([^']+)"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.matlab"}}},{"name":"string.quoted.double.matlab","begin":"((?\u003c=(\\[|\\(|\\{|=|\\s|;|:|,|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|\\/|\\\\|\\.|\\^))|^)\"","end":"\"(?=(\\[|\\(|\\{|\\]|\\)|\\}|=|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|\\/|\\\\|\\.|\\^|\\||\\s|;|:|,)|$|\\z)","patterns":[{"match":"\"\""},{"match":"\"(?=.)"},{"match":"[^\"]+"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.matlab"}}}]}]},"validators":{"name":"meta.assignment.definition.property.matlab","begin":"\\s*[;]?\\s*([a-zA-Z][a-zA-Z0-9_\\.\\?]*)","end":"([;\\n%=].*)","patterns":[{"include":"#line_continuation"},{"match":"\\s*(\\()([^\\)]*)(\\))","captures":{"1":{"name":"punctuation.section.parens.begin.matlab"},"2":{"name":"meta.parens.size.matlab","patterns":[{"include":"#numbers"},{"include":"#operators"},{"include":"#punctuation"}]},"3":{"name":"punctuation.section.parens.end.matlab"}}},{"name":"storage.type.matlab","match":"[a-zA-Z][a-zA-Z0-9_\\.]*"},{"include":"#braced_validator_list"}],"beginCaptures":{"1":{"name":"variable.object.property.matlab"}},"endCaptures":{"1":{"patterns":[{"match":"([%].*)","captures":{"1":{"patterns":[{"include":"$self"}]}}},{"match":"(=[^;]*)","captures":{"1":{"patterns":[{"include":"$self"}]}}},{"match":"([\\n;]\\s*[a-zA-Z].*)","captures":{"1":{"patterns":[{"include":"#validators"}]}}},{"include":"$self"}]}}},"variables":{"name":"variable.language.function.matlab","match":"(?\u003c!\\.)\\b(nargin|nargout|varargin|varargout)\\b"}},"injections":{"source.matlab -comment -entity -support -string -variable -interpolation -source.shell":{"patterns":[{"include":"#readwrite_operations"}]}}}
|
|
1
|
+
{"name":"MATLAB","scopeName":"source.matlab","patterns":[{"include":"#rules_before_command_dual"},{"include":"#command_dual"},{"include":"#rules_after_command_dual"}],"repository":{"anonymous_function":{"name":"meta.function.anonymous.matlab","begin":"(@)[^\\S\\n]*(?=\\()","patterns":[{"name":"meta.parameters.matlab","begin":"\\G(\\()","end":"\\)","patterns":[{"name":"variable.parameter.input.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"name":"punctuation.separator.parameter.comma.matlab","match":","},{"include":"#line_continuation"}],"beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.definition.parameters.end.matlab"}}},{"name":"meta.parameters.matlab","begin":"(?\u003c=\\))[^\\S\\n]*(\\()?","patterns":[{"include":"$self"},{"include":"#line_continuation"}],"beginCaptures":{"1":{"name":"punctuation.section.group.begin.matlab"}},"endCaptures":{"1":{"name":"punctuation.section.group.end.matlab"}}},{"include":"#line_continuation"}],"beginCaptures":{"1":{"name":"punctuation.definition.function.anonymous.matlab"}}},"blocks":{"patterns":[{"name":"meta.for.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(for)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.for.declaration.matlab","begin":"\\G(?!$)","patterns":[{"include":"$self"}]},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.for.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.for.matlab"}}},{"name":"meta.if.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(if)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.if.declaration.matlab","begin":"\\G(?!$)","patterns":[{"include":"$self"}]},{"name":"meta.elseif.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(elseif)\\b","end":"\\s*(?\u003c=^|[\\s,;])(?=elseif|else|end)\\b","patterns":[{"name":"meta.elseif.declaration.matlab","begin":"\\G(?!$)","patterns":[{"include":"$self"}]},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.elseif.matlab"}}},{"name":"meta.else.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(else)\\b","end":"\\s*(?\u003c=^|[\\s,;])(?=end)\\b","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.else.matlab"}}},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.if.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.if.matlab"},"2":{"patterns":[{"include":"$self"}]}}},{"name":"meta.for.parallel.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(parfor)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.for.parallel.declaration.matlab","begin":"\\G(?!$)","patterns":[{"include":"$self"}]},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.for.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.for.matlab"}}},{"name":"meta.repeat.parallel.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(spmd)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.repeat.parallel.declaration.matlab","begin":"\\G(?!$)","patterns":[{"include":"$self"}]},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.repeat.parallel.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.repeat.parallel.matlab"}}},{"name":"meta.switch.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(switch)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.switch.declaration.matlab","begin":"\\G(?!$)","patterns":[{"include":"$self"}]},{"name":"meta.case.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(case)\\b","end":"\\s*(?\u003c=^|[\\s,;])(?=case|otherwise|end)\\b","patterns":[{"name":"meta.case.declaration.matlab","begin":"\\G(?!$)","patterns":[{"include":"$self"}]},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.switch.case.matlab"}}},{"name":"meta.otherwise.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(otherwise)\\b","end":"\\s*(?\u003c=^|[\\s,;])(?=end)\\b","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.switch.otherwise.matlab"}}},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.switch.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.switch.matlab"},"2":{"patterns":[{"include":"$self"}]}}},{"name":"meta.try.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(try)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.catch.matlab","match":"(\\s*)(?\u003c=^|[\\s,;])(catch)\\b\\s*(\\w+)?","captures":{"2":{"name":"keyword.control.catch.matlab"},"3":{"name":"variable.other.constant.matlab"}}},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.try.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.try.matlab"}}},{"name":"meta.while.matlab","begin":"\\s*(?\u003c=^|[\\s,;])(while)\\b","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.while.declaration.matlab","begin":"\\G(?!$)","patterns":[{"include":"$self"}]},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.while.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.while.matlab"}}}]},"braced_validator_list":{"contentName":"meta.block.validation.matlab","begin":"\\s*({)\\s*","end":"}","patterns":[{"include":"#function_call"},{"include":"#braced_validator_list"},{"include":"#validator_strings"},{"include":"#line_continuation"},{"name":"punctuation.accessor.dot.matlab","match":"\\."}],"beginCaptures":{"1":{"name":"punctuation.section.block.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.block.end.matlab"}}},"classdef":{"patterns":[{"name":"meta.class.matlab","begin":"(?x)\n\t\t\t\t\t\t\t^\\s* \t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t(classdef)\n\t\t\t\t\t\t\t\\s*\n\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.class.declaration.matlab","begin":"\\G","end":"(?\u003c!\\.{3})(?=\\n)","patterns":[{"name":"storage.modifier.section.class.matlab","begin":"\\G\\(","end":"\\)","patterns":[{"name":"punctuation.separator.modifier.comma.matlab","match":","},{"name":"storage.modifier.class.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"begin":"(=)\\s*","end":"(?=\\)|,)","patterns":[{"name":"constant.language.boolean.matlab","match":"true|false"},{"name":"keyword.operator.other.question.matlab","match":"(?\u003c!\\w)\\?(?=\\w)"},{"include":"#metaclass_literal"},{"include":"#string"},{"include":"#curly_brackets"},{"include":"#line_continuation"}],"beginCaptures":{"1":{"name":"keyword.operator.assignment.matlab"}}},{"include":"#comments"},{"include":"#line_continuation"}]},{"begin":"\\s*(\\w+)","end":"(?\u003c!\\.{3})(?=\\s*%|\\n)","patterns":[{"begin":"\\G","end":"(?\u003c!\\.{3})(?=\\n)","patterns":[{"include":"#comments"},{"include":"#line_continuation"},{"name":"punctuation.separator.lt.inheritance.matlab","match":"\u003c"},{"name":"meta.inherited-class.matlab","begin":"(?\u003c!\\.)\\b(?=[a-zA-Z])","end":"(?\u003c=[a-zA-Z0-9_])(?!\\.)","patterns":[{"name":"entity.other.inherited-class.matlab","match":"(?\u003c=[\\s.\u003c])[a-zA-Z][a-zA-Z0-9_]*(?=\\s|$)"},{"name":"entity.name.namespace.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"name":"punctuation.accessor.dot.matlab","match":"\\."}]},{"name":"keyword.operator.type.matlab","match":"\u0026"}]},{"include":"#comments"},{"include":"#line_continuation"}],"beginCaptures":{"1":{"name":"entity.name.type.class.matlab"}}},{"include":"#comments"},{"include":"#line_continuation"}]},{"name":"meta.properties.matlab","begin":"(?x)\n\t\t\t\t\t\t\t\t\t(^\\s*)\t\t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t\t\t(properties)\\b([^%]*)\n\t\t\t\t\t\t\t\t\t\\s*\n\t\t\t\t\t\t\t\t\t(\t\t\t\t\t\t\t\t\t# Optional attributes\n\t\t\t\t\t\t\t\t\t\t\\( [^)]* \\)\n\t\t\t\t\t\t\t\t\t)?\n\t\t\t\t\t\t\t\t\t\\s*($|(?=%))\n\t\t\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"include":"#validators"},{"include":"$self"}],"beginCaptures":{"2":{"name":"keyword.control.properties.matlab"},"3":{"patterns":[{"name":"punctuation.separator.modifier.comma.matlab","match":","},{"name":"storage.modifier.properties.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"begin":"(=)\\s*","end":"(?=\\)|,)","patterns":[{"include":"#string"},{"name":"constant.language.boolean.matlab","match":"true|false"},{"name":"storage.modifier.access.matlab","match":"public|protected|private|immutable"},{"include":"#curly_brackets"},{"include":"#metaclass_literal"},{"name":"constant.integer.matlab","match":"[0-9]+"}],"beginCaptures":{"1":{"name":"keyword.operator.assignment.matlab"}}}]}},"endCaptures":{"1":{"name":"keyword.control.end.properties.matlab"}}},{"name":"meta.methods.matlab","begin":"(?x)\n\t\t\t\t\t\t\t\t\t(^\\s*)\t\t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t\t\t(methods)\\b([^%]*)\n\t\t\t\t\t\t\t\t\t\\s*\n\t\t\t\t\t\t\t\t\t(\t\t\t\t\t\t\t\t\t# Optional attributes\n\t\t\t\t\t\t\t\t\t\t\\( [^)]* \\)\n\t\t\t\t\t\t\t\t\t)?\n\t\t\t\t\t\t\t\t\t\\s*($|(?=%))\n\t\t\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"include":"$self"}],"beginCaptures":{"2":{"name":"keyword.control.methods.matlab"},"3":{"patterns":[{"name":"punctuation.separator.modifier.comma.matlab","match":","},{"name":"storage.modifier.methods.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"begin":"(=)\\s*","end":"(?=\\)|,)","patterns":[{"include":"#string"},{"name":"constant.language.boolean.matlab","match":"true|false"},{"name":"storage.modifier.access.matlab","match":"public|protected|private|immutable"},{"include":"#curly_brackets"},{"include":"#metaclass_literal"},{"name":"constant.integer.matlab","match":"[0-9]+"}],"beginCaptures":{"1":{"name":"keyword.operator.assignment.matlab"}}}]}},"endCaptures":{"1":{"name":"keyword.control.end.methods.matlab"}}},{"name":"meta.events.matlab","begin":"(?x)\n\t\t\t\t\t\t\t\t\t(^\\s*)\t\t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t\t\t(events)\\b([^%]*)\n\t\t\t\t\t\t\t\t\t\\s*\n\t\t\t\t\t\t\t\t\t(\t\t\t\t\t\t\t\t\t# Optional attributes\n\t\t\t\t\t\t\t\t\t\t\\( [^)]* \\)\n\t\t\t\t\t\t\t\t\t)?\n\t\t\t\t\t\t\t\t\t\\s*($|(?=%))\n\t\t\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.assignment.definition.event.matlab","match":"(?:^\\s*|,\\s*)([a-zA-Z0-9_]+)","captures":{"1":{"name":"entity.name.type.event.matlab"}}},{"include":"$self"}],"beginCaptures":{"2":{"name":"keyword.control.events.matlab"},"3":{"patterns":[{"name":"punctuation.separator.modifier.comma.matlab","match":","},{"name":"storage.modifier.events.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"begin":"(=)\\s*","end":"(?=\\)|,)","patterns":[{"include":"#string"},{"name":"constant.language.boolean.matlab","match":"true|false"},{"name":"storage.modifier.access.matlab","match":"public|protected|private|immutable"},{"include":"#curly_brackets"},{"include":"#metaclass_literal"},{"name":"constant.integer.matlab","match":"[0-9]+"}],"beginCaptures":{"1":{"name":"keyword.operator.assignment.matlab"}}}]}},"endCaptures":{"1":{"name":"keyword.control.end.events.matlab"}}},{"name":"meta.enum.matlab","begin":"(?x)\n\t\t\t\t\t\t\t\t\t(^\\s*)\t\t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t\t\t(enumeration)\\b([^%]*)\n\t\t\t\t\t\t\t\t\t\\s*($|(?=%))\n\t\t\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"meta.assignment.definition.enummember.matlab","match":"(?:^\\s*|,\\s*)([a-zA-Z0-9_]+)","captures":{"1":{"name":"variable.other.enummember.matlab"}}},{"name":"punctuation.separator.comma.matlab","match":","},{"include":"#parentheses"},{"include":"#comments"}],"beginCaptures":{"2":{"name":"keyword.control.enum.matlab"}},"endCaptures":{"1":{"name":"keyword.control.end.enum.matlab"}}},{"include":"#comments"}],"beginCaptures":{"1":{"name":"storage.type.class.matlab"}},"endCaptures":{"1":{"name":"storage.type.class.end.matlab"}}}]},"command_dual":{"name":"meta.function-call.command.matlab","match":"(?\u003c=^|[^.]\\n|;|,|=)([^\\S\\n]*)(?# A\u003e )(\\b\\w+\\b)([^\\S\\n]+)(?# B\u003e )((?!(\\+|-|\\*|\\.\\*|\\/|\\.\\/|\\\\|\\.\\\\|\\^|\\.\\^|==|~=|\u0026|\u0026\u0026|\\||\\|\\||=|:|\u003e|\u003e=|\u003c|\u003c=|\\.{3})[^\\S\\n]?)[^\\s({=;%][^\\n;%]*)","captures":{"2":{"name":"entity.name.function.command.matlab","patterns":[{"include":"$self"}]},"4":{"name":"string.unquoted.matlab","patterns":[{"include":"#string_quoted_single"}]}}},"comment_block":{"name":"comment.block.percentage.matlab","begin":"(^[\\s]*)(%\\{)[^\\S\\n]*+\\n","end":"(^[\\s]*)(%\\})[^\\S\\n]*+(?:\\n|$)","patterns":[{"include":"#comment_block"},{"match":"^[^\\n]*\\n"}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.matlab"},"2":{"name":"punctuation.definition.comment.begin.matlab"}},"endCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.matlab"},"2":{"name":"punctuation.definition.comment.end.matlab"}}},"comments":{"patterns":[{"begin":"(^[ \\t]+)?(?=%%\\s)","end":"\\Z","patterns":[{"name":"comment.line.double-percentage.matlab","begin":"%%","end":"\\n","patterns":[{"contentName":"entity.name.section.matlab","begin":"\\G[^\\S\\n]*(?![\\n\\s])","end":"(?=\\n)","beginCaptures":{"0":{"name":"punctuation.whitespace.comment.leading.matlab"}}}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.matlab"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.matlab"}}},{"include":"#comment_block"},{"begin":"(^[ \\t]+)?(?=%)","end":"\\Z","patterns":[{"name":"comment.line.percentage.matlab","begin":"%","end":"\\Z","beginCaptures":{"0":{"name":"punctuation.definition.comment.matlab"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.matlab"}}}]},"conjugate_transpose":{"name":"keyword.operator.transpose.matlab","match":"((?\u003c=[^\\s])|(?\u003c=\\])|(?\u003c=\\))|(?\u003c=\\}))'"},"constants":{"patterns":[{"name":"constant.numeric.matlab","match":"(?\u003c!\\.)\\b(eps|Inf|inf|intmax|intmin|namelengthmax|realmax|realmin|pi)\\b"},{"name":"constant.language.nan.matlab","match":"(?\u003c!\\.)\\b(NaN|nan|NaT|nat)\\b"},{"name":"constant.language.boolean.matlab","match":"(?\u003c!\\.)\\b(on|off|false|true)\\b"}]},"control_statements":{"name":"meta.control.matlab","match":"\\s*(?\u003c=^|[\\s,;])(break|continue|return)\\b","captures":{"1":{"name":"keyword.control.flow.matlab"}}},"curly_brackets":{"contentName":"meta.cell.literal.matlab","begin":"\\{","end":"\\}","patterns":[{"include":"#end_in_parentheses"},{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"0":{"name":"punctuation.section.braces.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.braces.end.matlab"}}},"end_in_parentheses":{"name":"keyword.operator.word.matlab","match":"\\bend\\b"},"function":{"patterns":[{"name":"meta.function.matlab","begin":"(?x)\n\t\t\t\t\t\t\t(^\\s*)\t\t\t\t\t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t(function)\n\t\t\t\t\t\t\t\\s+\n\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b(\\s*\\n)?","patterns":[{"name":"meta.function.declaration.matlab","begin":"\\G","patterns":[{"contentName":"meta.assignment.variable.output.matlab","begin":"\\G(?=[^\\(]*?(?:=|\\[|\\.{3}))","end":"\\s*(=)\\s*","patterns":[{"name":"punctuation.section.assignment.group.begin.matlab","match":"\\G\\["},{"match":"(\\])\\s*","captures":{"1":{"name":"punctuation.section.assignment.group.end.matlab"}}},{"name":"variable.parameter.output.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"name":"punctuation.separator.parameter.comma.matlab","match":","},{"include":"#line_continuation"},{"include":"#comments"}],"endCaptures":{"1":{"name":"keyword.operator.assignment.matlab"}}},{"name":"entity.name.function.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*(?\u003e\\.[a-zA-Z0-9_]+)*","patterns":[{"name":"punctuation.accessor.dot.matlab","match":"\\."},{"include":"#line_continuation"}]},{"name":"meta.parameters.matlab","begin":"\\s*\\(","end":"\\)","patterns":[{"name":"variable.parameter.input.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"name":"variable.language.anonymous.matlab","match":"~"},{"name":"punctuation.separator.parameter.comma.matlab","match":","},{"include":"#comments"},{"include":"#line_continuation"}],"beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.definition.parameters.end.matlab"}}},{"include":"#line_continuation"},{"include":"#comments"}]},{"name":"meta.arguments.matlab","begin":"(?x)\n\t\t\t\t\t\t\t\t\t(^\\s*)\t\t\t\t\t\t\t\t# Leading whitespace\n\t\t\t\t\t\t\t\t\t(arguments)\\b([^%]*)\n\t\t\t\t\t\t\t\t\t\\s*\n\t\t\t\t\t\t\t\t\t(\t\t\t\t\t\t\t\t\t# Optional attributes\n\t\t\t\t\t\t\t\t\t\t\\( [^)]* \\)\n\t\t\t\t\t\t\t\t\t)?\n\t\t\t\t\t\t\t\t\t\\s*($|(?=%))\n\t\t\t\t\t\t\t\t","end":"\\s*(?\u003c=^|[\\s,;])(end)\\b","patterns":[{"name":"keyword.operator.other.matlab","match":"(?\u003c=\\w)\\.\\?(?=\\w)"},{"include":"#validators"},{"include":"$self"}],"beginCaptures":{"2":{"name":"keyword.control.arguments.matlab"},"3":{"name":"meta.arguments.declaration.matlab","patterns":[{"name":"punctuation.section.parens.begin.matlab","match":"\\("},{"name":"storage.modifier.arguments.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"},{"name":"punctuation.section.parens.end.matlab","match":"\\)"}]}},"endCaptures":{"1":{"name":"keyword.control.end.arguments.matlab"}}},{"include":"$self"}],"beginCaptures":{"2":{"name":"storage.type.function.matlab"}},"endCaptures":{"1":{"name":"storage.type.function.end.matlab"}}}]},"function_call":{"name":"meta.function-call.parens.matlab","begin":"(?\u003c!\\.)\\b([a-zA-Z][a-zA-Z0-9_]*)\\s*(\\()","patterns":[{"include":"#end_in_parentheses"},{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"1":{"name":"entity.name.function.matlab","patterns":[{"include":"$self"}]},"2":{"name":"punctuation.section.parens.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.parens.end.matlab"}}},"global_persistent":{"match":"^\\s*(global|persistent)\\b","captures":{"1":{"name":"storage.modifier.matlab"}}},"import":{"name":"meta.import.matlab","match":"[^\\S\\r\\n]*\\b(import)\\b[^\\S\\n]+([a-zA-Z0-9.\\*]*)[^\\S\\n]*(?=;|%|$)","captures":{"1":{"name":"keyword.other.import.matlab"},"2":{"name":"entity.name.namespace.matlab","patterns":[{"name":"entity.name.module.matlab","match":"\\w+"},{"name":"punctuation.separator.matlab","match":"\\."},{"name":"variable.language.wildcard.matlab","match":"\\*"}]}}},"indexing_by_expression":{"contentName":"meta.parens.matlab","begin":"([a-zA-Z][a-zA-Z0-9_]*)\\s*(\\.)(\\()","patterns":[{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"1":{"name":"variable.other.readwrite.matlab"},"2":{"name":"punctuation.accessor.dot.matlab"},"3":{"name":"punctuation.section.parens.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.parens.end.matlab"}}},"indexing_curly_brackets":{"begin":"([a-zA-Z][a-zA-Z0-9_\\.]*\\s*)\\{","patterns":[{"include":"#end_in_parentheses"},{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"1":{"patterns":[{"include":"#variables"}]}}},"line_continuation":{"name":"meta.continuation.line.matlab","match":"(\\.{3})(.*)$","captures":{"1":{"name":"punctuation.separator.continuation.line.matlab"},"2":{"name":"comment.continuation.line.matlab"}}},"metaclass_literal":{"name":"meta.metaclass.matlab","begin":"(?\u003c=\\?)(?=[a-zA-Z])","end":"(?\u003c=[a-zA-Z0-9_])(?![a-zA-Z0-9_]|\\.|\\(|{)","patterns":[{"name":"entity.other.class.matlab","match":"(?\u003c=[.\\?])[a-zA-Z][a-zA-Z0-9_]*(?![a-zA-Z0-9_.])"},{"name":"entity.name.namespace.matlab","match":"[a-zA-Z][a-zA-Z0-9_]*"}]},"multiple_assignment":{"contentName":"meta.assignment.variable.group.matlab","begin":"\\[(?=[^\\]]+\\]\\s*=[a-zA-Z0-9_\\s(])","end":"\\]","patterns":[{"name":"variable.language.anonymous.matlab","match":"(?\u003c=[\\[,])\\s{0,4}~\\s{0,4}(?=[\\],])"},{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"0":{"name":"punctuation.section.assignment.group.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.assignment.group.end.matlab"}}},"numbers":{"patterns":[{"name":"constant.numeric.decimal.matlab","match":"(?\u003c=[\\s\\+\\-\\*\\/\\\\=;:\\[\\(\\{,^]|^)\\d*\\.?\\d+([eE][+-]?\\d)?([0-9\u0026\u0026[^\\.]])*(i|j)?\\b","captures":{"3":{"name":"storage.type.number.imaginary.matlab"}}},{"name":"constant.numeric.hex.matlab","match":"(?\u003c=[\\s\\+\\-\\*\\/\\\\=:\\[\\(\\{,^]|^)0[xX][[:xdigit:]]+([su](?:8|16|32|64))?\\b","captures":{"1":{"name":"storage.type.number.hex.matlab"}}},{"name":"constant.numeric.binary.matlab","match":"(?\u003c=[\\s\\+\\-\\*\\/\\\\=:\\[\\(\\{,^]|^)0[bB][10]+([su](?:8|16|32|64))?\\b","captures":{"1":{"name":"storage.type.number.binary.matlab"}}}]},"operators":{"patterns":[{"name":"keyword.operator.storage.at.matlab","match":"(?\u003c!\\w)@(?=\\s{,4}\\w)"},{"name":"keyword.operator.other.question.matlab","match":"(?\u003c!\\w)\\?(?=\\w)"},{"name":"keyword.operator.arithmetic.matlab","match":"(?\u003c=[a-zA-Z0-9\\s])(\\+|-|\\*|\\.\\*|/|\\./|\\\\|\\.\\\\|\\^|\\.\\^)(?=[a-zA-Z0-9\\s]|(?:\\.{3}))"},{"name":"keyword.operator.logical.matlab","match":"(?\u003c=[a-zA-Z0-9\\s])(==|~=|\u0026|\u0026\u0026|\\||\\|\\|)(?=[a-zA-Z0-9\\s]|(?:\\.{3}))"},{"name":"keyword.operator.assignment.matlab","match":"(?\u003c=[a-zA-Z0-9\\s])(=)(?!=)"},{"name":"keyword.operator.vector.colon.matlab","match":"(?\u003c=[a-zA-Z0-9_\\s(){,]|^):(?=[a-zA-Z0-9_\\s()},]|$||(?:\\.{3}))"},{"name":"keyword.operator.relational.matlab","match":"(?\u003c=[a-zA-Z0-9\\s])(\u003e|\u003e=|\u003c|\u003c=)(?=[a-zA-Z0-9\\s]|(?:\\.{3}))"}]},"parentheses":{"contentName":"meta.parens.matlab","begin":"\\(","patterns":[{"include":"#end_in_parentheses"},{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"0":{"name":"punctuation.section.parens.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.parens.end.matlab"}}},"property_access":{"name":"punctuation.accessor.dot.matlab","match":"\\."},"punctuation":{"patterns":[{"name":"punctuation.accessor.dot.matlab","match":"(?\u003c=\\w)\\.(?!\\()"},{"name":"punctuation.separator.comma.matlab","match":","},{"name":"punctuation.terminator.semicolon.matlab","match":";(?=\\s|$)"}]},"readwrite_operations":{"match":"(?\u003c![a-zA-Z0-9_]|\\.)[a-zA-Z][a-zA-Z0-9_]*(?:\\.[a-zA-Z][a-zA-Z0-9_]*)*(?![a-zA-Z0-9_]|(?:\\(|\\{|\\.\\())","captures":{"0":{"patterns":[{"include":"#property"},{"include":"#readwrite_variable"},{"include":"#property_access"}]}}},"readwrite_variable":{"name":"variable.other.readwrite.matlab","match":"(?\u003c![a-zA-Z0-9_]|\\.|\\?)[a-zA-Z][a-zA-Z0-9_]*(?![a-zA-Z0-9_]|(?:\\(|\\{|\\.\\())"},"rules_after_command_dual":{"patterns":[{"include":"#string"},{"include":"#line_continuation"},{"include":"#comments"},{"include":"#conjugate_transpose"},{"include":"#transpose"},{"include":"#constants"},{"include":"#variables"},{"include":"#numbers"},{"include":"#operators"},{"include":"#punctuation"}]},"rules_before_command_dual":{"patterns":[{"include":"#classdef"},{"include":"#function"},{"include":"#blocks"},{"include":"#control_statements"},{"include":"#global_persistent"},{"include":"#import"},{"include":"#superclass_method_call"},{"include":"#anonymous_function"},{"include":"#function_call"},{"include":"#parentheses"},{"include":"#indexing_curly_brackets"},{"include":"#indexing_by_expression"},{"include":"#multiple_assignment"},{"include":"#single_assignment"},{"include":"#square_brackets"},{"include":"#curly_brackets"},{"include":"#metaclass_literal"}]},"shell_string":{"match":"^\\s*((!)(.*)$\\n?)","captures":{"1":{"name":"meta.interpolation.shell.matlab"},"2":{"name":"punctuation.section.interpolation.begin.matlab"},"3":{"name":"source.shell.embedded.matlab","patterns":[{"include":"source.shell"}]}}},"single_assignment":{"match":"(?\u003c=^|,|;|for)\\s*([a-zA-Z][a-zA-Z0-9_.]*)(?=\\s*=)","captures":{"1":{"name":"meta.assignment.variable.single.matlab","patterns":[{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}]}}},"square_brackets":{"contentName":"meta.brackets.matlab","begin":"\\[(?![^\\]]+\\]\\s{,4}=)","end":"\\]","patterns":[{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"0":{"name":"punctuation.section.brackets.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.brackets.end.matlab"}}},"string":{"patterns":[{"include":"#shell_string"},{"include":"#string_quoted_single"},{"include":"#string_quoted_double"}]},"string_quoted_double":{"name":"string.quoted.double.matlab","begin":"((?\u003c=(\\[|\\(|\\{|=|\\s|;|:|,|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|\\/|\\\\|\\.|\\^))|^)\"","end":"\"(?=(\\[|\\(|\\{|\\]|\\)|\\}|=|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|\\/|\\\\|\\.|\\^|\\||\\s|;|:|,)|$)","patterns":[{"name":"constant.character.escape.matlab","match":"\"\""},{"name":"invalid.illegal.unescaped-quote.matlab","match":"\"(?=.)"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.matlab"}}},"string_quoted_single":{"name":"string.quoted.single.matlab","begin":"((?\u003c=(\\[|\\(|\\{|=|\\s|;|:|,|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|/|\\\\|\\.|\\^))|^)'","end":"'(?=(\\[|\\(|\\{|\\]|\\)|\\}|=|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|/|\\\\|\\.|\\^|\\s|;|:|,)|$)","patterns":[{"name":"constant.character.escape.matlab","match":"''"},{"name":"invalid.illegal.unescaped-quote.matlab","match":"'(?=.)"},{"name":"constant.character.escape.matlab","match":"((\\%([\\+\\-0]?\\d{0,3}(\\.\\d{1,3})?)(c|d|e|E|f|g|i|G|s|((b|t)?(o|u|x|X))))|\\%\\%|\\\\(b|f|n|r|t|\\\\))"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.matlab"}}},"superclass_method_call":{"name":"meta.method-call.parens.matlab","begin":"([a-zA-Z][a-zA-Z0-9_]*)(@)\\s*([a-zA-Z][a-zA-Z0-9_]*(?:\\.[a-zA-Z][a-zA-Z0-9_]*)*)(\\()","patterns":[{"include":"#end_in_parentheses"},{"include":"#rules_before_command_dual"},{"include":"#rules_after_command_dual"}],"beginCaptures":{"1":{"name":"entity.name.function.matlab","patterns":[{"include":"$self"}]},"2":{"name":"punctuation.accessor.scope-resolution.superclass.matlab"},"3":{"patterns":[{"name":"entity.name.type.class.matlab","match":"(\\w+)(?=\\s*\\z)"},{"match":"([a-zA-Z][a-zA-Z0-9_]*)(\\.)","captures":{"1":{"name":"entity.name.module.matlab"},"2":{"name":"punctuation.accessor.dot.matlab"}}},{"include":"$self"}]},"4":{"name":"punctuation.section.parens.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.section.parens.end.matlab"}}},"transpose":{"name":"keyword.operator.transpose.matlab","match":"\\.'"},"validator_strings":{"patterns":[{"patterns":[{"name":"string.quoted.single.matlab","begin":"((?\u003c=(\\[|\\(|\\{|=|\\s|;|:|,|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|\\/|\\\\|\\.|\\^))|^)'","end":"'(?=(\\[|\\(|\\{|\\]|\\)|\\}|=|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|\\/|\\\\|\\.|\\^|\\s|;|:|,)|$)","patterns":[{"match":"''"},{"match":"'(?=.)"},{"match":"([^']+)"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.matlab"}}},{"name":"string.quoted.double.matlab","begin":"((?\u003c=(\\[|\\(|\\{|=|\\s|;|:|,|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|\\/|\\\\|\\.|\\^))|^)\"","end":"\"(?=(\\[|\\(|\\{|\\]|\\)|\\}|=|~|\u003c|\u003e|\u0026|\\||-|\\+|\\*|\\/|\\\\|\\.|\\^|\\||\\s|;|:|,)|$|\\z)","patterns":[{"match":"\"\""},{"match":"\"(?=.)"},{"match":"[^\"]+"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.matlab"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.matlab"}}}]}]},"validators":{"name":"meta.assignment.definition.property.matlab","begin":"\\s*[;]?\\s*([a-zA-Z][a-zA-Z0-9_\\.\\?]*)","end":"([;\\n%=].*)","patterns":[{"include":"#line_continuation"},{"match":"\\s*(\\()([^\\)]*)(\\))","captures":{"1":{"name":"punctuation.section.parens.begin.matlab"},"2":{"name":"meta.parens.size.matlab","patterns":[{"include":"#numbers"},{"include":"#operators"},{"include":"#punctuation"}]},"3":{"name":"punctuation.section.parens.end.matlab"}}},{"name":"storage.type.matlab","match":"[a-zA-Z][a-zA-Z0-9_\\.]*"},{"include":"#braced_validator_list"}],"beginCaptures":{"1":{"name":"variable.object.property.matlab"}},"endCaptures":{"1":{"patterns":[{"match":"([%].*)","captures":{"1":{"patterns":[{"include":"$self"}]}}},{"match":"(=(?:[^{\\[;]+|\\[[^\\]]*\\]|\\{[^}]*\\})*)","captures":{"1":{"patterns":[{"include":"$self"}]}}},{"match":"([\\n;]\\s*[a-zA-Z].*)","captures":{"1":{"patterns":[{"include":"#validators"}]}}},{"include":"$self"}]}}},"variables":{"name":"variable.language.function.matlab","match":"(?\u003c!\\.)\\b(nargin|nargout|varargin|varargout)\\b"}},"injections":{"source.matlab -comment -entity -support -string -variable -interpolation -source.shell":{"patterns":[{"include":"#readwrite_operations"}]}}}
|
data/grammars/source.mc.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"Monkey C","scopeName":"source.mc","patterns":[{"include":"#statements"}],"repository":{"access-modifier":{"patterns":[{"name":"storage.modifier.mc","match":"(?\u003c!\\.|\\$)\\b(hidden|static)\\b(?!\\$)"}]},"after-operator-block":{"name":"meta.objectliteral.mc","begin":"(?\u003c=[=(,\\[?+!]|return|throw|in|of|typeof|\u0026\u0026|\\|\\||\\*)\\s*(\\{)","end":"\\}","patterns":[{"include":"#object-member"}],"beginCaptures":{"1":{"name":"punctuation.definition.block.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.block.mc"}}},"array-literal":{"name":"meta.array.literal.mc","begin":"\\[","end":"\\]","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}],"beginCaptures":{"0":{"name":"meta.brace.square.mc"}},"endCaptures":{"0":{"name":"meta.brace.square.mc"}}},"boolean-literal":{"patterns":[{"name":"constant.language.boolean.true.mc","match":"(?\u003c!\\.|\\$)\\btrue\\b(?!\\$)"},{"name":"constant.language.boolean.false.mc","match":"(?\u003c!\\.|\\$)\\bfalse\\b(?!\\$)"}]},"case-clause":{"name":"case-clause.expr.mc","begin":"(?\u003c!\\.|\\$)\\b(case|default(?=:))\\b(?!\\$)","end":":","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.control.switch.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.section.case-statement.mc"}}},"class-body":{"begin":"\\{","end":"\\}","patterns":[{"include":"#string"},{"include":"#comment"},{"include":"#decorator"},{"include":"#method-declaration"},{"include":"#enum-declaration"},{"include":"#field-declaration"},{"include":"#access-modifier"},{"include":"#after-operator-block"},{"include":"#decl-block"},{"include":"#expression"},{"include":"#punctuation-semicolon"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.block.mc"}}},"class-declaration":{"name":"meta.class.mc","begin":"(?\u003c!\\.|\\$)\\b(?:(class))\\b","end":"(?\u003c=\\})","patterns":[{"include":"#comment"},{"include":"#class-heritage"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","captures":{"0":{"name":"entity.name.type.class.mc"}}},{"include":"#class-body"}],"beginCaptures":{"1":{"name":"storage.type.class.mc"}},"endCaptures":{"1":{"name":"punctuation.definition.block.mc"}}},"class-heritage":{"begin":"(?\u003c!\\.|\\$)(?:\\b(extends)\\b)(?!\\$)","end":"(?=\\{)","patterns":[{"include":"#comment"},{"include":"#class-heritage"},{"match":"([_$[:alpha:]][_$[:alnum:]]*)\\s*(\\.)(?=\\s*[_$[:alpha:]][_$[:alnum:]]*(\\s*\\.\\s*[_$[:alpha:]][_$[:alnum:]]*)*\\s*([,\u003c{]|extends|//|/\\*))","captures":{"1":{"name":"entity.name.type.module.mc"},"2":{"name":"punctuation.accessor.mc"}}},{"match":"([_$[:alpha:]][_$[:alnum:]]*)(?=\\s*([,\u003c{]|extends|//|/\\*))","captures":{"1":{"name":"entity.other.inherited-class.mc"}}},{"include":"#expression"}],"beginCaptures":{"1":{"name":"storage.modifier.mc"}},"endCaptures":{"1":{"name":"punctuation.definition.block.mc"}}},"comment":{"patterns":[{"name":"comment.block.documentation.mc","begin":"/\\*\\*(?!/)","end":"\\*/","beginCaptures":{"0":{"name":"punctuation.definition.comment.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.mc"}}},{"name":"comment.block.mc","begin":"/\\*","end":"\\*/","beginCaptures":{"0":{"name":"punctuation.definition.comment.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.mc"}}},{"begin":"(^[ \\t]+)?(?=//)","end":"(?=$)","patterns":[{"name":"comment.line.double-slash.mc","begin":"//","end":"(?=$)","beginCaptures":{"0":{"name":"punctuation.definition.comment.mc"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.mc"}}}]},"control-statement":{"patterns":[{"name":"keyword.control.trycatch.mc","match":"(?\u003c!\\.|\\$)\\b(catch|finally|throw|try)\\b(?!\\$)"},{"name":"keyword.control.loop.mc","match":"(?\u003c!\\.|\\$)\\b(break|continue|do|while)\\b(?!\\$)"},{"name":"keyword.control.flow.mc","match":"(?\u003c!\\.|\\$)\\b(return)\\b(?!\\$)"},{"name":"keyword.control.switch.mc","match":"(?\u003c!\\.|\\$)\\b(case|default|switch)\\b(?!\\$)"},{"name":"keyword.control.conditional.mc","match":"(?\u003c!\\.|\\$)\\b(else|if)\\b(?!\\$)"}]},"decl-block":{"name":"meta.block.mc","begin":"\\{","end":"\\}","patterns":[{"include":"#statements"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.block.mc"}}},"declaration":{"name":"meta.declaration.mc","patterns":[{"include":"#decorator"},{"include":"#var-expr"},{"include":"#function-declaration"},{"include":"#class-declaration"},{"include":"#enum-declaration"},{"include":"#namespace-declaration"},{"include":"#import-declaration"}]},"decorator":{"name":"meta.decorator.mc","patterns":[{"match":"(?\u003c!\\.|\\$)(\\(:([_$[:alpha:]][_$[:alnum:]]*)\\))","captures":{"0":{"name":"storage.type.decorator.mc"}}}]},"enum-declaration":{"name":"meta.enum.declaration.mc","begin":"(?\u003c!\\.|\\$)\\b(enum)\\b","end":"(?\u003c=\\})","patterns":[{"include":"#comment"},{"begin":"\\{","end":"\\}","patterns":[{"include":"#comment"},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)","end":"(?=,|\\}|$)","patterns":[{"include":"#comment"},{"include":"#variable-initializer"}],"beginCaptures":{"0":{"name":"variable.other.enummember.mc"}}},{"begin":"(?=((\\'[^']*\\')|(\\\"[^\"]*\\\")|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])+\\])))","end":"(?=,|\\}|$)","patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#comment"},{"include":"#variable-initializer"}]},{"include":"#punctuation-comma"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.block.mc"}}}],"beginCaptures":{"1":{"name":"storage.type.enum.mc"}}},"expression":{"name":"meta.expression.mc","patterns":[{"include":"#string"},{"include":"#comment"},{"include":"#literal"},{"include":"#function-declaration"},{"include":"#class-declaration"},{"include":"#ternary-expression"},{"include":"#new-expr"},{"include":"#object-literal"},{"include":"#expression-operators"},{"include":"#function-call"},{"include":"#support-objects"},{"include":"#identifiers"},{"include":"#paren-expression"},{"include":"#punctuation-comma"},{"include":"#punctuation-accessor"}]},"expression-operators":{"patterns":[{"name":"keyword.operator.expression.instanceof.mc","match":"(?\u003c!\\.|\\$)\\binstanceof\\b(?!\\$)"},{"name":"keyword.operator.expression.has.mc","match":"(?\u003c!\\.|\\$)\\bhas\\b(?!\\$)"},{"name":"keyword.operator.new.mc","match":"(?\u003c!\\.|\\$)\\bnew\\b(?!\\$)"},{"name":"keyword.operator.expression.void.mc","match":"(?\u003c!\\.|\\$)\\bvoid\\b(?!\\$)"},{"name":"keyword.operator.assignment.compound.mc","match":"\\*=|(?\u003c!\\()/=|%=|\\+=|\\-="},{"name":"keyword.operator.assignment.compound.bitwise.mc","match":"\\\u0026=|\\^=|\u003c\u003c=|\u003e\u003e=|\\|="},{"name":"keyword.operator.bitwise.shift.mc","match":"\u003c\u003c|\u003e\u003e"},{"name":"keyword.operator.comparison.mc","match":"==|!="},{"name":"keyword.operator.relational.mc","match":"\u003c=|\u003e=|\u003c\u003e|\u003c|\u003e"},{"name":"keyword.operator.logical.mc","match":"\\!|\u0026\u0026|\\|\\|"},{"name":"keyword.operator.expression.logical.mc","match":"(?\u003c!\\.|\\$)\\band|or|not\\b(?!\\$)"},{"name":"keyword.operator.bitwise.mc","match":"\\\u0026|~|\\^|\\|"},{"name":"keyword.operator.assignment.mc","match":"\\="},{"name":"keyword.operator.decrement.mc","match":"--"},{"name":"keyword.operator.increment.mc","match":"\\+\\+"},{"name":"keyword.operator.arithmetic.mc","match":"%|\\*|/|-|\\+"},{"match":"(?\u003c=[_$[:alnum:])])\\s*(/)(?![/*])","captures":{"1":{"name":"keyword.operator.arithmetic.mc"}}}]},"field-declaration":{"name":"meta.field.declaration.mc","begin":"(?\u003c!\\()(?:(?\u003c!\\.|\\$)\\b(const|var)\\s+)(?=(([_$[:alpha:]][_$[:alnum:]]*)|(\\'[^']*\\')|(\\\"[^\"]*\\\")|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])+\\]))\\s*(\\?\\s*)?(=)?)","end":"(?=\\}|;|,|$)|(?\u003c=\\})","patterns":[{"include":"#variable-initializer"}],"beginCaptures":{"1":{"name":"storage.type.mc"}}},"for-loop":{"begin":"(?\u003c!\\.|\\$)\\b(for)\\s*(\\()","end":"\\)","patterns":[{"include":"#var-expr"},{"include":"#expression"},{"include":"#punctuation-semicolon"}],"beginCaptures":{"1":{"name":"keyword.control.loop.mc"},"2":{"name":"meta.brace.round.mc"}},"endCaptures":{"0":{"name":"meta.brace.round.mc"}}},"function-call":{"begin":"(?=(\\.\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\s*(\u003c([^\u003c\u003e]|\\\u003c[^\u003c\u003e]+\\\u003e)+\u003e\\s*)?\\()","end":"(?\u003c=\\))(?!(\\.\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\s*(\u003c([^\u003c\u003e]|\\\u003c[^\u003c\u003e]+\\\u003e)+\u003e\\s*)?\\()","patterns":[{"include":"#support-objects"},{"include":"#punctuation-accessor"},{"name":"entity.name.function.mc","match":"([_$[:alpha:]][_$[:alnum:]]*)"},{"include":"#comment"},{"include":"#paren-expression"}]},"function-declaration":{"name":"meta.function.mc","begin":"(?\u003c!\\.|\\$)\\b(function\\b)(?:(?:\\s+|(?\u003c=\\*))([_$[:alpha:]][_$[:alnum:]]*))?\\s*","end":"(?=$|;|\\})|(?\u003c=\\})","patterns":[{"include":"#comment"},{"include":"#function-parameters"},{"include":"#decl-block"}],"beginCaptures":{"1":{"name":"storage.type.function.mc"},"2":{"name":"entity.name.function.mc"}}},"function-parameters":{"name":"meta.parameters.mc","begin":"\\(","end":"\\)","patterns":[{"include":"#comment"},{"include":"#decorator"},{"include":"#parameter-name"},{"include":"#variable-initializer"},{"name":"punctuation.separator.parameter.mc","match":","}],"beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.parameters.end.mc"}}},"identifiers":{"patterns":[{"name":"support.class.mc","match":"([_$[:alpha:]][_$[:alnum:]]*)(?=\\s*\\.\\s*prototype\\b(?!\\$))"},{"match":"(?x)(\\.)\\s*(?:\n ([[:upper:]][_$[:digit:][:upper:]]*) |\n ([_$[:alpha:]][_$[:alnum:]]*)\n)(?=\\s*\\.\\s*[_$[:alpha:]][_$[:alnum:]]*)","captures":{"1":{"name":"punctuation.accessor.mc"},"2":{"name":"variable.other.constant.object.property.mc"},"3":{"name":"variable.other.object.property.mc"}}},{"match":"(?x)(?:(\\.)\\s*)?([_$[:alpha:]][_$[:alnum:]]*)(?=\\s*=\\s*(\n (function\\s*[(\u003c])|(function\\s+)|\n ([_$[:alpha:]][_$[:alnum:]]*\\s*=\u003e)|\n ([(]\\s*(([)]\\s*:)|([_$[:alpha:]][_$[:alnum:]]*\\s*:) )) |\n ([\u003c]\\s*[_$[:alpha:]][_$[:alnum:]]*((\\s+extends\\s*[^=\u003e])|(\\s*[,]))) |\n ((\u003c([^\u003c\u003e]|\\\u003c[^\u003c\u003e]+\\\u003e)+\u003e\\s*)?\\(([^()]|\\([^()]*\\))*\\)(\\s*:\\s*(.)*)?\\s*=\u003e)))","captures":{"1":{"name":"punctuation.accessor.mc"},"2":{"name":"entity.name.function.mc"}}},{"match":"(\\.)\\s*([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])","captures":{"1":{"name":"punctuation.accessor.mc"},"2":{"name":"variable.other.constant.property.mc"}}},{"match":"(\\.)\\s*([_$[:alpha:]][_$[:alnum:]]*)","captures":{"1":{"name":"punctuation.accessor.mc"},"2":{"name":"variable.other.property.mc"}}},{"match":"(?x)(?:\n ([[:upper:]][_$[:digit:][:upper:]]*) |\n ([_$[:alpha:]][_$[:alnum:]]*)\n)(?=\\s*\\.\\s*[_$[:alpha:]][_$[:alnum:]]*)","captures":{"1":{"name":"variable.other.constant.object.mc"},"2":{"name":"variable.other.object.mc"}}},{"name":"variable.other.constant.mc","match":"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])"},{"name":"variable.other.readwrite.mc","match":"[_$[:alpha:]][_$[:alnum:]]*"}]},"import-declaration":{"name":"meta.import.mc","begin":"(?\u003c!\\.|\\$)\\b(using)(?!(\\s*:)|(\\$))\\b","end":"(?=;|$)","patterns":[{"include":"#import-export-declaration"}],"beginCaptures":{"1":{"name":"keyword.control.import.mc"}}},"import-export-clause":{"patterns":[{"include":"#comment"},{"match":"(?x) ([_$[:alpha:]][_$[:alnum:]]*) \\s+ \n (as) \\s+ ([_$[:alpha:]][_$[:alnum:]]*)","captures":{"1":{"name":"variable.other.readwrite.mc"},"2":{"name":"keyword.control.as.mc"},"3":{"name":"entity.name.type.alias.mc"}}},{"include":"#punctuation-comma"},{"name":"constant.language.import-export-all.mc","match":"\\*"},{"name":"keyword.control.default.mc","match":"\\b(default)\\b"},{"name":"variable.other.readwrite.alias.mc","match":"([_$[:alpha:]][_$[:alnum:]]*)"}]},"import-export-declaration":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#import-export-clause"}]},"literal":{"name":"literal.mc","patterns":[{"include":"#numeric-literal"},{"include":"#boolean-literal"},{"include":"#null-literal"},{"include":"#numericConstant-literal"},{"include":"#array-literal"}]},"method-declaration":{"name":"meta.method.declaration.mc","begin":"(?\u003c!\\.|\\$)(?:\\b(hidden)\\s+)?(?:\\b(function)\\s+)(?:(?:\\b(?:(initialize)|(initialize))\\b(?!\\$|:))|(?:(\\*)\\s*)?(?=((([_$[:alpha:]][_$[:alnum:]]*)|(\\'[^']*\\')|(\\\"[^\"]*\\\")|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])+\\]))\\s*(\\??))?\\s*[\\(\\\u003c]))","end":"(?=\\}|;|,|$)|(?\u003c=\\})","patterns":[{"include":"#method-declaration-name"},{"include":"#comment"},{"include":"#function-parameters"},{"include":"#decl-block"}],"beginCaptures":{"1":{"name":"storage.modifier.mc"},"2":{"name":"storage.type.function.mc"},"3":{"name":"keyword.operator.new.mc"},"4":{"name":"storage.type.mc"},"5":{"name":"keyword.generator.asterisk.mc"}}},"method-declaration-name":{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*)|(\\'[^']*\\')|(\\\"[^\"]*\\\")|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])+\\]))\\s*(\\??)\\s*[\\(\\\u003c])","end":"(?=\\(|\\\u003c)","patterns":[{"include":"#string"},{"include":"#array-literal"},{"name":"entity.name.function.mc","match":"[_$[:alpha:]][_$[:alnum:]]*"}]},"namespace-declaration":{"name":"meta.namespace.declaration.mc","begin":"(?\u003c!\\.|\\$)\\b(module)\\s+(?=[_$[:alpha:]\"'`])","end":"(?=$|\\{)","patterns":[{"include":"#comment"},{"include":"#string"},{"name":"entity.name.type.module.mc","match":"([_$[:alpha:]][_$[:alnum:]]*)"},{"include":"#punctuation-accessor"}],"beginCaptures":{"1":{"name":"storage.type.namespace.mc"}}},"new-expr":{"name":"new.expr.mc","begin":"(?\u003c!\\.|\\$)\\b(new)\\b(?!\\$)","end":"(?\u003c=\\))|(?=[;),}]|$|((?\u003c!\\.|\\$)\\bnew\\b(?!\\$)))","patterns":[{"include":"#paren-expression"},{"include":"#class-declaration"},{"include":"#type"}],"beginCaptures":{"1":{"name":"keyword.operator.new.mc"}}},"null-literal":{"patterns":[{"name":"constant.language.null.mc","match":"(?\u003c!\\.|\\$)\\bnull\\b(?!\\$)"}]},"numeric-literal":{"patterns":[{"name":"constant.numeric.hex.mc","match":"\\b(?\u003c!\\$)0(x|X)[0-9a-fA-F]+\\b(?!\\$)"},{"name":"constant.numeric.binary.mc","match":"\\b(?\u003c!\\$)0(b|B)[01]+\\b(?!\\$)"},{"name":"constant.numeric.octal.mc","match":"\\b(?\u003c!\\$)0(o|O)?[0-7]+\\b(?!\\$)"},{"match":"(?x)\n(?\u003c!\\$)(?:\n (?:\\b[0-9]+(\\.)[0-9]+[eE][+-]?[0-9]+[ld]?\\b)| # 1.1E+3\n (?:\\b[0-9]+(\\.)[eE][+-]?[0-9]+[ld]?\\b)| # 1.E+3\n (?:\\B(\\.)[0-9]+[eE][+-]?[0-9]+[ld]?\\b)| # .1E+3\n (?:\\b[0-9]+[eE][+-]?[0-9]+[ld]?\\b)| # 1E+3\n (?:\\b[0-9]+(\\.)[0-9]+[ld]?\\b)| # 1.1\n (?:\\b[0-9]+(\\.)[ld]?\\B)| # 1.\n (?:\\B(\\.)[0-9]+[ld]?\\b)| # .1\n (?:\\b[0-9]+[ld]?\\b(?!\\.)) # 1\n)(?!\\$)","captures":{"0":{"name":"constant.numeric.decimal.mc"},"1":{"name":"meta.delimiter.decimal.period.mc"},"2":{"name":"meta.delimiter.decimal.period.mc"},"3":{"name":"meta.delimiter.decimal.period.mc"},"4":{"name":"meta.delimiter.decimal.period.mc"},"5":{"name":"meta.delimiter.decimal.period.mc"},"6":{"name":"meta.delimiter.decimal.period.mc"}}}]},"numericConstant-literal":{"patterns":[{"name":"constant.language.nan.mc","match":"(?\u003c!\\.|\\$)\\bNaN\\b(?!\\$)"}]},"object-literal":{"name":"meta.objectliteral.mc","begin":"\\{","end":"\\}","patterns":[{"include":"#object-member"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.block.mc"}}},"object-member":{"patterns":[{"include":"#comment"},{"name":"meta.object.member.mc","begin":"(?:[:_$[:alpha:]][_$[:alnum:]]*)\\s*(=\u003e)","end":"(?=,|\\})","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"meta.object-literal.key.mc"},"1":{"name":"punctuation.separator.key-value.mc"}}},{"include":"#punctuation-comma"}]},"parameter-name":{"patterns":[{"match":"\\s*\\b(hidden)(?=\\s+(hidden)\\s+)","captures":{"1":{"name":"storage.modifier.mc"}}},{"match":"(?x)(?:\\s*\\b(hidden|static)\\s+)?(\\.\\.\\.)?\\s*(?\u003c!=|:)([_$[:alpha:]][_$[:alnum:]]*)\\s*(\\??)(?=\\s*\n (=\\s*(\n (function\\s*[(\u003c]) |\n (function\\s+) |\n ([_$[:alpha:]][_$[:alnum:]]*\\s*=\u003e) |\n ([(]\\s*(([)]\\s*:)|([_$[:alpha:]][_$[:alnum:]]*\\s*:)|(\\.\\.\\.) )) |\n ([\u003c]\\s*[_$[:alpha:]][_$[:alnum:]]*((\\s+extends\\s*[^=\u003e])|(\\s*[,]))) |\n ((\u003c([^\u003c\u003e]|\\\u003c[^\u003c\u003e]+\\\u003e)+\u003e\\s*)?\\(([^()]|\\([^()]*\\))*\\)(\\s*:\\s*(.)*)?\\s*=\u003e))\n ) |\n (:\\s*(\n (\u003c) |\n ([(]\\s*(\n ([)]) |\n (\\.\\.\\.) |\n ([_$[:alnum:]]+\\s*(\n ([:,?=])|\n ([)]\\s*=\u003e)\n ))\n )))\n )\n)","captures":{"1":{"name":"storage.modifier.mc"},"2":{"name":"keyword.operator.rest.mc"},"3":{"name":"entity.name.function.mc"},"4":{"name":"keyword.operator.optional.mc"}}},{"match":"(?:\\s*\\b(hidden|static)\\s+)?\\s*(?\u003c!=|:)([_$[:alpha:]][_$[:alnum:]]*)\\s*","captures":{"1":{"name":"storage.modifier.mc"},"2":{"name":"keyword.operator.rest.mc"},"3":{"name":"variable.parameter.mc"}}}]},"paren-expression":{"begin":"\\(","end":"\\)","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}],"beginCaptures":{"0":{"name":"meta.brace.round.mc"}},"endCaptures":{"0":{"name":"meta.brace.round.mc"}}},"punctuation-accessor":{"name":"punctuation.accessor.mc","match":"\\."},"punctuation-comma":{"name":"punctuation.separator.comma.mc","match":","},"punctuation-semicolon":{"name":"punctuation.terminator.statement.mc","match":";"},"qstring-double":{"name":"string.quoted.double.mc","begin":"\"","end":"(\")|((?:[^\\\\\\n])$)","patterns":[{"include":"#string-character-escape"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.mc"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.mc"},"2":{"name":"invalid.illegal.newline.mc"}}},"qstring-single":{"name":"string.quoted.single.mc","begin":"'","end":"(\\')|((?:[^\\\\\\n])$)","patterns":[{"include":"#string-character-escape"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.mc"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.mc"},"2":{"name":"invalid.illegal.newline.mc"}}},"statements":{"patterns":[{"include":"#string"},{"include":"#comment"},{"include":"#literal"},{"include":"#declaration"},{"include":"#switch-statement"},{"include":"#for-loop"},{"include":"#after-operator-block"},{"include":"#decl-block"},{"include":"#control-statement"},{"include":"#expression"},{"include":"#punctuation-semicolon"}]},"string":{"patterns":[{"include":"#qstring-single"},{"include":"#qstring-double"}]},"string-character-escape":{"name":"constant.character.escape.mc","match":"\\\\(x[[:xdigit:]]{2}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)"},"support-objects":{"patterns":[{"match":"(?x)(?\u003c!\\.|\\$)\\b(Math)(?:\\s*(\\.)\\s*(?:\n (abs|acos|acosh|asin|asinh|atan|atan2|atanh|cbrt|ceil|clz32|cos|cosh|exp|\n expm1|floor|fround|hypot|imul|log|log10|log1p|log2|max|min|pow|random|\n round|sign|sin|sinh|sqrt|tan|tanh|trunc)\n |\n (E|LN10|LN2|LOG10E|LOG2E|PI|SQRT1_2|SQRT2)))?\\b(?!\\$)","captures":{"1":{"name":"support.constant.math.mc"},"2":{"name":"punctuation.accessor.mc"},"3":{"name":"support.function.math.mc"},"4":{"name":"support.constant.property.math.mc"}}},{"match":"(?x)(?\u003c!\\.|\\$)\\b(System)(?:\\s*(\\.)\\s*(\n print|println|getTimer|getClockTime|getSystemStats|trap|exit|error))?\\b(?!\\$)","captures":{"1":{"name":"support.class.system.mc"},"2":{"name":"punctuation.accessor.mc"},"3":{"name":"support.function.system.mc"}}},{"match":"(?x) (\\.) \\s* \n(?:\n (method)\n)(?=\\s*\\()","captures":{"1":{"name":"punctuation.accessor.js"},"2":{"name":"support.function.js"}}}]},"switch-block":{"name":"switch-block.expr.mc","begin":"\\{","end":"(?=\\})","patterns":[{"include":"#case-clause"},{"include":"#statements"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.mc"}}},"switch-expression":{"name":"switch-expression.expr.mc","begin":"(?\u003c!\\.|\\$)\\b(switch)\\s*(\\()","end":"\\)","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.control.switch.mc"},"2":{"name":"meta.brace.round.mc"}},"endCaptures":{"0":{"name":"meta.brace.round.mc"}}},"switch-statement":{"name":"switch-statement.expr.mc","begin":"(?\u003c!\\.|\\$)(?=\\bswitch\\s*\\()","end":"\\}","patterns":[{"include":"#switch-expression"},{"include":"#switch-block"}],"endCaptures":{"0":{"name":"punctuation.definition.block.mc"}}},"ternary-expression":{"begin":"(\\?)","end":"(:)","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.operator.ternary.mc"}},"endCaptures":{"0":{"name":"keyword.operator.ternary.mc"}}},"type":{"name":"meta.type.mc","patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#type-builtin-literals"},{"include":"#type-fn-type-parameters"},{"include":"#type-paren-or-function-parameters"},{"include":"#type-name"}]},"type-builtin-literals":{"name":"support.type.builtin.mc","match":"(?\u003c!\\.|\\$)\\b(this|true|false|null)\\b(?!\\$)"},"type-fn-type-parameters":{"patterns":[{"name":"meta.type.constructor.mc","match":"(?\u003c!\\.|\\$)\\b(new)\\b(?=\\s*\\\u003c)","captures":{"1":{"name":"keyword.control.new.mc"}}},{"name":"meta.type.constructor.mc","begin":"(?\u003c!\\.|\\$)\\b(new)\\b\\s*(?=\\()","end":"(?\u003c=\\))","patterns":[{"include":"#function-parameters"}],"beginCaptures":{"1":{"name":"keyword.control.new.mc"}}},{"name":"meta.type.function.mc","begin":"(?\u003c=\\\u003e)\\s*(?=\\()","end":"(?\u003c=\\))","patterns":[{"include":"#function-parameters"}]},{"name":"meta.type.function.mc","begin":"(?x)(\n (?=\n [(]\\s*(\n ([)]) | \n (\\.\\.\\.) |\n ([_$[:alnum:]]+\\s*(\n ([:,?=])|\n ([)]\\s*=\u003e)\n ))\n )\n )\n)","end":"(?\u003c=\\))","patterns":[{"include":"#function-parameters"}]}]},"type-name":{"patterns":[{"match":"([_$[:alpha:]][_$[:alnum:]]*)\\s*(\\.)","captures":{"1":{"name":"entity.name.type.module.mc"},"2":{"name":"punctuation.accessor.mc"}}},{"name":"entity.name.type.mc","match":"[_$[:alpha:]][_$[:alnum:]]*"}]},"type-paren-or-function-parameters":{"name":"meta.type.paren.cover.mc","begin":"\\(","end":"\\)","patterns":[{"include":"#type"},{"include":"#function-parameters"}],"beginCaptures":{"0":{"name":"meta.brace.round.mc"}},"endCaptures":{"0":{"name":"meta.brace.round.mc"}}},"var-expr":{"name":"meta.var.expr.mc","begin":"(?\u003c!\\.|\\$)\\b(var|const(?!\\s+enum\\b))\\b(?!\\$)","end":"(?=$|;|})","patterns":[{"include":"#var-single-variable"},{"include":"#variable-initializer"},{"include":"#comment"},{"include":"#punctuation-comma"}],"beginCaptures":{"1":{"name":"storage.type.mc"}}},"var-single-variable":{"patterns":[{"name":"meta.var-single-variable.expr.mc","begin":"(?x)([_$[:alpha:]][_$[:alnum:]]*)(?=\\s*\n (=\\s*(\n (function\\s*[(\u003c]) |\n (function\\s+) |\n ([_$[:alpha:]][_$[:alnum:]]*\\s*=\u003e) |\n ([(]\\s*(([)]\\s*:)|([_$[:alpha:]][_$[:alnum:]]*\\s*:)|(\\.\\.\\.) )) |\n ([\u003c]\\s*[_$[:alpha:]][_$[:alnum:]]*((\\s+extends\\s*[^=\u003e])|(\\s*[,]))) |\n ((\u003c([^\u003c\u003e]|\\\u003c[^\u003c\u003e]+\\\u003e)+\u003e\\s*)?\\(([^()]|\\([^()]*\\))*\\)(\\s*:\\s*(.)*)?\\s*=\u003e))\n ) |\n (:\\s*(\n (\u003c) |\n ([(]\\s*(\n ([)]) |\n (\\.\\.\\.) |\n ([_$[:alnum:]]+\\s*(\n ([:,?=])|\n ([)]\\s*=\u003e)\n ))\n )))\n )\n)","end":"(?=$|[;,=}]|(\\s+(of|in)\\s+))","patterns":[{"include":"#string"},{"include":"#comment"}],"beginCaptures":{"1":{"name":"entity.name.function.mc"}}},{"name":"meta.var-single-variable.expr.mc","begin":"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])","end":"(?=$|[;,=}]|(\\s+(of|in)\\s+))","beginCaptures":{"1":{"name":"variable.other.constant.mc"}}},{"name":"meta.var-single-variable.expr.mc","begin":"([_$[:alpha:]][_$[:alnum:]]*)","end":"(?=$|[;,=}]|(\\s+(of|in)\\s+))","patterns":[{"include":"#string"},{"include":"#comment"}],"beginCaptures":{"1":{"name":"variable.other.readwrite.mc"}}}]},"variable-initializer":{"patterns":[{"begin":"(?\u003c!=|!)(=)(?!=)(?=\\s*\\S)","end":"(?=$|[,);}\\]])","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.operator.assignment.mc"}}},{"begin":"(?\u003c!=|!)(=)(?!=)","end":"(?=[,);}\\]])|(?=^\\s*$)","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.operator.assignment.mc"}}}]}}}
|
|
1
|
+
{"name":"Monkey C","scopeName":"source.mc","patterns":[{"include":"#statements"}],"repository":{"access-modifier":{"patterns":[{"name":"storage.modifier.mc","match":"(?\u003c!\\.|\\$)\\b(hidden|static|public|private|protected)\\b(?!\\$)"}]},"after-operator-block":{"name":"meta.objectliteral.mc","begin":"(?\u003c=[=(,\\[?+!]|return|throw|in|of|typeof|\u0026\u0026|\\|\\||\\*)\\s*(\\{)","end":"\\}","patterns":[{"include":"#object-member"}],"beginCaptures":{"1":{"name":"punctuation.definition.block.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.block.mc"}}},"array-literal":{"name":"meta.array.literal.mc","begin":"\\[","end":"\\]","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}],"beginCaptures":{"0":{"name":"meta.brace.square.mc"}},"endCaptures":{"0":{"name":"meta.brace.square.mc"}}},"boolean-literal":{"patterns":[{"name":"constant.language.boolean.true.mc","match":"(?\u003c!\\.|\\$)\\btrue\\b(?!\\$)"},{"name":"constant.language.boolean.false.mc","match":"(?\u003c!\\.|\\$)\\bfalse\\b(?!\\$)"}]},"case-clause":{"name":"case-clause.expr.mc","begin":"(?\u003c!\\.|\\$)\\b(case|default(?=:))\\b(?!\\$)","end":":","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.control.switch.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.section.case-statement.mc"}}},"class-body":{"begin":"\\{","end":"\\}","patterns":[{"include":"#string"},{"include":"#comment"},{"include":"#decorator"},{"include":"#method-declaration"},{"include":"#enum-declaration"},{"include":"#field-declaration"},{"include":"#access-modifier"},{"include":"#after-operator-block"},{"include":"#decl-block"},{"include":"#expression"},{"include":"#punctuation-semicolon"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.block.mc"}}},"class-declaration":{"name":"meta.class.mc","begin":"(?\u003c!\\.|\\$)\\b(?:(class))\\b","end":"(?\u003c=\\})","patterns":[{"include":"#comment"},{"include":"#class-heritage"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","captures":{"0":{"name":"entity.name.type.class.mc"}}},{"include":"#class-body"}],"beginCaptures":{"1":{"name":"storage.type.class.mc"}},"endCaptures":{"1":{"name":"punctuation.definition.block.mc"}}},"class-heritage":{"begin":"(?\u003c!\\.|\\$)(?:\\b(extends)\\b)(?!\\$)","end":"(?=\\{)","patterns":[{"include":"#comment"},{"include":"#class-heritage"},{"match":"([_$[:alpha:]][_$[:alnum:]]*)\\s*(\\.)(?=\\s*[_$[:alpha:]][_$[:alnum:]]*(\\s*\\.\\s*[_$[:alpha:]][_$[:alnum:]]*)*\\s*([,\u003c{]|extends|//|/\\*))","captures":{"1":{"name":"entity.name.type.module.mc"},"2":{"name":"punctuation.accessor.mc"}}},{"match":"([_$[:alpha:]][_$[:alnum:]]*)(?=\\s*([,\u003c{]|extends|//|/\\*))","captures":{"1":{"name":"entity.other.inherited-class.mc"}}},{"include":"#expression"}],"beginCaptures":{"1":{"name":"storage.modifier.mc"}},"endCaptures":{"1":{"name":"punctuation.definition.block.mc"}}},"comment":{"patterns":[{"name":"comment.block.documentation.mc","begin":"/\\*\\*(?!/)","end":"\\*/","beginCaptures":{"0":{"name":"punctuation.definition.comment.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.mc"}}},{"name":"comment.block.mc","begin":"/\\*","end":"\\*/","beginCaptures":{"0":{"name":"punctuation.definition.comment.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.mc"}}},{"begin":"(^[ \\t]+)?(?=//)","end":"(?=$)","patterns":[{"name":"comment.line.double-slash.mc","begin":"//","end":"(?=$)","beginCaptures":{"0":{"name":"punctuation.definition.comment.mc"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.mc"}}}]},"control-statement":{"patterns":[{"name":"keyword.control.typedef.mc","match":"(?\u003c!\\.|\\$)\\b(typedef)\\b(?!\\$)"},{"name":"keyword.control.trycatch.mc","match":"(?\u003c!\\.|\\$)\\b(catch|finally|throw|try)\\b(?!\\$)"},{"name":"keyword.control.loop.mc","match":"(?\u003c!\\.|\\$)\\b(break|continue|do|while)\\b(?!\\$)"},{"name":"keyword.control.flow.mc","match":"(?\u003c!\\.|\\$)\\b(return)\\b(?!\\$)"},{"name":"keyword.control.switch.mc","match":"(?\u003c!\\.|\\$)\\b(case|default|switch)\\b(?!\\$)"},{"name":"keyword.control.conditional.mc","match":"(?\u003c!\\.|\\$)\\b(else|if)\\b(?!\\$)"}]},"decl-block":{"name":"meta.block.mc","begin":"\\{","end":"\\}","patterns":[{"include":"#statements"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.block.mc"}}},"declaration":{"name":"meta.declaration.mc","patterns":[{"include":"#decorator"},{"include":"#access-modifier"},{"include":"#var-expr"},{"include":"#function-declaration"},{"include":"#class-declaration"},{"include":"#enum-declaration"},{"include":"#namespace-declaration"},{"include":"#import-declaration"}]},"decorator":{"name":"meta.decorator.mc","patterns":[{"match":"(?\u003c!\\.|\\$)(\\(:([_$[:alpha:]][_$[:alnum:]]*)\\))","captures":{"0":{"name":"storage.type.decorator.mc"}}}]},"enum-declaration":{"name":"meta.enum.declaration.mc","begin":"(?\u003c!\\.|\\$)\\b(enum)\\b","end":"(?\u003c=\\})","patterns":[{"include":"#comment"},{"begin":"\\{","end":"\\}","patterns":[{"include":"#comment"},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)","end":"(?=,|\\}|$)","patterns":[{"include":"#comment"},{"include":"#variable-initializer"}],"beginCaptures":{"0":{"name":"variable.other.enummember.mc"}}},{"begin":"(?=((\\'[^']*\\')|(\\\"[^\"]*\\\")|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])+\\])))","end":"(?=,|\\}|$)","patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#comment"},{"include":"#variable-initializer"}]},{"include":"#punctuation-comma"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.block.mc"}}}],"beginCaptures":{"1":{"name":"storage.type.enum.mc"}}},"expression":{"name":"meta.expression.mc","patterns":[{"include":"#string"},{"include":"#comment"},{"include":"#literal"},{"include":"#function-declaration"},{"include":"#class-declaration"},{"include":"#ternary-expression"},{"include":"#new-expr"},{"include":"#object-literal"},{"include":"#expression-operators"},{"include":"#function-call"},{"include":"#support-objects"},{"include":"#identifiers"},{"include":"#paren-expression"},{"include":"#punctuation-comma"},{"include":"#punctuation-accessor"}]},"expression-operators":{"patterns":[{"name":"keyword.operator.expression.instanceof.mc","match":"(?\u003c!\\.|\\$)\\binstanceof\\b(?!\\$)"},{"name":"keyword.control.has.mc","match":"(?\u003c!\\.|\\$)\\bhas\\b(?!\\$)"},{"name":"keyword.control.as.mc","match":"(?\u003c!\\.|\\$)\\bas\\b(?!\\$)"},{"name":"keyword.operator.new.mc","match":"(?\u003c!\\.|\\$)\\bnew\\b(?!\\$)"},{"name":"keyword.operator.expression.void.mc","match":"(?\u003c!\\.|\\$)\\bvoid\\b(?!\\$)"},{"name":"keyword.operator.assignment.compound.mc","match":"\\*=|(?\u003c!\\()/=|%=|\\+=|\\-="},{"name":"keyword.operator.assignment.compound.bitwise.mc","match":"\\\u0026=|\\^=|\u003c\u003c=|\u003e\u003e=|\\|="},{"name":"keyword.operator.bitwise.shift.mc","match":"\u003c\u003c|\u003e\u003e"},{"name":"keyword.operator.comparison.mc","match":"==|!="},{"name":"keyword.operator.relational.mc","match":"\u003c=|\u003e=|\u003c\u003e|\u003c|\u003e"},{"name":"keyword.operator.logical.mc","match":"\\!|\u0026\u0026|\\|\\|"},{"name":"keyword.operator.expression.logical.mc","match":"(?\u003c!\\.|\\$)\\band|or|not\\b(?!\\$)"},{"name":"keyword.operator.bitwise.mc","match":"\\\u0026|~|\\^|\\|"},{"name":"keyword.operator.assignment.mc","match":"\\="},{"name":"keyword.operator.decrement.mc","match":"--"},{"name":"keyword.operator.increment.mc","match":"\\+\\+"},{"name":"keyword.operator.arithmetic.mc","match":"%|\\*|/|-|\\+"},{"match":"(?\u003c=[_$[:alnum:])])\\s*(/)(?![/*])","captures":{"1":{"name":"keyword.operator.arithmetic.mc"}}}]},"field-declaration":{"name":"meta.field.declaration.mc","begin":"(?\u003c!\\()(?:(?\u003c!\\.|\\$)\\b(const|var)\\s+)(?=(([_$[:alpha:]][_$[:alnum:]]*)|(\\'[^']*\\')|(\\\"[^\"]*\\\")|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])+\\]))\\s*(\\?\\s*)?(=)?)","end":"(?=\\}|;|,|$)|(?\u003c=\\})","patterns":[{"include":"#type-clause"},{"include":"#variable-initializer"}],"beginCaptures":{"1":{"name":"storage.type.mc"}}},"for-loop":{"begin":"(?\u003c!\\.|\\$)\\b(for)\\s*(\\()","end":"\\)","patterns":[{"include":"#var-expr"},{"include":"#expression"},{"include":"#punctuation-semicolon"}],"beginCaptures":{"1":{"name":"keyword.control.loop.mc"},"2":{"name":"meta.brace.round.mc"}},"endCaptures":{"0":{"name":"meta.brace.round.mc"}}},"function-call":{"begin":"(?=(\\.\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\s*(\u003c([^\u003c\u003e]|\\\u003c[^\u003c\u003e]+\\\u003e)+\u003e\\s*)?\\()","end":"(?\u003c=\\))(?!(\\.\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\s*(\u003c([^\u003c\u003e]|\\\u003c[^\u003c\u003e]+\\\u003e)+\u003e\\s*)?\\()","patterns":[{"name":"storage.type.builtin.mc","match":"(?\u003c!\\.|\\$)\\b(Number|Float|Double|Long|Boolean|String|Char|Symbol|Array|Dictionary|Method|Null|Object|WeakReference|Void)\\b(?!\\$)"},{"include":"#support-objects"},{"include":"#punctuation-accessor"},{"name":"entity.name.function.mc","match":"([_$[:alpha:]][_$[:alnum:]]*)"},{"include":"#comment"},{"include":"#paren-expression"}]},"function-declaration":{"name":"meta.function.mc","begin":"(?\u003c!\\.|\\$)\\b(function\\b)(?:(?:\\s+|(?\u003c=\\*))([_$[:alpha:]][_$[:alnum:]]*))?\\s*","end":"(?=$|;|\\})|(?\u003c=\\})","patterns":[{"include":"#comment"},{"include":"#function-parameters"},{"include":"#type-clause"},{"include":"#decl-block"}],"beginCaptures":{"1":{"name":"storage.type.function.mc"},"2":{"name":"entity.name.function.mc"}}},"function-parameters":{"name":"meta.parameters.mc","begin":"\\(","end":"\\)","patterns":[{"include":"#comment"},{"include":"#decorator"},{"include":"#type-dictionary"},{"include":"#parameter-name"},{"include":"#type-clause"},{"include":"#variable-initializer"},{"name":"punctuation.separator.parameter.mc","match":","}],"beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.parameters.end.mc"}}},"identifiers":{"patterns":[{"name":"storage.type.builtin.mc","match":"(?\u003c!\\.|\\$)\\b(Number|Float|Double|Long|Boolean|String|Char|Symbol|Array|Dictionary|Method|Null|Object|WeakReference|Void)\\b(?!\\$)"},{"name":"support.class.mc","match":"([_$[:alpha:]][_$[:alnum:]]*)(?=\\s*\\.\\s*prototype\\b(?!\\$))"},{"match":"(?x)(\\.)\\s*(?:\n ([[:upper:]][_$[:digit:][:upper:]]*) |\n ([_$[:alpha:]][_$[:alnum:]]*)\n)(?=\\s*\\.\\s*[_$[:alpha:]][_$[:alnum:]]*)","captures":{"1":{"name":"punctuation.accessor.mc"},"2":{"name":"variable.other.constant.object.property.mc"},"3":{"name":"variable.other.object.property.mc"}}},{"match":"(?x)(?:(\\.)\\s*)?([_$[:alpha:]][_$[:alnum:]]*)(?=\\s*=\\s*(\n (function\\s*[(\u003c])|(function\\s+)|\n ([_$[:alpha:]][_$[:alnum:]]*\\s*=\u003e)|\n ([(]\\s*(([)]\\s*:)|([_$[:alpha:]][_$[:alnum:]]*\\s*:) )) |\n ([\u003c]\\s*[_$[:alpha:]][_$[:alnum:]]*((\\s+extends\\s*[^=\u003e])|(\\s*[,]))) |\n ((\u003c([^\u003c\u003e]|\\\u003c[^\u003c\u003e]+\\\u003e)+\u003e\\s*)?\\(([^()]|\\([^()]*\\))*\\)(\\s*:\\s*(.)*)?\\s*=\u003e)))","captures":{"1":{"name":"punctuation.accessor.mc"},"2":{"name":"entity.name.function.mc"}}},{"match":"(\\.)\\s*([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])","captures":{"1":{"name":"punctuation.accessor.mc"},"2":{"name":"variable.other.constant.property.mc"}}},{"match":"(\\.)\\s*([_$[:alpha:]][_$[:alnum:]]*)","captures":{"1":{"name":"punctuation.accessor.mc"},"2":{"name":"variable.other.property.mc"}}},{"match":"(?x)(?:\n ([[:upper:]][_$[:digit:][:upper:]]*) |\n ([_$[:alpha:]][_$[:alnum:]]*)\n)(?=\\s*\\.\\s*[_$[:alpha:]][_$[:alnum:]]*)","captures":{"1":{"name":"variable.other.constant.object.mc"},"2":{"name":"variable.other.object.mc"}}},{"name":"variable.other.constant.mc","match":"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])"},{"name":"variable.other.readwrite.mc","match":"[_$[:alpha:]][_$[:alnum:]]*"}]},"import-declaration":{"name":"meta.import.mc","begin":"(?\u003c!\\.|\\$)\\b(using|import)(?!(\\s*:)|(\\$))\\b","end":"(?=;|$)","patterns":[{"include":"#import-export-declaration"}],"beginCaptures":{"1":{"name":"keyword.control.import.mc"}}},"import-export-clause":{"patterns":[{"include":"#comment"},{"match":"(?x) ([_$[:alpha:]][_$[:alnum:]]*) \\s+ \n (as) \\s+ ([_$[:alpha:]][_$[:alnum:]]*)","captures":{"1":{"name":"variable.other.readwrite.mc"},"2":{"name":"keyword.control.as.mc"},"3":{"name":"entity.name.type.alias.mc"}}},{"include":"#punctuation-comma"},{"name":"constant.language.import-export-all.mc","match":"\\*"},{"name":"keyword.control.default.mc","match":"\\b(default)\\b"},{"name":"variable.other.readwrite.alias.mc","match":"([_$[:alpha:]][_$[:alnum:]]*)"}]},"import-export-declaration":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#import-export-clause"}]},"literal":{"name":"literal.mc","patterns":[{"include":"#numeric-literal"},{"include":"#boolean-literal"},{"include":"#null-literal"},{"include":"#numericConstant-literal"},{"include":"#array-literal"}]},"method-declaration":{"name":"meta.method.declaration.mc","begin":"(?\u003c!\\.|\\$)(?:\\b(hidden|public|private|protected)\\s+)?(?:\\b(function)\\s+)(?:(?:\\b(?:(initialize)|(initialize))\\b(?!\\$|:))|(?:(\\*)\\s*)?(?=((([_$[:alpha:]][_$[:alnum:]]*)|(\\'[^']*\\')|(\\\"[^\"]*\\\")|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])+\\]))\\s*(\\??))?\\s*[\\(\\\u003c]))","end":"(?=\\}|;|,|$)|(?\u003c=\\})","patterns":[{"include":"#method-declaration-name"},{"include":"#comment"},{"include":"#function-parameters"},{"include":"#type-clause"},{"include":"#decl-block"}],"beginCaptures":{"1":{"name":"storage.modifier.mc"},"2":{"name":"storage.type.function.mc"},"3":{"name":"keyword.operator.new.mc"},"4":{"name":"storage.type.mc"},"5":{"name":"keyword.generator.asterisk.mc"}}},"method-declaration-name":{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*)|(\\'[^']*\\')|(\\\"[^\"]*\\\")|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])+\\]))\\s*(\\??)\\s*[\\(\\\u003c])","end":"(?=\\(|\\\u003c)","patterns":[{"include":"#string"},{"include":"#array-literal"},{"name":"entity.name.function.mc","match":"[_$[:alpha:]][_$[:alnum:]]*"}]},"namespace-declaration":{"name":"meta.namespace.declaration.mc","begin":"(?\u003c!\\.|\\$)\\b(module)\\s+(?=[_$[:alpha:]\"'`])","end":"(?=$|\\{)","patterns":[{"include":"#comment"},{"include":"#string"},{"name":"entity.name.type.module.mc","match":"([_$[:alpha:]][_$[:alnum:]]*)"},{"include":"#punctuation-accessor"}],"beginCaptures":{"1":{"name":"storage.type.namespace.mc"}}},"new-expr":{"name":"new.expr.mc","begin":"(?\u003c!\\.|\\$)\\b(new)\\b(?!\\$)","end":"(?\u003c=\\))|(?=[;),}]|$|((?\u003c!\\.|\\$)\\bnew\\b(?!\\$)))","patterns":[{"include":"#paren-expression"},{"include":"#class-declaration"},{"include":"#type"}],"beginCaptures":{"1":{"name":"keyword.operator.new.mc"}}},"null-literal":{"patterns":[{"name":"constant.language.null.mc","match":"(?\u003c!\\.|\\$)\\bnull\\b(?!\\$)"}]},"numeric-literal":{"patterns":[{"name":"constant.numeric.hex.mc","match":"\\b(?\u003c!\\$)0(x|X)[0-9a-fA-F]+\\b(?!\\$)"},{"name":"constant.numeric.binary.mc","match":"\\b(?\u003c!\\$)0(b|B)[01]+\\b(?!\\$)"},{"name":"constant.numeric.octal.mc","match":"\\b(?\u003c!\\$)0(o|O)?[0-7]+\\b(?!\\$)"},{"match":"(?x)\n(?\u003c!\\$)(?:\n (?:\\b[0-9]+(\\.)[0-9]+[eE][+-]?[0-9]+[ld]?\\b)| # 1.1E+3\n (?:\\b[0-9]+(\\.)[eE][+-]?[0-9]+[ld]?\\b)| # 1.E+3\n (?:\\B(\\.)[0-9]+[eE][+-]?[0-9]+[ld]?\\b)| # .1E+3\n (?:\\b[0-9]+[eE][+-]?[0-9]+[ld]?\\b)| # 1E+3\n (?:\\b[0-9]+(\\.)[0-9]+[ld]?\\b)| # 1.1\n (?:\\b[0-9]+(\\.)[ld]?\\B)| # 1.\n (?:\\B(\\.)[0-9]+[ld]?\\b)| # .1\n (?:\\b[0-9]+[ld]?\\b(?!\\.)) # 1\n)(?!\\$)","captures":{"0":{"name":"constant.numeric.decimal.mc"},"1":{"name":"meta.delimiter.decimal.period.mc"},"2":{"name":"meta.delimiter.decimal.period.mc"},"3":{"name":"meta.delimiter.decimal.period.mc"},"4":{"name":"meta.delimiter.decimal.period.mc"},"5":{"name":"meta.delimiter.decimal.period.mc"},"6":{"name":"meta.delimiter.decimal.period.mc"}}}]},"numericConstant-literal":{"patterns":[{"name":"constant.language.nan.mc","match":"(?\u003c!\\.|\\$)\\bNaN\\b(?!\\$)"}]},"object-literal":{"name":"meta.objectliteral.mc","begin":"\\{","end":"\\}","patterns":[{"include":"#object-member"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.block.mc"}}},"object-member":{"patterns":[{"include":"#comment"},{"name":"meta.object.member.mc","begin":"(:[_$[:alpha:]][_$[:alnum:]]*)\\s*(=\u003e)","end":"(?=,|\\})","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"constant.other.symbol.mc"},"2":{"name":"punctuation.separator.key-value.mc"}}},{"name":"meta.object.member.mc","begin":"([_$[:alpha:]][_$[:alnum:]]*)\\s*(=\u003e)","end":"(?=,|\\})","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"meta.object-literal.key.mc"},"2":{"name":"punctuation.separator.key-value.mc"}}},{"include":"#punctuation-comma"}]},"parameter-name":{"patterns":[{"match":"\\s*\\b(hidden)(?=\\s+(hidden)\\s+)","captures":{"1":{"name":"storage.modifier.mc"}}},{"match":"(?:\\s*\\b(hidden|static|public|private|protected)\\s+)?\\s*(?\u003c!=|:)([_$[:alpha:]][_$[:alnum:]]*)(?=\\s*(as|,|\\)|=))","captures":{"1":{"name":"storage.modifier.mc"},"2":{"name":"variable.parameter.mc"}}}]},"paren-expression":{"begin":"\\(","end":"\\)","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}],"beginCaptures":{"0":{"name":"meta.brace.round.mc"}},"endCaptures":{"0":{"name":"meta.brace.round.mc"}}},"punctuation-accessor":{"name":"punctuation.accessor.mc","match":"\\."},"punctuation-comma":{"name":"punctuation.separator.comma.mc","match":","},"punctuation-semicolon":{"name":"punctuation.terminator.statement.mc","match":";"},"qstring-double":{"name":"string.quoted.double.mc","begin":"\"","end":"(\")|((?:[^\\\\\\n])$)","patterns":[{"include":"#string-character-escape"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.mc"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.mc"},"2":{"name":"invalid.illegal.newline.mc"}}},"qstring-single":{"name":"string.quoted.single.mc","begin":"'","end":"(\\')|((?:[^\\\\\\n])$)","patterns":[{"include":"#string-character-escape"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.mc"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.mc"},"2":{"name":"invalid.illegal.newline.mc"}}},"statements":{"patterns":[{"include":"#string"},{"include":"#comment"},{"include":"#literal"},{"include":"#declaration"},{"include":"#switch-statement"},{"include":"#for-loop"},{"include":"#after-operator-block"},{"include":"#decl-block"},{"include":"#control-statement"},{"include":"#expression"},{"include":"#punctuation-semicolon"}]},"string":{"patterns":[{"include":"#qstring-single"},{"include":"#qstring-double"}]},"string-character-escape":{"name":"constant.character.escape.mc","match":"\\\\(x[[:xdigit:]]{2}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)"},"support-objects":{"patterns":[{"match":"(?x)(?\u003c!\\.|\\$)\\b(Math)(?:\\s*(\\.)\\s*(?:\n (abs|acos|acosh|asin|asinh|atan|atan2|atanh|cbrt|ceil|clz32|cos|cosh|exp|\n expm1|floor|fround|hypot|imul|log|log10|log1p|log2|max|min|pow|random|\n round|sign|sin|sinh|sqrt|tan|tanh|trunc)\n |\n (E|LN10|LN2|LOG10E|LOG2E|PI|SQRT1_2|SQRT2)))?\\b(?!\\$)","captures":{"1":{"name":"support.constant.math.mc"},"2":{"name":"punctuation.accessor.mc"},"3":{"name":"support.function.math.mc"},"4":{"name":"support.constant.property.math.mc"}}},{"match":"(?x)(?\u003c!\\.|\\$)\\b(System)(?:\\s*(\\.)\\s*(\n print|println|getTimer|getClockTime|getSystemStats|trap|exit|error))?\\b(?!\\$)","captures":{"1":{"name":"support.class.system.mc"},"2":{"name":"punctuation.accessor.mc"},"3":{"name":"support.function.system.mc"}}},{"match":"(?x) (\\.) \\s* \n(?:\n (method)\n)(?=\\s*\\()","captures":{"1":{"name":"punctuation.accessor.js"},"2":{"name":"support.function.js"}}}]},"switch-block":{"name":"switch-block.expr.mc","begin":"\\{","end":"(?=\\})","patterns":[{"include":"#case-clause"},{"include":"#statements"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.mc"}}},"switch-expression":{"name":"switch-expression.expr.mc","begin":"(?\u003c!\\.|\\$)\\b(switch)\\s*(\\()","end":"\\)","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.control.switch.mc"},"2":{"name":"meta.brace.round.mc"}},"endCaptures":{"0":{"name":"meta.brace.round.mc"}}},"switch-statement":{"name":"switch-statement.expr.mc","begin":"(?\u003c!\\.|\\$)(?=\\bswitch\\s*\\()","end":"\\}","patterns":[{"include":"#switch-expression"},{"include":"#switch-block"}],"endCaptures":{"0":{"name":"punctuation.definition.block.mc"}}},"ternary-expression":{"begin":"(\\?)","end":"(:)","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.operator.ternary.mc"}},"endCaptures":{"0":{"name":"keyword.operator.ternary.mc"}}},"type":{"name":"meta.type.mc","patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#type-builtin-literals"},{"include":"#type-fn-type-parameters"},{"include":"#type-paren-or-function-parameters"},{"include":"#type-name"}]},"type-builtin-literals":{"name":"storage.type.builtin.mc","match":"(?\u003c!\\.|\\$)\\b(this|true|false|null|Number|Float|Double|Long|Boolean|String|Char|Symbol|Array|Dictionary|Method|Object|WeakReference|Void)\\b(?!\\$)"},"type-clause":{"begin":"(?\u003c!\\.|\\$)\\b(as)\\b(?!\\$)","end":"(?=[;,={)])|(?=^\\s*$)","patterns":[{"include":"#type"}],"beginCaptures":{"1":{"name":"keyword.control.as.mc"}}},"type-dictionary":{"name":"meta.type.dictionary.mc","begin":"\\{","end":"\\}","patterns":[{"include":"#comment"},{"name":"constant.other.symbol.mc","match":"(:[_$[:alpha:]][_$[:alnum:]]*)"},{"include":"#type-clause"},{"name":"punctuation.separator.parameter.mc","match":","}],"beginCaptures":{"0":{"name":"meta.brace.curly.mc"}},"endCaptures":{"0":{"name":"meta.brace.curly.mc"}}},"type-fn-type-parameters":{"patterns":[{"name":"meta.type.constructor.mc","match":"(?\u003c!\\.|\\$)\\b(new)\\b(?=\\s*\\\u003c)","captures":{"1":{"name":"keyword.control.new.mc"}}},{"name":"meta.type.constructor.mc","begin":"(?\u003c!\\.|\\$)\\b(new)\\b\\s*(?=\\()","end":"(?\u003c=\\))","patterns":[{"include":"#function-parameters"}],"beginCaptures":{"1":{"name":"keyword.control.new.mc"}}},{"name":"meta.type.function.mc","begin":"(?\u003c=\\\u003e)\\s*(?=\\()","end":"(?\u003c=\\))","patterns":[{"include":"#function-parameters"}]},{"name":"meta.type.function.mc","begin":"(?x)(\n (?=\n [(]\\s*(\n ([)]) | \n (\\.\\.\\.) |\n ([_$[:alnum:]]+\\s*(\n ([:,?=])|\n ([)]\\s*=\u003e)\n ))\n )\n )\n)","end":"(?\u003c=\\))","patterns":[{"include":"#function-parameters"}]}]},"type-name":{"patterns":[{"match":"([_$[:alpha:]][_$[:alnum:]]*)\\s*(\\.)","captures":{"1":{"name":"entity.name.type.module.mc"},"2":{"name":"punctuation.accessor.mc"}}},{"name":"entity.name.type.mc","match":"[_$[:alpha:]][_$[:alnum:]]*"}]},"type-paren-or-function-parameters":{"name":"meta.type.paren.cover.mc","begin":"\\(","end":"\\)","patterns":[{"include":"#type"},{"include":"#function-parameters"}],"beginCaptures":{"0":{"name":"meta.brace.round.mc"}},"endCaptures":{"0":{"name":"meta.brace.round.mc"}}},"var-expr":{"name":"meta.var.expr.mc","begin":"(?\u003c!\\.|\\$)\\b(var|const(?!\\s+enum\\b))\\b(?!\\$)","end":"(?=$|;|})","patterns":[{"include":"#var-single-variable"},{"include":"#type-clause"},{"include":"#variable-initializer"},{"include":"#comment"},{"include":"#punctuation-comma"}],"beginCaptures":{"1":{"name":"storage.type.mc"}}},"var-single-variable":{"patterns":[{"name":"meta.var-single-variable.expr.mc","begin":"(?x)([_$[:alpha:]][_$[:alnum:]]*)(?=\\s*\n (=\\s*(\n (function\\s*[(\u003c]) |\n (function\\s+) |\n ([_$[:alpha:]][_$[:alnum:]]*\\s*=\u003e) |\n ([(]\\s*(([)]\\s*:)|([_$[:alpha:]][_$[:alnum:]]*\\s*:)|(\\.\\.\\.) )) |\n ([\u003c]\\s*[_$[:alpha:]][_$[:alnum:]]*((\\s+extends\\s*[^=\u003e])|(\\s*[,]))) |\n ((\u003c([^\u003c\u003e]|\\\u003c[^\u003c\u003e]+\\\u003e)+\u003e\\s*)?\\(([^()]|\\([^()]*\\))*\\)(\\s*:\\s*(.)*)?\\s*=\u003e))\n ) |\n (:\\s*(\n (\u003c) |\n ([(]\\s*(\n ([)]) |\n (\\.\\.\\.) |\n ([_$[:alnum:]]+\\s*(\n ([:,?=])|\n ([)]\\s*=\u003e)\n ))\n )))\n )\n)","end":"(?=\\s*(as|of|in|=|[;,}]))","beginCaptures":{"1":{"name":"entity.name.function.mc"}}},{"name":"meta.var-single-variable.expr.mc","begin":"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])","end":"(?=\\s*(as|of|in|=|[;,}]))","beginCaptures":{"1":{"name":"variable.other.constant.mc"}}},{"name":"meta.var-single-variable.expr.mc","begin":"([_$[:alpha:]][_$[:alnum:]]*)","end":"(?=\\s*(as|of|in|=|[;,}]))","beginCaptures":{"1":{"name":"variable.other.readwrite.mc"}}}]},"variable-initializer":{"patterns":[{"begin":"(?\u003c!=|!)(=)(?!=)(?=\\s*\\S)","end":"(?=$|[,);}\\]])","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.operator.assignment.mc"}}},{"begin":"(?\u003c!=|!)(=)(?!=)","end":"(?=[,);}\\]])|(?=^\\s*$)","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.operator.assignment.mc"}}}]}}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"scopeName":"source.mdx.astro","patterns":[{"include":"#mdx_fenced_code_block_astro"}],"repository":{"mdx_fenced_code_block_astro":{"name":"markup.code.astro.mdx","begin":"(?:^|\\G)[\\t ]*([`~]{3,})(?:[\\t ]*((?:astro|(?:.*\\.)?(?:astro)))(?:[\\t ]+((?:[^\\n\\r`])+))?)(?:[\\t ]*$)","end":"(
|
|
1
|
+
{"scopeName":"source.mdx.astro","patterns":[{"include":"#mdx_fenced_code_block_astro"}],"repository":{"mdx_fenced_code_block_astro":{"name":"markup.code.astro.mdx","begin":"(?:^|\\G)[\\t ]*([`~]{3,})(?:[\\t ]*((?:astro|(?:.*\\.)?(?:astro)))(?:[\\t ]+((?:[^\\n\\r`])+))?)(?:[\\t ]*$)","end":"(?:^|\\G)[\\t ]*(\\1)(?:[\\t ]*$)","patterns":[{"begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?![\\t ]*([`~]{3,})[\\t ]*$)","patterns":[{"contentName":"mdx.embedded.astro.frontmatter","begin":"^\\s*---\\s*$","end":"^\\s*---\\s*$","patterns":[{"include":"source.tsx"}],"beginCaptures":{"0":{"name":"punctuation.definition.tag.xi.begin.t"}},"endCaptures":{"0":{"name":"punctuation.definition.tag.xi.end.t"}}},{"contentName":"mdx.embedded.astro","include":"source.astro"}]}],"beginCaptures":{"1":{"name":"punctuation.definition.markdown"},"2":{"name":"entity.name.function.markdown"}},"endCaptures":{"1":{"name":"punctuation.definition.markdown"}}}}}
|