- Posted by LianTze and Paulo on September 6, 2023
TeX Live 2023 is now available
TeX Live 2023 is now available on Overleaf. This update will give you access to new and updated TeX-related programs, fonts, and macro packages. This post covers all the key information and important changes you need to know about.
What is TeX Live?
TeX Live is a free distribution of the TeX typesetting system that includes many TeX-related programs, fonts, and macros packages, including LaTeX. At Overleaf, we use TeX Live on our compile servers to power the real-time preview and produce your project PDF.
Will my existing projects work as usual?
Yes, your existing projects will still work as they will continue to use the TeX Live version from when they were created.
Can I switch to TeX Live 2023 for existing projects?
Yes, you can easily switch to TeX Live 2023 for existing projects. In the project you want to change, click Menu and navigate to Settings ― you’ll see a dropdown to select the TeX Live version. This allows you to quickly update your project to fit the requirements of publishers, preprint servers, and other platforms that use a specific TeX Live version to compile submissions.
Key changes in TeX Live 2023
While there are no big user-facing changes in TeX Live 2023, there are some important changes you may need to be aware of.
Unicode characters won't render with
utf8x
input encoding anymore when compiling with pdfLaTeXWhen using
\usepackage[utf8x]{inputenc}
in TeX Live 2023, unicode characters won't render at all in the output PDF when compiling with pdfLaTeX. These math symbols should be typeset using the suitable math commands:\documentclass{article} \begin{document} $\exists x$ such that $\forall y \neq x$ \end{document}
If you're using the XeLaTeX or LuaLaTeX compilers, you can use the
unicode-math
package so you can use unicode math symbols directly in your code:\documentclass{article} \usepackage{unicode-math} \begin{document} $∃x$ such that $∀y ≠ x$ \end{document}
\label
within\caption
will result in an error when thecaption
package is presentWhen creating figures and tables, it's common to put the
\label{...}
after the\caption{...}
:\caption{Comparison of two approaches} \label{fig:compare-two}
Some people are more used to placing the
\label{...}
inside the\caption{...}
:\caption{Comparison of two approaches\label{fig:compare-two}} \caption{\label{fig:compare-two}Comparison of two approaches}
But if the
caption
package is present, then including\label
inside\caption
like this will result in the following error message:Argument of \caption@@@withoptargs has an extra }.
Therefore it would be more robust to use the syntax
\caption{...} \label{...}
glossaries
package updates- Some package options have been removed: e.g.
smallcaps
,description
,smaller
,footnote
,dua
. Please see theglossaries
package documentation for details. - Some commands have been deprecated, e.g.
\glossarystyle
,\glossaryentryfield
,\glossarysubentryfield
. Please see theglossaries
FAQ pages here and here for details.
citation-style-language
: Using.csl
stylesheets for citations and referencesIt's now possible to use Citation Style Language stylesheets (
.csl
files) to format citations and reference lists in LaTeX documents! You can find.csl
styles here (let's useuoy-archaeology-jsm.csl
as an example). First upload it to your Overleaf project, and then include thecitation-style-language
package:\documentclass[12pt]{article} \usepackage{citation-style-language} \cslsetup{style = uoy-archaeology-jsm} \addbibresource{researchDesign.bib} \begin{document} … This combination of data from multiple sources may present problems in the categorisation and comparison of sites across the region as a whole, in particular the Scottish region where few radiocarbon dates are available and many site not been classified by date \cite{elliot-email-2023,beckensall-northumberland-2005} \printbibliography \end{document}
If you’re compiling with LuaLaTeX, there are no extra steps: the CSL processor will run automatically. Otherwise, you'll need to add a file named
latexmkrc
(without file extensions) to your project, with this line in it:$bibtex = 'citeproc-lua';
This way,
latexmk
will runciteproc-lua
as part of the compilation process. You can see a full example here.ElegantLaTeX
packages removed from TeX LiveThe maintainers of
ElegantBook
,ElegantPaper
andElegantNote
have decided to stop maintaining these packages; they have been removed from TeX Live 2023. If you still want to use these document classes, you'll need to upload the necessary.cls
files to your Overleaf project, or switch your Overleaf project back to TeX Live 2022.\mintedinline
If you're using the
minted
package, take care that your\mintedinline
doesn't contain any blank lines now.What’s new in TeX Live 2023?
You can find the official release notes for TeX Live 2023 on the TeX Users Group (TUG) website, but here are some key highlights.
Cross-engine extensions
\special
followed by a new keywordshipout
delays expansion of the argument tokens until\shipout
time, as with a non-\immediate\write
.
pdfTeX
- New primitive
\pdfomitinfodict
to omit/Info
dictionary completely. - New primitive
\pdfomitprocset
to control omitting/ProcSet
array:/ProcSet
is included if this parameter is negative, or if this parameter is zero andpdftex
is generating PDF 1.x output. - With
\pdfinterwordspaceon
, if the current font's encoding has a/space
character at slot 32, it is used; otherwise, the/space
from the (new) default fontpdftexspace
is used. That default font can be overridden with the new primitive\pdfspacefont
. This same new procedure is used for\pdffakespace
.
LuaTeX
- New primitive
\variablefam
to allow math characters to keep their class while still letting the family adapt. - Improved
r2l
annotation areas. - Cross-engine late
\special
described above.
XeTeX
- Bug fix for
\topskip
and\splittopskip
computation when\XeTeXupwardsmode
is active. - Cross-engine late
\special
described above.
Where can I find information on previous TeX Live versions?
Full TeX Live release notes for all versions can be found on the TUG website. We’ve also written updates for previous releases including TeX Live 2022, TeX Live 2021, TeX Live 2020, TeX Live 2019, TeX Live 2018 and TeX Live 2016.
Getting Help
As always, if you need help at any time with your Overleaf project, then please reach out to our support team, providing the link to your project. We’re here to help!
- Some package options have been removed: e.g.