"" Auto-generated for Macaulay2-1.19. Do not modify this file manually.

" Vim syntax file
" Language: Macaulay2

if exists("b:current_syntax")
  finish
endif

syn region m2String  start=/\/\/\// skip=/\(\/\/\)*\/\/[^\/]/ end=/\/\/\//
syn region m2String  start=/"/ skip=/[^\\]\(\\\\\)*\\"/ end=/"/

syn match  m2Comment /--.*$/
syn region m2Comment start=/-\*/ end=/\*-/

syn case match

syn keyword m2Boolean true false

syn keyword m2Keyword contained
            \ and break catch continue do elapsedTime elapsedTiming else for from global if in list local new not of or return shield SPACE step symbol then threadVariable throw time timing to try when while xor

syn keyword m2Datatype contained
            \ Adjacent AffineVariety Analyzer ANCHOR AngleBarList Array AssociativeExpression Bag BasicList BettiTally BinaryOperation BLOCKQUOTE BODY BOLD Boolean BR CacheFunction CacheTable CC CDATA ChainComplex ChainComplexMap CODE CoherentSheaf Command COMMENT CompiledFunction CompiledFunctionBody CompiledFunctionClosure ComplexField Constant Database DD Descent Describe Dictionary DIV Divide DL DocumentTag DT Eliminate EM EngineRing Equation ExampleItem Expression File FilePosition FractionField Function FunctionApplication FunctionBody FunctionClosure GaloisField GeneralOrderedMonoid GlobalDictionary GradedModule GradedModuleMap GroebnerBasis GroebnerBasisOptions HashTable HEAD HEADER1 HEADER2 HEADER3 HEADER4 HEADER5 HEADER6 HeaderType Holder HR HREF HTML Hybrid Hypertext HypertextContainer HypertextParagraph Ideal IMG ImmutableType IndeterminateNumber IndexedVariable IndexedVariableTable InexactField InexactFieldFamily InexactNumber InfiniteNumber IntermediateMarkUpType ITALIC Keyword LABEL LATER LI LINK List LITERAL LocalDictionary LowerBound Manipulator MapExpression MarkUpType Matrix MatrixExpression MENU META MethodFunction MethodFunctionBinary MethodFunctionSingle MethodFunctionWithOptions Minus Module Monoid MonoidElement MonomialIdeal MultigradedBettiTally MutableHashTable MutableList MutableMatrix Net NetFile NonAssociativeProduct Nothing Number NumberedVerticalList OL OneExpression Option OptionTable OrderedMonoid Package PARA Parenthesize Parser Partition PolynomialRing Power PRE Product ProductOrder Program ProgramRun ProjectiveHilbertPolynomial ProjectiveVariety Pseudocode QQ QuotientRing RealField Resolution Ring RingElement RingFamily RingMap RowExpression RR RRi ScriptedFunctor SelfInitializingType Sequence Set SheafExpression SheafOfRings SMALL SPAN SparseMonomialVectorExpression SparseVectorExpression String STRONG STYLE SUB Subscript SUBSECTION Sum SumOfTwists SUP Superscript Symbol SymbolBody TABLE Table Tally Task TD TestInput TEX TH Thing Time TITLE TO TO2 TOH TR TT Type UL URL Variety Vector VectorExpression VerticalList VirtualTally VisibleList WrapperType ZeroExpression ZZ

