content-mathml extension: load config from MathJax.Hub.Config
Config is loaded from `MathML.content-mathml`, and extends the CToP.settings object.
This commit is contained in:
parent
86a6c173cf
commit
c17c4e6dfa
|
@ -44,7 +44,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
MathJax.Extension["MathML/content-mathml"] = (function() {
|
MathJax.Extension["MathML/content-mathml"] = (function(HUB) {
|
||||||
/*
|
/*
|
||||||
* Content MathML to Presentation MathML conversion
|
* Content MathML to Presentation MathML conversion
|
||||||
*
|
*
|
||||||
|
@ -52,9 +52,7 @@ MathJax.Extension["MathML/content-mathml"] = (function() {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
var CToP = {
|
var CONFIG = HUB.CombineConfig("MathML.content-mathml",{
|
||||||
version: '2.4',
|
|
||||||
settings: {
|
|
||||||
// render `a+(-b)` as `a-b`?
|
// render `a+(-b)` as `a-b`?
|
||||||
collapsePlusMinus: true,
|
collapsePlusMinus: true,
|
||||||
|
|
||||||
|
@ -70,7 +68,11 @@ MathJax.Extension["MathML/content-mathml"] = (function() {
|
||||||
"gamma": '\u03B3'
|
"gamma": '\u03B3'
|
||||||
}
|
}
|
||||||
|
|
||||||
},
|
});
|
||||||
|
|
||||||
|
var CToP = {
|
||||||
|
version: '2.4',
|
||||||
|
settings: CONFIG,
|
||||||
|
|
||||||
/* Transform the given <math> elements from Content MathML to Presentation MathML and replace the original elements
|
/* Transform the given <math> elements from Content MathML to Presentation MathML and replace the original elements
|
||||||
*/
|
*/
|
||||||
|
@ -468,11 +470,11 @@ MathJax.Extension["MathML/content-mathml"] = (function() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Functions to transform variable/atom tokens
|
/* Functions to transform variable/atom tokens
|
||||||
*/
|
*/
|
||||||
CToP.tokens = {
|
CToP.tokens = {
|
||||||
"ci": function(parentNode,contentMMLNode,precedence) {
|
"ci": function(parentNode,contentMMLNode,precedence) {
|
||||||
if(contentMMLNode.childNodes.length==1 && contentMMLNode.childNodes[0].nodeType==document.TEXT_NODE) {
|
if(contentMMLNode.childNodes.length==1 && contentMMLNode.childNodes[0].nodeType==document.TEXT_NODE) {
|
||||||
var mi = CToP.appendToken(parentNode,'mi',contentMMLNode.textContent);
|
var mi = CToP.appendToken(parentNode,'mi',contentMMLNode.textContent);
|
||||||
|
@ -518,9 +520,9 @@ CToP.tokens = {
|
||||||
"false": CToP.transforms.identifier('false'),
|
"false": CToP.transforms.identifier('false'),
|
||||||
'set': CToP.transforms.set('{','}'),
|
'set': CToP.transforms.set('{','}'),
|
||||||
'list': CToP.transforms.set('(',')')
|
'list': CToP.transforms.set('(',')')
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.tokens['interval'] = function(parentNode,contentMMLNode,precedence) {
|
CToP.tokens['interval'] = function(parentNode,contentMMLNode,precedence) {
|
||||||
var closure = contentMMLNode.getAttribute('closure');
|
var closure = contentMMLNode.getAttribute('closure');
|
||||||
|
|
||||||
var open, close;
|
var open, close;
|
||||||
|
@ -544,8 +546,8 @@ CToP.tokens['interval'] = function(parentNode,contentMMLNode,precedence) {
|
||||||
}
|
}
|
||||||
|
|
||||||
parentNode.appendChild(CToP.createmfenced(CToP.getChildren(contentMMLNode),open,close));
|
parentNode.appendChild(CToP.createmfenced(CToP.getChildren(contentMMLNode),open,close));
|
||||||
}
|
}
|
||||||
CToP.tokens['apply'] = CToP.tokens['reln'] = CToP.tokens['bind'] = function(parentNode,contentMMLNode,precedence) {
|
CToP.tokens['apply'] = CToP.tokens['reln'] = CToP.tokens['bind'] = function(parentNode,contentMMLNode,precedence) {
|
||||||
var children = CToP.classifyChildren(contentMMLNode);
|
var children = CToP.classifyChildren(contentMMLNode);
|
||||||
|
|
||||||
var firstArg=children.args[0];
|
var firstArg=children.args[0];
|
||||||
|
@ -562,9 +564,9 @@ CToP.tokens['apply'] = CToP.tokens['reln'] = CToP.tokens['bind'] = function(pare
|
||||||
} else {
|
} else {
|
||||||
parentNode.appendChild(CToP.createElement('mrow'));
|
parentNode.appendChild(CToP.createElement('mrow'));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.tokens['cn'] = function(parentNode,contentMMLNode,precedence) {
|
CToP.tokens['cn'] = function(parentNode,contentMMLNode,precedence) {
|
||||||
var type = contentMMLNode.getAttribute("type");
|
var type = contentMMLNode.getAttribute("type");
|
||||||
var base = contentMMLNode.getAttribute("base");
|
var base = contentMMLNode.getAttribute("base");
|
||||||
if(type || base) {
|
if(type || base) {
|
||||||
|
@ -605,9 +607,9 @@ CToP.tokens['cn'] = function(parentNode,contentMMLNode,precedence) {
|
||||||
} else {
|
} else {
|
||||||
CToP.transforms.token('mn')(parentNode,contentMMLNode);
|
CToP.transforms.token('mn')(parentNode,contentMMLNode);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.tokens['vector'] = function(parentNode,contentMMLNode,precedence) {
|
CToP.tokens['vector'] = function(parentNode,contentMMLNode,precedence) {
|
||||||
var mrow = CToP.createElement('mrow');
|
var mrow = CToP.createElement('mrow');
|
||||||
CToP.appendToken(mrow,'mo','(');
|
CToP.appendToken(mrow,'mo','(');
|
||||||
|
|
||||||
|
@ -624,9 +626,9 @@ CToP.tokens['vector'] = function(parentNode,contentMMLNode,precedence) {
|
||||||
mrow.appendChild(mtable);
|
mrow.appendChild(mtable);
|
||||||
CToP.appendToken(mrow,'mo',')');
|
CToP.appendToken(mrow,'mo',')');
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.tokens['piecewise'] = function(parentNode,contentMMLNode,precedence) {
|
CToP.tokens['piecewise'] = function(parentNode,contentMMLNode,precedence) {
|
||||||
var mrow = CToP.createElement('mrow');
|
var mrow = CToP.createElement('mrow');
|
||||||
CToP.appendToken(mrow,'mo','{');
|
CToP.appendToken(mrow,'mo','{');
|
||||||
var mtable = CToP.createElement('mtable');
|
var mtable = CToP.createElement('mtable');
|
||||||
|
@ -636,9 +638,9 @@ CToP.tokens['piecewise'] = function(parentNode,contentMMLNode,precedence) {
|
||||||
CToP.applyTransform(mtable,children[i],0);
|
CToP.applyTransform(mtable,children[i],0);
|
||||||
}
|
}
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.tokens['piece'] = function(parentNode,contentMMLNode,precedence) {
|
CToP.tokens['piece'] = function(parentNode,contentMMLNode,precedence) {
|
||||||
var mtr = CToP.createElement('mtr');
|
var mtr = CToP.createElement('mtr');
|
||||||
var children = CToP.getChildren(contentMMLNode);
|
var children = CToP.getChildren(contentMMLNode);
|
||||||
for(i=0;i<children.length;i++){
|
for(i=0;i<children.length;i++){
|
||||||
|
@ -652,9 +654,9 @@ CToP.tokens['piece'] = function(parentNode,contentMMLNode,precedence) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
parentNode.appendChild(mtr);
|
parentNode.appendChild(mtr);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.tokens['otherwise'] = function(parentNode,contentMMLNode,precedence) {
|
CToP.tokens['otherwise'] = function(parentNode,contentMMLNode,precedence) {
|
||||||
var mtr = CToP.createElement('mtr');
|
var mtr = CToP.createElement('mtr');
|
||||||
var children = CToP.getChildren(contentMMLNode);
|
var children = CToP.getChildren(contentMMLNode);
|
||||||
if(children.length){
|
if(children.length){
|
||||||
|
@ -667,9 +669,9 @@ CToP.tokens['otherwise'] = function(parentNode,contentMMLNode,precedence) {
|
||||||
mtr.appendChild(mtd);
|
mtr.appendChild(mtd);
|
||||||
}
|
}
|
||||||
parentNode.appendChild(mtr);
|
parentNode.appendChild(mtr);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.tokens['matrix'] = function(parentNode,contentMMLNode,precedence) {
|
CToP.tokens['matrix'] = function(parentNode,contentMMLNode,precedence) {
|
||||||
var children = CToP.classifyChildren(contentMMLNode);
|
var children = CToP.classifyChildren(contentMMLNode);
|
||||||
var args = children.args, bvars = children.bvars, qualifiers = children.qualifiers;
|
var args = children.args, bvars = children.bvars, qualifiers = children.qualifiers;
|
||||||
|
|
||||||
|
@ -715,9 +717,9 @@ CToP.tokens['matrix'] = function(parentNode,contentMMLNode,precedence) {
|
||||||
mfenced.appendChild(mtable);
|
mfenced.appendChild(mtable);
|
||||||
parentNode.appendChild(mfenced);
|
parentNode.appendChild(mfenced);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.tokens['matrixrow'] = function(parentNode,contentMMLNode,precedence) {
|
CToP.tokens['matrixrow'] = function(parentNode,contentMMLNode,precedence) {
|
||||||
var mtr = CToP.createElement('mtr');
|
var mtr = CToP.createElement('mtr');
|
||||||
var children = CToP.getChildren(contentMMLNode);
|
var children = CToP.getChildren(contentMMLNode);
|
||||||
for(var i=0;i<children.length;i++){
|
for(var i=0;i<children.length;i++){
|
||||||
|
@ -726,17 +728,17 @@ CToP.tokens['matrixrow'] = function(parentNode,contentMMLNode,precedence) {
|
||||||
mtr.appendChild(mtd);
|
mtr.appendChild(mtd);
|
||||||
}
|
}
|
||||||
parentNode.appendChild(mtr);
|
parentNode.appendChild(mtr);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.tokens['condition'] = function(parentNode,contentMMLNode,precedence) {
|
CToP.tokens['condition'] = function(parentNode,contentMMLNode,precedence) {
|
||||||
var mrow = CToP.createElement('mrow');
|
var mrow = CToP.createElement('mrow');
|
||||||
var children = CToP.getChildren(contentMMLNode);
|
var children = CToP.getChildren(contentMMLNode);
|
||||||
for(var i=0;i<children.length;i++){
|
for(var i=0;i<children.length;i++){
|
||||||
CToP.applyTransform(mrow,children[i],0);
|
CToP.applyTransform(mrow,children[i],0);
|
||||||
}
|
}
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
}
|
}
|
||||||
CToP.tokens['lambda'] = function(parentNode,contentMMLNode,precedence) {
|
CToP.tokens['lambda'] = function(parentNode,contentMMLNode,precedence) {
|
||||||
var firstArg = CToP.createElement('lambda');
|
var firstArg = CToP.createElement('lambda');
|
||||||
var children = CToP.classifyChildren(contentMMLNode);
|
var children = CToP.classifyChildren(contentMMLNode);
|
||||||
var args = children.args, bvars = children.bvars, qualifiers = children.qualifiers;
|
var args = children.args, bvars = children.bvars, qualifiers = children.qualifiers;
|
||||||
|
@ -763,34 +765,34 @@ CToP.tokens['lambda'] = function(parentNode,contentMMLNode,precedence) {
|
||||||
}
|
}
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
CToP.tokens["ident"] = function(parentNode,contentMMLNode,precedence) {
|
CToP.tokens["ident"] = function(parentNode,contentMMLNode,precedence) {
|
||||||
CToP.appendToken(parentNode,"mi","id")
|
CToP.appendToken(parentNode,"mi","id")
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.tokens["domainofapplication"] = function(parentNode,contentMMLNode,precedence) {
|
CToP.tokens["domainofapplication"] = function(parentNode,contentMMLNode,precedence) {
|
||||||
var merror = CToP.createElement('merror');
|
var merror = CToP.createElement('merror');
|
||||||
CToP.appendToken(merror,'mtext','unexpected domainofapplication');
|
CToP.appendToken(merror,'mtext','unexpected domainofapplication');
|
||||||
parentNode.appendChild(merror);
|
parentNode.appendChild(merror);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.tokens["share"] = function(parentNode,contentMMLNode,precedence) {
|
CToP.tokens["share"] = function(parentNode,contentMMLNode,precedence) {
|
||||||
var mi = CToP.createElement('mi');
|
var mi = CToP.createElement('mi');
|
||||||
mi.setAttribute('href',contentMMLNode.getAttribute('href'));
|
mi.setAttribute('href',contentMMLNode.getAttribute('href'));
|
||||||
mi.textContent = "Share " + contentMMLNode.getAttribute('href');
|
mi.textContent = "Share " + contentMMLNode.getAttribute('href');
|
||||||
parentNode.appendChild(mi);
|
parentNode.appendChild(mi);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.tokens["cerror"] = function(parentNode,contentMMLNode,precedence) {
|
CToP.tokens["cerror"] = function(parentNode,contentMMLNode,precedence) {
|
||||||
var merror = CToP.createElement('merror');
|
var merror = CToP.createElement('merror');
|
||||||
var children = CToP.getChildren(contentMMLNode);
|
var children = CToP.getChildren(contentMMLNode);
|
||||||
for(var i=0;i<children.length;i++){
|
for(var i=0;i<children.length;i++){
|
||||||
CToP.applyTransform(merror,children[i],0);
|
CToP.applyTransform(merror,children[i],0);
|
||||||
}
|
}
|
||||||
parentNode.appendChild(merror);
|
parentNode.appendChild(merror);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.tokens["semantics"] = function(parentNode,contentMMLNode,precedence) {
|
CToP.tokens["semantics"] = function(parentNode,contentMMLNode,precedence) {
|
||||||
var mrow = CToP.createElement('mrow');
|
var mrow = CToP.createElement('mrow');
|
||||||
var children = CToP.getChildren(contentMMLNode);
|
var children = CToP.getChildren(contentMMLNode);
|
||||||
if(children.length){
|
if(children.length){
|
||||||
|
@ -804,19 +806,19 @@ CToP.tokens["semantics"] = function(parentNode,contentMMLNode,precedence) {
|
||||||
CToP.applyTransform(mrow,z,0);
|
CToP.applyTransform(mrow,z,0);
|
||||||
}
|
}
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.tokens["annotation-xml"] = function(parentNode,contentMMLNode,precedence) {
|
CToP.tokens["annotation-xml"] = function(parentNode,contentMMLNode,precedence) {
|
||||||
var mrow = CToP.createElement('mrow');
|
var mrow = CToP.createElement('mrow');
|
||||||
var children = CToP.getChildren(contentMMLNode);
|
var children = CToP.getChildren(contentMMLNode);
|
||||||
for(var i=0;i<children.length;i++){
|
for(var i=0;i<children.length;i++){
|
||||||
CToP.applyTransform(mrow,children[i],0);
|
CToP.applyTransform(mrow,children[i],0);
|
||||||
}
|
}
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
CToP.contentDictionaries = {
|
CToP.contentDictionaries = {
|
||||||
"setname1": function(parentNode,contentMMLNode,precedence) {
|
"setname1": function(parentNode,contentMMLNode,precedence) {
|
||||||
var sets = {
|
var sets = {
|
||||||
"C": '\u2102',
|
"C": '\u2102',
|
||||||
|
@ -833,11 +835,11 @@ CToP.contentDictionaries = {
|
||||||
var name = contentMMLNode.textContent;
|
var name = contentMMLNode.textContent;
|
||||||
CToP.appendToken(parentNode,'mi',name+':');
|
CToP.appendToken(parentNode,'mi',name+':');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Functions to transform function/operation application tokens
|
/* Functions to transform function/operation application tokens
|
||||||
*/
|
*/
|
||||||
CToP.applyTokens = {
|
CToP.applyTokens = {
|
||||||
"rem": CToP.transforms.binary('mod',3),
|
"rem": CToP.transforms.binary('mod',3),
|
||||||
"divide": CToP.transforms.binary('/',3),
|
"divide": CToP.transforms.binary('/',3),
|
||||||
"remainder": CToP.transforms.binary('mod',3),
|
"remainder": CToP.transforms.binary('mod',3),
|
||||||
|
@ -880,22 +882,22 @@ CToP.applyTokens = {
|
||||||
"imaginary": CToP.transforms.fn('\u2111'),
|
"imaginary": CToP.transforms.fn('\u2111'),
|
||||||
"set": CToP.transforms.set('{','}'),
|
"set": CToP.transforms.set('{','}'),
|
||||||
"list": CToP.transforms.set('(',')')
|
"list": CToP.transforms.set('(',')')
|
||||||
}
|
}
|
||||||
CToP.applyTokens['exp'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['exp'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var msup = CToP.createElement('msup');
|
var msup = CToP.createElement('msup');
|
||||||
CToP.appendToken(msup,'mi','e');
|
CToP.appendToken(msup,'mi','e');
|
||||||
CToP.applyTransform(msup,args[0],0);
|
CToP.applyTransform(msup,args[0],0);
|
||||||
parentNode.appendChild(msup);
|
parentNode.appendChild(msup);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.applyTokens['union'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['union'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
if(bvars.length) {
|
if(bvars.length) {
|
||||||
CToP.transforms.iteration('\u22C3','=')(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence);
|
CToP.transforms.iteration('\u22C3','=')(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence);
|
||||||
} else {
|
} else {
|
||||||
CToP.transforms.infix('\u222A',2)(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence);
|
CToP.transforms.infix('\u222A',2)(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
CToP.applyTokens['intersect'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['intersect'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
if(bvars.length) {
|
if(bvars.length) {
|
||||||
CToP.transforms.iteration('\u22C2','=')(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence);
|
CToP.transforms.iteration('\u22C2','=')(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence);
|
||||||
} else {
|
} else {
|
||||||
|
@ -926,57 +928,57 @@ CToP.applyTokens['intersect'] = function(parentNode,contentMMLNode,firstArg,args
|
||||||
}
|
}
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.applyTokens['floor'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['floor'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var mrow = CToP.createElement('mrow');
|
var mrow = CToP.createElement('mrow');
|
||||||
CToP.appendToken(mrow,'mo','\u230a');
|
CToP.appendToken(mrow,'mo','\u230a');
|
||||||
CToP.applyTransform(mrow,args[0],0);
|
CToP.applyTransform(mrow,args[0],0);
|
||||||
CToP.appendToken(mrow,'mo','\u230b');
|
CToP.appendToken(mrow,'mo','\u230b');
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
}
|
}
|
||||||
CToP.applyTokens['conjugate'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['conjugate'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var mover = CToP.createElement('mover');
|
var mover = CToP.createElement('mover');
|
||||||
CToP.applyTransform(mover,args[0],0);
|
CToP.applyTransform(mover,args[0],0);
|
||||||
CToP.appendToken(mover,'mo','\u00af');
|
CToP.appendToken(mover,'mo','\u00af');
|
||||||
parentNode.appendChild(mover);
|
parentNode.appendChild(mover);
|
||||||
}
|
}
|
||||||
CToP.applyTokens['abs'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['abs'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var mrow = CToP.createElement('mrow');
|
var mrow = CToP.createElement('mrow');
|
||||||
CToP.appendToken(mrow,'mo','|');
|
CToP.appendToken(mrow,'mo','|');
|
||||||
CToP.applyTransform(mrow,args[0],0);
|
CToP.applyTransform(mrow,args[0],0);
|
||||||
CToP.appendToken(mrow,'mo','|');
|
CToP.appendToken(mrow,'mo','|');
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
}
|
}
|
||||||
CToP.applyTokens['and'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['and'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
if(bvars.length || qualifiers.length) {
|
if(bvars.length || qualifiers.length) {
|
||||||
CToP.transforms.iteration('\u22c0','=')(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,4);
|
CToP.transforms.iteration('\u22c0','=')(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,4);
|
||||||
} else {
|
} else {
|
||||||
CToP.transforms.infix('\u2227',2)(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence);
|
CToP.transforms.infix('\u2227',2)(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
CToP.applyTokens['or'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['or'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
if(bvars.length || qualifiers.length) {
|
if(bvars.length || qualifiers.length) {
|
||||||
CToP.transforms.iteration('\u22c1','=')(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,4);
|
CToP.transforms.iteration('\u22c1','=')(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,4);
|
||||||
} else {
|
} else {
|
||||||
CToP.transforms.infix('\u2228',2)(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence);
|
CToP.transforms.infix('\u2228',2)(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
CToP.applyTokens['xor'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['xor'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
if(bvars.length || qualifiers.length) {
|
if(bvars.length || qualifiers.length) {
|
||||||
CToP.transforms.iteration('xor','=')(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,4);
|
CToP.transforms.iteration('xor','=')(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,4);
|
||||||
} else {
|
} else {
|
||||||
CToP.transforms.infix('xor',2)(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence);
|
CToP.transforms.infix('xor',2)(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
CToP.applyTokens['card'] = CToP.applyTokens['size'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['card'] = CToP.applyTokens['size'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var mrow = CToP.createElement('mrow');
|
var mrow = CToP.createElement('mrow');
|
||||||
CToP.appendToken(mrow,'mo','|');
|
CToP.appendToken(mrow,'mo','|');
|
||||||
CToP.applyTransform(mrow,args[0],0);
|
CToP.applyTransform(mrow,args[0],0);
|
||||||
CToP.appendToken(mrow,'mo','|');
|
CToP.appendToken(mrow,'mo','|');
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
}
|
}
|
||||||
CToP.applyTokens['mean'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['mean'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
if(args.length==1) {
|
if(args.length==1) {
|
||||||
var mover = CToP.createElement('mover');
|
var mover = CToP.createElement('mover');
|
||||||
CToP.applyTransform(mover,args[0],0);
|
CToP.applyTransform(mover,args[0],0);
|
||||||
|
@ -985,8 +987,8 @@ CToP.applyTokens['mean'] = function(parentNode,contentMMLNode,firstArg,args,bvar
|
||||||
} else {
|
} else {
|
||||||
parentNode.appendChild(CToP.createmfenced(args,'\u27e8','\u27e9'));
|
parentNode.appendChild(CToP.createmfenced(args,'\u27e8','\u27e9'));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
CToP.applyTokens['moment'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['moment'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var degree,momentabout;
|
var degree,momentabout;
|
||||||
|
|
||||||
for(var i=0; i<qualifiers.length;i++){
|
for(var i=0; i<qualifiers.length;i++){
|
||||||
|
@ -1029,9 +1031,9 @@ CToP.applyTokens['moment'] = function(parentNode,contentMMLNode,firstArg,args,bv
|
||||||
} else {
|
} else {
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.applyTokens['variance'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['variance'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var mrow = CToP.createElement('mrow');
|
var mrow = CToP.createElement('mrow');
|
||||||
var msup = CToP.createElement('msup');
|
var msup = CToP.createElement('msup');
|
||||||
CToP.appendToken(msup,'mo','\u03c3');
|
CToP.appendToken(msup,'mo','\u03c3');
|
||||||
|
@ -1040,15 +1042,15 @@ CToP.applyTokens['variance'] = function(parentNode,contentMMLNode,firstArg,args,
|
||||||
CToP.appendToken(mrow,'mo','\u2061');
|
CToP.appendToken(mrow,'mo','\u2061');
|
||||||
mrow.appendChild(CToP.createmfenced(args,'(',')'));
|
mrow.appendChild(CToP.createmfenced(args,'(',')'));
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
}
|
}
|
||||||
CToP.applyTokens['grad'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['grad'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var mrow = CToP.createElement('mrow');
|
var mrow = CToP.createElement('mrow');
|
||||||
CToP.appendToken(mrow,'mo','\u2207');
|
CToP.appendToken(mrow,'mo','\u2207');
|
||||||
CToP.appendToken(mrow,'mo','\u2061');
|
CToP.appendToken(mrow,'mo','\u2061');
|
||||||
mrow.appendChild(CToP.createmfenced(args,'(',')'));
|
mrow.appendChild(CToP.createmfenced(args,'(',')'));
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
};
|
};
|
||||||
CToP.applyTokens['laplacian'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['laplacian'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var mrow = CToP.createElement('mrow');
|
var mrow = CToP.createElement('mrow');
|
||||||
var msup = CToP.createElement('msup');
|
var msup = CToP.createElement('msup');
|
||||||
CToP.appendToken(msup,'mo','\u2207');
|
CToP.appendToken(msup,'mo','\u2207');
|
||||||
|
@ -1057,8 +1059,8 @@ CToP.applyTokens['laplacian'] = function(parentNode,contentMMLNode,firstArg,args
|
||||||
CToP.appendToken(mrow,'mo','\u2061');
|
CToP.appendToken(mrow,'mo','\u2061');
|
||||||
mrow.appendChild(CToP.createmfenced(args,'(',')'));
|
mrow.appendChild(CToP.createmfenced(args,'(',')'));
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
};
|
};
|
||||||
CToP.applyTokens['curl'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['curl'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var mrow = CToP.createElement('mrow');
|
var mrow = CToP.createElement('mrow');
|
||||||
CToP.appendToken(mrow,'mo','\u2207');
|
CToP.appendToken(mrow,'mo','\u2207');
|
||||||
CToP.appendToken(mrow,'mo','\u00d7');
|
CToP.appendToken(mrow,'mo','\u00d7');
|
||||||
|
@ -1070,8 +1072,8 @@ CToP.applyTokens['curl'] = function(parentNode,contentMMLNode,firstArg,args,bvar
|
||||||
CToP.applyTransform(mrow,args[0],precedence);
|
CToP.applyTransform(mrow,args[0],precedence);
|
||||||
}
|
}
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
};
|
};
|
||||||
CToP.applyTokens['divergence'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['divergence'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var mrow = CToP.createElement('mrow');
|
var mrow = CToP.createElement('mrow');
|
||||||
CToP.appendToken(mrow,'mo','\u2207');
|
CToP.appendToken(mrow,'mo','\u2207');
|
||||||
CToP.appendToken(mrow,'mo','\u22c5');
|
CToP.appendToken(mrow,'mo','\u22c5');
|
||||||
|
@ -1083,8 +1085,8 @@ CToP.applyTokens['divergence'] = function(parentNode,contentMMLNode,firstArg,arg
|
||||||
CToP.applyTransform(mrow,args[0],precedence);
|
CToP.applyTransform(mrow,args[0],precedence);
|
||||||
}
|
}
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
};
|
};
|
||||||
CToP.applyTokens['not'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['not'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var mrow = CToP.createElement('mrow');
|
var mrow = CToP.createElement('mrow');
|
||||||
CToP.appendToken(mrow,'mo','\u00ac');
|
CToP.appendToken(mrow,'mo','\u00ac');
|
||||||
var needsBrackets = args[0].localName=='apply' || args[0].localName=='bind';
|
var needsBrackets = args[0].localName=='apply' || args[0].localName=='bind';
|
||||||
|
@ -1096,14 +1098,14 @@ CToP.applyTokens['not'] = function(parentNode,contentMMLNode,firstArg,args,bvars
|
||||||
CToP.appendToken(mrow,'mo',')');
|
CToP.appendToken(mrow,'mo',')');
|
||||||
}
|
}
|
||||||
parentNode.appendChild(mrow)
|
parentNode.appendChild(mrow)
|
||||||
}
|
}
|
||||||
CToP.applyTokens['divide'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['divide'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var mfrac = CToP.createElement('mfrac');
|
var mfrac = CToP.createElement('mfrac');
|
||||||
CToP.applyTransform(mfrac,args[0],0);
|
CToP.applyTransform(mfrac,args[0],0);
|
||||||
CToP.applyTransform(mfrac,args[1],0);
|
CToP.applyTransform(mfrac,args[1],0);
|
||||||
parentNode.appendChild(mfrac);
|
parentNode.appendChild(mfrac);
|
||||||
}
|
}
|
||||||
CToP.applyTokens['tendsto'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['tendsto'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var type;
|
var type;
|
||||||
if(firstArg.localName=='tendsto') {
|
if(firstArg.localName=='tendsto') {
|
||||||
type = firstArg.getAttribute('type');
|
type = firstArg.getAttribute('type');
|
||||||
|
@ -1114,8 +1116,8 @@ CToP.applyTokens['tendsto'] = function(parentNode,contentMMLNode,firstArg,args,b
|
||||||
var name = (type=='above')? '\u2198' :
|
var name = (type=='above')? '\u2198' :
|
||||||
(type=='below') ? '\u2197' : '\u2192' ;
|
(type=='below') ? '\u2197' : '\u2192' ;
|
||||||
CToP.transforms.binary(name,2)(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence);
|
CToP.transforms.binary(name,2)(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence);
|
||||||
}
|
}
|
||||||
CToP.applyTokens['minus'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['minus'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var tokenPrecedence = args.length==1 ? 5 : 2;
|
var tokenPrecedence = args.length==1 ? 5 : 2;
|
||||||
|
|
||||||
var mrow = CToP.createElement('mrow');
|
var mrow = CToP.createElement('mrow');
|
||||||
|
@ -1148,8 +1150,8 @@ CToP.applyTokens['minus'] = function(parentNode,contentMMLNode,firstArg,args,bva
|
||||||
CToP.appendToken(mrow,'mo',')');
|
CToP.appendToken(mrow,'mo',')');
|
||||||
}
|
}
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
}
|
}
|
||||||
CToP.applyTokens['complex-cartesian'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['complex-cartesian'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var mrow = CToP.createElement('mrow');
|
var mrow = CToP.createElement('mrow');
|
||||||
CToP.applyTransform(mrow,args[0],0);
|
CToP.applyTransform(mrow,args[0],0);
|
||||||
CToP.appendToken(mrow,'mo','+');
|
CToP.appendToken(mrow,'mo','+');
|
||||||
|
@ -1157,9 +1159,9 @@ CToP.applyTokens['complex-cartesian'] = function(parentNode,contentMMLNode,first
|
||||||
CToP.appendToken(mrow,'mo','\u2062');
|
CToP.appendToken(mrow,'mo','\u2062');
|
||||||
CToP.appendToken(mrow,'mi','i');
|
CToP.appendToken(mrow,'mi','i');
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.applyTokens['complex-polar'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['complex-polar'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var mrow = CToP.createElement('mrow');
|
var mrow = CToP.createElement('mrow');
|
||||||
CToP.applyTransform(mrow,args[0],0);
|
CToP.applyTransform(mrow,args[0],0);
|
||||||
CToP.appendToken(mrow,'mo','\u2062');
|
CToP.appendToken(mrow,'mo','\u2062');
|
||||||
|
@ -1172,27 +1174,27 @@ CToP.applyTokens['complex-polar'] = function(parentNode,contentMMLNode,firstArg,
|
||||||
msup.appendChild(exponent);
|
msup.appendChild(exponent);
|
||||||
mrow.appendChild(msup);
|
mrow.appendChild(msup);
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.applyTokens['integer'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['integer'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
CToP.applyTransform(parentNode,args[0],0);
|
CToP.applyTransform(parentNode,args[0],0);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.applyTokens['based-integer'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['based-integer'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var msub = CToP.createElement('msub');
|
var msub = CToP.createElement('msub');
|
||||||
CToP.applyTransform(msub,args[1],0);
|
CToP.applyTransform(msub,args[1],0);
|
||||||
CToP.applyTransform(msub,args[0],0);
|
CToP.applyTransform(msub,args[0],0);
|
||||||
parentNode.appendChild(msub);
|
parentNode.appendChild(msub);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.applyTokens['rational'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['rational'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var mfrac = CToP.createElement('mfrac');
|
var mfrac = CToP.createElement('mfrac');
|
||||||
CToP.applyTransform(mfrac,args[0],0);
|
CToP.applyTransform(mfrac,args[0],0);
|
||||||
CToP.applyTransform(mfrac,args[1],0);
|
CToP.applyTransform(mfrac,args[1],0);
|
||||||
parentNode.appendChild(mfrac);
|
parentNode.appendChild(mfrac);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.applyTokens['times'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['times'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var mrow = CToP.createElement('mrow');
|
var mrow = CToP.createElement('mrow');
|
||||||
var needsBrackets = precedence>3;
|
var needsBrackets = precedence>3;
|
||||||
if(needsBrackets) {
|
if(needsBrackets) {
|
||||||
|
@ -1208,9 +1210,9 @@ CToP.applyTokens['times'] = function(parentNode,contentMMLNode,firstArg,args,bva
|
||||||
CToP.appendToken(mrow,'mo',')');
|
CToP.appendToken(mrow,'mo',')');
|
||||||
}
|
}
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.applyTokens["plus"] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens["plus"] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var mrow = CToP.createElement('mrow');
|
var mrow = CToP.createElement('mrow');
|
||||||
var needsBrackets = precedence>2;
|
var needsBrackets = precedence>2;
|
||||||
if(needsBrackets) {
|
if(needsBrackets) {
|
||||||
|
@ -1248,23 +1250,23 @@ CToP.applyTokens["plus"] = function(parentNode,contentMMLNode,firstArg,args,bvar
|
||||||
CToP.appendToken(mrow,'mo',')');
|
CToP.appendToken(mrow,'mo',')');
|
||||||
}
|
}
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.applyTokens['transpose'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['transpose'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var msup = CToP.createElement('msup');
|
var msup = CToP.createElement('msup');
|
||||||
CToP.applyTransform(msup,args[0],precedence);
|
CToP.applyTransform(msup,args[0],precedence);
|
||||||
CToP.appendToken(msup,'mi','T');
|
CToP.appendToken(msup,'mi','T');
|
||||||
parentNode.appendChild(msup);
|
parentNode.appendChild(msup);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.applyTokens['power'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['power'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var msup = CToP.createElement('msup');
|
var msup = CToP.createElement('msup');
|
||||||
CToP.applyTransform(msup,args[0],3);
|
CToP.applyTransform(msup,args[0],3);
|
||||||
CToP.applyTransform(msup,args[1],precedence);
|
CToP.applyTransform(msup,args[1],precedence);
|
||||||
parentNode.appendChild(msup);
|
parentNode.appendChild(msup);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.applyTokens['selector'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens['selector'] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var msub = CToP.createElement('msub');
|
var msub = CToP.createElement('msub');
|
||||||
var mrow = args ? args[0]: CToP.createElement('mrow');
|
var mrow = args ? args[0]: CToP.createElement('mrow');
|
||||||
CToP.applyTransform(msub,mrow,0);
|
CToP.applyTransform(msub,mrow,0);
|
||||||
|
@ -1277,9 +1279,9 @@ CToP.applyTokens['selector'] = function(parentNode,contentMMLNode,firstArg,args,
|
||||||
}
|
}
|
||||||
msub.appendChild(mrow2);
|
msub.appendChild(mrow2);
|
||||||
parentNode.appendChild(msub);
|
parentNode.appendChild(msub);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.applyTokens["log"] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens["log"] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var mrow = CToP.createElement('mrow');
|
var mrow = CToP.createElement('mrow');
|
||||||
var mi = CToP.createElement('mi');
|
var mi = CToP.createElement('mi');
|
||||||
mi.textContent = 'log';
|
mi.textContent = 'log';
|
||||||
|
@ -1293,9 +1295,9 @@ CToP.applyTokens["log"] = function(parentNode,contentMMLNode,firstArg,args,bvars
|
||||||
}
|
}
|
||||||
CToP.applyTransform(mrow,args[0],7);
|
CToP.applyTransform(mrow,args[0],7);
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.applyTokens["int"] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens["int"] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var mrow = CToP.createElement('mrow');
|
var mrow = CToP.createElement('mrow');
|
||||||
var mo = CToP.createElement('mo');
|
var mo = CToP.createElement('mo');
|
||||||
mo.textContent='\u222B';
|
mo.textContent='\u222B';
|
||||||
|
@ -1349,9 +1351,9 @@ CToP.applyTokens["int"] = function(parentNode,contentMMLNode,firstArg,args,bvars
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.applyTokens["inverse"] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens["inverse"] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var msup = CToP.createElement('msup');
|
var msup = CToP.createElement('msup');
|
||||||
var arg = (args.length) ? args[0] : CToP.createElement('mrow');
|
var arg = (args.length) ? args[0] : CToP.createElement('mrow');
|
||||||
CToP.applyTransform(msup,arg,precedence);
|
CToP.applyTransform(msup,arg,precedence);
|
||||||
|
@ -1359,9 +1361,9 @@ CToP.applyTokens["inverse"] = function(parentNode,contentMMLNode,firstArg,args,b
|
||||||
CToP.appendToken(mfenced,'mn','-1');
|
CToP.appendToken(mfenced,'mn','-1');
|
||||||
msup.appendChild(mfenced);
|
msup.appendChild(mfenced);
|
||||||
parentNode.appendChild(msup);
|
parentNode.appendChild(msup);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.applyTokens["quotient"] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens["quotient"] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var mrow = CToP.createElement('mrow');
|
var mrow = CToP.createElement('mrow');
|
||||||
CToP.appendToken(mrow,'mo','\u230A');
|
CToP.appendToken(mrow,'mo','\u230A');
|
||||||
if(args.length) {
|
if(args.length) {
|
||||||
|
@ -1373,16 +1375,16 @@ CToP.applyTokens["quotient"] = function(parentNode,contentMMLNode,firstArg,args,
|
||||||
}
|
}
|
||||||
CToP.appendToken(mrow,'mo','\u230B');
|
CToP.appendToken(mrow,'mo','\u230B');
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.applyTokens["factorial"] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens["factorial"] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var mrow = CToP.createElement('mrow');
|
var mrow = CToP.createElement('mrow');
|
||||||
CToP.applyTransform(mrow,args[0],4);
|
CToP.applyTransform(mrow,args[0],4);
|
||||||
CToP.appendToken(mrow,'mo','!');
|
CToP.appendToken(mrow,'mo','!');
|
||||||
parentNode.appendChild(mrow);
|
parentNode.appendChild(mrow);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.applyTokens["root"] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens["root"] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var mr;
|
var mr;
|
||||||
if(firstArg.localName=='root' && (qualifiers.length==0 || (qualifiers[0].localName=='degree' && qualifiers[0].textContent=='2'))){
|
if(firstArg.localName=='root' && (qualifiers.length==0 || (qualifiers[0].localName=='degree' && qualifiers[0].textContent=='2'))){
|
||||||
mr = CToP.createElement('msqrt');
|
mr = CToP.createElement('msqrt');
|
||||||
|
@ -1396,9 +1398,9 @@ CToP.applyTokens["root"] = function(parentNode,contentMMLNode,firstArg,args,bvar
|
||||||
CToP.applyTransform(mr,arg,0);
|
CToP.applyTransform(mr,arg,0);
|
||||||
}
|
}
|
||||||
parentNode.appendChild(mr);
|
parentNode.appendChild(mr);
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.applyTokens["diff"] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens["diff"] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
if(bvars.length){ // d/dx form
|
if(bvars.length){ // d/dx form
|
||||||
var outNode;
|
var outNode;
|
||||||
var mfrac = CToP.createElement('mfrac');
|
var mfrac = CToP.createElement('mfrac');
|
||||||
|
@ -1467,9 +1469,9 @@ CToP.applyTokens["diff"] = function(parentNode,contentMMLNode,firstArg,args,bvar
|
||||||
CToP.appendToken(m,'mo','\u2032'); // tick
|
CToP.appendToken(m,'mo','\u2032'); // tick
|
||||||
parentNode.appendChild(msup);
|
parentNode.appendChild(msup);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
CToP.applyTokens["partialdiff"] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
CToP.applyTokens["partialdiff"] = function(parentNode,contentMMLNode,firstArg,args,bvars,qualifiers,precedence) {
|
||||||
var m, mi, msup, mrow, mo, z;
|
var m, mi, msup, mrow, mo, z;
|
||||||
|
|
||||||
var mfrac = CToP.createElement('mfrac');
|
var mfrac = CToP.createElement('mfrac');
|
||||||
|
@ -1626,10 +1628,10 @@ CToP.applyTokens["partialdiff"] = function(parentNode,contentMMLNode,firstArg,ar
|
||||||
outNode = mfrac;
|
outNode = mfrac;
|
||||||
}
|
}
|
||||||
parentNode.appendChild(outNode);
|
parentNode.appendChild(outNode);
|
||||||
}
|
}
|
||||||
|
|
||||||
return CToP;
|
return CToP;
|
||||||
})();
|
})(MathJax.Hub);
|
||||||
|
|
||||||
|
|
||||||
MathJax.Hub.Register.StartupHook("MathML Jax Ready",function () {
|
MathJax.Hub.Register.StartupHook("MathML Jax Ready",function () {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user