The mathjaxr
package allows for easy inclusion of MathJax equations in Rd files.
Package authors wanting to make use of the package and its functionality
need to:
mathjaxr
package,mathjaxr
to Imports
in the
DESCRIPTION
file of their package,mathjaxr
to RdMacros
in the
DESCRIPTION
file of their package (or add
RdMacros: mathjaxr
if the DESCRIPTION
file
does not yet contain a RdMacros
entry),import(mathjaxr)
in the NAMESPACE
file
of their package.One can then enable the use of MathJax by calling the
\loadmathjax
macro (that is provided by the
mathjaxr
package) within the \description{}
section of an Rd file (or within the @description
section
when using roxygen2
).
An inline equation can then be added with the
\mjeqn{latex}{ascii}
macro, with the LaTeX commands for the
equation given between the first set of curly brackets (which will be
rendered in the HTML and PDF help pages) and the plain-text version of
the equation given between the second set of curly brackets (which will
be shown in the plain text help). With the
\mjdeqn{latex}{ascii}
macro, one can add ‘displayed
equations’ (as in LaTeX’s displaymath
environment).
Single argument versions of these macros,
\mjseqn{latexascii}
and \mjsdeqn{latexascii}
,
are also available. For the relatively rare case that one must specify
different LaTeX commands for the PDF and HTML pages, there are also
triple argument versions of these macros, namely
\mjteqn{pdflatex}{htmllatex}{ascii}
and
\mjtdeqn{pdflatex}{htmllatex}{ascii}
.
The Javascript code for MathJax is contained in this package. If a
user viewing a help page has mathjaxr
installed, it will be
retrieved from there, otherwise it will be retrieved from the CDN site
https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml-full.js. To force
use of the CDN site, the user can set the environment variable
MATHJAXR_USECDN
to any non-blank value (e.g.,
Sys.setenv(MATHJAXR_USECDN=TRUE)
). The URL for a diferent
CDN can be specified via the environment variable
MATHJAXR_CDN
.
\mjseqn{i<j}
, write
\mjseqn{i < j}
). Do not use the \lt
and
\gt
macros provided by MathJax as these will cause problems
when rendering the PDF help pages.\lbrace
and \rbrace
(possibly in combination
with \left
and \right
to make them
sufficiently large) is a solution (e.g.,
\mjeqn{\left\lbrace ... \right\rbrace}{\{...\}}
should
render nicely in the PDF/HTML help pages and the plain-text
version).\mjteqn{100\\\%}{100\\\\\\\%}{100\\%}
should be
rendered correctly in all three help pages.server-add-header=X-Content-Type-Options:
to
/etc/rstudio/rserver.conf
(and then restarting the server).
This of course requires admin rights on the machine running the
server.The probability density function of a normal distribution is given by
where denotes the mean of the distribution and its standard deviation.
The current official (i.e., CRAN) release can be installed within R with:
install.packages("mathjaxr")
The development version of the package can be installed with:
install.packages("remotes")
::install_github("wviechtb/mathjaxr") remotes
This builds the package from source based on the current version on GitHub. Note that Windows users must have Rtools installed for this to work.
The mathjaxr
package is licensed under the GNU General Public
License Version 3, while MathJax itself is licensed under the Apache
License, Version 2.0. To report any issues or bugs, please go here.