KaTeX

Fast math typesetting for the web.

MIT License

Downloads
5.1M
Stars
17.7K
Committers
167

Bot releases are visible (Hide)

KaTeX - v0.9.0-alpha

Published by kevinbarabash about 7 years ago

Breaking changes:

  • Require [text]color HTML colors to be well-formed. (#827)
  • \llap and \rlap now render contents in math mode, use \mathllap (new) and \mathrlap (new) if you need the previous behavior.

New features:

  • Added MathJax compatibility script (#680)
  • Add a maxSize option to limit user-specified sizes (#803)
  • Add \smash, laps, spaces, and phantoms (#833)
  • Advanced macro support and magic \dots (#794)
  • Support for \raisebox (#685)
  • copy-tex contrib module (#813)
  • Support \operatorname. Resolve #145 (#866)
  • Support \And (#881)
  • Support \colorbox and \fcolorbox (#886)
  • Implement \verb (#614)
  • Add support for comments, fixes #20 (#884)
  • allow sizing commands inside optional groups (#885)

Bug fixes:

  • Fix exponential behavior in accent production (#834)
  • Use mpadded for \raisebox MathML (#876)
  • Fix #337 - Array/Matrix environments do not trim newlines (#479)

Other changes:

  • Add contrib to NPM files
  • To @flow: Token, Lexer, ParseError, and ParseNode. (#839)
  • Update Parser comments to match implementation. (#837)
  • Fix match-at flow errors (#847)
  • To @flow: MacroExpander. (#845)
  • eslint-plugin-flowtype & upgrade to eslint@4 (#849)
  • Port unit.js to @flow. (#855)
  • Improve SVG Performance (#841)
  • To @flow: fontMetrics, fontMetricsData, Options, Settings, Style (#848)
  • Port symbol.js to @flow. (#858)
  • Fix small type error in defineFunctions. (#860)
  • Port environments.js to @flow. (#862)
  • Remove the positions array computed by Parser's parseArguments(). (#864)
  • Port functions.js to @flow. (#867)
  • Allow test/lint scripts to run without requiring make (#878)
  • Upgrade \sqrt zoom and width (#890)
  • refactor defineEnvironment to also accept HTML and MathML builders (#875)
  • Correct @flow types. Refactor some Parser code for stricter typing. (#896)
  • Add SourceLocation to encapsulate Token/ParseNode debug information. (#904)
  • Parser: Separate mandatory and optional arguments in parseArguments (#903)
  • Webpack dev server (#902)
  • Replace ParseFuncOrArgument with type-safer alternative. (#901)
  • ensure that build/ exists (#918)
KaTeX - v0.8.3 (2017-08-27)

Published by kevinbarabash about 7 years ago

New features:

  • Add latin-1 letters as math symbols (#796)
  • Support CJK full-width punctuation + Unicode dots (#814)
  • Support for ' ` ^ ~ = \u . " \r \H \v text-mode accents (#802)
  • Added support for \not (#140)

Bug fixes:

  • Use inline SVG for stretchy elements (#807)
  • Improve \sqrt #810

Other changes:

  • Modernize font creation (#624)
  • Pre-commit hook to call make lint (#815)
  • Fix link in CONTRIBUTING.md.
  • Reduce SVG (#819)
  • switch pre-commit hook to use pre-commit npm package (#823)
KaTeX - v0.8.2 (2017-08-17)

Published by kevinbarabash about 7 years ago

New features:

  • Accept all existing Greek letters using unicode characters in math mode (#410)

Bug fixes:

  • Fix MathML output for ' and large operators with limits (#788)
  • Update package.json to point 'main' at dist/katex.js (#791)
  • Fix color support for stretchy, strikethrough, and fbox (#792)

Other changes:

  • Detect attachEvent() support correctly, fixes #771 (#772)
KaTeX - v0.8.1 (2017-08-11)

Published by kevinbarabash about 7 years ago

The v0.8.0 release did not include the SVG images which are necessary for rendering wide and stretchy accents as well as \overbrace and \underbrace. This release corrects that.

Note that if you're including copies of KaTeX in your web application, you should now include the dist/images directory in addition to the usual the dist/fonts directory.

Many thanks to @spicyj for fixing the issue so quickly.

KaTeX - v0.8.0 (2017-08-11)

Published by kevinbarabash about 7 years ago

Breaking changes:

  • Implicit \color, explicitly grouped \textcolor #619

New features:

  • fix #509: added some international operators #647
  • Old font command support: \rm, \sf, \tt, \bf, \it #675
  • Builtin macros, macro arguments, \overset and \underset #605
  • Add \iff, \implies, \impliedby support #697
  • Support <, >, | and many \text... commands in text mode #684
  • Implement $...$ via styling node #637
  • Support Windows high-contrast mode. Fix #716 #724
  • Add \jot lineskip to aligned environment, switch contents to displaystyle, and add gathered #725
  • Fix high contrast mode better, thanks to @GeeLaw #733
  • Support stretchy wide elements. #670
  • Implement \coloneqq, \colonequals, etc. based on mathtools and colonequals #727
  • Add configurable error callback #658
  • Support absolute TeX units #732

Other changes:

  • Revert "Remove trailing commas for IE 9 compatibility" #622
  • Fix all AMS mathord symbols #618
  • Fix x'^2 #636
  • Use utils.deflt for Settings #649
  • Fix font typo math -> main #678
  • Fix spaces before \middle #689
  • Refactor and comment space splicing code #699
  • Fix #711 issue with multiple superscripts. #718
  • Fix interaction between styles and sizes. #719
  • Vertically center single-character \mathop. #745
  • Correct handling of unbraced kerns followed by spaces. #751
  • Associate font metrics with Options, not Style. #743
  • Upgrade the source to use ES6 syntax including classes, import and static properties #679
  • Set maxFontSize on rules. #744
  • Correct computation of TeX sizes. #755
  • Use \displaystyle within \over/\underbrace #765
  • Shrinkwrap vlists in table-like CSS. #768
  • Solve Safari rendering issues with font-size overrides. #780
  • Improve rule coding, including for \sqrt. #776

Infra changes:

  • Update dependencies to more recent version #612
  • Use morgan to log requests in the dev server #625
  • Improve release script and bower support #615
  • Show compressed sizes correctly #639
  • Set up a diff attribute and textconv instructions for font files #635
  • Fix release script after experience from 0.7.1 release #642
  • Update texcmp to ubuntu 17.04 and avoid mounted host directory #722
  • Screenshotter: Add --diff and --attempts options. #736
  • Switch from jasmine to jest #747
  • Ensure screenshotter runs all tests. #769

Misc:

  • Describe using auto renderer in html head #623
  • README.md - added integrity #590
  • README.md - added integrity #591
  • Switch speed test in README #640
  • Describe site-provided macros in README #644
  • Fixed missing verb in README #668
  • Rephrase displayMode description to be clearer #648
  • Add documentation for how to run auto-render example #740
  • Mention texcmp in CONTRIBUTING.md #753
KaTeX - v0.7.1 - restore support for Bower and CDN

Published by gagern over 7 years ago

Bug fixes:

  • Restored creation of dist directory during release process. Should fix Bower support (#613) and cdnjs integration (#641).
KaTeX - v0.7.0 - Add macros, \kern, \mod, bug fixes, and infrastructure improvements

Published by xymostech almost 8 years ago

New features:

  • Allow specifying macros (without arguments) in the settings object
  • Add \kern
  • Add \mod, \bmod, \pmod, and \pod
  • Add \middle
  • Add \ldots, \textellipsis, and \mathellipsis
  • Add \#, \&, \$, \%, \_, \{, and \} in text mode
  • Add \stackrel
  • Add \atop
  • Add --, ---, ```, ', , `''`, `\degree`, `\pounds`, `\maltese`
  • Add \mathord, \mathbin, \mathrel, \mathopen, \mathclose, \mathpunct, \mathinner, and \mathop
  • Add \textrm, \textit, \textbf, \texttt, \textsf, and \textnormal

Other changes:

  • Combine adjacent spans in text mode (performance)
  • Don't apply italic correction in text mode (bug fix)
  • Fix the MathML fence attribute on delimiters (bug fix)
  • Fix converting bins to ords (bug fix)
  • Make \llap and \rlap produce ords (bug fix)
  • Fix spacing around \color, \mathbf, and in other places (bug fix)
  • Add per-style font metrics (bug fix)
  • Complain when trying to render a non-string (bug fix)
  • Fix subscript positioning with changed-font bases (bug fix)
  • Fix superscript/subscript centering in fractions (bug fix)

Infrastructure changes:

  • Improved Docker on Mac support
  • Clone screenshot fonts only once
  • Fix texcmp issues related to bit depth and kerning
  • Keep un-minified katex.js and katex.css files
  • Automatically call npm install when package.json changes
  • Upgrade less

Misc:

  • Added a code of conduct
KaTeX - v0.6.0 - aligned, \gt, \lt, \underline, and infrastructure work

Published by kevinbarabash over 8 years ago

New features:

  • Introduce the aligned environment.
  • Add \gt and \lt.
  • Bundle CSS and fonts in npm package.
  • Fix sub- and super-scripts not being centered inside of math display.
  • Add \underline support.

Other changes:

  • Remove 3px border around rules (bug fix).
  • Set the greediness of font functions to 2 so that e^\mathbf{x} will parse (bug fix).

Infrastructure changes:

  • Refactor function and symbol tables.
  • Add calling convention for functions and environments.
  • Make mode and position part of the internal state.
  • Check screenshots on Travis using Docker and Selenium and changes to increase the robustness of these tests.
  • Add unit tests for error messages.

Special thanks to @gagern for all of the infrastructure changes.

KaTeX - v0.5.1 - Add font commands, \limits/\nolimits

Published by xymostech about 9 years ago

New features:

  • Add the font changing functions \mathrm, \mathit, \mathbf, \mathbb, \mathcal, \mathfrak, \mathscr, \mathsf, \mathtt, \Bbb, \bold, and \frak.
  • Add the \limits and \nolimits functions.
  • Add a throwOnError option to allow generating red error text when rendering invalid commands instead of throwing errors, and a corresponding errorColor option to decide the color of invalid commands.
  • Add support for | column delimiters in the array environment.
  • Add \lVert and \rVert symbols.

Other changes:

  • Allow \lvert, \rvert, \lVert, \rVert, \lgroup, \rgroup, \lmoustache, and \rmoustache in delimiters.
  • Fix the spacing of the \ulcorner, \urcorner, \llcorner, \lrcorner, \barwedge, \veebar, \circledcirc, \boxdot, \uparrow, \Uparrow, \downarrow, \Downarrow, \updownarrow, \Updownarrow, and \ldots symbols.
KaTeX - v0.5.0

Published by xymostech over 9 years ago

New features:

  • Add the cases and Bmatrix environments.
  • Add \checkmark and \circledR symbols.

Other changes:

  • Run ttfautohint on our fonts, to produce better results at small font sizes.
  • Improve the spacing inside fractions.
  • Correctly set environments to the ord type.

Infrastructure changes:

  • Redo our screenshot tests to use standard selenium images, and add Chrome screenshots.
  • Improve our metrics generation pipeline.
  • Fix make dist on Macs.
KaTeX - v0.4.3 - Fix bower install

Published by xymostech over 9 years ago

Changes:

  • Fix bower.json to include a "main" entry
KaTeX - v0.4.0 - Arrays and matrices, optional \sqrt arguments, and more

Published by xymostech over 9 years ago

New Features:

  • Added support for some \begin/\end environments, including support for array, matrix, pmatrix, bmatrix, vmatrix, and Vmatrix
  • Added support for optional \sqrt arguments, e.g. \sqrt[3]{x}
  • Bower package is now available: run bower install katex to download the built files

Other changes:

  • Add a display mode flag to the cli
  • Expose an unstable __parse method for retrieving the parse tree
  • Prevent elements from inheriting text-indent
KaTeX - v0.3.0

Published by xymostech over 9 years ago

Breaking changes:

  • The greediness of the \color function has changed to maintain compatibility with MathJax, so expressions like \color{red}\text{a} will no longer work and instead need to be rewritten as \color{red}{\text{a}}

New features:

  • Add an auto-render extension for automatically rendering math on a page
  • Add support for \phantom
  • Add \#, \&

Other changes:

  • Fixed spacing for \odot, \oplus, \otimes, \oslash, \bigtriangleup, \bigtriangledown, \dagger, \diamond, \star, \triangleleft, \triangleright
  • Fixed MathML handling of text operators
  • Removed !important from MathML hiding rules, so they can be overridden
KaTeX - v0.2.0 - More symbols and accessibility

Published by xymostech over 9 years ago

New features:

  • Added accessibility through the use of MathML
  • Added the ability to render math in display mode, centered on a single line in display style
  • Add support for new symbols: \aleph, \amalg, \approxeq, \ast, \asymp, \backepsilon, \backprime, \backsim, \backsimeq, \Bbbk, \because, \beth, \between, \bigcirc, \bigstar, \blacklozenge, \blacksquare, \blacktriangle, \blacktriangledown, \blacktriangleleft, \blacktriangleright, \bowtie, \Box, \boxminus, \boxplus, \boxtimes, \bullet, \bumpeq, \Bumpeq, \Cap, \cdotp, \centerdot, \circeq, \circlearrowleft, \circlearrowright, \circledast, \circleddash, \circledS, \clubsuit, \complement, \Cup, \curlyeqprec, \curlyeqsucc, \curlyvee, \curlywedge, \curvearrowleft, \curvearrowright, \dag, \daleth, \dashleftarrow, \dashrightarrow, \dashv, \ddag, \ddagger, \diagdown, \diagup, \Diamond, \diamondsuit, \digamma, \divideontimes, \doteq, \Doteq, \doteqdot, \dotplus, \doublebarwedge, \doublecap, \doublecup, \downdownarrows, \downharpoonleft, \downharpoonright, \ell, \eqcirc, \eqsim, \eqslantgtr, \eqslantless, \equiv, \eth, \exists, \fallingdotseq, \Finv, \flat, \forall, \frown, \Game, \geqq, \geqslant, \gg, \ggg, \gggtr, \gimel, \gnapprox, \gneq, \gneqq, \gnsim, \gtrapprox, \gtrdot, \gtreqless, \gtreqqless, \gtrless, \gtrsim, \gvertneqq, \hbar, \heartsuit, \hookleftarrow, \hookrightarrow, \hslash, \Im, \intercal, \Join, \ldotp, \leadsto, \Leftarrow, \leftarrowtail, \leftharpoondown, \leftharpoonup, \leftleftarrows, \leftrightarrow, \Leftrightarrow, \leftrightarrows, \leftrightharpoons, \leftrightsquigarrow, \leftthreetimes, \leqq, \leqslant, \lessapprox, \lessdot, \lesseqgtr, \lesseqqgtr, \lessgtr, \lesssim, \lgroup, \lhd, \ll, \llcorner, \Lleftarrow, \lll, \llless, \lmoustache, \lnapprox, \lneq, \lneqq, \lnsim, \longleftarrow, \Longleftarrow, \longleftrightarrow, \Longleftrightarrow, \longmapsto, \longrightarrow, \Longrightarrow, \looparrowleft, \looparrowright, \lozenge, \lrcorner, \Lsh, \ltimes, \lvertneqq, \mapsto, \measuredangle, \mho, \mid, \mp, \multimap, \nabla, \natural, \ncong, \nearrow, \nexists, \ngeqq, \ngeqslant, \ngtr, \ni, \nleftarrow, \nLeftarrow, \nleftrightarrow, \nLeftrightarrow, \nleqq, \nleqslant, \nless, \nmid, \nparallel, \nprec, \npreceq, \nrightarrow, \nRightarrow, \nshortmid, \nshortparallel, \nsim, \nsubseteqq, \nsucc, \nsucceq, \nsupseteqq, \ntriangleleft, \ntrianglelefteq, \ntriangleright, \ntrianglerighteq, \nvdash, \nvDash, \nVdash, \nVDash, \nwarrow, \ominus, \owns, \parallel, \perp, \pitchfork, \prec, \precapprox, \preccurlyeq, \preceq, \precnapprox, \precneqq, \precnsim, \precsim, \propto, \Re, \restriction, \rgroup, \rhd, \Rightarrow, \rightarrowtail, \rightharpoondown, \rightharpoonup, \rightleftarrows, \rightleftharpoons, \rightrightarrows, \rightsquigarrow, \rightthreetimes, \risingdotseq, \rmoustache, \Rrightarrow, \Rsh, \rtimes, \searrow, \sharp, \shortmid, \shortparallel, \sim, \simeq, \smallfrown, \smallsetminus, \smallsmile, \smile, \spadesuit, \sphericalangle, \sqcap, \sqcup, \sqsubset, \sqsubseteq, \sqsupset, \sqsupseteq, \square, \Subset, \subseteqq, \subsetneq, \subsetneqq, \succ, \succapprox, \succcurlyeq, \succeq, \succnapprox, \succneqq, \succnsim, \succsim, \Supset, \supseteqq, \supsetneq, \supsetneqq, \swarrow, \therefore, \thickapprox, \thicksim, \triangledown, \trianglelefteq, \triangleq, \trianglerighteq, \twoheadleftarrow, \twoheadrightarrow, \ulcorner, \unlhd, \unrhd, \upharpoonleft, \upharpoonright, \uplus, \upuparrows, \urcorner, \varkappa, \varpropto, \varsubsetneq, \varsubsetneqq, \varsupsetneq, \varsupsetneqq, \vartriangle, \vartriangleleft, \vartriangleright, \vdash, \vDash, \Vdash, \Vvdash, \wp, \wr, \yen

Other changes

  • Removed unused greek fonts
KaTeX - v0.1.1

Published by sophiebits about 10 years ago

New features

  • Add support for \binom
  • Add support for \over and \choose
  • Add \partial, \subset, \supset, \subseteq, \supseteq, \cap, \cup, \setminus, \neg, \lnot, \top, \bot, \emptyset, \varnothing, \land, \lor, \wedge, \vee, \notin, \nsubseteq, \nsupseteq, \models
  • Add simple katex command-line binary to convert TeX to HTML on the server
  • Add WOFF2 fonts for faster downloads in Chrome and Opera

Other changes

  • Correctly throws on \sqrt[3]{x} to indicate lack of support
  • Fixed spacing for \iint and \iiint
  • Built files now only use ASCII characters to avoid character encoding problems
  • Warn when in quirks mode (i.e., missing a <!DOCTYPE html> declaration)
KaTeX - v0.1.0 - Initial public release

Published by xymostech about 10 years ago