syn keyword m2Function container
            \ about abs accumulate acos acosh acot addCancelTask addDependencyTask addEndFunction addHook addStartFunction 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 atan atan2 atEndOfFile autoload baseFilename baseName baseRing basis beginDocumentation benchmark BesselJ BesselY betti between binomial borel cacheValue cancelTask capture ceiling centerString chainComplex char characters charAnalyzer check chi class clean clearEcho code codim coefficient coefficientRing coefficients cohomology coimage coker cokernel collectGarbage columnAdd columnate columnMult columnPermute columnRankProfile columnSwap combine commandInterpreter commonest commonRing comodule 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 currentDirectory currentLineNumber currentTime deadParser debug debugError decompose deepSplice default degree degreeLength degrees degreesMonoid degreesRing delete demark denominator depth describe det determinant diagonalMatrix diameter dictionary diff difference dim directSum disassemble discriminant dismiss distinguished divideByVariable doc document drop dual eagonNorthcott echoOff echoOn eigenvalues eigenvectors eint elements eliminate End endPackage entries erase erf erfc error euler eulers even EXAMPLE examples exec exp expectedReesIdeal expm1 exponents export exportFrom exportMutable expression extend exteriorPower factor Fano 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 Gamma gb gbRemove gbSnapshot gcd gcdCoefficients gcdLLL GCstats genera generateAssertions generator generators genericMatrix genericSkewMatrix genericSymmetricMatrix gens genus get getc getChangeMatrix getenv getGlobalSymbol getNetFile getNonUnit getPrimeWithRootOfUnity getSymbol getWWW GF globalAssign globalAssignFunction globalAssignment globalReleaseFunction gradedModule gradedModuleMap gramm graphIdeal graphRing Grassmannian groebnerBasis groupID hash hashTable heft height hermite hilbertFunction hilbertPolynomial hilbertSeries hold Hom homogenize homology homomorphism hooks horizontalJoin html httpHeaders hypertext icFracP icFractions icMap icPIdeal ideal idealizer identity image imaginaryPart importFrom independentSets index indices inducedMap inducesWellDefinedMap info input insert installAssignmentMethod installedPackages installHilbertFunction installMethod installMinprimes installPackage instance instances integralClosure integrate intersect intersectInP intersection interval inverse inversePermutation inverseSystem irreducibleCharacteristicSeries irreducibleDecomposition isAffineRing isANumber isBorel isCanceled isCommutative isConstant isDirectory isDirectSum isEmpty isField isFinite isFinitePrimeField isFreeModule isGlobalSymbol isHomogeneous isIdeal isInfinite isInjective isInputFile isIsomorphism isLinearType isListener isLLL isMember isModule isMonomialIdeal isNormal isOpen isOutputFile isPolynomialRing isPrimary isPrime isPrimitive isPseudoprime isQuotientModule isQuotientOf isQuotientRing isReady isReal isReduction isRegularFile isRing isSkewCommutative isSorted isSquareFree isStandardGradedPolynomialRing isSubmodule isSubquotient isSubset isSupportedInZeroLocus isSurjective isTable isUnit isWellDefined isWeylAlgebra 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 LLL lngamma load loadPackage localDictionaries localize locate log log1p lookup lookupCount LUdecomposition makeDirectory makeDocumentTag makePackageIndex makeS2 map markedGB match mathML matrix max maxPosition member memoize merge mergePairs method methodOptions methods midpoint min mingens mingle minimalBetti minimalPresentation minimalPrimes minimalReduction minimizeFilename minors minPosition minPres minprimes minus mkdir mod module modulo monoid monomialCurveIdeal monomialIdeal monomials monomialSubideal moveFile multidegree multidoc multigraded multiplicity mutable mutableIdentity mutableMatrix nanosleep needs needsPackage net netList newClass newCoordinateSystem newNetFile newPackage newRing nextkey nextPrime NNParser nonspaceAnalyzer norm normalCone notImplemented nullhomotopy nullParser nullSpace number numcols numColumns numerator numeric numericInterval numgens numRows numrows odd ofClass on openDatabase openDatabaseOut openFiles openIn openInOut openListener openOut openOutAppend optionalSignParser options optP orP override pack package packageTemplate pad pager pairs parent part partition partitions parts pdim peek permanents permutations pfaffians pivots plus poincare poincareN polarize poly position positions power powermod precision preimage prepend presentation pretty primaryComponent primaryDecomposition print printerr printString processID product profile Proj projectiveHilbertPolynomial promote protect prune pseudocode pseudoRemainder pushForward QQParser QRDecomposition quotient quotientRemainder radical radicalContainment random randomKRationalPoint randomMutableMatrix rank read readDirectory readlink readPackage realPart realpath recursionDepth reducedRowEchelonForm reduceHilbert reductionNumber reesAlgebra reesAlgebraIdeal reesIdeal regex regexQuote registerFinalizer regSeqInIdeal regularity 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 Schubert searchPath sec sech seeParsing select selectInSubring selectVariables separate separateRegexp sequence serialNumber set setEcho setGroupID setIOExclusive setIOSynchronized setIOUnSynchronized setRandomSeed setup setupEmacs sheaf sheafHom show showHtml showTex simpleDocFrob sin singularLocus sinh size size2 sleep smithNormalForm solve someTerms sort sortColumns source span Spec specialFiber specialFiberIdeal splice splitWWW sqrt stack stacksProject standardForm standardPairs stashValue status style sub sublists submatrix submatrixByDegrees subquotient subsets substitute substring subtable sum super support SVD switch sylvesterMatrix symbolBody symlinkDirectory symlinkFile symmetricAlgebra symmetricAlgebraIdeal symmetricKernel symmetricPower synonym SYNOPSIS syz syzygyScheme table take tally tan tangentCone tangentSheaf tanh target taskResult temporaryFileName tensor tensorAssociativity terminalParser terms TEST testHunekeQuestion tests tex texMath times toAbsolutePath toCC toDividedPowers toDual toExternalString toField toList toLower top topCoefficients topComponents toRR toRRi toSequence toString toUpper trace transpose trim truncate truncateOutput tutorial ultimate unbag uncurry undocumented uniform uninstallAllPackages uninstallPackage unique unsequence unstack use userSymbols utf8 utf8check validate value values variety vars vector versalEmbedding wait wedgeProduct weightRange whichGm width wikipedia wrap youngest zero zeta ZZParser

