% \iffalse meta-comment % % Copyright 2024 % The LaTeX Project and any individual authors listed elsewhere % in this file. % % This file is part of the LaTeX base system. % -—————————————— % % It may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3c % of this license or (at your option) any later version. % The latest version of this license is in % https://www.latex-project.org/lppl.txt % and version 1.3c or later is part of all distributions of LaTeX % version 2008 or later. % % This file has the LPPL maintenance status "maintained". % % The list of all files belonging to the LaTeX base distribution is % given in the file `manifest.txt'. See also `legal.txt' for additional % information. % % The list of derived (unpacked) files belonging to the distribution % and covered by LPPL is defined by the unpacking scripts (with % extension .ins) which are part of the distribution. % % \fi % Filename: ltnews40.tex % % This is issue 40 of LaTeX News. \NeedsTeXFormat{LaTeX2e}[2020-02-02] \documentclass{ltnews} %% Maybe needed only for Chris' inadequate system: \providecommand\Dash {\unskip \textemdash} %% NOTE: Chris' preferred hyphens! %% \showhyphens{parameters} %% \hyphenation{because} \usepackage[T1]{fontenc} \usepackage{lmodern,url,hologo} \usepackage{csquotes} \usepackage{multicol} \usepackage{color} \providecommand\hook[1]{\texttt{#1}} \providecommand\meta[1]{$\langle$\textrm{\itshape#1}$\rangle$} \providecommand\option[1]{\texttt{#1}} \providecommand\env[1]{\texttt{#1}} \providecommand\Arg[1]{\texttt\{\meta{#1}\texttt\}} \providecommand\eTeX{\hologo{eTeX}} \providecommand\XeTeX{\hologo{XeTeX}} \providecommand\LuaTeX{\hologo{LuaTeX}} \providecommand\pdfTeX{\hologo{pdfTeX}} \providecommand\MiKTeX{\hologo{MiKTeX}} \providecommand\CTAN{\textsc{ctan}} \providecommand\TL{\TeX\,Live} \providecommand\githubissue[2][]{\ifhmode\unskip\fi \quad\penalty500\strut\nobreak\hfill \mbox{\small\slshape(% \href{https://github.com/latex3/latex2e/issues/\getfirstgithubissue#2 \relax}% {github issue#1 #2}% )}% \par\smallskip} % same for issues in the tagging repository: \providecommand\taggingissue[2][]{\ifhmode\unskip\fi \quad\penalty500\strut\nobreak\hfill \mbox{\small\slshape(% \href{https://github.com/latex3/tagging-project/issues/\getfirstgithubissue#2 \relax}% {github tagging issue#1 #2}% )}% \par\smallskip} %% But Chris has to mostly disable \href for his TEXPAD app: %% \def\href #1#2{#2} % Only For Chris' deficient TeX engine % simple solution right now (just link to the first issue if there are several) \def\getfirstgithubissue#1 #2\relax{#1} \providecommand\sxissue[1]{\ifhmode\unskip \else % githubissue preceding \vskip-\smallskipamount \vskip-\parskip \fi \quad\penalty500\strut\nobreak\hfill \mbox{\small\slshape(\url{https://tex.stackexchange.com/#1})}\par} \providecommand\gnatsissue[2]{\ifhmode\unskip\fi \quad\penalty500\strut\nobreak\hfill \mbox{\small\slshape(% \href{https://www.latex-project.org/cgi-bin/ltxbugs2html?pr=#1\%2F\getfirstgithubissue#2 \relax}% {gnats issue #1/#2}% )}% \par} \let\cls\pkg \providecommand\env[1]{\texttt{#1}} \providecommand\acro[1]{\textsc{#1}} \vbadness=1400 % accept slightly empty columns \let\finalpagebreak\pagebreak % for TUB (if they use it) \let\finalvspace\vspace % for document layout fixes \makeatletter % maybe not the greatest design but normally we wouldn't have subsubsections \renewcommand{\subsubsection}{% \@startsection {subsubsection}{2}{0pt}{1.5ex \@plus 1ex \@minus .2ex}% {-1em}{\@subheadingfont\colonize}% } \providecommand\colonize[1]{#1:} \makeatother % Undo ltnews's \verbatim@font with active < and > \makeatletter \def\verbatim@font{\normalsize\ttfamily} \makeatother %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \providecommand\tubcommand[1]{} \tubcommand{\input{tubltmac}} \publicationmonth{November} \publicationyear{2024 --- DRAFT version for upcoming release} \publicationissue{40} \begin{document} \maketitle {\hyphenpenalty=10000 \exhyphenpenalty=10000 \spaceskip=3.33pt \hbadness=10000 \tableofcontents} \setlength\rightskip{0pt plus 3em} \medskip \section{Introduction} % To write \section{News from the \enquote{\LaTeX{} Tagged PDF} project} The tagging of tabulars has been extended: it is now possible to tag also row headers and to create cells that span more than one row. \emph{write more details ...} The math module will automatically generate a MathML file and use it to attach MathML associated files to the structure if lua\LaTeX{} and the \pkg{unicode-math} package are used and the \pkg{luamml} is found. This new feature can be disabled with \verb+\tagpdfsetup{math/mathml/luamml=false}+ More details can be found in the documentation of \pkg{latex-lab-math}. \section{Handling paragraph continuation} Already \LaTeX~2.09 offered some automatism to detect whether or not text after a list or some other display environment is meant to be a continuation of the current paragraph or should start a new one. The document-level syntax for this is that a blank line after such an environment signals to \LaTeX{} that it should start a new paragraph; whilst no blank line signals that there should be no new paragraph and the text should be considered a continuation. Unfortunately, there are a number of cases where the original 2.09 approach failed, e.g., with \begin{flushleft} \ttfamily \{\meta{local customizations}\\ \cs{begin}\{equation\} a'. But this is in conflict with a rollback request to YYYY-MM-DD. \end{verbatim} In some cases this message showed a wrong file type, i.e., \verb|document class ''| or \verb|package ''|. This has now been corrected. % \githubissue{870} \subsection*{Fix existence check of document environments} \cs{NewDocumentEnvironment} and friends define (or redefine) a document environment using the space-trimmed \meta{envname}, but the existence check for \meta{envname} was done without space trimming. Thus when the user-specified \meta{envname} consists of leading and/or trailing space(s), it may lead to erroneously silent environment declaration. For example, in \begin{verbatim} \NewDocumentEnvironment{myenv}{}{begin}{end} \NewDocumentEnvironment{ myenv }{}{begin}{end} \end{verbatim} the first line defines a new environment \env{myenv} but the second line would check existence for \env{ myenv } (which is not yet defined), then redefine \env{myenv} environment without raising any errors. This has now been corrected. % \githubissue{1399} \subsection{\pkg{doc}:\ \cs{PrintDescribeMacro} in preamble} In \pkg{doc} version 2 it was possible alter the definition of \cs{PrintDescribeMacro} and similar commands in preamble. In version 3 this stopped working because they go reset at the end of the preamble. This has now been implemented differently and changes in the preamble are possible again. % \githubissue{1000} \section{Improvement to \XeTeX\ \cs{showhyphens}} When using \cs{showhyphens} with \XeTeX, missing character warnings would be generated for any character not in Latin Modern. This has been corrected and the warnings are suppressed. % \githubissue{1380} \section{Avoid code duplication in rollback} When the kernel uses \cs{AddToHook} in a region that might be rolled back (which happens in a few places) and a document requests a rollback, then we have the situation that the hook already contains code to which we added the same (or slightly different) code during the rollback; this results in code duplication or, worse, in errors. This has now been corrected by dropping any such code chunk (if there is one) prior to adding the rollback code. % \githubissue{1407} \section{Changes to packages in the \pkg{amsmath} category} \section{Extend support for \cs{dots}} The implementation of \cs{dots} in \pkg{amsmath} has the feature that it selects different dots depending on the symbol that follows: e.g., dots between commas would normally be on the baseline, while dots between binary or relational symols would be raised. However, when symbols such as \cs{cong} were protected from expansion in moving arguments (so that they worked in places such as headings) it had the unfortunate side-effect that the \cs{dots} magic stopped working for them. This has now been corrected. % \githubissue{1265} %\section{Changes to packages in the \pkg{graphics} category} \section{Changes to packages in the \pkg{tools} category} \subsection{\pkg{array}: Tagging support for \cs{cline}} In the last release we added tagging support for \pkg{array}, \pkg{longtable} and other tabular packages, but we overlooked that the kernel definition for \cs{cline} also needs modification because the rule generated by the command needs to be tagged as an artifact. Furthermore, the processing of a \cs{cline} looks to the algorithm as if another row is added (which is technically what happens), thus it was also necessary to decrement the internal row counter to get a correct row count. This has now been corrected in \pkg{array} which is automatically loaded for tagging, so that all these packages are now fully compatible with the tagging code if it is turned on. % \taggingissue{134} \subsection{\pkg{longtable}: Extend caption type} The \pkg{longtable} has been extended and now provides the command \cs{LTcaptype} (stemming from the \pkg{ltcaption} package) to change the counter and caption type used by the \cs{caption} command from longtable. So with \verb+\renewcommand\LTcaptype{figure}+, a longtable will step the figure counter instead of the table counter and produce an entry in the list of figures. An empty definition, \verb+\renewcommand\LTcaptype{}+, will suppress increasing of the counter. This makes it easy to define an unnumbered variant of longtable: \begin{verbatim} \newenvironment{longtable*} {\renewcommand\LTcaptype{}\longtable} {\endlongtable} \end{verbatim} %\section{Changes to files in the \pkg{cyrillic} category} \begin{thebibliography}{9}\frenchspacing %\fontsize{9.3}{11.3}\selectfont \bibitem{40:Lamport} Leslie Lamport. \newblock \emph{{\LaTeX}: {A} Document Preparation System: User's Guide and Reference Manual}. \newblock \mbox{Addison}-Wesley, Reading, MA, USA, 2nd edition, 1994. \newblock ISBN 0-201-52983-1. \newblock Reprinted with corrections in 1996. \bibitem{40:ltnews} \LaTeX{} Project Team. \emph{\LaTeXe{} news 1--39}. June, 2024. \url{https://latex-project.org/news/latex2e-news/ltnews.pdf} \bibitem{40:ltnews35} \LaTeX{} Project Team. \emph{\LaTeXe{} news 35}. June 2022. \url{https://latex-project.org/news/latex2e-news/ltnews35.pdf} \bibitem{40:ltnews39} \LaTeX{} Project Team. \emph{\LaTeXe{} news 39}. June 2024. \url{https://latex-project.org/news/latex2e-news/ltnews39.pdf} \end{thebibliography} \end{document}