1"""
2 pygments.lexers.macaulay2
3 ~~~~~~~~~~~~~~~~~~~~~~~~~
4
5 Lexer for Macaulay2.
6
7 :copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.
8 :license: BSD, see LICENSE for details.
9"""
10
11from pygments.lexer import RegexLexer, words
12from pygments.token import Comment, Keyword, Name, String, Text
13
14__all__ = ['Macaulay2Lexer']
15
16# Auto-generated for Macaulay2-1.24.11. Do not modify this file manually.
17
18M2KEYWORDS = (
19 "SPACE",
20 "TEST",
21 "and",
22 "break",
23 "catch",
24 "continue",
25 "do",
26 "elapsedTime",
27 "elapsedTiming",
28 "else",
29 "for",
30 "from",
31 "global",
32 "if",
33 "in",
34 "list",
35 "local",
36 "new",
37 "not",
38 "of",
39 "or",
40 "return",
41 "shield",
42 "step",
43 "symbol",
44 "then",
45 "threadLocal",
46 "threadVariable",
47 "throw",
48 "time",
49 "timing",
50 "to",
51 "try",
52 "when",
53 "while",
54 "xor"
55 )
56
57M2DATATYPES = (
58 "ANCHOR",
59 "Adjacent",
60 "AffineVariety",
61 "Analyzer",
62 "AngleBarList",
63 "Array",
64 "AssociativeExpression",
65 "AtomicInt",
66 "BLOCKQUOTE",
67 "BODY",
68 "BOLD",
69 "BR",
70 "BUTTON",
71 "Bag",
72 "BasicList",
73 "BettiTally",
74 "BinaryOperation",
75 "Boolean",
76 "CC",
77 "CDATA",
78 "CODE",
79 "COMMENT",
80 "CacheFunction",
81 "CacheTable",
82 "ChainComplex",
83 "ChainComplexMap",
84 "CoherentSheaf",
85 "Command",
86 "CompiledFunction",
87 "CompiledFunctionBody",
88 "CompiledFunctionClosure",
89 "ComplexField",
90 "Constant",
91 "DD",
92 "DIV",
93 "DL",
94 "DT",
95 "Database",
96 "Descent",
97 "Describe",
98 "Dictionary",
99 "DirectSum",
100 "Divide",
101 "DocumentTag",
102 "EM",
103 "Eliminate",
104 "EngineRing",
105 "Equation",
106 "ExampleItem",
107 "Expression",
108 "File",
109 "FilePosition",
110 "FractionField",
111 "Function",
112 "FunctionApplication",
113 "FunctionBody",
114 "FunctionClosure",
115 "GaloisField",
116 "GeneralOrderedMonoid",
117 "GlobalDictionary",
118 "GradedModule",
119 "GradedModuleMap",
120 "GroebnerBasis",
121 "GroebnerBasisOptions",
122 "HEAD",
123 "HEADER1",
124 "HEADER2",
125 "HEADER3",
126 "HEADER4",
127 "HEADER5",
128 "HEADER6",
129 "HR",
130 "HREF",
131 "HTML",
132 "HashTable",
133 "HeaderType",
134 "Holder",
135 "Hybrid",
136 "Hypertext",
137 "HypertextContainer",
138 "HypertextParagraph",
139 "HypertextVoid",
140 "IMG",
141 "INDENT",
142 "INPUT",
143 "ITALIC",
144 "Ideal",
145 "ImmutableType",
146 "IndeterminateNumber",
147 "IndexedVariable",
148 "IndexedVariableTable",
149 "InexactField",
150 "InexactFieldFamily",
151 "InexactNumber",
152 "InfiniteNumber",
153 "IntermediateMarkUpType",
154 "Iterator",
155 "KBD",
156 "Keyword",
157 "LABEL",
158 "LATER",
159 "LI",
160 "LINK",
161 "LITERAL",
162 "List",
163 "LocalDictionary",
164 "LowerBound",
165 "MENU",
166 "META",
167 "Manipulator",
168 "MapExpression",
169 "MarkUpType",
170 "Matrix",
171 "MatrixExpression",
172 "MethodFunction",
173 "MethodFunctionBinary",
174 "MethodFunctionSingle",
175 "MethodFunctionWithOptions",
176 "Minus",
177 "Module",
178 "Monoid",
179 "MonoidElement",
180 "MonomialIdeal",
181 "MultigradedBettiTally",
182 "MutableHashTable",
183 "MutableList",
184 "MutableMatrix",
185 "Net",
186 "NetFile",
187 "Nothing",
188 "Number",
189 "NumberedVerticalList",
190 "OL",
191 "OneExpression",
192 "Option",
193 "OptionTable",
194 "OrderedMonoid",
195 "PARA",
196 "PRE",
197 "Package",
198 "Parenthesize",
199 "Parser",
200 "Partition",
201 "PolynomialRing",
202 "Power",
203 "Product",
204 "ProductOrder",
205 "Program",
206 "ProgramRun",
207 "ProjectiveHilbertPolynomial",
208 "ProjectiveVariety",
209 "Pseudocode",
210 "PseudocodeClosure",
211 "QQ",
212 "QuotientRing",
213 "RR",
214 "RRi",
215 "RealField",
216 "Resolution",
217 "Ring",
218 "RingElement",
219 "RingFamily",
220 "RingMap",
221 "RowExpression",
222 "SAMP",
223 "SCRIPT",
224 "SMALL",
225 "SPAN",
226 "STRONG",
227 "STYLE",
228 "SUB",
229 "SUBSECTION",
230 "SUP",
231 "ScriptedFunctor",
232 "SelfInitializingType",
233 "Sequence",
234 "Set",
235 "SheafExpression",
236 "SheafMap",
237 "SheafOfRings",
238 "SparseMonomialVectorExpression",
239 "SparseVectorExpression",
240 "String",
241 "Subscript",
242 "Sum",
243 "SumOfTwists",
244 "Superscript",
245 "Symbol",
246 "SymbolBody",
247 "TABLE",
248 "TD",
249 "TEX",
250 "TH",
251 "TITLE",
252 "TO",
253 "TO2",
254 "TOH",
255 "TR",
256 "TT",
257 "Table",
258 "Tally",
259 "Task",
260 "TensorProduct",
261 "TestInput",
262 "Thing",
263 "Time",
264 "Type",
265 "UL",
266 "URL",
267 "VAR",
268 "Variety",
269 "Vector",
270 "VectorExpression",
271 "VerticalList",
272 "VirtualTally",
273 "VisibleList",
274 "WrapperType",
275 "ZZ",
276 "ZeroExpression"
277 )
278
279M2FUNCTIONS = (
280 "BesselJ",
281 "BesselY",
282 "Beta",
283 "Digamma",
284 "EXAMPLE",
285 "End",
286 "Fano",
287 "GCstats",
288 "GF",
289 "Gamma",
290 "Grassmannian",
291 "Hom",
292 "LLL",
293 "LUdecomposition",
294 "M2CODE",
295 "NNParser",
296 "Proj",
297 "QQParser",
298 "QRDecomposition",
299 "SVD",
300 "SYNOPSIS",
301 "Schubert",
302 "Spec",
303 "ZZParser",
304 "about",
305 "abs",
306 "accumulate",
307 "acos",
308 "acosh",
309 "acot",
310 "acoth",
311 "addCancelTask",
312 "addDependencyTask",
313 "addEndFunction",
314 "addHook",
315 "addStartTask",
316 "adjoint",
317 "agm",
318 "alarm",
319 "all",
320 "ambient",
321 "analyticSpread",
322 "ancestor",
323 "ancestors",
324 "andP",
325 "ann",
326 "annihilator",
327 "antipode",
328 "any",
329 "append",
330 "applicationDirectory",
331 "apply",
332 "applyKeys",
333 "applyPairs",
334 "applyTable",
335 "applyValues",
336 "apropos",
337 "arXiv",
338 "ascii",
339 "asin",
340 "asinh",
341 "ass",
342 "assert",
343 "associatedGradedRing",
344 "associatedPrimes",
345 "atEndOfFile",
346 "atan",
347 "atan2",
348 "atanh",
349 "autoload",
350 "baseFilename",
351 "baseName",
352 "baseRing",
353 "basis",
354 "beginDocumentation",
355 "benchmark",
356 "betti",
357 "between",
358 "binomial",
359 "borel",
360 "cacheValue",
361 "cancelTask",
362 "canonicalBundle",
363 "capture",
364 "ceiling",
365 "centerString",
366 "chainComplex",
367 "changeBase",
368 "changeDirectory",
369 "char",
370 "charAnalyzer",
371 "characters",
372 "check",
373 "checkDegrees",
374 "chi",
375 "class",
376 "clean",
377 "clearEcho",
378 "code",
379 "codim",
380 "coefficient",
381 "coefficientRing",
382 "coefficients",
383 "cohomology",
384 "coimage",
385 "coker",
386 "cokernel",
387 "collectGarbage",
388 "columnAdd",
389 "columnMult",
390 "columnPermute",
391 "columnRankProfile",
392 "columnSwap",
393 "columnate",
394 "combine",
395 "commandInterpreter",
396 "commonRing",
397 "commonest",
398 "comodule",
399 "compareExchange",
400 "complement",
401 "complete",
402 "components",
403 "compose",
404 "compositions",
405 "compress",
406 "concatenate",
407 "conductor",
408 "cone",
409 "conjugate",
410 "connectionCount",
411 "constParser",
412 "content",
413 "contract",
414 "conwayPolynomial",
415 "copy",
416 "copyDirectory",
417 "copyFile",
418 "cos",
419 "cosh",
420 "cot",
421 "cotangentSheaf",
422 "coth",
423 "cover",
424 "coverMap",
425 "cpuTime",
426 "createTask",
427 "csc",
428 "csch",
429 "currentColumnNumber",
430 "currentDirectory",
431 "currentPosition",
432 "currentRowNumber",
433 "currentTime",
434 "deadParser",
435 "debug",
436 "debugError",
437 "decompose",
438 "deepSplice",
439 "default",
440 "degree",
441 "degreeGroup",
442 "degreeLength",
443 "degrees",
444 "degreesMonoid",
445 "degreesRing",
446 "delete",
447 "demark",
448 "denominator",
449 "depth",
450 "describe",
451 "det",
452 "determinant",
453 "diagonalMatrix",
454 "diameter",
455 "dictionary",
456 "diff",
457 "difference",
458 "dim",
459 "directSum",
460 "disassemble",
461 "discriminant",
462 "dismiss",
463 "distinguished",
464 "divideByVariable",
465 "doc",
466 "document",
467 "drop",
468 "dual",
469 "eagonNorthcott",
470 "echoOff",
471 "echoOn",
472 "eigenvalues",
473 "eigenvectors",
474 "eint",
475 "elements",
476 "eliminate",
477 "endPackage",
478 "entries",
479 "erase",
480 "erf",
481 "erfc",
482 "error",
483 "euler",
484 "eulers",
485 "even",
486 "examples",
487 "exchange",
488 "exec",
489 "exp",
490 "expectedReesIdeal",
491 "expm1",
492 "exponents",
493 "export",
494 "exportFrom",
495 "exportMutable",
496 "expression",
497 "extend",
498 "exteriorPower",
499 "factor",
500 "fileExecutable",
501 "fileExists",
502 "fileLength",
503 "fileMode",
504 "fileReadable",
505 "fileTime",
506 "fileWritable",
507 "fillMatrix",
508 "findFiles",
509 "findHeft",
510 "findProgram",
511 "findSynonyms",
512 "first",
513 "firstkey",
514 "fittingIdeal",
515 "flagLookup",
516 "flatten",
517 "flattenRing",
518 "flip",
519 "floor",
520 "fold",
521 "forceGB",
522 "fork",
523 "format",
524 "formation",
525 "frac",
526 "fraction",
527 "frames",
528 "fromDividedPowers",
529 "fromDual",
530 "functionBody",
531 "futureParser",
532 "gb",
533 "gbRemove",
534 "gbSnapshot",
535 "gcd",
536 "gcdCoefficients",
537 "gcdLLL",
538 "genera",
539 "generateAssertions",
540 "generator",
541 "generators",
542 "genericMatrix",
543 "genericSkewMatrix",
544 "genericSymmetricMatrix",
545 "gens",
546 "genus",
547 "get",
548 "getChangeMatrix",
549 "getGlobalSymbol",
550 "getIOThreadMode",
551 "getNetFile",
552 "getNonUnit",
553 "getPrimeWithRootOfUnity",
554 "getSymbol",
555 "getWWW",
556 "getc",
557 "getenv",
558 "globalAssign",
559 "globalAssignFunction",
560 "globalAssignment",
561 "globalReleaseFunction",
562 "gradedModule",
563 "gradedModuleMap",
564 "gramm",
565 "graphIdeal",
566 "graphRing",
567 "groebnerBasis",
568 "groupID",
569 "hash",
570 "hashTable",
571 "headlines",
572 "heft",
573 "height",
574 "hermite",
575 "hilbertFunction",
576 "hilbertPolynomial",
577 "hilbertSeries",
578 "hold",
579 "homogenize",
580 "homology",
581 "homomorphism",
582 "hooks",
583 "horizontalJoin",
584 "html",
585 "httpHeaders",
586 "hypertext",
587 "icFracP",
588 "icFractions",
589 "icMap",
590 "icPIdeal",
591 "ideal",
592 "idealizer",
593 "identity",
594 "image",
595 "imaginaryPart",
596 "importFrom",
597 "independentSets",
598 "index",
599 "indices",
600 "inducedMap",
601 "inducesWellDefinedMap",
602 "info",
603 "input",
604 "insert",
605 "installAssignmentMethod",
606 "installHilbertFunction",
607 "installMethod",
608 "installMinprimes",
609 "installPackage",
610 "installedPackages",
611 "instance",
612 "instances",
613 "integralClosure",
614 "integrate",
615 "intersect",
616 "intersectInP",
617 "intersection",
618 "interval",
619 "inverse",
620 "inverseErf",
621 "inversePermutation",
622 "inverseRegularizedBeta",
623 "inverseRegularizedGamma",
624 "inverseSystem",
625 "irreducibleCharacteristicSeries",
626 "irreducibleDecomposition",
627 "isANumber",
628 "isAffineRing",
629 "isBorel",
630 "isCanceled",
631 "isCommutative",
632 "isConstant",
633 "isDirectSum",
634 "isDirectory",
635 "isEmpty",
636 "isField",
637 "isFinite",
638 "isFinitePrimeField",
639 "isFreeModule",
640 "isGlobalSymbol",
641 "isHomogeneous",
642 "isIdeal",
643 "isInfinite",
644 "isInjective",
645 "isInputFile",
646 "isIsomorphic",
647 "isIsomorphism",
648 "isLLL",
649 "isLiftable",
650 "isLinearType",
651 "isListener",
652 "isMember",
653 "isModule",
654 "isMonomialIdeal",
655 "isMutable",
656 "isNormal",
657 "isOpen",
658 "isOutputFile",
659 "isPolynomialRing",
660 "isPrimary",
661 "isPrime",
662 "isPrimitive",
663 "isProjective",
664 "isPseudoprime",
665 "isQuotientModule",
666 "isQuotientOf",
667 "isQuotientRing",
668 "isReady",
669 "isReal",
670 "isReduction",
671 "isRegularFile",
672 "isRing",
673 "isSkewCommutative",
674 "isSmooth",
675 "isSorted",
676 "isSquareFree",
677 "isStandardGradedPolynomialRing",
678 "isSubmodule",
679 "isSubquotient",
680 "isSubset",
681 "isSupportedInZeroLocus",
682 "isSurjective",
683 "isTable",
684 "isUnit",
685 "isVeryAmple",
686 "isWellDefined",
687 "isWeylAlgebra",
688 "isc",
689 "iterator",
690 "jacobian",
691 "jacobianDual",
692 "join",
693 "ker",
694 "kernel",
695 "kernelLLL",
696 "kernelOfLocalization",
697 "keys",
698 "kill",
699 "koszul",
700 "last",
701 "lcm",
702 "leadCoefficient",
703 "leadComponent",
704 "leadMonomial",
705 "leadTerm",
706 "left",
707 "length",
708 "letterParser",
709 "lift",
710 "liftable",
711 "limitFiles",
712 "limitProcesses",
713 "lines",
714 "linkFile",
715 "listForm",
716 "listSymbols",
717 "lngamma",
718 "load",
719 "loadPackage",
720 "localDictionaries",
721 "localize",
722 "locate",
723 "log",
724 "log1p",
725 "lookup",
726 "lookupCount",
727 "makeDirectory",
728 "makeDocumentTag",
729 "makePackageIndex",
730 "makeS2",
731 "map",
732 "markedGB",
733 "match",
734 "mathML",
735 "matrix",
736 "max",
737 "maxPosition",
738 "member",
739 "memoize",
740 "memoizeClear",
741 "memoizeValues",
742 "merge",
743 "mergePairs",
744 "method",
745 "methodOptions",
746 "methods",
747 "midpoint",
748 "min",
749 "minPosition",
750 "minPres",
751 "mingens",
752 "mingle",
753 "minimalBetti",
754 "minimalPresentation",
755 "minimalPrimes",
756 "minimalReduction",
757 "minimize",
758 "minimizeFilename",
759 "minors",
760 "minprimes",
761 "minus",
762 "mkdir",
763 "mod",
764 "module",
765 "modulo",
766 "monoid",
767 "monomialCurveIdeal",
768 "monomialIdeal",
769 "monomialSubideal",
770 "monomials",
771 "moveFile",
772 "multidegree",
773 "multidoc",
774 "multigraded",
775 "multiplicity",
776 "mutable",
777 "mutableIdentity",
778 "mutableMatrix",
779 "nanosleep",
780 "needs",
781 "needsPackage",
782 "net",
783 "netList",
784 "newClass",
785 "newCoordinateSystem",
786 "newNetFile",
787 "newPackage",
788 "newRing",
789 "next",
790 "nextPrime",
791 "nextkey",
792 "nonspaceAnalyzer",
793 "norm",
794 "normalCone",
795 "notImplemented",
796 "nullParser",
797 "nullSpace",
798 "nullhomotopy",
799 "numColumns",
800 "numRows",
801 "number",
802 "numcols",
803 "numerator",
804 "numeric",
805 "numericInterval",
806 "numgens",
807 "numrows",
808 "odd",
809 "oeis",
810 "ofClass",
811 "on",
812 "openDatabase",
813 "openDatabaseOut",
814 "openFiles",
815 "openIn",
816 "openInOut",
817 "openListener",
818 "openOut",
819 "openOutAppend",
820 "optP",
821 "optionalSignParser",
822 "options",
823 "orP",
824 "override",
825 "pack",
826 "package",
827 "packageTemplate",
828 "pad",
829 "pager",
830 "pairs",
831 "parallelApply",
832 "parent",
833 "part",
834 "partition",
835 "partitions",
836 "parts",
837 "pdim",
838 "peek",
839 "permanents",
840 "permutations",
841 "pfaffians",
842 "pivots",
843 "plus",
844 "poincare",
845 "poincareN",
846 "polarize",
847 "poly",
848 "position",
849 "positions",
850 "power",
851 "powermod",
852 "precision",
853 "preimage",
854 "prepend",
855 "presentation",
856 "pretty",
857 "primaryComponent",
858 "primaryDecomposition",
859 "print",
860 "printString",
861 "printerr",
862 "processID",
863 "product",
864 "profile",
865 "projectiveHilbertPolynomial",
866 "promote",
867 "protect",
868 "prune",
869 "pseudoRemainder",
870 "pseudocode",
871 "pullback",
872 "pushForward",
873 "pushout",
874 "quotient",
875 "quotientRemainder",
876 "radical",
877 "radicalContainment",
878 "random",
879 "randomKRationalPoint",
880 "randomMutableMatrix",
881 "rank",
882 "rays",
883 "read",
884 "readDirectory",
885 "readPackage",
886 "readlink",
887 "realPart",
888 "realpath",
889 "recursionDepth",
890 "reduceHilbert",
891 "reducedRowEchelonForm",
892 "reductionNumber",
893 "reesAlgebra",
894 "reesAlgebraIdeal",
895 "reesIdeal",
896 "regSeqInIdeal",
897 "regex",
898 "regexQuote",
899 "registerFinalizer",
900 "regularity",
901 "regularizedBeta",
902 "regularizedGamma",
903 "relations",
904 "relativizeFilename",
905 "remainder",
906 "remove",
907 "removeDirectory",
908 "removeFile",
909 "removeLowestDimension",
910 "reorganize",
911 "replace",
912 "res",
913 "reshape",
914 "resolution",
915 "resultant",
916 "reverse",
917 "right",
918 "ring",
919 "ringFromFractions",
920 "roots",
921 "rotate",
922 "round",
923 "rowAdd",
924 "rowMult",
925 "rowPermute",
926 "rowRankProfile",
927 "rowSwap",
928 "rsort",
929 "run",
930 "runHooks",
931 "runLengthEncode",
932 "runProgram",
933 "same",
934 "saturate",
935 "scan",
936 "scanKeys",
937 "scanLines",
938 "scanPairs",
939 "scanValues",
940 "schedule",
941 "schreyerOrder",
942 "searchPath",
943 "sec",
944 "sech",
945 "seeParsing",
946 "select",
947 "selectInSubring",
948 "selectKeys",
949 "selectPairs",
950 "selectValues",
951 "selectVariables",
952 "separate",
953 "separateRegexp",
954 "sequence",
955 "serialNumber",
956 "set",
957 "setEcho",
958 "setGroupID",
959 "setIOExclusive",
960 "setIOSynchronized",
961 "setIOUnSynchronized",
962 "setRandomSeed",
963 "setup",
964 "setupEmacs",
965 "setupLift",
966 "setupPromote",
967 "sheaf",
968 "sheafHom",
969 "sheafMap",
970 "show",
971 "showHtml",
972 "showTex",
973 "simpleDocFrob",
974 "sin",
975 "singularLocus",
976 "sinh",
977 "size",
978 "size2",
979 "sleep",
980 "smithNormalForm",
981 "solve",
982 "someTerms",
983 "sort",
984 "sortColumns",
985 "source",
986 "span",
987 "specialFiber",
988 "specialFiberIdeal",
989 "splice",
990 "splitWWW",
991 "sqrt",
992 "stack",
993 "stacksProject",
994 "standardForm",
995 "standardPairs",
996 "stashValue",
997 "status",
998 "store",
999 "style",
1000 "sub",
1001 "sublists",
1002 "submatrix",
1003 "submatrixByDegrees",
1004 "subquotient",
1005 "subsets",
1006 "substitute",
1007 "substring",
1008 "subtable",
1009 "sum",
1010 "super",
1011 "support",
1012 "switch",
1013 "sylvesterMatrix",
1014 "symbolBody",
1015 "symlinkDirectory",
1016 "symlinkFile",
1017 "symmetricAlgebra",
1018 "symmetricAlgebraIdeal",
1019 "symmetricKernel",
1020 "symmetricPower",
1021 "synonym",
1022 "syz",
1023 "syzygyScheme",
1024 "table",
1025 "take",
1026 "tally",
1027 "tan",
1028 "tangentCone",
1029 "tangentSheaf",
1030 "tanh",
1031 "target",
1032 "taskResult",
1033 "temporaryFileName",
1034 "tensor",
1035 "tensorAssociativity",
1036 "terminalParser",
1037 "terms",
1038 "testHunekeQuestion",
1039 "tests",
1040 "tex",
1041 "texMath",
1042 "times",
1043 "toAbsolutePath",
1044 "toCC",
1045 "toDividedPowers",
1046 "toDual",
1047 "toExternalString",
1048 "toField",
1049 "toList",
1050 "toLower",
1051 "toRR",
1052 "toRRi",
1053 "toSequence",
1054 "toString",
1055 "toUpper",
1056 "top",
1057 "topCoefficients",
1058 "topComponents",
1059 "trace",
1060 "transpose",
1061 "trim",
1062 "truncate",
1063 "truncateOutput",
1064 "tutorial",
1065 "ultimate",
1066 "unbag",
1067 "uncurry",
1068 "undocumented",
1069 "uniform",
1070 "uninstallAllPackages",
1071 "uninstallPackage",
1072 "union",
1073 "unique",
1074 "uniquePermutations",
1075 "unsequence",
1076 "unstack",
1077 "urlEncode",
1078 "use",
1079 "userSymbols",
1080 "utf8",
1081 "utf8check",
1082 "utf8substring",
1083 "validate",
1084 "value",
1085 "values",
1086 "variety",
1087 "vars",
1088 "vector",
1089 "versalEmbedding",
1090 "wait",
1091 "wedgeProduct",
1092 "weightRange",
1093 "whichGm",
1094 "width",
1095 "wikipedia",
1096 "wrap",
1097 "youngest",
1098 "zero",
1099 "zeta"
1100 )
1101
1102M2CONSTANTS = (
1103 "A1BrouwerDegrees",
1104 "AbstractSimplicialComplexes",
1105 "AbstractToricVarieties",
1106 "Acknowledgement",
1107 "AdditionalPaths",
1108 "AdjointIdeal",
1109 "AdjunctionForSurfaces",
1110 "AfterEval",
1111 "AfterNoPrint",
1112 "AfterPrint",
1113 "AInfinity",
1114 "AlgebraicSplines",
1115 "Algorithm",
1116 "Alignment",
1117 "AllCodimensions",
1118 "allowableThreads",
1119 "AnalyzeSheafOnP1",
1120 "applicationDirectorySuffix",
1121 "argument",
1122 "Ascending",
1123 "AssociativeAlgebras",
1124 "Authors",
1125 "AuxiliaryFiles",
1126 "backtrace",
1127 "Bareiss",
1128 "Base",
1129 "BaseFunction",
1130 "baseRings",
1131 "BaseRow",
1132 "BasisElementLimit",
1133 "Bayer",
1134 "BeforePrint",
1135 "BeginningMacaulay2",
1136 "Benchmark",
1137 "BernsteinSato",
1138 "Bertini",
1139 "BettiCharacters",
1140 "BGG",
1141 "BIBasis",
1142 "Binary",
1143 "Binomial",
1144 "BinomialEdgeIdeals",
1145 "Binomials",
1146 "BKZ",
1147 "blockMatrixForm",
1148 "Body",
1149 "BoijSoederberg",
1150 "Book3264Examples",
1151 "BooleanGB",
1152 "Boxes",
1153 "Browse",
1154 "Bruns",
1155 "cache",
1156 "CacheExampleOutput",
1157 "CallLimit",
1158 "CannedExample",
1159 "CatalanConstant",
1160 "Caveat",
1161 "CellularResolutions",
1162 "Center",
1163 "Certification",
1164 "ChainComplexExtras",
1165 "ChainComplexOperations",
1166 "ChangeMatrix",
1167 "CharacteristicClasses",
1168 "CheckDocumentation",
1169 "Chordal",
1170 "cite",
1171 "Classic",
1172 "clearAll",
1173 "clearOutput",
1174 "close",
1175 "closeIn",
1176 "closeOut",
1177 "ClosestFit",
1178 "Code",
1179 "CodimensionLimit",
1180 "CodingTheory",
1181 "CoefficientRing",
1182 "Cofactor",
1183 "CohenEngine",
1184 "CohenTopLevel",
1185 "CohomCalg",
1186 "CoincidentRootLoci",
1187 "commandLine",
1188 "compactMatrixForm",
1189 "Complement",
1190 "CompleteIntersection",
1191 "CompleteIntersectionResolutions",
1192 "Complexes",
1193 "ConductorElement",
1194 "Configuration",
1195 "ConformalBlocks",
1196 "Consequences",
1197 "Constants",
1198 "Contributors",
1199 "ConvexInterface",
1200 "ConwayPolynomials",
1201 "copyright",
1202 "Core",
1203 "CorrespondenceScrolls",
1204 "CotangentSchubert",
1205 "Cremona",
1206 "currentFileDirectory",
1207 "currentFileName",
1208 "currentLayout",
1209 "currentPackage",
1210 "Cyclotomic",
1211 "Date",
1212 "dd",
1213 "DebuggingMode",
1214 "debuggingMode",
1215 "debugLevel",
1216 "DecomposableSparseSystems",
1217 "Decompose",
1218 "Default",
1219 "defaultPrecision",
1220 "Degree",
1221 "DegreeGroup",
1222 "DegreeLift",
1223 "DegreeLimit",
1224 "DegreeMap",
1225 "DegreeOrder",
1226 "DegreeRank",
1227 "Degrees",
1228 "Dense",
1229 "Density",
1230 "Depth",
1231 "Descending",
1232 "Description",
1233 "DeterminantalRepresentations",
1234 "DGAlgebras",
1235 "dictionaryPath",
1236 "DiffAlg",
1237 "Dispatch",
1238 "DivideConquer",
1239 "DividedPowers",
1240 "Divisor",
1241 "Dmodules",
1242 "docExample",
1243 "docTemplate",
1244 "Down",
1245 "Dynamic",
1246 "EagonResolution",
1247 "EdgeIdeals",
1248 "edit",
1249 "EigenSolver",
1250 "EisenbudHunekeVasconcelos",
1251 "Elimination",
1252 "EliminationMatrices",
1253 "EllipticCurves",
1254 "EllipticIntegrals",
1255 "Email",
1256 "end",
1257 "endl",
1258 "Engine",
1259 "engineDebugLevel",
1260 "EngineTests",
1261 "EnumerationCurves",
1262 "environment",
1263 "EquivariantGB",
1264 "errorDepth",
1265 "EulerConstant",
1266 "Example",
1267 "ExampleFiles",
1268 "ExampleSystems",
1269 "Exclude",
1270 "exit",
1271 "Ext",
1272 "ExteriorIdeals",
1273 "ExteriorModules",
1274 "false",
1275 "FastMinors",
1276 "FastNonminimal",
1277 "FGLM",
1278 "fileDictionaries",
1279 "fileExitHooks",
1280 "FileName",
1281 "FindOne",
1282 "FiniteFittingIdeals",
1283 "First",
1284 "FirstPackage",
1285 "FlatMonoid",
1286 "Flexible",
1287 "flush",
1288 "FollowLinks",
1289 "ForeignFunctions",
1290 "FormalGroupLaws",
1291 "Format",
1292 "FourierMotzkin",
1293 "FourTiTwo",
1294 "fpLLL",
1295 "FrobeniusThresholds",
1296 "FunctionFieldDesingularization",
1297 "GBDegrees",
1298 "gbTrace",
1299 "GenerateAssertions",
1300 "Generic",
1301 "GenericInitialIdeal",
1302 "GeometricDecomposability",
1303 "gfanInterface",
1304 "Givens",
1305 "GKMVarieties",
1306 "GLex",
1307 "Global",
1308 "GlobalAssignHook",
1309 "globalAssignmentHooks",
1310 "GlobalHookStore",
1311 "GlobalReleaseHook",
1312 "GlobalSectionLimit",
1313 "Gorenstein",
1314 "GradedLieAlgebras",
1315 "GraphicalModels",
1316 "GraphicalModelsMLE",
1317 "Graphics",
1318 "Graphs",
1319 "GRevLex",
1320 "GroebnerStrata",
1321 "GroebnerWalk",
1322 "GroupLex",
1323 "GroupRevLex",
1324 "GTZ",
1325 "Hadamard",
1326 "handleInterrupts",
1327 "HardDegreeLimit",
1328 "Heading",
1329 "Headline",
1330 "Heft",
1331 "Height",
1332 "help",
1333 "Hermite",
1334 "Hermitian",
1335 "HH",
1336 "hh",
1337 "HigherCIOperators",
1338 "HighestWeights",
1339 "Hilbert",
1340 "HodgeIntegrals",
1341 "HolonomicSystems",
1342 "homeDirectory",
1343 "HomePage",
1344 "Homogeneous",
1345 "Homogeneous2",
1346 "HomotopyLieAlgebra",
1347 "HorizontalSpace",
1348 "HyperplaneArrangements",
1349 "id",
1350 "IgnoreExampleErrors",
1351 "ii",
1352 "incomparable",
1353 "Increment",
1354 "indeterminate",
1355 "Index",
1356 "indexComponents",
1357 "infinity",
1358 "InfoDirSection",
1359 "infoHelp",
1360 "Inhomogeneous",
1361 "Inputs",
1362 "InstallPrefix",
1363 "IntegralClosure",
1364 "interpreterDepth",
1365 "Intersection",
1366 "InvariantRing",
1367 "InverseMethod",
1368 "Inverses",
1369 "InverseSystems",
1370 "Invertible",
1371 "InvolutiveBases",
1372 "Isomorphism",
1373 "Item",
1374 "Iterate",
1375 "Jacobian",
1376 "Jets",
1377 "Join",
1378 "JSON",
1379 "Jupyter",
1380 "K3Carpets",
1381 "K3Surfaces",
1382 "Keep",
1383 "KeepFiles",
1384 "KeepZeroes",
1385 "Key",
1386 "Keywords",
1387 "Kronecker",
1388 "KustinMiller",
1389 "lastMatch",
1390 "LatticePolytopes",
1391 "Layout",
1392 "Left",
1393 "LengthLimit",
1394 "Lex",
1395 "LexIdeals",
1396 "Licenses",
1397 "LieTypes",
1398 "Limit",
1399 "Linear",
1400 "LinearAlgebra",
1401 "LinearTruncations",
1402 "lineNumber",
1403 "listLocalSymbols",
1404 "listUserSymbols",
1405 "LLLBases",
1406 "loadDepth",
1407 "LoadDocumentation",
1408 "loadedFiles",
1409 "loadedPackages",
1410 "Local",
1411 "LocalRings",
1412 "LongPolynomial",
1413 "M0nbar",
1414 "Macaulay2Doc",
1415 "Maintainer",
1416 "MakeDocumentation",
1417 "MakeHTML",
1418 "MakeInfo",
1419 "MakeLinks",
1420 "MakePDF",
1421 "MapleInterface",
1422 "Markov",
1423 "MatchingFields",
1424 "MatrixSchubert",
1425 "Matroids",
1426 "maxAllowableThreads",
1427 "maxExponent",
1428 "MaximalRank",
1429 "MaxReductionCount",
1430 "MCMApproximations",
1431 "MergeTeX",
1432 "minExponent",
1433 "MinimalGenerators",
1434 "MinimalMatrix",
1435 "minimalPresentationMap",
1436 "minimalPresentationMapInv",
1437 "MinimalPrimes",
1438 "Minimize",
1439 "MinimumVersion",
1440 "Miura",
1441 "MixedMultiplicity",
1442 "ModuleDeformations",
1443 "MonodromySolver",
1444 "Monomial",
1445 "MonomialAlgebras",
1446 "MonomialIntegerPrograms",
1447 "MonomialOrbits",
1448 "MonomialOrder",
1449 "Monomials",
1450 "MonomialSize",
1451 "Msolve",
1452 "MultigradedBGG",
1453 "MultigradedImplicitization",
1454 "MultiGradedRationalMap",
1455 "MultiplicitySequence",
1456 "MultiplierIdeals",
1457 "MultiplierIdealsDim2",
1458 "MultiprojectiveVarieties",
1459 "NAGtypes",
1460 "Name",
1461 "Nauty",
1462 "NautyGraphs",
1463 "NCAlgebra",
1464 "NCLex",
1465 "NewFromMethod",
1466 "newline",
1467 "NewMethod",
1468 "NewOfFromMethod",
1469 "NewOfMethod",
1470 "nil",
1471 "Node",
1472 "NoetherianOperators",
1473 "NoetherNormalization",
1474 "NonminimalComplexes",
1475 "NoPrint",
1476 "Normaliz",
1477 "NormalToricVarieties",
1478 "notify",
1479 "NTL",
1480 "null",
1481 "nullaryMethods",
1482 "NumericalAlgebraicGeometry",
1483 "NumericalCertification",
1484 "NumericalImplicitization",
1485 "NumericalLinearAlgebra",
1486 "NumericalSchubertCalculus",
1487 "NumericalSemigroups",
1488 "NumericSolutions",
1489 "numTBBThreads",
1490 "OIGroebnerBases",
1491 "OldPolyhedra",
1492 "OldToricVectorBundles",
1493 "OnlineLookup",
1494 "OO",
1495 "oo",
1496 "ooo",
1497 "oooo",
1498 "OpenMath",
1499 "operatorAttributes",
1500 "OptionalComponentsPresent",
1501 "Options",
1502 "Order",
1503 "order",
1504 "OutputDictionary",
1505 "Outputs",
1506 "PackageCitations",
1507 "PackageDictionary",
1508 "PackageExports",
1509 "PackageImports",
1510 "PackageTemplate",
1511 "PairLimit",
1512 "PairsRemaining",
1513 "ParallelF4",
1514 "ParallelizeByDegree",
1515 "Parametrization",
1516 "Parsing",
1517 "path",
1518 "PencilsOfQuadrics",
1519 "Permanents",
1520 "Permutations",
1521 "PHCpack",
1522 "PhylogeneticTrees",
1523 "pi",
1524 "PieriMaps",
1525 "PlaneCurveLinearSeries",
1526 "PlaneCurveSingularities",
1527 "Points",
1528 "Polyhedra",
1529 "Polymake",
1530 "PolyominoIdeals",
1531 "Posets",
1532 "Position",
1533 "PositivityToricBundles",
1534 "POSIX",
1535 "Postfix",
1536 "Pre",
1537 "Precision",
1538 "Prefix",
1539 "prefixDirectory",
1540 "prefixPath",
1541 "PrimaryDecomposition",
1542 "PrimaryTag",
1543 "PrimitiveElement",
1544 "Print",
1545 "printingAccuracy",
1546 "printingLeadLimit",
1547 "printingPrecision",
1548 "printingSeparator",
1549 "printingTimeLimit",
1550 "printingTrailLimit",
1551 "printWidth",
1552 "Probability",
1553 "profileSummary",
1554 "programPaths",
1555 "Projective",
1556 "Prune",
1557 "PruneComplex",
1558 "pruningMap",
1559 "PseudomonomialPrimaryDecomposition",
1560 "Pullback",
1561 "pullbackMaps",
1562 "PushForward",
1563 "pushoutMaps",
1564 "Python",
1565 "QthPower",
1566 "QuadraticIdealExamplesByRoos",
1567 "Quasidegrees",
1568 "QuaternaryQuartics",
1569 "QuillenSuslin",
1570 "quit",
1571 "Quotient",
1572 "Radical",
1573 "RadicalCodim1",
1574 "RaiseError",
1575 "RandomCanonicalCurves",
1576 "RandomComplexes",
1577 "RandomCurves",
1578 "RandomCurvesOverVerySmallFiniteFields",
1579 "RandomGenus14Curves",
1580 "RandomIdeals",
1581 "RandomMonomialIdeals",
1582 "RandomObjects",
1583 "RandomPlaneCurves",
1584 "RandomPoints",
1585 "RandomSpaceCurves",
1586 "Range",
1587 "RationalMaps",
1588 "RationalPoints",
1589 "RationalPoints2",
1590 "ReactionNetworks",
1591 "RealFP",
1592 "RealQP",
1593 "RealQP1",
1594 "RealRoots",
1595 "RealRR",
1596 "RealXD",
1597 "recursionLimit",
1598 "Reduce",
1599 "ReesAlgebra",
1600 "References",
1601 "ReflexivePolytopesDB",
1602 "Regularity",
1603 "RelativeCanonicalResolution",
1604 "Reload",
1605 "RemakeAllDocumentation",
1606 "RerunExamples",
1607 "ResidualIntersections",
1608 "ResLengthThree",
1609 "ResolutionsOfStanleyReisnerRings",
1610 "restart",
1611 "Result",
1612 "Resultants",
1613 "returnCode",
1614 "Reverse",
1615 "RevLex",
1616 "Right",
1617 "RInterface",
1618 "rootPath",
1619 "rootURI",
1620 "RunDirectory",
1621 "RunExamples",
1622 "RunExternalM2",
1623 "SagbiGbDetection",
1624 "Saturation",
1625 "SaturationMap",
1626 "Schubert2",
1627 "SchurComplexes",
1628 "SchurFunctors",
1629 "SchurRings",
1630 "SchurVeronese",
1631 "SCMAlgebras",
1632 "scriptCommandLine",
1633 "SCSCP",
1634 "SectionRing",
1635 "SeeAlso",
1636 "SegreClasses",
1637 "SemidefiniteProgramming",
1638 "Seminormalization",
1639 "SeparateExec",
1640 "Serialization",
1641 "sheafExt",
1642 "ShimoyamaYokoyama",
1643 "showClassStructure",
1644 "showStructure",
1645 "showUserStructure",
1646 "SimpleDoc",
1647 "SimplicialComplexes",
1648 "SimplicialDecomposability",
1649 "SimplicialPosets",
1650 "SimplifyFractions",
1651 "SizeLimit",
1652 "SkewCommutative",
1653 "SlackIdeals",
1654 "SLnEquivariantMatrices",
1655 "SLPexpressions",
1656 "Sort",
1657 "SortStrategy",
1658 "SourceCode",
1659 "SourceRing",
1660 "SpaceCurves",
1661 "SparseResultants",
1662 "SpechtModule",
1663 "SpecialFanoFourfolds",
1664 "SpectralSequences",
1665 "SRdeformations",
1666 "Standard",
1667 "StartWithOneMinor",
1668 "StatePolytope",
1669 "StatGraphs",
1670 "stderr",
1671 "stdio",
1672 "StopBeforeComputation",
1673 "stopIfError",
1674 "StopIteration",
1675 "StopWithMinimalGenerators",
1676 "Strategy",
1677 "Strict",
1678 "StronglyStableIdeals",
1679 "Style",
1680 "SubalgebraBases",
1681 "Subnodes",
1682 "SubringLimit",
1683 "subscript",
1684 "Sugarless",
1685 "SumsOfSquares",
1686 "SuperLinearAlgebra",
1687 "superscript",
1688 "SVDComplexes",
1689 "SwitchingFields",
1690 "SymbolicPowers",
1691 "SymmetricPolynomials",
1692 "Synopsis",
1693 "Syzygies",
1694 "SyzygyLimit",
1695 "SyzygyMatrix",
1696 "SyzygyRows",
1697 "TangentCone",
1698 "TateOnProducts",
1699 "TensorComplexes",
1700 "TerraciniLoci",
1701 "Test",
1702 "testExample",
1703 "TestIdeals",
1704 "TeXmacs",
1705 "Text",
1706 "ThinSincereQuivers",
1707 "ThreadedGB",
1708 "Threads",
1709 "Threshold",
1710 "Topcom",
1711 "topLevelMode",
1712 "Tor",
1713 "TorAlgebra",
1714 "Toric",
1715 "ToricInvariants",
1716 "ToricTopology",
1717 "ToricVectorBundles",
1718 "Torsion",
1719 "TorsionFree",
1720 "TotalPairs",
1721 "Tree",
1722 "TriangularSets",
1723 "Triangulations",
1724 "Tries",
1725 "Trim",
1726 "Triplets",
1727 "Tropical",
1728 "TropicalToric",
1729 "true",
1730 "Truncate",
1731 "Truncations",
1732 "TSpreadIdeals",
1733 "TypicalValue",
1734 "typicalValues",
1735 "Undo",
1736 "Unique",
1737 "Units",
1738 "Unmixed",
1739 "Up",
1740 "UpdateOnly",
1741 "UpperTriangular",
1742 "Usage",
1743 "UseCachedExampleOutput",
1744 "UseHilbertFunction",
1745 "UserMode",
1746 "UseSyzygies",
1747 "Valuations",
1748 "Variable",
1749 "VariableBaseName",
1750 "Variables",
1751 "Varieties",
1752 "Vasconcelos",
1753 "VectorFields",
1754 "VectorGraphics",
1755 "Verbose",
1756 "Verbosity",
1757 "Verify",
1758 "VersalDeformations",
1759 "Version",
1760 "version",
1761 "VerticalSpace",
1762 "viewHelp",
1763 "VirtualResolutions",
1764 "Visualize",
1765 "VNumber",
1766 "WebApp",
1767 "Weights",
1768 "WeylAlgebra",
1769 "WeylAlgebras",
1770 "WeylGroups",
1771 "WhitneyStratifications",
1772 "Wrap",
1773 "XML"
1774 )
1775
1776class Macaulay2Lexer(RegexLexer):
1777 """Lexer for Macaulay2, a software system for research in algebraic geometry."""
1778
1779 name = 'Macaulay2'
1780 url = 'https://macaulay2.com/'
1781 aliases = ['macaulay2']
1782 filenames = ['*.m2']
1783 version_added = '2.12'
1784
1785 tokens = {
1786 'root': [
1787 (r'--.*$', Comment.Single),
1788 (r'-\*', Comment.Multiline, 'block comment'),
1789 (r'"', String, 'quote string'),
1790 (r'///', String, 'slash string'),
1791 (words(M2KEYWORDS, prefix=r'\b', suffix=r'\b'), Keyword),
1792 (words(M2DATATYPES, prefix=r'\b', suffix=r'\b'), Name.Builtin),
1793 (words(M2FUNCTIONS, prefix=r'\b', suffix=r'\b'), Name.Function),
1794 (words(M2CONSTANTS, prefix=r'\b', suffix=r'\b'), Name.Constant),
1795 (r'\s+', Text.Whitespace),
1796 (r'.', Text)
1797 ],
1798 'block comment' : [
1799 (r'[^*-]+', Comment.Multiline),
1800 (r'\*-', Comment.Multiline, '#pop'),
1801 (r'[*-]', Comment.Multiline)
1802 ],
1803 'quote string' : [
1804 (r'[^\\"]+', String),
1805 (r'"', String, '#pop'),
1806 (r'\\"?', String),
1807 ],
1808 'slash string' : [
1809 (r'[^/]+', String),
1810 (r'(//)+(?!/)', String),
1811 (r'/(//)+(?!/)', String, '#pop'),
1812 (r'/', String)
1813 ]
1814 }