diff options
Diffstat (limited to 'Master/texmf-dist/source/latex-dev/base/ltnews26.tex')
-rw-r--r-- | Master/texmf-dist/source/latex-dev/base/ltnews26.tex | 239 |
1 files changed, 239 insertions, 0 deletions
diff --git a/Master/texmf-dist/source/latex-dev/base/ltnews26.tex b/Master/texmf-dist/source/latex-dev/base/ltnews26.tex new file mode 100644 index 00000000000..3dc40ffb73e --- /dev/null +++ b/Master/texmf-dist/source/latex-dev/base/ltnews26.tex @@ -0,0 +1,239 @@ +% \iffalse meta-comment +% +% Copyright 2017 +% The LaTeX3 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 +% http://www.latex-project.org/lppl.txt +% and version 1.3c or later is part of all distributions of LaTeX +% version 2005/12/01 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: ltnews26.tex +% +% This is issue 26 of LaTeX News. + +\documentclass{ltnews} +\usepackage[T1]{fontenc} + +\usepackage{lmodern,url,hologo} + +\publicationmonth{January} +\publicationyear{2017} + +\publicationissue{26} + +\begin{document} + +\maketitle +\tableofcontents + +\setlength\rightskip{0pt plus 3em} +\section{\eTeX{}} + +In \LaTeX{} News~16 (December 2003) the team announced +\begin{quotation} +We expect that within the next two years, releases of \LaTeX{} will +change modestly in order to run best under an extended \TeX{} engine +that contains the \eTeX{} primitives, e.g., \eTeX{} or pdf\TeX{}. +\end{quotation} +and also said +\begin{quotation} +Although the current release does not \emph{require} \eTeX{} features, we +certainly recommend using an extended \TeX{}, especially if you need to debug +macros. +\end{quotation} + +For many years the team have worked on the basis that users will have \eTeX{} +available but had not revisited the above statements formally. As of the +January 2017 release of \LaTeXe{}, \eTeX{} is \emph{required} to build the +format, and attempting to build a format without the extensions will fail. + +Practically, modern \TeX{} distributions provide the extensions in all engines +other than the ``pure'' Knuth \texttt{tex}, and indeed parts of the +format-building process already require \eTeX{}, most notably some of the UTF-8 +hyphenation patterns. As such, there should be no noticeable effect on users of +this change. + +The team expect to make wider use of \eTeX{} within the kernel in future; +details will be announced where they impact on end users in a visible way. + +\section{Default encodings in \hologo{XeLaTeX} and \hologo{LuaLaTeX}} +The default encoding in \LaTeX\ has always been the original +128-character encoding \texttt{OT1}. For Unicode based \TeX\ engines, this +is not really suitable, and is especially problematic with +\hologo{XeLaTeX} as in the major distributions this is built with +Unicode based hyphenation patterns in the format. In practice this has +not been a major problem as documents use the contributed +\textsf{fontspec} package in order to switch to a +Unicode encoded font. + +In this release we are adding \texttt{TU} as a new supported +encoding in addition to the previously supported encodings such as \texttt{OT1} +and \texttt{T1}. This denotes a Unicode based font encoding. It is essentially +the same as the \texttt{TU} encoding that has been on trial with the +experimental \texttt{tuenc} option to \textsf{fontspec} for the past +year. + +The \hologo{XeLaTeX} and \hologo{LuaLaTeX} formats will now default +to \texttt{TU} encoding and \texttt{lmr} (Latin Modern) family. In the +case of \hologo{LuaLaTeX} the contributed \textsf{luaotfload} Lua +module will be loaded at the start of each run to enable the loading +of OpenType fonts. + +The \textsf{fontspec} package is being adjusted in a companion release +to recognise the new encoding default arrangements. + +Note that in practice no font supports the full Unicode range, and so +\texttt{TU} encoded fonts, unlike fonts specified for \texttt{T1}, may be +expected to be incomplete in various ways. In the current release the file +\texttt{tuenc.def} that implements the \texttt{TU} encoding-specific commands +has made some basic assumptions for (for example) default handling of +accent commands, and the set of command names is derived from the +command names used for the UTF-8 support in the \textsf{inputenc} package, +restricted roughly to the character ranges classically provided by +the \texttt{T1} and \texttt{TS1} encodings, but is part of a longer term plan +seen over recent releases to increase support for Unicode based \TeX\ engines +into the core \LaTeX\ support. + + + +If for any reason you need to process a document with the previous +default \texttt{OT1} encoding, you may switch encoding in the usual ways, for +example +\begin{verbatim} +\usepackage[OT1]{fontenc} +\end{verbatim} +or you may roll back all the changes for this release by starting the +document with +\begin{verbatim} +\RequirePackage[2016/12/31]{latexrelease} +\end{verbatim} + +\section{\cs{showhyphens} in \hologo{XeLaTeX}} +Due to the way \hologo{XeLaTeX} interfaces to font libraries, the +standard definition of \cs{showhyphens} does not work. A variant +definition has been available in the contributed \textsf{xltxtra} +package, however a (slightly different) definition for \cs{showhyphens} +is now included in \hologo{XeLaTeX} by default. As usual +this change will be undone if an earlier +release is specified using the \textsf{latexrelease} package. + +\section{The \textsf{fixltx2e} package} +As described in \LaTeX{} News~22, the \textsf{fixltx2e} package has become +obsolete with the new update policy. Since 2015 it has just made a +warning and exited. In this release we have re-introduced all +the code from the original fixes in the 2014 \LaTeX\ but guarded by +\verb|\IncludeInRelease{2015/01/01}|. +So for current releases \textsf{fixltx2e} still just displays a warning +but for old releases, whether that is an old format, or a format with +the version date reset via the \textsf{latexrelease} package, the +fixes in the original \textsf{fixltx2e} will be applied. + +This improves the ability to run old documents in a way that is compatible +with contemporary formats. If you have a 2014 document that used +\verb|\usepackage{fixltx2e}| and you add +\verb|\RequirePackage[2014/01/01]{latexrelease}| and process it with the +current format then \textsf{latexrelease} will undo most changes made +since 2014, but now when the document includes \textsf{fixltx2e} it +will act like a 2014 version of the package and apply the code fixes, +not just give a warning that the package is obsolete. + +\section{The \textsf{latexbug} package} + +As explained in more detail +at the \LaTeX\ Project + website\footnote{\url{https://www.latex-project.org/bugs/}} +a new package, \textsf{latexbug}, has been produced to help produce +test files to accompany bug reports on the core \LaTeX\ distribution. +This is being published separately to CTAN at the same time as this +release. By using the \textsf{latexbug} package you can easily check +that the packages involved in the test are all part of the core +release. The \LaTeX\ project cannot handle bug reports on contributed +packages, which should be directed to the package maintainer as given +in the package documentation. + +\section{Updates to \textsf{amsmath}} +The \textsf{amsmath} package has two updates at this release. +\begin{itemize} +\item The spacing to the left of the \texttt{aligned} and + \texttt{gathered} environments has been fixed: the spurious thin + space is no longer added by default. Package options control this + to revert to the original behaviour where required; see the + \textsf{amsldoc} guide for further details. +\item The large delimiters around generalised fractions (for example + in the \cs{binom} construct) did not work in previous releases if + using \hologo{LuaTeX} or \hologo{XeTeX} with OpenType math fonts. This is + related to the lack of specific metrics for this use in the OpenType Math + table. In principle \hologo{LuaTeX} has two additional named metrics + to control the delimiters but these are not initialised by default, + and in \hologo{XeTeX} it does not seem possible to make them work at all. + So for Unicode \TeX\ systems, a new implementation of + \cs{genfrac} is used at this release that uses \verb|\left\right| + internally but parameterised to give spacing as close to the + original as possible. The implementation in (pdf)\TeX\ is + unaffected. +\end{itemize} + +\section{Updates to \textsf{tools}} +The \textsf{array} package has been updated to fix a longstanding but +previously unreported issue with unwanted interactions between tables +in the page head or foot and the body of the page, as reported in +\href{http://www.latex-project.org/cgi-bin/ltxbugs2html?pr=tools/4488}{PR + tools/4488}. +There is also an update to the \hologo{LuaTeX} support in \textsf{bm}. + +\section{An addendum to the release changes in 2015: page breaks and vertical spacing} + +In 2015 we announced the introduction of the roll-back\slash +roll-forward concept to manage bug fixes and additions to core +\LaTeX{} in a manageable way. We also announced at that time +that we now incorporate all fixes from \textsf{fixltx2e} into the +kernel (as the old mechanism produced problems instead of improving +the situation). Refer to +\href{https://www.latex-project.org/news/latex2e-news/ltnews22.pdf}{\texttt{ltnews22.pdf}} +for details. + +One of the fixes from \textsf{fixltx2e} was for a glaring bug in +\cs{addvspace} that was originally detected in the mid-nineties and +back then added to the \textsf{fixltx2e} support package. In certain +situations \cs{addvspace} would result in a page/column break below +the baseline of the last line. As a result documents using +\cs{flushbottom} would show a clear misalignment (even more prominent +when typesetting in two-column mode). + +Starting with release 2015/01/01 this is now finally corrected already +in the kernel and not only in \textsf{fixltx2e}. In nearly all +circumstances this will either make no difference to existing +documents, or it will locally improve the visual appearance of that +document without changing anything on other pages. However, by the +nature of the change it is also possible that there are further +non-local changes to the page breaks due to the different break +positions introduced by the fix. + +Thus, for documents that have been written before 2015 and that should +be preserved unchanged at all costs you may have to add +\begin{verbatim} +\RequirePackage[2014/01/01]{latexrelease} +\end{verbatim} +at the top of the document, to roll back the format to a date before +the policy change. + +\end{document} |