codemirror-lang-macaulay2 0.1.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.
package/demo/demo.js ADDED
@@ -0,0 +1,11 @@
1
+ import { EditorState } from "@codemirror/state";
2
+ import { EditorView, basicSetup } from "codemirror";
3
+ import { macaulay2 } from "../dist/index.js";
4
+
5
+ new EditorView({
6
+ state: EditorState.create({
7
+ doc: "R = QQ[x,y,z,w]\nI = monomialCurveIdeal(R, {1,2,3})",
8
+ extensions: [basicSetup, macaulay2()]
9
+ }),
10
+ parent: document.getElementById("editor"),
11
+ });
package/demo/demo.js~ ADDED
@@ -0,0 +1,11 @@
1
+ import { EditorState } from "@codemirror/state";
2
+ import { EditorView, basicSetup } from "@codemirror/basic-setup";
3
+ import { myLanguage } from "../dist/index.js"; // Import your language module
4
+
5
+ new EditorView({
6
+ state: EditorState.create({
7
+ doc: "print('Hello, World!')", // Sample code
8
+ extensions: [basicSetup, myLanguage()]
9
+ }),
10
+ parent: document.getElementById("editor"),
11
+ });
@@ -0,0 +1,17 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>CodeMirror Macaulay2 Language Module Demo</title>
7
+ <style>
8
+ body { font-family: sans-serif; padding: 20px; }
9
+ .editor { border: 1px solid #ccc; height: 300px; }
10
+ </style>
11
+ </head>
12
+ <body>
13
+ <h1>CodeMirror Macaulay2 Language Module Demo</h1>
14
+ <div id="editor" class="editor"></div>
15
+ <script type="module" src="./bundle.js"></script>
16
+ </body>
17
+ </html>
@@ -0,0 +1 @@
1
+ Hello, world!
@@ -0,0 +1,11 @@
1
+ import resolve from "@rollup/plugin-node-resolve"
2
+
3
+ export default {
4
+ input: "demo/demo.js",
5
+ output: {
6
+ file: "demo/bundle.js",
7
+ format: "iife",
8
+ sourcemap: true
9
+ },
10
+ plugins: [resolve()]
11
+ }
@@ -0,0 +1,11 @@
1
+ import resolve from "@rollup/plugin-node-resolve";
2
+
3
+ export default {
4
+ input: "demo/demo.js",
5
+ output: {
6
+ file: "demo/bundle.js",
7
+ format: "iife",
8
+ sourcemap: true
9
+ },
10
+ plugins: [resolve()]
11
+ }
package/dist/index.cjs ADDED
@@ -0,0 +1,33 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var language = require('@codemirror/language');
6
+ var simpleMode = require('@codemirror/legacy-modes/mode/simple-mode');
7
+
8
+ const Macaulay2Mode = simpleMode.simpleMode({
9
+ start: [
10
+ { regex: /"(?:[^\\]|\\.)*?(?:"|$)/, token: "string" },
11
+ { regex: /(then|do|list|in|break|continue|not|and|or|return)\b/, token: "keyword" },
12
+ { regex: /(from|to)\b/, token: "builtin" },
13
+ { regex: /(true|false|null)\b/, token: "atom" },
14
+ { regex: /(for|while|if|else)\b/, token: "keyword", indent: true },
15
+ /* testing */
16
+ /* symbols from M2-symbols.el here */
17
+ { regex: /(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)\b/,
18
+ token: "keyword" },
19
+ { regex: /(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|SCRIPT|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)\b/,
20
+ token: "tag" },
21
+ { regex: /(about|abs|accumulate|acos|acosh|acot|acoth|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|atanh|atEndOfFile|autoload|baseFilename|baseName|baseRing|basis|beginDocumentation|benchmark|BesselJ|BesselY|Beta|betti|between|binomial|borel|cacheValue|cancelTask|capture|ceiling|centerString|chainComplex|char|characters|charAnalyzer|check|checkDegrees|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|currentColumnNumber|currentDirectory|currentPosition|currentRowNumber|currentTime|deadParser|debug|debugError|decompose|deepSplice|default|degree|degreeLength|degrees|degreesMonoid|degreesRing|delete|demark|denominator|depth|describe|det|determinant|diagonalMatrix|diameter|dictionary|diff|difference|Digamma|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|inverseErf|inversePermutation|inverseRegularizedBeta|inverseRegularizedGamma|inverseSystem|irreducibleCharacteristicSeries|irreducibleDecomposition|isAffineRing|isANumber|isBorel|isc|isCanceled|isCommutative|isConstant|isDirectory|isDirectSum|isEmpty|isField|isFinite|isFinitePrimeField|isFreeModule|isGlobalSymbol|isHomogeneous|isIdeal|isInfinite|isInjective|isInputFile|isIsomorphic|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|M2CODE|makeDirectory|makeDocumentTag|makePackageIndex|makeS2|map|markedGB|match|mathML|matrix|max|maxPosition|member|memoize|memoizeClear|memoizeValues|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|oeis|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|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|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|uniquePermutations|unsequence|unstack|urlEncode|use|userSymbols|utf8|utf8check|validate|value|values|variety|vars|vector|versalEmbedding|wait|wedgeProduct|weightRange|whichGm|width|wikipedia|wrap|youngest|zero|zeta|ZZParser)\b/,
22
+ token: "def" },
23
+ { regex: /0x[a-f\d]+|[-+]?(?:\.\d+|\d+\.?\d*)(?:e[-+]?\d+)?/i, token: "number" },
24
+ { regex: /[\{\[\(]/, indent: true },
25
+ { regex: /[\}\]\);]/, dedent: true },
26
+ { regex: /[a-z$][\w$]*/, token: "variable" },
27
+ { regex: /^\s*--%.*/, token: "comment meta" },
28
+ { regex: /--.*/, token: "comment" },
29
+ ]
30
+ });
31
+ const macaulay2 = () => language.StreamLanguage.define(Macaulay2Mode);
32
+
33
+ exports.macaulay2 = macaulay2;
@@ -0,0 +1,3 @@
1
+ import { StreamLanguage } from "@codemirror/language";
2
+ declare const macaulay2: () => StreamLanguage<unknown>;
3
+ export { macaulay2 };
@@ -0,0 +1,3 @@
1
+ import { StreamLanguage } from "@codemirror/language";
2
+ declare const macaulay2: () => StreamLanguage<unknown>;
3
+ export { macaulay2 };
package/dist/index.js ADDED
@@ -0,0 +1,29 @@
1
+ import { StreamLanguage } from '@codemirror/language';
2
+ import { simpleMode } from '@codemirror/legacy-modes/mode/simple-mode';
3
+
4
+ const Macaulay2Mode = simpleMode({
5
+ start: [
6
+ { regex: /"(?:[^\\]|\\.)*?(?:"|$)/, token: "string" },
7
+ { regex: /(then|do|list|in|break|continue|not|and|or|return)\b/, token: "keyword" },
8
+ { regex: /(from|to)\b/, token: "builtin" },
9
+ { regex: /(true|false|null)\b/, token: "atom" },
10
+ { regex: /(for|while|if|else)\b/, token: "keyword", indent: true },
11
+ /* testing */
12
+ /* symbols from M2-symbols.el here */
13
+ { regex: /(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)\b/,
14
+ token: "keyword" },
15
+ { regex: /(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|SCRIPT|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)\b/,
16
+ token: "tag" },
17
+ { regex: /(about|abs|accumulate|acos|acosh|acot|acoth|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|atanh|atEndOfFile|autoload|baseFilename|baseName|baseRing|basis|beginDocumentation|benchmark|BesselJ|BesselY|Beta|betti|between|binomial|borel|cacheValue|cancelTask|capture|ceiling|centerString|chainComplex|char|characters|charAnalyzer|check|checkDegrees|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|currentColumnNumber|currentDirectory|currentPosition|currentRowNumber|currentTime|deadParser|debug|debugError|decompose|deepSplice|default|degree|degreeLength|degrees|degreesMonoid|degreesRing|delete|demark|denominator|depth|describe|det|determinant|diagonalMatrix|diameter|dictionary|diff|difference|Digamma|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|inverseErf|inversePermutation|inverseRegularizedBeta|inverseRegularizedGamma|inverseSystem|irreducibleCharacteristicSeries|irreducibleDecomposition|isAffineRing|isANumber|isBorel|isc|isCanceled|isCommutative|isConstant|isDirectory|isDirectSum|isEmpty|isField|isFinite|isFinitePrimeField|isFreeModule|isGlobalSymbol|isHomogeneous|isIdeal|isInfinite|isInjective|isInputFile|isIsomorphic|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|M2CODE|makeDirectory|makeDocumentTag|makePackageIndex|makeS2|map|markedGB|match|mathML|matrix|max|maxPosition|member|memoize|memoizeClear|memoizeValues|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|oeis|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|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|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|uniquePermutations|unsequence|unstack|urlEncode|use|userSymbols|utf8|utf8check|validate|value|values|variety|vars|vector|versalEmbedding|wait|wedgeProduct|weightRange|whichGm|width|wikipedia|wrap|youngest|zero|zeta|ZZParser)\b/,
18
+ token: "def" },
19
+ { regex: /0x[a-f\d]+|[-+]?(?:\.\d+|\d+\.?\d*)(?:e[-+]?\d+)?/i, token: "number" },
20
+ { regex: /[\{\[\(]/, indent: true },
21
+ { regex: /[\}\]\);]/, dedent: true },
22
+ { regex: /[a-z$][\w$]*/, token: "variable" },
23
+ { regex: /^\s*--%.*/, token: "comment meta" },
24
+ { regex: /--.*/, token: "comment" },
25
+ ]
26
+ });
27
+ const macaulay2 = () => StreamLanguage.define(Macaulay2Mode);
28
+
29
+ export { macaulay2 };
package/package.json ADDED
@@ -0,0 +1,39 @@
1
+ {
2
+ "name": "codemirror-lang-macaulay2",
3
+ "version": "0.1.0",
4
+ "description": "Macaulay2 language support for CodeMirror",
5
+ "scripts": {
6
+ "test": "mocha test/test.js",
7
+ "prepare": "rollup -c",
8
+ "demo": "npm run prepare && rollup -c demo-rollup.config.js && serve demo"
9
+ },
10
+ "type": "module",
11
+ "main": "dist/index.cjs",
12
+ "module": "dist/index.js",
13
+ "exports": {
14
+ "import": "./dist/index.js",
15
+ "require": "./dist/index.cjs"
16
+ },
17
+ "types": "dist/index.d.ts",
18
+ "sideEffects": false,
19
+ "dependencies": {
20
+ "@codemirror/language": "^6.0.0",
21
+ "@codemirror/legacy-modes": "^6.4.3",
22
+ "@codemirror/state": "^6.5.2",
23
+ "@lezer/highlight": "^1.0.0",
24
+ "@lezer/lr": "^1.0.0",
25
+ "codemirror": "^6.0.1"
26
+ },
27
+ "devDependencies": {
28
+ "@lezer/generator": "^1.0.0",
29
+ "@rollup/plugin-node-resolve": "^16.0.0",
30
+ "mocha": "^9.0.1",
31
+ "rollup": "^2.60.2",
32
+ "rollup-plugin-dts": "^4.0.1",
33
+ "rollup-plugin-ts": "^3.0.2",
34
+ "serve": "^14.2.4",
35
+ "typescript": "^4.3.4"
36
+ },
37
+ "keywords": ["codemirror", "language", "macaulay2"],
38
+ "license": "MIT"
39
+ }