Latest build deployed.
This commit is contained in:
+119
@@ -0,0 +1,119 @@
|
||||
let mathJaxOpts = {
|
||||
"tex": {
|
||||
"inlineMath": [
|
||||
[
|
||||
"\\(",
|
||||
"\\)"
|
||||
]
|
||||
],
|
||||
"tags": "none",
|
||||
"tagSide": "right",
|
||||
"tagIndent": ".8em",
|
||||
"packages": {
|
||||
"[+]": [
|
||||
"amscd",
|
||||
"color",
|
||||
"knowl"
|
||||
]
|
||||
}
|
||||
},
|
||||
"options": {
|
||||
"ignoreHtmlClass": "tex2jax_ignore|ignore-math",
|
||||
"processHtmlClass": "process-math"
|
||||
},
|
||||
"chtml": {
|
||||
"scale": 0.98,
|
||||
"mtextInheritFont": true
|
||||
},
|
||||
"loader": {
|
||||
"load": [
|
||||
"input/asciimath",
|
||||
"[tex]/amscd",
|
||||
"[tex]/color"
|
||||
]
|
||||
}
|
||||
};
|
||||
function startMathJax(opts) {
|
||||
if (opts.hasWebworkReps || opts.hasSage) {
|
||||
mathJaxOpts["renderActions"] = {
|
||||
"findScript": [
|
||||
10,
|
||||
function(doc) {
|
||||
document.querySelectorAll('script[type^="math/tex"]').forEach(function(node) {
|
||||
var display = !!node.type.match(/; *mode=display/);
|
||||
var math = new doc.options.MathItem(node.textContent, doc.inputJax[0], display);
|
||||
var text = document.createTextNode("");
|
||||
node.parentNode.replaceChild(text, node);
|
||||
math.start = { node: text, delim: "", n: 0 };
|
||||
math.end = { node: text, delim: "", n: 0 };
|
||||
doc.math.push(math);
|
||||
});
|
||||
},
|
||||
""
|
||||
]
|
||||
};
|
||||
}
|
||||
if (opts.isReact) {
|
||||
mathJaxOpts["startup"] = {
|
||||
typeset: false
|
||||
};
|
||||
} else {
|
||||
mathJaxOpts["startup"] = {
|
||||
ready() {
|
||||
const { Configuration } = MathJax._.input.tex.Configuration;
|
||||
const configuration = Configuration.create("knowl", {
|
||||
handler: {
|
||||
macro: ["knowl"]
|
||||
}
|
||||
});
|
||||
const NodeUtil = MathJax._.input.tex.NodeUtil.default;
|
||||
function GetArgumentMML(parser, name) {
|
||||
const arg = parser.ParseArg(name);
|
||||
if (!NodeUtil.isInferred(arg)) {
|
||||
return arg;
|
||||
}
|
||||
const children = NodeUtil.getChildren(arg);
|
||||
if (children.length === 1) {
|
||||
return children[0];
|
||||
}
|
||||
const mrow = parser.create("node", "mrow");
|
||||
NodeUtil.copyChildren(arg, mrow);
|
||||
NodeUtil.copyAttributes(arg, mrow);
|
||||
return mrow;
|
||||
}
|
||||
;
|
||||
const CommandMap = MathJax._.input.tex.TokenMap.CommandMap;
|
||||
new CommandMap(
|
||||
"knowl",
|
||||
{
|
||||
knowl(parser, name) {
|
||||
const url = parser.GetArgument(name);
|
||||
const arg = GetArgumentMML(parser, name);
|
||||
const mrow = parser.create("node", "mrow", [arg], { tabindex: "0", "data-knowl": url });
|
||||
parser.Push(mrow);
|
||||
}
|
||||
}
|
||||
);
|
||||
MathJax.startup.defaultReady();
|
||||
},
|
||||
pageReady() {
|
||||
return MathJax.startup.defaultPageReady().then(rsMathReady);
|
||||
}
|
||||
};
|
||||
}
|
||||
if (opts.htmlPresentation) {
|
||||
mathJaxOpts["options"]["menuOptions"] = {
|
||||
"settings": {
|
||||
"zoom": "Click",
|
||||
"zscale": "300%"
|
||||
}
|
||||
};
|
||||
}
|
||||
window.MathJax = mathJaxOpts;
|
||||
const runestoneMathReady = new Promise((resolve) => window.rsMathReady = resolve);
|
||||
window.runestoneMathReady = runestoneMathReady;
|
||||
}
|
||||
export {
|
||||
startMathJax
|
||||
};
|
||||
//# sourceMappingURL=mathjax_startup.js.map
|
||||
Reference in New Issue
Block a user