LaTeX compatibility#
Chirun uses plasTeX to render LaTeX documents in HTML format. It re-implements some LaTeX packages in order to produce more structured output, while it can use the original LaTeX implementation of some other packages without changes. Because plasTeX doesn’t work in exactly the same way as normal LaTeX, some LaTeX packages don’t work as intended, and produce bad output or lead to unrecoverable errors.
plasTeX’s default behaviour on encountering a macro that it doesn’t know is to ignore the macro name and interpret the argument(s) as normal.
This can lead to unexpected behaviour, with arguments to commands appearing as plain text in the output.
The build log will contain a warning of the form WARNING: unrecognized command/environment: mycommand
.
Chirun’s HTML output uses MathJax to render mathematical notation. MathJax has its own set of supported commands: see the TeX and LaTeX support section of the MathJax documentation. Chirun can expand some math-mode commands before they are processed by MathJax, but in other cases it has to leave the rendering entirely up to MathJax.
Tips for making LaTeX documents work with Chirun#
Try to use only the packages you need: many authors have accumulated a very long document preamble, most of which isn’t actually needed.
Commands which change the layout of the page or font sizes and styles will not have any effect in HTML output; if these cause a problem, put them inside an ifpdflatex block.
If a document fails to compile, try moving some of your \usepackage
commands into an \ifpdflatex
block, so they’re only loaded when making the PDF output.
Once you’ve identified a package or command that causes problems with plasTeX, if you really need it in the HTML output, please tell us about it.
Supported packages#
This section lists packages that we know about, and the level of support.
Package |
Support |
---|---|
|
Not supported. When used, an unwanted |
|
Stub package: commands are handled by MathJax. |
|
Stub package. Diagrams are rendered as SVG images using pdf latex. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Stub package: doesn’t do anything. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by Chirun. The command |
|
Re-implemented by plasTeX. Beamer is a very large package and Chirun’s support is rather basic. The document-style HTML output is usually usable, but the HTML slides format still needs a lot of work. |
|
Re-implemented by plasTeX. |
|
Stub package: commands are handled by MathJax. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Stub package: commands are handled by MathJax. |
|
Not supported. This package provides a font, and plasTeX seems to hang while reading it. |
|
Re-implemented by Chirun. The options are ignored in HTML output, and only the |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by Chirun. The command |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by Chirun. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by Chirun. The following environments are supported: |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Not supported. See plastex/plastex#362. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Stub package: does nothing. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Stub package. The |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Stub package: commands are handled by MathJax. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Stub package: the FloatBarrier command is accepted but ignored. |
|
Re-implemented by Chirun.
|
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by Chirun. Only the |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by Chirun. |
|
Re-implemented by plasTeX. |
|
Not supported. Messes up section formatting in HTML even if none of its macros are used. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by Chirun. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by Chirun. Only the |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Stub package: diagrams are rendered as SVG images using pdflatex. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by Chirun. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Re-implemented by plasTeX. |
|
Stub package: doesn’t do anything. |
|
Re-implemented by plasTeX. |