[latex3-commits] [git/LaTeX3-latex3-latex3] master: updates to l3news11/12 by kb (2a0eb66b6)
Frank Mittelbach
frank.mittelbach at latex-project.org
Mon Feb 3 19:33:58 CET 2020
Repository : https://github.com/latex3/latex3
On branch : master
Link : https://github.com/latex3/latex3/commit/2a0eb66b6110dc1f19f78c98c4206a32499a3faf
>---------------------------------------------------------------
commit 2a0eb66b6110dc1f19f78c98c4206a32499a3faf
Author: Frank Mittelbach <frank.mittelbach at latex-project.org>
Date: Mon Feb 3 19:33:58 2020 +0100
updates to l3news11/12 by kb
>---------------------------------------------------------------
2a0eb66b6110dc1f19f78c98c4206a32499a3faf
l3kernel/doc/l3news11.tex | 36 +++++++-------
l3kernel/doc/l3news12.tex | 123 +++++++++++++++++++++++++++++-----------------
2 files changed, 96 insertions(+), 63 deletions(-)
diff --git a/l3kernel/doc/l3news11.tex b/l3kernel/doc/l3news11.tex
index a060e418e..a1fd8a129 100644
--- a/l3kernel/doc/l3news11.tex
+++ b/l3kernel/doc/l3news11.tex
@@ -1,4 +1,5 @@
-% Copyright 2017 The LaTeX3 Project
+% Copyright 2017-2018 The LaTeX3 Project
+
\documentclass{ltnews}
\PassOptionsToPackage{colorlinks}{hyperref}
@@ -37,6 +38,7 @@
\noexpand\path{\@backslashchar#1}%
}
\makeatother
+\hyphenpenalty=10000 \exhyphenpenalty=10000
\begin{document}
@@ -44,12 +46,11 @@
\tableofcontents
-
\section{Move of sources from Subversion to Git}
The \LaTeX{} team have used a variety of version control systems over the life
of the \LaTeX3 sources. For a long time we maintained the \LaTeX3 sources in
-Subversion (\textsc{svn}) but also provided a read-only clone of them on GitHub using
+Subversion (\texttt{svn}) but also provided a read-only clone of them on GitHub using
SubGit from TMate Software~\cite{SubGit} to synchronize the two
repositories---a solution that worked very well.
@@ -105,7 +106,7 @@ appropriate.
\subsection{Revision of \pkg{l3file}}
Large parts of \pkg{l3file} have been revised to give a better separation of
-path/file/extension. This has resulted in addition of a number of new support
+path/file/extension. This has resulted in the addition of a number of new support
functions and variables.
At the same time, new experimental functions have been added to utilise a
@@ -127,7 +128,7 @@ correctly to an underlying \verb|N|- or \verb|n|-type base function is sometimes
misunderstood.
To help detect and correct these cases, \cs{cs_generate_variant:Nn} now
-carries out error checking on it's arguments, and raises a warning where
+carries out error checking on its arguments, and raises a warning where
it is mis-applied. At present, the team have avoided making this an error
as it is likely to be seen by end users rather than directly by package
developers. In time, we are likely to revisit this and tighten up
@@ -136,40 +137,41 @@ further on this key requirement.
\subsection{Accessing random data}
To support randomised data selection, we have introduced a family of
-experimental functions which use underlying engine support for random values,
+experimental functions which use under\-lying engine support for random values,
and provide one entry at random from the data type.
-At the same time, we have addresses some issues with uniformity stemming from
+At the same time, we have addressed some issues with uniformity stemming from
the random number function used by \hologo{pdfTeX}{} and inherited by other
-engines. This means that \pkg{expl3}'s \textsc{fpu} will generate \emph{pseudo}-random
+engines. This means that \pkg{expl3}'s FPU will generate \emph{pseudo}-random
values across the range of possible outputs.
\subsection{More powerful debugging}
A new set of debugging functions have been added to the kernel. These allow
debug code to be enabled locally using the new option \verb|enable-debug| along
-with functions \cs{debug_on:n} and \cs{debug_off:n}. A companying this change, we
+with functions \cs{debug_on:n} and \cs{debug_off:n}. Accompanying this change, we
have improved the handling of global/local consistency in variable setting.
\subsection{Mark-up changes in \pkg{l3doc}}
-Since the introduction of the \verb|__| syntax to mark internal function, the
-need for explicit mark-up of internal material in sources has been negated.
+Since the introduction of the \verb|__| syntax to mark internal functions, the
+need for explicit markup of internal material in sources has been negated.
As such, we have now dropped the requirement to mark internal material with
\verb|[aux]| when using \pkg{l3doc}. Instead, the status of functions and
variables is auto-detected from the presence of \verb|__|. For cases where
-non-standard names are used for internal code, the mark up \verb|[int]| is
+non-standard names are used for internal code, the mark-up \verb|[int]| is
retained, \emph{e.g.}
\begin{verbatim}
\begin{macro}[int]{\l at expl@enable at debug@bool}
\end{verbatim}
+\newpage
\section{\pkg{l3build} updates}
Work on \pkg{l3build} has continued in parallel with \pkg{expl3} work, in
particular continuing to develop features to allow wider use of the tool.
-Paralleling the move of the \LaTeX3 codebase to Git, \pkg{l3build} now has it's
+Paralleling the move of the \LaTeX3 codebase to Git, \pkg{l3build} now has its
own separate Git repository: \url{https://github.com/latex3/l3build}. This will
enable us to involve other developers in the Lua code required for the build
system. At the same time, we have split the code into a number of small source
@@ -178,15 +180,15 @@ collaborators.
Another major change is that \pkg{l3build} can now retain the structure of
source repositories when creating a CTAN archive. Whilst the team favor `flat'
-source set ups, other users prefer structures approaches. Most notably, this
+source setups, other users prefer structured approaches. Most notably, this
new \pkg{l3build} functionality means that it is now used to carry out
\pkg{beamer} releases.
-The other major new feature is a new approach to multiple test set ups, which
+The other major new feature is a new approach to multiple test setups, which
replaces the older \verb|--testfiledir| option. In the new approach, separate
configuration files are listed in the main \verb|build.lua| script, and can be
selected manually using a new \verb|--config| switch. This new approach allows
-complex test set ups to be run in a totally automated fashion, which is
+complex test setups to be run in a totally automated fashion, which is
important for kernel testing.
Some changes to the normalisation routines have been carried out, some to deal
@@ -200,7 +202,7 @@ as possible, we strive to avoid requiring changes to the reference files.
\emph{SubGit}, TMate Software, \url{https://subgit.com}
\bibitem{11:project-publications}
Links to various publications by members of the \LaTeX{} Project Team.
- \newblock \url{https://www.latex-project.org/publications}.
+ \newblock \url{https://www.latex-project.org/publications}
\end{thebibliography}
\end{document}
diff --git a/l3kernel/doc/l3news12.tex b/l3kernel/doc/l3news12.tex
index 015c661b0..f41e4b369 100644
--- a/l3kernel/doc/l3news12.tex
+++ b/l3kernel/doc/l3news12.tex
@@ -34,6 +34,37 @@
\noexpand\path{\@backslashchar#1}%
}
\makeatother
+\hyphenpenalty=10000
+\exhyphenpenalty=10000
+\hbadness=2500
+
+\makeatletter
+\renewcommand*\l at section[2]{%
+ \ifnum \c at tocdepth >\z@
+ \addpenalty\@secpenalty
+ \addvspace{0.7em \@plus\p@}% reduce from 1.0em
+ \setlength\@tempdima{1.5em}%
+ \begingroup
+ \parindent \z@ \rightskip \@pnumwidth
+ \parfillskip -\@pnumwidth
+ \leavevmode \bfseries
+ \advance\leftskip\@tempdima
+ \hskip -\leftskip
+ #1\nobreak\hfil
+ \nobreak\hb at xt@\@pnumwidth{\hss #2%
+ \kern-\p@\kern\p@}\par
+ \endgroup
+ \fi}
+\makeatother
+
+\newenvironment{compactitemize}%
+ {\begin{itemize}%
+ \setlength{\itemsep}{0pt}%
+ \setlength{\parskip}{0pt}%
+ \setlength{\parsep} {0pt}%
+ }%
+ {\end{itemize}}
+
\begin{document}
@@ -82,14 +113,14 @@ in sight.
New programming tools have appeared in various places across \pkg{expl3}.
The highlights are
-\begin{itemize}
+\begin{compactitemize}
\item Shuffling of sequences to allow randomization
\item Arrays of integers and floating point values; these have constant-time
access
\item Functions to return values after system shell usage
\item Expandable access to file information, including file size, MD5
hash and modification date
-\end{itemize}
+\end{compactitemize}
For the latter, we have revised handling of file names considerably. There is
now support for finding files in expansion contexts (by using the
@@ -102,15 +133,15 @@ kernel.
In addition to entirely new functions, the team have moved the
\pkg{l3str-convert} module from the \pkg{l3experimental} bundle into the
\pkg{expl3} core. This module is essential for dealing with the need to produce
-\textsc{utf}-16 and \textsc{utf}-32 strings in some contexts, and also offers
-built-in escape for \textsc{url}s and \textsc{pdf} strings.
+UTF-16 and UTF-32 strings in some contexts, and also offers
+built-in escape for url and PDF strings.
\subsection{Case changing of text}
-Within \pkg{expl3}, the team have re-named and reworked the ideas from
+Within \pkg{expl3}, the team have renamed and reworked the ideas from
\cs{tl_upper_case:n} and so on, creating a new module \pkg{l3text}. This is a
\enquote{final} home for functions to manipulate \emph{text}; token lists that
-can reasonably expected to expand to plain text plus limited mark-up, for
+can reasonably be expected to expand to plain text plus limited markup, for
example emphasis and labels/references. Moving these functions, we have also
made a small number of changes in other modules to give consistent names to
functions: see the change log for full details.
@@ -122,7 +153,7 @@ added to this module.
\subsection{File name parsing}
-The functions for parsing file names have been entirely re-written, partly as
+The functions for parsing file names have been entirely rewritten, partly as
this is required for the expandable access to file information mentioned above.
The new code correctly deals with spaces and quote marks in file names and
splits the path/name/extension.
@@ -133,7 +164,7 @@ The format of messages in \pkg{expl3} was originally quite text-heavy, the idea
being that they would stand out in the \texttt{.log} file. However, this made
them hard to find by a regular expression search, and was very different from
the \LaTeXe{} message approach. The formatting of \pkg{expl3} messages has been
-aligned with that from the \LaTeXe{} kernel, such that \textsc{ide} scripts and
+aligned with that from the \LaTeXe{} kernel, such that IDE scripts and
similar will be able to find and extract them directly.
\subsection{Key inheritance}
@@ -151,7 +182,7 @@ equal to \verb|pi|.
\subsection{Changing box dimensions}
-\TeX{}'s handling of boxes is subtly-different from other registers, and this
+\TeX{}'s handling of boxes is subtly different from other registers, and this
shows up in particular when you want to resize a box. To bring treatment of
boxes, or rather the grouping behavior of boxes, into line with other
registers, we have made some internal changes to how functions such as
@@ -170,7 +201,7 @@ months.
There have been two notable sets of deprecations over the past 18 months.
First, we have rationalised all of the \enquote{raw} primitive names to the
form \cs{tex_<name>:D}. This means that the older names, starting
-\cs{pdftex_...}, \cs{xetex_...}, etc., have been removed.
+\mbox{\cs{pdftex_...}}, \cs{xetex_...}, etc., have been removed.
Secondly, the use of integer constants, which dates back to the earliest days
of \pkg{expl3}, is today more likely to make the code harder to read than
@@ -191,23 +222,23 @@ The team introduced the idea of internal module functions some time ago. Within
the kernel, there are places where functions need to be used in multiple
modules. To make the nature of the kernel interactions clearer, we have worked
on several aspects
-\begin{itemize}
+\begin{compactitemize}
\item Reducing as far as possible cross-module functions
\item Making more generally-useful functions public, for example
scan marks
\item Creating an explicit cross-kernel naming convention for
functions which are internal but are essential to use in multiple
kernel modules
-\end{itemize}
+\end{compactitemize}
\subsection{The backend}
Creating graphics, working with color, setting up hyperlinks and so on require
backend-specific code. Here, backends are for example \texttt{dvips},
-\texttt{xdvipdfmx} and the direct \textsc{pdf} mode in \hologo{pdfTeX} and
+\texttt{xdvipdfmx} and the direct PDF mode in \hologo{pdfTeX} and
\hologo{LuaTeX}. These functions are needed across the \LaTeX3 codebase and
-have to be updated separate from the \pkg{expl3} core. To facilitate that, we
-have split those sources into a separate bundle, which can then be updated as
+have to be updated separately from the \pkg{expl3} core. To facilitate that, we
+have split those sources into a separate bundle, which can be updated as
required.
At the same time, the code these files contain is very low-level and is best
@@ -215,7 +246,7 @@ described as internal. We have re-structured how the entire set of functions
are referred to such that they are now internal for the area they implement,
for example image inclusion, box affine transformations, etc.
-\section{Better support for (u)p\TeX{}}
+\section{Better support for (u)p\texorpdfstring{\kern-.05em}{}\TeX{}}
The developers behind (u)p\TeX{} (Japanese \TeX{}) have recently enhanced their
English documentation (see \url{https://github.com/texjporg/ptex-manual}).
@@ -230,35 +261,36 @@ formally removed after deprecation. This is to allow \emph{temporary}
work-arounds for documents to be compiled whilst code is begin updated.
The \enquote{classical} options for selecting backends (\texttt{dvips},
-\texttt{pdftex}, etc.) are now recognised in addition to the native key--value
-versions. This should make it much easier to use \pkg{expl3} image and color
+\texttt{pdftex}, etc.)\ are now recognised in addition to the native key--value
+versions. This should make it much easier to use the \pkg{expl3} image and color
support as it is brought up to fully-workable standards.
\section{Engine requirements}
The minimum engine versions needed to use \pkg{expl3} have been
incremented a little:
-\begin{itemize}
+\begin{compactitemize}
\item \hologo{pdfTeX} v1.40
\item \hologo{XeTeX} v0.99992
\item \hologo{LuaTeX} v0.95
- \item $\epsilon$-(u)p\TeX{} mid-2012
-\end{itemize}
+ \item $\varepsilon$-(u)p\TeX{} mid-2012
+\end{compactitemize}
The team have also worked with the \hologo{XeTeX} and (u)p\TeX{} developers to
standardise the set of post-\eTeX{} utility primitives that are available: the
so-called \enquote{\hologo{pdfTeX} utilities}. These are now available in all
-supported engine, and in time will all be \emph{required}. This primarily
+supported engines, and in time will all be \emph{required}. This primarily
impacts \hologo{XeTeX}, which gained most of these primitives in the 2019
\TeX{} Live cycle. (Examples are the random number primitives and expandable
-file data provision.) See \emph{\LaTeX{} News~31}~\cite{12:site-news} for more on this.
+file data provision.) See \emph{\LaTeX{} News~31}~\cite{12:site-news}
+for more.
\section{Documentation}
\subsection{News}
The \emph{\LaTeX3 News} files were until recently only used to create
-\textsc{pdf} files on the team website~\cite{12:site}. We have now
+PDF files on the team website~\cite{12:site}. We have now
integrated those into the \pkg{l3kernel} (\pkg{expl3} core)
bundle. The news files cover all of \LaTeX3 files, as the core files
are always available.
@@ -280,33 +312,32 @@ some cases when searching for optional arguments, a new modifier
immediately with no intervening spaces.
There is a new argument type purely for environments: \texttt{b}-type
-for collecting a \cs{begin}/\cs{end} pair, i.e., collecting the body of
+for collecting a \cs{begin}\texttt{...}\cs{end} pair, i.e., collecting the body of
an environment. This is similar in concept to the \pkg{environ} package,
but is integrated directly into \pkg{xparse}.
Finally, it is now possible to refer to one argument as the
default for another optional one, for example
\begin{verbatim}
-\NewDocumentCommand{\caption}{O{#2} m}
- ...
+\NewDocumentCommand{\caption}{O{#2} m} ...
\end{verbatim}
\section{New experimental modules}
A number of new experimental modules have been added within the
-\pkg{l3experimental} bundle
-\begin{itemize}
- \item \pkg{l3benchmark} Performance-testing system using the timing
+\pkg{l3experimental} bundle:
+\begin{description}
+ \item[\pkg{l3benchmark}] Performance-testing system using the timing
function in modern \TeX{} engines
- \item \pkg{l3cctab} Category code tables for all engines, not
+ \item[\pkg{l3cctab}] Category code tables for all engines, not
just \hologo{LuaTeX}
- \item \pkg{l3color} Color support, similar in interface to \pkg{xcolor}
- \item \pkg{l3draw} Creation of drawings, inspired by \pkg{pgf}, but
- using the \LaTeX3 \textsc{fpu} for calculations
- \item \pkg{l3pdf} Support for \textsc{pdf} features such as compression,
- hyper-links, etc.
- \item \pkg{l3sys-shell} Shell escape functions for file manipulation
-\end{itemize}
+ \item[\pkg{l3color}] Color support, similar in interface to \pkg{xcolor}
+ \item[\pkg{l3draw}] Creation of drawings, inspired by \pkg{pgf}, but
+ using the \LaTeX3 FPU for calculations
+ \item[\pkg{l3pdf}] Support for PDF features such as compression,
+ hyperlinks, etc.
+ \item[\pkg{l3sys-shell}] Shell escape functions for file manipulation
+\end{description}
\section{\pkg{l3build} changes}
@@ -321,29 +352,29 @@ Accompanying this, we have added support for installing scripts and script
\texttt{man} files.
There is a new \texttt{upload} target that can take a zip file and send it to
-\textsc{ctan}: you just have to fill in release information for \emph{this}
+CTAN: you just have to fill in release information for \emph{this}
upload at the prompts.
-Testing using \textsc{pdf} files rather than logs has been heavily revised:
-this is vital for work on \textsc{pdf} tagging.
+Testing using PDF files rather than logs has been heavily revised:
+this is vital for work on PDF tagging.
There is also better support for complex directory structures, including the
-ability to manually specify \textsc{tds} location for all installed files. This
-is particularly targeted at package with both generic and format-specific file
+ability to manually specify TDS location for all installed files. This
+is particularly targeted at packages with both generic and format-specific files
to install.
\begin{thebibliography}{9}
-\fontsize{9.3}{11.3}\selectfont
+\fontsize{9.9}{11.9}\selectfont
\bibitem{12:site}
\emph{\LaTeX{} Project Website}.
- \url{https://latex-project.org/}
+ \hfil\break\url{https://latex-project.org/}
\bibitem{12:site-news}
- \emph{\LaTeXe{} release news letters on the \LaTeX{} Project Website}.
+ \emph{\LaTeXe{} release newsletters on the \LaTeX{} Project Website}.
\url{https://latex-project.org/news/latex2e-news/}
More information about the latex3-commits
mailing list.