diff options
Diffstat (limited to 'macros/latex-dev/base/ltnews37.tex')
-rw-r--r-- | macros/latex-dev/base/ltnews37.tex | 148 |
1 files changed, 148 insertions, 0 deletions
diff --git a/macros/latex-dev/base/ltnews37.tex b/macros/latex-dev/base/ltnews37.tex index 4ce8fcccc9..a1197e1052 100644 --- a/macros/latex-dev/base/ltnews37.tex +++ b/macros/latex-dev/base/ltnews37.tex @@ -122,6 +122,7 @@ \providecommand\tubcommand[1]{} \tubcommand{\input{tubltmac}} +% \publicationday{01} % change this if it's not released on 1st of a month \publicationmonth{June} \publicationyear{2023 --- DRAFT version for upcoming release} @@ -144,6 +145,106 @@ \section{Introduction} +\section{New functionality offered as part of the + \enquote{\LaTeX{} Tagged PDF} project} + +We have now enabled new automatic tagging functionality for additional +\LaTeX{} elements, among them most display environments, standard +sectioning commands and content, figure and table listings. This can +be activated through +\begin{verbatim} +\DocumentMetadata{testphase=phase-III} +\end{verbatim} +At this point in time tagging support is only available for a +restricted set of documents, i.e., those that use one of the basic +document classes (\texttt{article}, \texttt{report}, and +\texttt{book}) and only use commands and environments described in +Lamport's \LaTeX{} manual. + +Using other document classes or adding additional packages in the +preamble may work (or may partially work) but at this stage it is not +very likely, at least not for packages or classes that excessively +alter internals of \LaTeX{}. + +Also note that there are still several environments and commands +described in the \LaTeX{} manual that do not have tagging support yet, +notably tabulars, floats, \texttt{tabbing} and the various math +environment. They will get this support as part of \texttt{phase-III} +between now and the June release. + +A prototype for math tagging (including support for the \pkg{amsmath} +environments) is already available, but it is mainly intended for +experimentation and feedback and the resulting tagging is by no means +the way we envision it to be eventually. If you like to try it out use +the following line: +\begin{verbatim} +\DocumentMetadata{testphase={phase-III,math}} +\end{verbatim} +Note that the math tagging code at this point in time will clash with +packages that redefine the \texttt{\$} (which then may lead to strange +errors) and that packages that use math mode for non-mathematical +constructs may result in surprising output as far as tagging is +concerned. Feedback on which packages fail with the code in one or the +other way would be appreciated. + +The \texttt{latex-lab} bundle contains various +(still untagged) documentation files about the new code that can +be accessed with \verb|texdoc -l latex-lab|. + +Feedback is welcome! +Please use \url{https://github.com/latex3/latex2e/discussions/1010}. + +\section{Documentation improvements} + + +\subsection{Displaying the exact release dates for \LaTeX{}} + +In some situations it is necessary to find out the exact release dates +for older version of the \LaTeX{} format, for example, when you need +to use different code in a package depending on the availablilty of a +certain feature and you therefore want to use +\cs{IfFormatAtLeastTF}\texttt\{\meta{date}\texttt\} or the +rather horrible construction \verb/\@ifl@t@r\fmtversion{/\meta{date}\texttt\}, +if you +want to cater for formats that are older than 2020. + +Or you know that your package is definitely not going to work with a +format before a certain \meta{date}, in which case you could use +\verb/\NeedsTeXFormat{LaTeX2e}[/\meta{date}\texttt] to ensure that any + user is alerted if their format is too old. + +The big problem is to know the exact \meta{date} to put into such +commands and in the past that was not that easy to find. You could have +looked in the the file \file{changes.txt}, but that is hidden somewhere +in your installation and if you try +\verb*/texdoc -l changes.txt/ you get more than thirty results and the +right file is by no means the first. + +Yukai Chou (\textsf{@muzimuzhi}) kindly provided a patch for this, so that we now have +the exact dates for each \LaTeX{} format listed in an easy to remember +place: in \file{ltnews.pdf} and that file conveniently also contains all major +features and changes to \LaTeX{} over the years\Dash one of which is +most likely the reason you need the \meta{date} date in the first +place. + +It is given in parentheses in the newsletter title, thus this +newsletter tells you that on +% +\makeatletter +\mbox{\expandafter\@gobblenonyear\@year\@nil + -\@julianmonthtonum\@month-\two@digits\@day} +\makeatother +% +the command +\cs{NewEnvironmentCopy}, a new \texttt{shipout} hook, etc.\ was made +available. And looking into \file{ltnews.pdf} you can now easily find +out that the \LaTeX3 programming layer was added on 2020-02-02 +(because the date was so nice) and not on the first of the month. +% +\githubissue{982} + + + \section{New or improved commands} @@ -190,6 +291,21 @@ following output: \githubissue{943} +\subsection{Default definition for \cs{do}} + +The command \cs{do} with its nice public name is in reality an +internal command inherited from plain \TeX{} for list +processing. However, it only got a definition when +\verb=\begin{document}= was executed, with a result that a user +definition in the preamble was unconditionally overwritten at this +point. To properly alert the user that this command is not freely +available we now already provide a definition in the format so that +\cs{newcommand} and friends produce a proper error message instead of +providing a definition that doesn't last. +% +\githubissue{975} + + \subsection{\pkg{doc}: Support the \pkg{upquote} package} The default quote and backquote characters in typewriter fonts are @@ -318,6 +434,25 @@ the previous release, but only now documented in a newletter. \githubissue{967} +\subsection{Improve spacing at top of \env{minipages}} + +A list and several other document elements add some vertical space in +front of them. However this should not happen at the beginning of a +box (such as a \env{minipage}) and normally it doesn't, because +\TeX{} automatically drops such spaces at the start of a vertical +list. However, if there is some invisible material, such as a +\cs{color} command, some \pkg{hyperref} anchor, a \cs{write} or +something else, then the list is no longer empty and \TeX{} no longer +drops spaces, hence the difference. + +With the new paragraph handling introduced in 2021 it is now finally +possible to detect and avoid this problem and apply appropriate +counter measures so that from now on the spacing will be always +correct. +% +\githubissue{989} + + \section{Changes to packages in the \pkg{amsmath} category} @@ -326,6 +461,19 @@ the previous release, but only now documented in a newletter. \section{Changes to packages in the \pkg{tools} category} +\subsection{Fix handling of nested \env{multicols}} + +If \env{multicols} environments have been nested into each other (the +inner one boxed) it could fail if the boxed environment appeared near a +page break. The problem was that the output routine was called while +the \cs{hsize} was still altered to fit the column width of the inner +\env{multicols} --- thereby messing up the placement of columns of the +page. This has now been fixed. +% +\githubissue{1002} + + + %\medskip \begin{thebibliography}{9} |