The function latexmk()
uses the system command latexmk
to
compile a LaTeX document to PDF; if latexmk
is not available, use a
simple emulation. The functions pdflatex()
, xelatex()
, and
lualatex()
are wrappers of latexmk(engine =, emulation = TRUE)
.
latexmk(file, engine = c("pdflatex", "xelatex", "lualatex"), bib_engine = c("bibtex",
"biber"), emulation = TRUE, times = 2, install_packages = emulation &&
tlmgr_available())pdflatex(...)
xelatex(...)
lualatex(...)
A LaTeX file path.
A LaTeX engine.
A bibliography engine.
Whether to use latexmk
emulation (by default,
TRUE
if the command latexmk
is not available). You can set
the global option options(tinytex.latexmk.emulation = TRUE)
to
always use emulation.
The number of times to run the LaTeX engine when using
emulation. You can set the global option tinytex.compile.times
,
e.g., options(tinytex.compile.times = 3)
.
Whether to automatically install missing LaTeX
packages found by find_packages()
from the LaTeX log. This
argument is only for the emulation mode and TeX Live.
Arguments to be passed to latexmk()
(other than
engine
and emulation
).
The latexmk
emulation works like this: run the LaTeX engine once
(e.g., pdflatex
), run makeindex
to make the index if
necessary (the *.idx
file exists), run the bibliography engine
bibtex
or biber
to make the bibliography if necessary
(the *.aux
or *.bcf
file exists), and finally run the LaTeX
engine a number of times (twice by default).