syn keyword m2Constant container
            \ AbstractToricVarieties Acknowledgement AdditionalPaths AdjointIdeal AfterEval AfterNoPrint AfterPrint AInfinity AlgebraicSplines Algorithm Alignment AllCodimensions allowableThreads AnalyzeSheafOnP1 applicationDirectorySuffix argument Ascending AssociativeAlgebras Authors AuxiliaryFiles backtrace Bareiss BaseFunction baseRings BaseRow BasisElementLimit Bayer BeforePrint BeginningMacaulay2 Benchmark Bertini BettiCharacters BGG BIBasis Binary Binomial BinomialEdgeIdeals Binomials BKZ BlockMatrix Body BoijSoederberg Book3264Examples BooleanGB Boxes Browse Bruns cache CacheExampleOutput CallLimit CannedExample Caveat Center Certification ChainComplexExtras ChainComplexOperations ChangeMatrix CharacteristicClasses CheckDocumentation Chordal Classic clearAll clearOutput close closeIn closeOut ClosestFit Code CodimensionLimit CoefficientRing Cofactor CohenEngine CohenTopLevel CohomCalg CoincidentRootLoci commandLine CompactMatrix compactMatrixForm Complement CompleteIntersection CompleteIntersectionResolutions Complexes ConductorElement Configuration ConformalBlocks Consequences Constants Contributors ConvexInterface ConwayPolynomials copyright Core CorrespondenceScrolls Cremona currentFileDirectory currentFileName currentLayout currentPackage Cyclotomic Date dd DebuggingMode debuggingMode debugLevel DecomposableSparseSystems Decompose Default defaultPrecision Degree DegreeLift DegreeLimit DegreeMap DegreeOrder DegreeRank Degrees Dense Density Depth Descending Description DeterminantalRepresentations DGAlgebras dictionaryPath DiffAlg Dispatch DivideConquer DividedPowers Divisor Dmodules docExample docTemplate Down EagonResolution EdgeIdeals edit EigenSolver EisenbudHunekeVasconcelos Elimination EliminationMatrices EllipticCurves EllipticIntegrals Email end endl Engine engineDebugLevel EngineTests EnumerationCurves environment EquivariantGB errorDepth EulerConstant Example ExampleFiles ExampleSystems Exclude exit Ext ExteriorIdeals ExteriorModules false FastMinors FastNonminimal FGLM fileDictionaries fileExitHooks FileName FindOne FiniteFittingIdeals First FirstPackage FlatMonoid Flexible flush FollowLinks FormalGroupLaws Format FourierMotzkin FourTiTwo fpLLL FrobeniusThresholds FunctionFieldDesingularization GBDegrees gbTrace GenerateAssertions Generic GenericInitialIdeal gfanInterface Givens GKMVarieties GLex Global GlobalAssignHook globalAssignmentHooks GlobalHookStore GlobalReleaseHook 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 homeDirectory HomePage Homogeneous Homogeneous2 HomotopyLieAlgebra HorizontalSpace HyperplaneArrangements id IgnoreExampleErrors ii incomparable Increment indeterminate Index indexComponents infinity InfoDirSection infoHelp Inhomogeneous Inputs InstallPrefix IntegralClosure interpreterDepth Intersection InvariantRing InverseMethod Inverses InverseSystems Invertible InvolutiveBases Item Iterate Jacobian Jets Join Jupyter K3Carpets K3Surfaces Keep KeepFiles KeepZeroes Key Keywords Kronecker KustinMiller lastMatch LatticePolytopes Layout Left LengthLimit Lex LexIdeals Licenses LieTypes Limit Linear LinearAlgebra LinearTruncations lineNumber listLocalSymbols listUserSymbols LLLBases loadDepth LoadDocumentation loadedFiles loadedPackages Local LocalRings LongPolynomial M0nbar Macaulay2Doc MakeDocumentation MakeHTML MakeInfo MakeLinks MakePDF MapleInterface Markov Matroids maxAllowableThreads maxExponent MaximalRank MaxReductionCount MCMApproximations minExponent MinimalGenerators MinimalMatrix minimalPresentationMap minimalPresentationMapInv MinimalPrimes Minimize MinimumVersion Miura MixedMultiplicity ModuleDeformations MonodromySolver Monomial MonomialAlgebras MonomialIntegerPrograms MonomialOrbits MonomialOrder Monomials MonomialSize MultiGradedRationalMap MultiplicitySequence MultiplierIdeals MultiplierIdealsDim2 MultiprojectiveVarieties NAGtypes Name Nauty NautyGraphs NCAlgebra NCLex NewFromMethod newline NewMethod NewOfFromMethod NewOfMethod nil Node NoetherianOperators NoetherNormalization NonminimalComplexes NoPrint Normaliz NormalToricVarieties notify NTL null nullaryMethods NumericalAlgebraicGeometry NumericalCertification NumericalImplicitization NumericalLinearAlgebra NumericalSchubertCalculus NumericSolutions OldPolyhedra OldToricVectorBundles OO oo ooo oooo OpenMath operatorAttributes OptionalComponentsPresent Options Order order OutputDictionary Outputs PackageCitations PackageDictionary PackageExports PackageImports PackageTemplate PairLimit PairsRemaining Parametrization Parsing path PencilsOfQuadrics Permanents PHCpack PhylogeneticTrees pi PieriMaps PlaneCurveSingularities Points Polyhedra Polymake Posets Position PositivityToricBundles POSIX Postfix Pre Precision Prefix prefixDirectory prefixPath PrimaryDecomposition PrimaryTag PrimitiveElement Print printingAccuracy printingLeadLimit printingPrecision printingSeparator printingTimeLimit printingTrailLimit printWidth profileSummary programPaths Projective Prune PruneComplex pruningMap Pullback PushForward Python QthPower 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 rootPath rootURI RunDirectory RunExamples RunExternalM2 Saturation Schubert2 SchurComplexes SchurFunctors SchurRings 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 StopWithMinimalGenerators Strategy StronglyStableIdeals Style SubalgebraBases Subnodes SubringLimit subscript Sugarless SumsOfSquares SuperLinearAlgebra superscript SVDComplexes SwitchingFields SymbolicPowers SymmetricPolynomials Synopsis Syzygies SyzygyLimit SyzygyMatrix SyzygyRows TangentCone TateOnProducts TensorComplexes Test testExample TestIdeals TeXmacs Text ThinSincereQuivers ThreadedGB Threshold Topcom topLevelMode Tor TorAlgebra Toric ToricInvariants ToricTopology ToricVectorBundles TotalPairs Tree TriangularSets Tries Trim Triplets Tropical true Truncate Truncations TSpreadIdeals TypicalValue typicalValues Undo Unique Units Unmixed Up UpdateOnly UpperTriangular Usage UseCachedExampleOutput UseHilbertFunction UserMode UseSyzygies Variable VariableBaseName Variables Vasconcelos VectorFields VectorGraphics Verbose Verbosity Verify VersalDeformations Version version VerticalSpace viewHelp VirtualResolutions Visualize WebApp Weights WeylAlgebra WeylGroups Wrap XML

