Sync with Khan-exercises

Summary:
Add some things in to make this more useful to khan-exercises.
Notably, make KaTeX.process create and clean up its own .katex node, and rename
.mathmathmath -> .katex.

Test Plan: Make test, make sure the main page still renders stuff

Reviewers: alpert

Reviewed By: alpert

Differential Revision: http://phabricator.khanacademy.org/D3061
This commit is contained in:
Emily Eisenberg
2013-07-17 15:43:55 -07:00
parent b101582aac
commit 383ca01434
6 changed files with 102 additions and 90 deletions

View File

@@ -1,4 +1,5 @@
var Style = require("./Style");
var ParseError = require("./ParseError");
var parseTree = require("./parseTree");
var utils = require("./utils");
@@ -240,23 +241,19 @@ var clearNode = function(node) {
}
};
var process = function(toParse, baseElem) {
try {
var tree = parseTree(toParse);
} catch (e) {
console.error(e);
return false;
}
var process = function(toParse, baseNode) {
var tree = parseTree(toParse);
var style = Style.TEXT;
var expression = buildExpression(style, /* color: */ "", tree);
var span = makeSpan(style.cls(), expression);
var katexNode = makeSpan("katex", [span]);
clearNode(baseElem);
baseElem.appendChild(span);
return true;
clearNode(baseNode);
baseNode.appendChild(katexNode);
};
module.exports = {
process: process
process: process,
ParseError: ParseError
};