mirror of
https://github.com/Smaug123/KaTeX
synced 2025-10-12 06:28:40 +00:00
Support for top-level \newline and \\ in inline math (#1298)
* Support for top-level \newline and \\ in inline math This was a little tricky because `\\` was defined as an endOfExpression. Instead made `\\` a termination specific to an array environment. Outside an array environment, buildHTML handles the `cr` object, resulting in a `.newline` class. Currently this turns into a `display: block` (with appropriate vertical spacing) only in inline math, matching LaTeX. * Simplify code * Fix Jest errors * NewLine screenshot test * Bug fix: \\ only works at top level of inline * Add \newline and \cr to test * Switch test to pmatrix * Add vertical space test * Add \\ vs. \newline tests * Fix flow errors * Add \cr test * Add documentation for \\ at top level * Comment out newRow * Fix commenting out
This commit is contained in:
@@ -3126,6 +3126,18 @@ describe("The \\mathchoice function", function() {
|
||||
});
|
||||
});
|
||||
|
||||
describe("Newlines via \\\\ and \\newline", function() {
|
||||
it("should build \\\\ and \\newline the same", () => {
|
||||
expect("hello \\\\ world").toBuildLike("hello \\newline world");
|
||||
expect("hello \\\\[1ex] world").toBuildLike(
|
||||
"hello \\newline[1ex] world");
|
||||
});
|
||||
|
||||
it("should not allow \\cr at top level", () => {
|
||||
expect("hello \\cr world").toNotParse();
|
||||
});
|
||||
});
|
||||
|
||||
describe("Symbols", function() {
|
||||
it("should parse \\text{\\i\\j}", () => {
|
||||
expect("\\text{\\i\\j}").toBuild();
|
||||
|
Reference in New Issue
Block a user