diff options
Diffstat (limited to 'codemirror_ui/lib/CodeMirror-2.3/mode/stex/test.html')
-rw-r--r-- | codemirror_ui/lib/CodeMirror-2.3/mode/stex/test.html | 263 |
1 files changed, 263 insertions, 0 deletions
diff --git a/codemirror_ui/lib/CodeMirror-2.3/mode/stex/test.html b/codemirror_ui/lib/CodeMirror-2.3/mode/stex/test.html new file mode 100644 index 0000000..a60f418 --- /dev/null +++ b/codemirror_ui/lib/CodeMirror-2.3/mode/stex/test.html @@ -0,0 +1,263 @@ +<!doctype html> +<html> + <head> + <title>CodeMirror: sTeX mode</title> + <link rel="stylesheet" href="../../lib/codemirror.css"> + <script src="../../lib/codemirror.js"></script> + <script src="stex.js"></script> + <link rel="stylesheet" href="../../test/mode_test.css"> + <script src="../../test/mode_test.js"></script> + <link rel="stylesheet" href="../../doc/docs.css"> + </head> + <body> + <h1>Tests for the sTeX Mode</h1> + <h2>Basics</h2> + <script language="javascript"> + MT = ModeTest; + + MT.test('foo', + null, 'foo'); + + MT.test('foo bar', + null, 'foo', + null, ' bar'); + </script> + + <h2>Tags</h2> + <script language="javascript"> + MT.test('\\begin{document}\n\\end{document}', + 'tag', '\\begin', + 'bracket', '{', + 'atom', 'document', + 'bracket', '}', + 'tag', '\\end', + 'bracket', '{', + 'atom', 'document', + 'bracket', '}'); + + MT.test('\\begin{equation}\n E=mc^2\n\\end{equation}', + 'tag', '\\begin', + 'bracket', '{', + 'atom', 'equation', + 'bracket', '}', + null, ' ', + null, ' ', + null, 'E', + null, '=mc', + null, '^2', + 'tag', '\\end', + 'bracket', '{', + 'atom', 'equation', + 'bracket', '}'); + + MT.test('\\begin{module}[]', + 'tag', '\\begin', + 'bracket', '{', + 'atom', 'module', + 'bracket', '}', + 'bracket', '[', + 'bracket', ']'); + + MT.test('\\begin{module}[id=bbt-size]', + 'tag', '\\begin', + 'bracket', '{', + 'atom', 'module', + 'bracket', '}', + 'bracket', '[', + null, 'id', + null, '=bbt-size', + 'bracket', ']'); + + MT.test('\\importmodule[b-b-t]{b-b-t}', + 'tag', '\\importmodule', + 'bracket', '[', + 'string', 'b-b-t', + 'bracket', ']', + 'bracket', '{', + 'builtin', 'b-b-t', + 'bracket', '}'); + + MT.test('\\importmodule[\\KWARCslides{dmath/en/cardinality}]{card}', + 'tag', '\\importmodule', + 'bracket', '[', + 'tag', '\\KWARCslides', + 'bracket', '{', + 'string', 'dmath', + 'string', '/en', + 'string', '/cardinality', + 'bracket', '}', + 'bracket', ']', + 'bracket', '{', + 'builtin', 'card', + 'bracket', '}'); + + MT.test('\\PSforPDF[1]{#1}', // could treat #1 specially + 'tag', '\\PSforPDF', + 'bracket', '[', + 'atom', '1', + 'bracket', ']', + 'bracket', '{', + null, '#1', + 'bracket', '}'); + </script> + + <h2>Comments</h2> + <script language="javascript"> + MT.test('% foo', + 'comment', '%', + 'comment', ' foo'); + + MT.test('\\item% bar', + 'tag', '\\item', + 'comment', '%', + 'comment', ' bar'); + + MT.test(' % \\item', + null, ' ', + 'comment', '%', + 'comment', ' \\item'); + + MT.test('%\nfoo', + 'comment', '%', + null, 'foo'); + </script> + + <h2>Errors</h2> + <script language="javascript"> + MT.test('\\begin}{', + 'tag', '\\begin', + 'error', '}', + 'bracket', '{'); + + MT.test('\\item]{', + 'tag', '\\item', + 'error', ']', + 'bracket', '{'); + + MT.test('% }', + 'comment', '%', + 'comment', ' }'); + </script> + + <h2>Character Escapes</h2> + <script language="javascript"> + MT.test('the \\# key', + null, 'the', + null, ' ', + 'tag', '\\#', + null, ' key'); + + MT.test('a \\$5 stetson', + null, 'a', + null, ' ', + 'tag', '\\$', + 'atom', 5, + null, ' stetson'); + + MT.test('100\\% beef', + 'atom', '100', + 'tag', '\\%', + null, ' beef'); + + MT.test('L \\& N', + null, 'L', + null, ' ', + 'tag', '\\&', + null, ' N'); + + MT.test('foo\\_bar', + null, 'foo', + 'tag', '\\_', + null, 'bar'); + + MT.test('\\emph{\\{}', + 'tag', '\\emph', + 'bracket','{', + 'tag', '\\{', + 'bracket','}'); + + MT.test('\\emph{\\}}', + 'tag', '\\emph', + 'bracket','{', + 'tag', '\\}', + 'bracket','}'); + + MT.test('section \\S1', + null, 'section', + null, ' ', + 'tag', '\\S', + 'atom', '1'); + + MT.test('para \\P2', + null, 'para', + null, ' ', + 'tag', '\\P', + 'atom', '2'); + + </script> + + <h2>Spacing control</h2> + + <script language="javascript"> + MT.test('x\\,y', // thinspace + null, 'x', + 'tag', '\\,', + null, 'y'); + + MT.test('x\\;y', // thickspace + null, 'x', + 'tag', '\\;', + null, 'y'); + + MT.test('x\\!y', // negative thinspace + null, 'x', + 'tag', '\\!', + null, 'y'); + + MT.test('J.\\ L.\\ is', // period not ending a sentence + null, 'J', + null, '.', + null, '\\', + null, ' L', + null, '.', + null, '\\', + null, ' is'); // maybe could be better + + MT.test('X\\@. The', // period ending a sentence + null, 'X', + 'tag', '\\@', + null, '.', + null, ' The'); + + MT.test('{\\em If\\/} I', // italic correction + 'bracket', '{', + 'tag', '\\em', + null, ' ', + null, 'If', + 'tag', '\\/', + 'bracket', '}', + null, ' ', + null, 'I'); + + </script> + + <h2>New Commands</h2> + + Should be able to define a new command that happens to be a method on Array + (e.g. <tt>pop</tt>): + <script language="javascript"> + MT.test('\\newcommand{\\pop}', + 'tag', '\\newcommand', + 'bracket', '{', + 'tag', '\\pop', + 'bracket', '}'); + </script> + + <h2>Summary</h2> + <script language="javascript"> + MT.printSummary(); + </script> + + </body> +</html> + |