syn keyword m2Symbol contained
            \ about abs AbstractToricVarieties accumulate Acknowledgement acos acosh acot addCancelTask addDependencyTask addEndFunction addHook AdditionalPaths addStartFunction addStartTask Adjacent adjoint AdjointIdeal AffineVariety AfterEval AfterNoPrint AfterPrint agm AInfinity alarm AlgebraicSplines Algorithm Alignment all AllCodimensions allowableThreads ambient analyticSpread Analyzer AnalyzeSheafOnP1 ancestor ancestors ANCHOR and andP AngleBarList ann annihilator antipode any append applicationDirectory applicationDirectorySuffix apply applyKeys applyPairs applyTable applyValues apropos argument Array arXiv Ascending ascii asin asinh ass assert associatedGradedRing associatedPrimes AssociativeAlgebras AssociativeExpression atan atan2 atEndOfFile Authors autoload AuxiliaryFiles backtrace Bag Bareiss baseFilename BaseFunction baseName baseRing baseRings BaseRow BasicList basis BasisElementLimit Bayer BeforePrint beginDocumentation BeginningMacaulay2 Benchmark benchmark Bertini BesselJ BesselY betti BettiCharacters BettiTally between BGG BIBasis Binary BinaryOperation Binomial binomial BinomialEdgeIdeals Binomials BKZ BlockMatrix BLOCKQUOTE BODY Body BoijSoederberg BOLD Book3264Examples Boolean BooleanGB borel Boxes BR break Browse Bruns cache CacheExampleOutput CacheFunction CacheTable cacheValue CallLimit cancelTask capture catch Caveat CC CDATA ceiling Center centerString Certification ChainComplex chainComplex ChainComplexExtras ChainComplexMap ChainComplexOperations ChangeMatrix char CharacteristicClasses characters charAnalyzer check CheckDocumentation chi Chordal class Classic clean clearAll clearEcho clearOutput close closeIn closeOut ClosestFit CODE code codim CodimensionLimit coefficient CoefficientRing coefficientRing coefficients Cofactor CohenEngine CohenTopLevel CoherentSheaf CohomCalg cohomology coimage CoincidentRootLoci coker cokernel collectGarbage columnAdd columnate columnMult columnPermute columnRankProfile columnSwap combine Command commandInterpreter commandLine COMMENT commonest commonRing comodule CompactMatrix compactMatrixForm CompiledFunction CompiledFunctionBody CompiledFunctionClosure Complement complement complete CompleteIntersection CompleteIntersectionResolutions Complexes ComplexField components compose compositions compress concatenate conductor ConductorElement cone Configuration ConformalBlocks conjugate connectionCount Consequences Constant Constants constParser content continue contract Contributors ConvexInterface conwayPolynomial ConwayPolynomials copy copyDirectory copyFile copyright Core CorrespondenceScrolls cos cosh cot cotangentSheaf coth cover coverMap cpuTime createTask Cremona csc csch current currentDirectory currentFileDirectory currentFileName currentLayout currentLineNumber currentPackage currentString currentTime Cyclotomic Database Date DD dd deadParser debug debugError DebuggingMode debuggingMode debugLevel DecomposableSparseSystems Decompose decompose deepSplice Default default defaultPrecision Degree degree degreeLength DegreeLift DegreeLimit DegreeMap DegreeOrder DegreeRank Degrees degrees degreesMonoid degreesRing delete demark denominator Dense Density Depth depth Descending Descent Describe describe Description det determinant DeterminantalRepresentations DGAlgebras diagonalMatrix diameter Dictionary dictionary dictionaryPath diff DiffAlg difference dim directSum disassemble discriminant dismiss Dispatch distinguished DIV Divide divideByVariable DivideConquer DividedPowers Divisor DL Dmodules do doc docExample docTemplate document DocumentTag Down drop DT dual eagonNorthcott EagonResolution echoOff echoOn EdgeIdeals edit EigenSolver eigenvalues eigenvectors eint EisenbudHunekeVasconcelos elapsedTime elapsedTiming elements Eliminate eliminate Elimination EliminationMatrices EllipticCurves EllipticIntegrals else EM Email End end endl endPackage Engine engineDebugLevel EngineRing EngineTests entries EnumerationCurves environment Equation EquivariantGB erase erf erfc error errorDepth euler EulerConstant eulers even EXAMPLE ExampleFiles ExampleItem examples ExampleSystems Exclude exec exit exp expectedReesIdeal expm1 exponents export exportFrom exportMutable Expression expression Ext extend ExteriorIdeals ExteriorModules exteriorPower factor false Fano FastMinors FastNonminimal FGLM File fileDictionaries fileExecutable fileExists fileExitHooks fileLength fileMode FileName FilePosition fileReadable fileTime fileWritable fillMatrix findFiles findHeft FindOne findProgram findSynonyms FiniteFittingIdeals First first firstkey FirstPackage fittingIdeal flagLookup FlatMonoid flatten flattenRing Flexible flip floor flush fold FollowLinks for forceGB fork FormalGroupLaws Format format formation FourierMotzkin FourTiTwo fpLLL frac fraction FractionField frames FrobeniusThresholds from fromDividedPowers fromDual Function FunctionApplication FunctionBody functionBody FunctionClosure FunctionFieldDesingularization futureParser GaloisField Gamma gb GBDegrees gbRemove gbSnapshot gbTrace gcd gcdCoefficients gcdLLL GCstats genera GeneralOrderedMonoid GenerateAssertions generateAssertions generator generators Generic GenericInitialIdeal genericMatrix genericSkewMatrix genericSymmetricMatrix gens genus get getc getChangeMatrix getenv getGlobalSymbol getNetFile getNonUnit getPrimeWithRootOfUnity getSymbol getWWW GF gfanInterface Givens GKMVarieties GLex Global global globalAssign globalAssignFunction GlobalAssignHook globalAssignment globalAssignmentHooks GlobalDictionary GlobalHookStore globalReleaseFunction GlobalReleaseHook Gorenstein GradedLieAlgebras GradedModule gradedModule GradedModuleMap gradedModuleMap gramm GraphicalModels GraphicalModelsMLE Graphics graphIdeal graphRing Graphs Grassmannian GRevLex GroebnerBasis groebnerBasis GroebnerBasisOptions GroebnerStrata GroebnerWalk groupID GroupLex GroupRevLex GTZ Hadamard handleInterrupts HardDegreeLimit hash HashTable hashTable HEAD HEADER1 HEADER2 HEADER3 HEADER4 HEADER5 HEADER6 HeaderType Heading Headline Heft heft Height height help Hermite hermite Hermitian HH hh HigherCIOperators HighestWeights Hilbert hilbertFunction hilbertPolynomial hilbertSeries HodgeIntegrals hold Holder Hom homeDirectory HomePage Homogeneous Homogeneous2 homogenize homology homomorphism HomotopyLieAlgebra hooks horizontalJoin HorizontalSpace HR HREF HTML html httpHeaders Hybrid HyperplaneArrangements Hypertext hypertext HypertextContainer HypertextParagraph icFracP icFractions icMap icPIdeal id Ideal ideal idealizer identity if IgnoreExampleErrors ii image imaginaryPart IMG ImmutableType importFrom in incomparable Increment independentSets indeterminate IndeterminateNumber Index index indexComponents IndexedVariable IndexedVariableTable indices inducedMap inducesWellDefinedMap InexactField InexactFieldFamily InexactNumber InfiniteNumber infinity info InfoDirSection infoHelp Inhomogeneous input Inputs insert installAssignmentMethod installedPackages installHilbertFunction installMethod installMinprimes installPackage InstallPrefix instance instances IntegralClosure integralClosure integrate IntermediateMarkUpType interpreterDepth intersect intersectInP Intersection intersection interval InvariantRing inverse InverseMethod inversePermutation Inverses inverseSystem InverseSystems Invertible InvolutiveBases irreducibleCharacteristicSeries irreducibleDecomposition isAffineRing isANumber isBorel isCanceled isCommutative isConstant isDirectory isDirectSum isEmpty isField isFinite isFinitePrimeField isFreeModule isGlobalSymbol isHomogeneous isIdeal isInfinite isInjective isInputFile isIsomorphism isLinearType isListener isLLL isMember isModule isMonomialIdeal isNormal isOpen isOutputFile isPolynomialRing isPrimary isPrime isPrimitive isPseudoprime isQuotientModule isQuotientOf isQuotientRing isReady isReal isReduction isRegularFile isRing isSkewCommutative isSorted isSquareFree isStandardGradedPolynomialRing isSubmodule isSubquotient isSubset isSupportedInZeroLocus isSurjective isTable isUnit isWellDefined isWeylAlgebra ITALIC Iterate Jacobian jacobian jacobianDual Jets Join join Jupyter K3Carpets K3Surfaces Keep KeepFiles KeepZeroes ker kernel kernelLLL kernelOfLocalization Key keys Keyword Keywords kill koszul Kronecker KustinMiller LABEL last lastMatch LATER LatticePolytopes Layout lcm leadCoefficient leadComponent leadMonomial leadTerm Left left length LengthLimit letterParser Lex LexIdeals LI Licenses LieTypes lift liftable Limit limitFiles limitProcesses Linear LinearAlgebra LinearTruncations lineNumber lines LINK linkFile List list listForm listLocalSymbols listSymbols listUserSymbols LITERAL LLL LLLBases lngamma load loadDepth LoadDocumentation loadedFiles loadedPackages loadPackage Local local localDictionaries LocalDictionary localize LocalRings locate log log1p LongPolynomial lookup lookupCount LowerBound LUdecomposition M0nbar Macaulay2Doc makeDirectory MakeDocumentation makeDocumentTag MakeHTML MakeInfo MakeLinks makePackageIndex MakePDF makeS2 Manipulator map MapExpression MapleInterface markedGB Markov MarkUpType match mathML Matrix matrix MatrixExpression Matroids max maxAllowableThreads maxExponent MaximalRank maxPosition MaxReductionCount MCMApproximations member memoize MENU merge mergePairs META method MethodFunction MethodFunctionBinary MethodFunctionSingle MethodFunctionWithOptions methodOptions methods midpoint min minExponent mingens mingle minimalBetti MinimalGenerators MinimalMatrix minimalPresentation minimalPresentationMap minimalPresentationMapInv MinimalPrimes minimalPrimes minimalReduction Minimize minimizeFilename MinimumVersion minors minPosition minPres minprimes Minus minus Miura MixedMultiplicity mkdir mod Module module ModuleDeformations modulo MonodromySolver Monoid monoid MonoidElement Monomial MonomialAlgebras monomialCurveIdeal MonomialIdeal monomialIdeal MonomialIntegerPrograms MonomialOrbits MonomialOrder Monomials monomials MonomialSize monomialSubideal moveFile multidegree multidoc multigraded MultigradedBettiTally MultiGradedRationalMap multiplicity MultiplicitySequence MultiplierIdeals MultiplierIdealsDim2 MultiprojectiveVarieties mutable MutableHashTable mutableIdentity MutableList MutableMatrix mutableMatrix NAGtypes Name nanosleep Nauty NautyGraphs NCAlgebra NCLex needs needsPackage Net net NetFile netList new newClass newCoordinateSystem NewFromMethod newline NewMethod newNetFile NewOfFromMethod NewOfMethod newPackage newRing nextkey nextPrime nil NNParser NoetherianOperators NoetherNormalization NonAssociativeProduct NonminimalComplexes nonspaceAnalyzer NoPrint norm normalCone Normaliz NormalToricVarieties not Nothing notify notImplemented NTL null nullaryMethods nullhomotopy nullParser nullSpace Number number NumberedVerticalList numcols numColumns numerator numeric NumericalAlgebraicGeometry NumericalCertification NumericalImplicitization NumericalLinearAlgebra NumericalSchubertCalculus numericInterval NumericSolutions numgens numRows numrows odd of ofClass OL OldPolyhedra OldToricVectorBundles on OneExpression OO oo ooo oooo openDatabase openDatabaseOut openFiles openIn openInOut openListener OpenMath openOut openOutAppend operatorAttributes Option OptionalComponentsPresent optionalSignParser Options options OptionTable optP or Order order OrderedMonoid orP OutputDictionary Outputs override pack Package package PackageCitations PackageDictionary PackageExports PackageImports PackageTemplate packageTemplate pad pager PairLimit pairs PairsRemaining PARA Parametrization parent Parenthesize Parser Parsing part Partition partition partitions parts path pdim peek PencilsOfQuadrics Permanents permanents permutations pfaffians PHCpack PhylogeneticTrees pi PieriMaps pivots PlaneCurveSingularities plus poincare poincareN Points polarize poly Polyhedra Polymake PolynomialRing Posets Position position positions PositivityToricBundles POSIX Postfix Power power powermod PRE Precision precision Prefix prefixDirectory prefixPath preimage prepend presentation pretty primaryComponent PrimaryDecomposition primaryDecomposition PrimaryTag PrimitiveElement Print print printerr printingAccuracy printingLeadLimit printingPrecision printingSeparator printingTimeLimit printingTrailLimit printString printWidth processID Product product ProductOrder profile profileSummary Program programPaths ProgramRun Proj Projective ProjectiveHilbertPolynomial projectiveHilbertPolynomial ProjectiveVariety promote protect Prune prune PruneComplex pruningMap Pseudocode pseudocode pseudoRemainder Pullback PushForward pushForward Python QQ QQParser QRDecomposition QthPower Quasidegrees QuaternaryQuartics QuillenSuslin quit Quotient quotient quotientRemainder QuotientRing Radical radical RadicalCodim1 radicalContainment RaiseError random RandomCanonicalCurves RandomComplexes RandomCurves RandomCurvesOverVerySmallFiniteFields RandomGenus14Curves RandomIdeals randomKRationalPoint RandomMonomialIdeals randomMutableMatrix RandomObjects RandomPlaneCurves RandomPoints RandomSpaceCurves Range rank RationalMaps RationalPoints RationalPoints2 ReactionNetworks read readDirectory readlink readPackage RealField RealFP realPart realpath RealQP RealQP1 RealRoots RealRR RealXD recursionDepth recursionLimit Reduce reducedRowEchelonForm reduceHilbert reductionNumber ReesAlgebra reesAlgebra reesAlgebraIdeal reesIdeal References ReflexivePolytopesDB regex regexQuote registerFinalizer regSeqInIdeal Regularity regularity relations RelativeCanonicalResolution relativizeFilename Reload remainder RemakeAllDocumentation remove removeDirectory removeFile removeLowestDimension reorganize replace RerunExamples res reshape ResidualIntersections ResLengthThree Resolution resolution ResolutionsOfStanleyReisnerRings restart Result resultant Resultants return returnCode Reverse reverse RevLex Right right Ring ring RingElement RingFamily ringFromFractions RingMap rootPath roots rootURI rotate round rowAdd RowExpression rowMult rowPermute rowRankProfile rowSwap RR RRi rsort run RunDirectory RunExamples RunExternalM2 runHooks runLengthEncode runProgram same saturate Saturation scan scanKeys scanLines scanPairs scanValues schedule schreyerOrder Schubert Schubert2 SchurComplexes SchurFunctors SchurRings scriptCommandLine ScriptedFunctor SCSCP searchPath sec sech SectionRing SeeAlso seeParsing SegreClasses select selectInSubring selectVariables SelfInitializingType SemidefiniteProgramming Seminormalization separate SeparateExec separateRegexp Sequence sequence Serialization serialNumber Set set setEcho setGroupID setIOExclusive setIOSynchronized setIOUnSynchronized setRandomSeed setup setupEmacs sheaf SheafExpression sheafExt sheafHom SheafOfRings shield ShimoyamaYokoyama show showClassStructure showHtml showStructure showTex showUserStructure SimpleDoc simpleDocFrob SimplicialComplexes SimplicialDecomposability SimplicialPosets SimplifyFractions sin singularLocus sinh size size2 SizeLimit SkewCommutative SlackIdeals sleep SLnEquivariantMatrices SLPexpressions SMALL smithNormalForm solve someTerms Sort sort sortColumns SortStrategy source SourceCode SourceRing SPACE SpaceCurves SPAN span SparseMonomialVectorExpression SparseResultants SparseVectorExpression Spec SpechtModule SpecialFanoFourfolds specialFiber specialFiberIdeal SpectralSequences splice splitWWW sqrt SRdeformations stack stacksProject Standard standardForm standardPairs StartWithOneMinor stashValue StatePolytope StatGraphs status stderr stdio step StopBeforeComputation stopIfError StopWithMinimalGenerators Strategy String STRONG StronglyStableIdeals STYLE Style style SUB sub SubalgebraBases sublists submatrix submatrixByDegrees Subnodes subquotient SubringLimit Subscript subscript SUBSECTION subsets substitute substring subtable Sugarless Sum sum SumOfTwists SumsOfSquares SUP super SuperLinearAlgebra Superscript superscript support SVD SVDComplexes switch SwitchingFields sylvesterMatrix Symbol symbol SymbolBody symbolBody SymbolicPowers symlinkDirectory symlinkFile symmetricAlgebra symmetricAlgebraIdeal symmetricKernel SymmetricPolynomials symmetricPower synonym SYNOPSIS syz Syzygies SyzygyLimit SyzygyMatrix SyzygyRows syzygyScheme TABLE Table table take Tally tally tan TangentCone tangentCone tangentSheaf tanh target Task taskResult TateOnProducts TD temporaryFileName tensor tensorAssociativity TensorComplexes terminalParser terms TEST Test testExample testHunekeQuestion TestIdeals TestInput tests TEX tex TeXmacs texMath Text TH then Thing ThinSincereQuivers ThreadedGB threadVariable Threshold throw Time time times timing TITLE TO to TO2 toAbsolutePath toCC toDividedPowers toDual toExternalString toField TOH toList toLower top topCoefficients Topcom topComponents topLevelMode Tor TorAlgebra Toric ToricInvariants ToricTopology ToricVectorBundles toRR toRRi toSequence toString TotalPairs toUpper TR trace transpose TriangularSets Tries Trim trim Triplets Tropical true Truncate truncate truncateOutput Truncations try TSpreadIdeals TT tutorial Type TypicalValue typicalValues UL ultimate unbag uncurry Undo undocumented uniform uninstallAllPackages uninstallPackage Unique unique Units Unmixed unsequence unstack Up UpdateOnly UpperTriangular URL Usage use UseCachedExampleOutput UseHilbertFunction UserMode userSymbols UseSyzygies utf8 utf8check validate value values Variable VariableBaseName Variables Variety variety vars Vasconcelos Vector vector VectorExpression VectorFields VectorGraphics Verbose Verbosity Verify VersalDeformations versalEmbedding Version version VerticalList VerticalSpace viewHelp VirtualResolutions VirtualTally VisibleList Visualize wait WebApp wedgeProduct weightRange Weights WeylAlgebra WeylGroups when whichGm while width wikipedia Wrap wrap WrapperType XML xor youngest zero ZeroExpression zeta ZZ ZZParser

let b:current_syntax = "m2"

hi def link m2String   String
hi def link m2Comment  Comment
hi def link m2Boolean  Boolean
hi def link m2Symbol   Identifier
hi def link m2Keyword  Keyword
hi def link m2Datatype Type
hi def link m2Function Function
hi def link m2Constant Constant
