A lightweight, cross-platform, portable, and easy-to-maintain LaTeX distribution based on TeX Live
Support tectonic
as a new engine (thanks, @dpryan79, #290).
When the global option tinytex.output_dir
is set, latexmk()
can fail (thanks, @steveb-cirina, #287).
Also recompile the .tex
document if required by biblatex
(thanks, @cderv, #288).
check_installed()
returns a logical vector instead of a scalar now, to indicate if individual LaTeX packages are installed or not (4a8c372521b99654004676595519e056532d1779).
Fixed #291: detect the l3kernel
package from the error message about expl3.sty
, and update existing packages when they are required to be installed, since they might be too old to lose compatibility with other packages (5946a2a1bf3c6ecefbd1213178a4e473ff4c26dc).
Bundled more LaTeX packages in the TinyTeX variation TinyTeX.*
.
Exported functions is_tinytex()
and check_installed()
(thanks, @cderv, #269).
When options(tinytex.latexmk.warning = FALSE)
, delete the log file in latex_emu() if it contains warnings (thanks, @guang-yu-zhu, #281).
Removed warnings against existing LaTeX distributions in install_tinytex()
(thanks, @AmeliaMN, #275).
Set TEXMFHOME
to ./texmf-home
instead of $TEXMFLOCAL
per @amunn's suggestion on the commit bb0bbae.
Caladea
, tinytex also tries to find files Caladea-(Bold|Italic|Regular)
(thanks, @cderv, #268).options(tinytex.latexmk.warning = FALSE)
now (thanks, @fgoerlich #256, @cderv #260).Fixed the installation script for non-Linux platforms (#243).
When bibtex
fails, tinytex::latexmk()
should try to find out the missing packages instead of stopping immediately (https://github.com/rstudio/rticles/pull/288#issuecomment-699972780).
Run rd %APPDATA/TinyTeX%
twice to remove TinyTeX on Windows, otherwise the installation may fail. Also deleted install-tl
and install-tl-windows.bat
in the prebuilt TinyTeX binaries (https://github.com/yihui/tinytex-releases/issues/9).
Added the tinytex::tlmgr_repo()
function to query or set the CTAN repository for TinyTeX.
Fixed tinytex::install_tinytex()
for Linux machines that are not x86_64
(#252).
The LaTeX distribution TinyTeX is now officially released at https://github.com/yihui/tinytex-releases. Prebuilt binaries of TinyTeX are provided for Windows, macOS, and Linux. Now you can install the prebuilt binaries, which should be both faster and safer (safer because the prebuilt binaries are released only after they pass some tests to compile some R Markdown documents to PDF). There are several ways to install the binaries, such as via Chocolatey and Scoop. Please see the release repo for more information.
The R function tinytex::install_tinytex()
installs prebuilt binaries of TinyTeX now. Previously uses the TeX Live installer to install packages. Now it only downloads a single prebuilt package and extracts it locally. If the operating system is not Windows, macOS, or Linux, the installation method is still the same as before (i.e., using the TeX Live installer).
By default, tinytex::install_tinytex()
will reinstall all currently installed LaTeX packages after reinstalling TinyTeX, so you won't lose any packages after reinstalling or upgrading TinyTeX. If you want a refresh installation (i.e., keep the behavior in previous versions of tinytex), you may use install_tinytex(extra_packages = NULL)
.
Added an argument version
to install_tinytex()
, so users can install a specific version of TinyTeX. The version numbers can be found in the releases (usually in the form YYYY.MM
such as 2020.10
): https://github.com/yihui/tinytex-releases
Improved the search for missing TikZ libraries (thanks, @boltomli, #221).
Fixed the installation of TinyTeX on Unix-alikes such as FreeBSD (thanks, @rhurlin, #222).
Added an argument delete_tlpdb
to tlmgr_update()
to automatically delete the tlpkg/texlive.tlpdb.*
files under the TinyTeX root directory after tlmgr update
. The value of this argument can be set via a global option, e.g., you can set options(tinytex.delete_tlpdb = TRUE)
(thanks, @AlfonsoMuskedunder, #226).
The value of the argument install_packages
of tinytex::latexmk()
can be set via a global option now, e.g., options(tinytex.install_packages = FALSE)
to disable the automatic installation of missing LaTeX packages (fd0af37db362a9de6d13035f0086c964d24530d1).
By default, the automatic installation of missing packages only works when the tlmgr
executable is writable (683b05676c63fe2c3dc7b03c1ee90b0ef2177a96). This means that, by default, tinytex::latexmk()
will no longer try to install missing packages if you are using the texlive-*
packages of your OS such as Debian/Ubuntu/Fedora, because it is most likely to fail anyway, in which case the failure also brings confusing error messages.
Commented out the examples in ?tinytex::r_texmf()
because they modify users' texmf trees (f209297e61800960bf98c6815f67f6a78a9ce34e).
Fixed tinytex:::install_prebuilt()
on Windows to extract the prebuilt version of TinyTeX to the correct path (f51859ece47faed51664440df1e308806c52d50e).
tinytex::latexmk()
can automatically install missing "hyphen-*" packages now (thanks, @boltomli, #204).
Added tests in this package to make sure the default installation of TinyTeX is able to compile basic R Markdown documents and bookdown projects against pdflatex
, xelatex
, and lualatex
(thanks, @AlfonsoMuskedunder, #207).
tinytex:::install_prebuilt()
supports Windows, macOS, and Ubuntu now. The prebuilt binaries are stored on AppVeyor:
tinytex::install_prebuilt()
will download the binary package from AppVeyor and install it. If you have difficulties with downloading the binary package from R, you may download it in your web browser, and pass the path of the package to the function, e.g., tinytex:::install_prebuilt("~/Downloads/TinyTeX.zip")
.
Note that the prebuilt binaries are provided only for your convenience. I do not recommend that you use them routinely. Normally you should install TinyTeX with tinytex::install_tinytex()
. However, in certain cases, you may not be able to run tinytex::install_tinytex()
. For example, github.com
may be blocked in your region, or the latest version of TeX Live is broken (e.g., #210 #213). Then you can use tinytex:::install_prebuilt()
as a temporary workaround, which will give you a working version of TeX Live. This version also includes additional LaTeX packages, and you may request that it includes even more packages by editing tools/pkgs-yihui.txt
and send a pull request.
Provided a more informative message to R users about upgrading TeX Live yearly (07cfcf6cd630446f5cc5a49986fcaf76531dca1a).
Exported the parse_install()
function (af2a7e4fb6150bcfcb5d4a6723878cf19fb9e106).
Fixed the bug that latexmk()
could accidentally delete TinyTeX on Linux (#197). Linux users are strongly recommended to update the R package tinytex to v0.22.