##// END OF EJS Templates
Proper error handling for nbformat versions in client code....
Proper error handling for nbformat versions in client code. 1. Users are warned when an older nbformat notebook is converted. 2. The notebook notifies the user when a notebook that is too new is attempted to load. To test these things, create a simple notebook. Then change its nbformat field by hand to 2 (to test 1) and then 4 (to test 2).

File last commit:

r5970:b6bb1663
r6061:cddb82ef
Show More
runmode.js
27 lines | 968 B | application/javascript | JavascriptLexer
CodeMirror.runMode = function(string, modespec, callback) {
var mode = CodeMirror.getMode({indentUnit: 2}, modespec);
var isNode = callback.nodeType == 1;
if (isNode) {
var node = callback, accum = [];
callback = function(string, style) {
if (string == "\n")
accum.push("<br>");
else if (style)
accum.push("<span class=\"cm-" + CodeMirror.htmlEscape(style) + "\">" + CodeMirror.htmlEscape(string) + "</span>");
else
accum.push(CodeMirror.htmlEscape(string));
}
}
var lines = CodeMirror.splitLines(string), state = CodeMirror.startState(mode);
for (var i = 0, e = lines.length; i < e; ++i) {
if (i) callback("\n");
var stream = new CodeMirror.StringStream(lines[i]);
while (!stream.eol()) {
var style = mode.token(stream, state);
callback(stream.current(), style, i, stream.start);
stream.start = stream.pos;
}
}
if (isNode)
node.innerHTML = accum.join("");
};