www

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

commit e0407a19a09bc1ed6dada3c90f533f49c32ce478
parent f8e0c91de464af514479d53521d77036494145ce
Author: Eddie Kohler <ekohler@gmail.com>
Date:   Wed, 23 Nov 2016 09:28:09 -0500

Support \atop.

Add Jasmine test and update screenshotter test.

Diffstat:
Msrc/functions.js | 9++++++++-
Mtest/katex-spec.js | 9+++++++++
Mtest/screenshotter/images/FractionTest-chrome.png | 0
Mtest/screenshotter/images/FractionTest-firefox.png | 0
Mtest/screenshotter/ss_data.yaml | 2+-
5 files changed, 18 insertions(+), 2 deletions(-)

diff --git a/src/functions.js b/src/functions.js @@ -418,6 +418,7 @@ defineFunction("\\mathop", { defineFunction([ "\\dfrac", "\\frac", "\\tfrac", "\\dbinom", "\\binom", "\\tbinom", + "\\\\atopfrac", // can’t be entered directly ], { numArgs: 2, greediness: 2, @@ -435,6 +436,9 @@ defineFunction([ case "\\tfrac": hasBarLine = true; break; + case "\\\\atopfrac": + hasBarLine = false; + break; case "\\dbinom": case "\\binom": case "\\tbinom": @@ -571,7 +575,7 @@ defineFunction([ }); // Infix generalized fractions -defineFunction(["\\over", "\\choose"], { +defineFunction(["\\over", "\\choose", "\\atop"], { numArgs: 0, infix: true, }, function(context) { @@ -583,6 +587,9 @@ defineFunction(["\\over", "\\choose"], { case "\\choose": replaceWith = "\\binom"; break; + case "\\atop": + replaceWith = "\\\\atopfrac"; + break; default: throw new Error("Unrecognized infix genfrac command"); } diff --git a/test/katex-spec.js b/test/katex-spec.js @@ -606,6 +606,15 @@ describe("A frac parser", function() { expect(tfracParse.value.numer).toBeDefined(); expect(tfracParse.value.denom).toBeDefined(); }); + + it("should parse atop", function() { + var parse = getParsed("x \\atop y")[0]; + + expect(parse.type).toEqual("genfrac"); + expect(parse.value.numer).toBeDefined(); + expect(parse.value.denom).toBeDefined(); + expect(parse.value.hasBarLine).toEqual(false); + }); }); describe("An over parser", function() { diff --git a/test/screenshotter/images/FractionTest-chrome.png b/test/screenshotter/images/FractionTest-chrome.png Binary files differ. diff --git a/test/screenshotter/images/FractionTest-firefox.png b/test/screenshotter/images/FractionTest-firefox.png Binary files differ. diff --git a/test/screenshotter/ss_data.yaml b/test/screenshotter/ss_data.yaml @@ -62,7 +62,7 @@ DisplayStyle: | {\displaystyle\sqrt{x}}{\sqrt{x}} {\displaystyle \frac12}{\frac12}{\displaystyle x^1_2}{x^1_2} Exponents: a^{a^a_a}_{a^a_a} -FractionTest: \dfrac{a}{b}\frac{a}{b}\tfrac{a}{b}\;-\dfrac12\;1\tfrac12 +FractionTest: \dfrac{a}{b}\frac{a}{b}\tfrac{a}{b}\;-\dfrac12\;1\tfrac12\;{1 \atop 2} Functions: \sin\cos\tan\ln\log GreekLetters: \alpha\beta\gamma\omega KaTeX: \KaTeX