| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 | // CodeMirror, copyright (c) by Marijn Haverbeke and others// Distributed under an MIT license: https://codemirror.net/LICENSE(function() {  CodeMirror.defineMode("markdown_with_stex", function(){    var inner = CodeMirror.getMode({}, "stex");    var outer = CodeMirror.getMode({}, "markdown");    var innerOptions = {      open: '$',      close: '$',      mode: inner,      delimStyle: 'delim',      innerStyle: 'inner'    };    return CodeMirror.multiplexingMode(outer, innerOptions);  });  var mode = CodeMirror.getMode({}, "markdown_with_stex");  function MT(name) {    test.mode(      name,      mode,      Array.prototype.slice.call(arguments, 1),      'multiplexing');  }  MT(    "stexInsideMarkdown",    "[strong **Equation:**] [delim&delim-open $][inner&tag \\pi][delim&delim-close $]");  CodeMirror.defineMode("identical_delim_multiplex", function() {    return CodeMirror.multiplexingMode(CodeMirror.getMode({indentUnit: 2}, "javascript"), {      open: "#",      close: "#",      mode: CodeMirror.getMode({}, "markdown"),      parseDelimiters: true,      innerStyle: "q"    });  });  var mode2 = CodeMirror.getMode({}, "identical_delim_multiplex");  test.mode("identical_delimiters_with_parseDelimiters", mode2, [    "[keyword let] [def x] [operator =] [q #foo][q&em *bar*][q #];"  ], "multiplexing")})();
 |