texlive[48935] Master/texmf-dist: l3 (18oct18)
commits+karl at tug.org
commits+karl at tug.org
Thu Oct 18 22:31:59 CEST 2018
Revision: 48935
http://tug.org/svn/texlive?view=revision&revision=48935
Author: karl
Date: 2018-10-18 22:31:59 +0200 (Thu, 18 Oct 2018)
Log Message:
-----------
l3 (18oct18)
Modified Paths:
--------------
trunk/Master/texmf-dist/doc/latex/l3experimental/CHANGELOG.md
trunk/Master/texmf-dist/doc/latex/l3experimental/README.md
trunk/Master/texmf-dist/doc/latex/l3experimental/l3color/l3color.pdf
trunk/Master/texmf-dist/doc/latex/l3experimental/l3draw/l3draw-code.pdf
trunk/Master/texmf-dist/doc/latex/l3experimental/l3draw/l3draw.pdf
trunk/Master/texmf-dist/doc/latex/l3experimental/l3str/l3str-convert.pdf
trunk/Master/texmf-dist/doc/latex/l3experimental/l3str/l3str-format.pdf
trunk/Master/texmf-dist/doc/latex/l3experimental/l3sys-shell/l3sys-shell.pdf
trunk/Master/texmf-dist/doc/latex/l3experimental/xcoffins/xcoffins.pdf
trunk/Master/texmf-dist/doc/latex/l3experimental/xgalley/l3galley.pdf
trunk/Master/texmf-dist/doc/latex/l3experimental/xgalley/xgalley.pdf
trunk/Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md
trunk/Master/texmf-dist/doc/latex/l3kernel/README.md
trunk/Master/texmf-dist/doc/latex/l3kernel/expl3.pdf
trunk/Master/texmf-dist/doc/latex/l3kernel/interface3.pdf
trunk/Master/texmf-dist/doc/latex/l3kernel/interface3.tex
trunk/Master/texmf-dist/doc/latex/l3kernel/l3docstrip.pdf
trunk/Master/texmf-dist/doc/latex/l3kernel/l3obsolete.txt
trunk/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.pdf
trunk/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.tex
trunk/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.pdf
trunk/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.tex
trunk/Master/texmf-dist/doc/latex/l3kernel/source3.pdf
trunk/Master/texmf-dist/doc/latex/l3kernel/source3.tex
trunk/Master/texmf-dist/doc/latex/l3packages/CHANGELOG.md
trunk/Master/texmf-dist/doc/latex/l3packages/README.md
trunk/Master/texmf-dist/doc/latex/l3packages/l3keys2e/l3keys2e.pdf
trunk/Master/texmf-dist/doc/latex/l3packages/xfp/xfp.pdf
trunk/Master/texmf-dist/doc/latex/l3packages/xfrac/xfrac.pdf
trunk/Master/texmf-dist/doc/latex/l3packages/xparse/xparse.pdf
trunk/Master/texmf-dist/doc/latex/l3packages/xtemplate/xtemplate.pdf
trunk/Master/texmf-dist/source/latex/l3experimental/l3color/l3color.dtx
trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-boxes.dtx
trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-paths.dtx
trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-points.dtx
trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-scopes.dtx
trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-softpath.dtx
trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-state.dtx
trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-transforms.dtx
trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw.dtx
trunk/Master/texmf-dist/source/latex/l3experimental/l3str/l3str-convert.dtx
trunk/Master/texmf-dist/source/latex/l3experimental/l3str/l3str-format.dtx
trunk/Master/texmf-dist/source/latex/l3experimental/l3sys-shell/l3sys-shell.dtx
trunk/Master/texmf-dist/source/latex/l3experimental/xcoffins/xcoffins.dtx
trunk/Master/texmf-dist/source/latex/l3experimental/xgalley/l3galley.dtx
trunk/Master/texmf-dist/source/latex/l3experimental/xgalley/xgalley.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/expl3.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3alloc.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3box.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3color-base.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3drivers.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3file.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3final.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3int.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3names.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3oldmodules.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3str.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3token.dtx
trunk/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx
trunk/Master/texmf-dist/source/latex/l3packages/l3keys2e/l3keys2e.dtx
trunk/Master/texmf-dist/source/latex/l3packages/xfp/xfp.dtx
trunk/Master/texmf-dist/source/latex/l3packages/xfrac/xfrac.dtx
trunk/Master/texmf-dist/source/latex/l3packages/xparse/xparse.dtx
trunk/Master/texmf-dist/source/latex/l3packages/xtemplate/xtemplate.dtx
trunk/Master/texmf-dist/tex/latex/l3experimental/l3color/l3color.sty
trunk/Master/texmf-dist/tex/latex/l3experimental/l3draw/l3draw.sty
trunk/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-convert.sty
trunk/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-format.sty
trunk/Master/texmf-dist/tex/latex/l3experimental/l3sys-shell/l3sys-shell.sty
trunk/Master/texmf-dist/tex/latex/l3experimental/xcoffins/xcoffins.sty
trunk/Master/texmf-dist/tex/latex/l3experimental/xgalley/l3galley.sty
trunk/Master/texmf-dist/tex/latex/l3experimental/xgalley/xgalley.sty
trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex
trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex
trunk/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def
trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvips.def
trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvisvgm.def
trunk/Master/texmf-dist/tex/latex/l3kernel/l3pdfmode.def
trunk/Master/texmf-dist/tex/latex/l3kernel/l3xdvipdfmx.def
trunk/Master/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty
trunk/Master/texmf-dist/tex/latex/l3packages/xfp/xfp.sty
trunk/Master/texmf-dist/tex/latex/l3packages/xfrac/xfrac.sty
trunk/Master/texmf-dist/tex/latex/l3packages/xparse/xparse.sty
trunk/Master/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.sty
Added Paths:
-----------
trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.pdf
trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex
Modified: trunk/Master/texmf-dist/doc/latex/l3experimental/CHANGELOG.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3experimental/CHANGELOG.md 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/doc/latex/l3experimental/CHANGELOG.md 2018-10-18 20:31:59 UTC (rev 48935)
@@ -7,6 +7,8 @@
## [Unreleased]
+## [2018-10-17]
+
## [2018-08-24]
### Fixed
@@ -40,7 +42,8 @@
- New `l3color` module using `xcolor`-like expression syntax
- New `l3draw` module, based on `pgf` layer of the TikZ system
-[Unreleased]: https://github.com/latex3/latex3/compare/2018-08-24...HEAD
+[Unreleased]: https://github.com/latex3/latex3/compare/2018-10-17...HEAD
+[2018-10-17]: https://github.com/latex3/latex3/compare/2018-08-24...2018-10-17
[2018-08-24]: https://github.com/latex3/latex3/compare/2018-08-23...2018-08-24
[2018-08-23]: https://github.com/latex3/latex3/compare/2018-05-12...2018-08-23
[2018-05-12]: https://github.com/latex3/latex3/compare/2018-04-30...2018-05-12
Modified: trunk/Master/texmf-dist/doc/latex/l3experimental/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3experimental/README.md 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/doc/latex/l3experimental/README.md 2018-10-18 20:31:59 UTC (rev 48935)
@@ -1,7 +1,7 @@
Experimental LaTeX3 Concepts
============================
-Release 2018-09-24
+Release 2018-10-17
Overview
--------
Modified: trunk/Master/texmf-dist/doc/latex/l3experimental/l3color/l3color.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/l3experimental/l3draw/l3draw-code.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/l3experimental/l3draw/l3draw.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/l3experimental/l3str/l3str-convert.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/l3experimental/l3str/l3str-format.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/l3experimental/l3sys-shell/l3sys-shell.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/l3experimental/xcoffins/xcoffins.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/l3experimental/xgalley/l3galley.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/l3experimental/xgalley/xgalley.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md 2018-10-18 20:31:59 UTC (rev 48935)
@@ -7,6 +7,25 @@
## [Unreleased]
+## [2018-10-17]
+
+### Added
+
+- `\g_msg_module_documentation_prop` (see #471)
+- `\peek_remove_spaces:n`
+
+### Changed
+
+- Formatting of messages: now follows LaTeX2e closely
+
+### Deprecated
+
+- `\mg_interrupt:nn`, `\msg_log:n` and `\msg_term:n`
+
+### Fixed
+
+- Handling of inheritance for choice keys (fixes #483)
+
## [2018-09-24]
### Added
@@ -132,7 +151,8 @@
- Step functions have been added for dim variables,
e.g. `\dim_step_inline:nnnn`
-[Unreleased]: https://github.com/latex3/latex3/compare/2018-09-24...HEAD
+[Unreleased]: https://github.com/latex3/latex3/compare/2018-10-17...HEAD
+[2018-10-17]: https://github.com/latex3/latex3/compare/2018-09-24...2018-10-17
[2018-09-24]: https://github.com/latex3/latex3/compare/2018-08-23...2018-09-24
[2018-08-23]: https://github.com/latex3/latex3/compare/2018-06-14...2018-08-23
[2018-06-14]: https://github.com/latex3/latex3/compare/2018-06-01...2018-06-14
Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/README.md 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/README.md 2018-10-18 20:31:59 UTC (rev 48935)
@@ -1,7 +1,7 @@
LaTeX3 Programming Conventions
==============================
-Release 2018-09-24
+Release 2018-10-17
Overview
--------
Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/expl3.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/interface3.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/interface3.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/interface3.tex 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/interface3.tex 2018-10-18 20:31:59 UTC (rev 48935)
@@ -52,7 +52,7 @@
{latex-team at latex-project.org}%
}%
}
-\date{Released 2018-09-24}
+\date{Released 2018-10-17}
\pagenumbering{roman}
\maketitle
Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3docstrip.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3obsolete.txt
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/l3obsolete.txt 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/l3obsolete.txt 2018-10-18 20:31:59 UTC (rev 48935)
@@ -57,6 +57,9 @@
\lua_now_x:n 2019
\lua_shipout_x:n 2019
\luatex_...:D 2019
+\msg_interrupt:nn 2019
+\msg_log:n 2019
+\msg_term:n 2019
\pdftex_...:D 2019
\ptex_...:D 2019
\sort_ordered: 2018
Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.tex 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.tex 2018-10-18 20:31:59 UTC (rev 48935)
@@ -30,7 +30,7 @@
{latex-team at latex-project.org}%
}%
}
-\date{Released 2018-09-24}
+\date{Released 2018-10-17}
\begin{document}
Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.tex 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.tex 2018-10-18 20:31:59 UTC (rev 48935)
@@ -30,7 +30,7 @@
{latex-team at latex-project.org}%
}%
}
-\date{Released 2018-09-24}
+\date{Released 2018-10-17}
\newcommand{\TF}{\textit{(TF)}}
Added: trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.pdf
===================================================================
(Binary files differ)
Index: trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.pdf 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.pdf 2018-10-18 20:31:59 UTC (rev 48935)
Property changes on: trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex 2018-10-18 20:31:59 UTC (rev 48935)
@@ -0,0 +1,66 @@
+\iffalse meta-comment
+
+File l3term-glossary.tex Copyright (C) 2018 The LaTeX3 Project
+
+It may be distributed and/or modified under the conditions of the
+LaTeX Project Public License (LPPL), either version 1.3c of this
+license or (at your option) any later version. The latest version
+of this license is in the file
+
+ https://www.latex-project.org/lppl.txt
+
+This file is part of the "l3kernel bundle" (The Work in LPPL)
+and all files in that bundle must be distributed together.
+
+The released version of this bundle is available from CTAN.
+
+\fi
+
+\documentclass{l3doc}
+
+
+\title{%
+ Glossary of \TeX{} terms used to describe \LaTeX3 functions%
+}
+\author{%
+ The \LaTeX3 Project\thanks
+ {%
+ E-mail:
+ \href{mailto:latex-team at latex-project.org}%
+ {latex-team at latex-project.org}%
+ }%
+}
+\date{Released 2018-10-17}
+
+\newcommand{\TF}{\textit{(TF)}}
+
+\begin{document}
+
+\maketitle
+
+This file describes aspects of \TeX{} programming that are relevant in a
+\LaTeX3 context.
+
+\section{Reading a file}
+
+Tokenization.
+
+Treatment of spaces, such as the trap that \verb|\~~a| is equivalent to
+\verb|\~a| in expl syntax, or that \verb|~| fails to give a space at the
+beginning of a line.
+
+\section{Structure of tokens}
+
+Copy there the section ``Description of all possible tokens'' from \texttt{l3token}.
+
+\section{Quantities and expressions}
+
+Integer denotations, dimensions, glue (including \texttt{fill} and \texttt{true pt} and the like).
+
+Syntax of integer expressions (including the trap that \verb|-(1+2)| is invalid).
+
+\section{\LaTeX3 terms}
+
+Terms like ``intexpr'' or ``seq var'' used in syntax blocks.
+
+\end{document}
Property changes on: trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/source3.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/source3.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/source3.tex 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/source3.tex 2018-10-18 20:31:59 UTC (rev 48935)
@@ -51,7 +51,7 @@
{latex-team at latex-project.org}%
}%
}
-\date{Released 2018-09-24}
+\date{Released 2018-10-17}
\pagenumbering{roman}
\maketitle
Modified: trunk/Master/texmf-dist/doc/latex/l3packages/CHANGELOG.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3packages/CHANGELOG.md 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/doc/latex/l3packages/CHANGELOG.md 2018-10-18 20:31:59 UTC (rev 48935)
@@ -7,6 +7,8 @@
## [Unreleased]
+## [2018-10-17]
+
## [2018-09-24]
### Changed
@@ -30,7 +32,8 @@
- Switch to ISO date format
- Improve cross-module use of internal functions
-[Unreleased]: https://github.com/latex3/latex3/compare/2018-09-24...HEAD
+[Unreleased]: https://github.com/latex3/latex3/compare/2018-10-17...HEAD
+[2018-10-17]: https://github.com/latex3/latex3/compare/2018-09-24...2018-10-17
[2018-09-24]: https://github.com/latex3/latex3/compare/2018-08-23...2018-09-24
[2018-08-23]: https://github.com/latex3/latex3/compare/2018-05-12...2018-08-23
[2018-05-12]: https://github.com/latex3/latex3/compare/2018-04-30...2018-05-12
Modified: trunk/Master/texmf-dist/doc/latex/l3packages/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3packages/README.md 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/doc/latex/l3packages/README.md 2018-10-18 20:31:59 UTC (rev 48935)
@@ -1,7 +1,7 @@
LaTeX3 High-Level Concepts
==========================
-Release 2018-09-24
+Release 2018-10-17
Overview
--------
Modified: trunk/Master/texmf-dist/doc/latex/l3packages/l3keys2e/l3keys2e.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/l3packages/xfp/xfp.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/l3packages/xfrac/xfrac.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/l3packages/xparse/xparse.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/l3packages/xtemplate/xtemplate.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/source/latex/l3experimental/l3color/l3color.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3experimental/l3color/l3color.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3experimental/l3color/l3color.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
@@ -263,7 +263,7 @@
%
% \begin{macrocode}
%<*package>
-\ProvidesExplPackage{l3color}{2018-09-24}{}
+\ProvidesExplPackage{l3color}{2018-10-17}{}
{L3 Experimental color support}
%</package>
% \end{macrocode}
Modified: trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-boxes.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-boxes.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-boxes.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-paths.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-paths.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-paths.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-points.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-points.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-points.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-scopes.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-scopes.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-scopes.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-softpath.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-softpath.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-softpath.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-state.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-state.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-state.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-transforms.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-transforms.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-transforms.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -109,7 +109,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
@@ -1106,7 +1106,7 @@
%
% \begin{macrocode}
%<*package>
-\ProvidesExplPackage{l3draw}{2018-09-24}{}
+\ProvidesExplPackage{l3draw}{2018-10-17}{}
{L3 Experimental core drawing support}
%</package>
% \end{macrocode}
Modified: trunk/Master/texmf-dist/source/latex/l3experimental/l3str/l3str-convert.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3experimental/l3str/l3str-convert.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3experimental/l3str/l3str-convert.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -46,7 +46,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
@@ -234,7 +234,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{l3str-convert}{2018-09-24}{}
+\ProvidesExplPackage{l3str-convert}{2018-10-17}{}
{L3 Experimental string encoding conversions}
% \end{macrocode}
%
Modified: trunk/Master/texmf-dist/source/latex/l3experimental/l3str/l3str-format.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3experimental/l3str/l3str-format.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3experimental/l3str/l3str-format.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -46,7 +46,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
@@ -162,7 +162,7 @@
%
% \begin{macrocode}
%<*package>
-\ProvidesExplPackage{l3str-format}{2018-09-24}{}
+\ProvidesExplPackage{l3str-format}{2018-10-17}{}
{L3 Experimental string formatting}
%</package>
% \end{macrocode}
Modified: trunk/Master/texmf-dist/source/latex/l3experimental/l3sys-shell/l3sys-shell.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3experimental/l3sys-shell/l3sys-shell.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3experimental/l3sys-shell/l3sys-shell.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
@@ -134,7 +134,7 @@
%
% \begin{macrocode}
%<*package>
-\ProvidesExplPackage{l3sys-shell}{2018-09-24}{}
+\ProvidesExplPackage{l3sys-shell}{2018-10-17}{}
{L3 Experimental system shell functions}
%</package>
% \end{macrocode}
Modified: trunk/Master/texmf-dist/source/latex/l3experimental/xcoffins/xcoffins.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3experimental/xcoffins/xcoffins.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3experimental/xcoffins/xcoffins.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -54,7 +54,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
@@ -673,7 +673,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{xcoffins}{2018-09-24}{}
+\ProvidesExplPackage{xcoffins}{2018-10-17}{}
{L3 Experimental design level coffins}
% \end{macrocode}
%
Modified: trunk/Master/texmf-dist/source/latex/l3experimental/xgalley/l3galley.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3experimental/xgalley/l3galley.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3experimental/xgalley/l3galley.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -59,7 +59,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
@@ -685,7 +685,7 @@
%
% \begin{macrocode}
%<*package>
-\ProvidesExplPackage{l3galley}{2018-09-24}{}
+\ProvidesExplPackage{l3galley}{2018-10-17}{}
{L3 Experimental galley code}
%</package>
% \end{macrocode}
Modified: trunk/Master/texmf-dist/source/latex/l3experimental/xgalley/xgalley.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3experimental/xgalley/xgalley.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3experimental/xgalley/xgalley.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -45,7 +45,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
@@ -138,7 +138,7 @@
% the area for typeset material. A negative value will cause the
% typeset material to extend beyond the edge of the galley.^^A
% }
-% {0 pt}
+% {0pt}
% \TemplateKey{right-margin}{length}
% {^^A
% The distance from the right edge of the galley to the right edge of
@@ -145,7 +145,7 @@
% the area for typeset material. A negative value will cause the
% typeset material to extend beyond the edge of the galley.^^A
% }
-% {0 pt}
+% {0pt}
% \TemplateSemantics
% This template sets up the typesetting area such that typeset material
% runs from |left-margin| away from the left edge of the galley to
@@ -165,7 +165,7 @@
% previous one, and \emph{may} cause the typeset material to
% protrude outside of the edge of the galley.
% }
-% {0 pt}
+% {0pt}
% \TemplateKey{right-margin}{length}
% {^^A
% The distance from the previous right margin of the typeset material
@@ -174,7 +174,7 @@
% previous one, and \emph{may} cause the typeset material to
% protrude outside of the edge of the galley.
% }
-% {0 pt}
+% {0pt}
% \TemplateSemantics
% This template sets up the typesetting area such that it has margins
% |left-margin| and |right-margin| within those previously set. For a
@@ -212,7 +212,7 @@
% The hanging indent from either the left- or right-hand margin
% (as determined by \texttt{on-left-side}).^^A
% }
-% {0 pt}
+% {0pt}
% \TemplateKey{on-left-side}{boolean}
% {^^A
% If \texttt{true}, causes the hanging indent to be on the left-hand
@@ -238,7 +238,7 @@
% The indent for the initial lines from either the left- or right-hand
% margin (as determined by \texttt{on-left-side}).^^A
% }
-% {0 pt}
+% {0pt}
% \TemplateKey{on-left-side}{boolean}
% {^^A
% If \texttt{true}, causes the indent to be on the left-hand
@@ -312,7 +312,7 @@
% \begin{TemplateDescription}{justification}{std}
% \TemplateKey{end-skip}{skip}
% {The skip inserted to fill the last line of a paragraph.}
-% {0 pt plus 1 fil}
+% {0pt plus 1fil}
% \TemplateKey{fixed-word-spacing}{boolean}
% {^^A
% Determines whether inter-word spacing has a stretch component (for
@@ -330,19 +330,19 @@
% The skip between the left margin of the galley and the left edge of a
% paragraph.^^A
% }
-% {0 pt}
+% {0pt}
% \TemplateKey{right-skip}{skip}
% {^^A
% The skip between the right margin of the galley and the right edge of a
% paragraph.^^A
% }
-% {0 pt}
+% {0pt}
% \TemplateKey{start-skip}{skip}
% {^^A
% The skip inserted in addition to |indent-width| at the start of a
% paragraph.^^A
% }
-% {0 pt}
+% {0pt}
% \TemplateSemantics
% The |std| template for justification provides rubber lengths
% at the start and end of the paragraph and at each side of the paragraph.
@@ -352,15 +352,15 @@
% \end{TemplateDescription}
%
% \begin{InstanceDescription}{justification}{justified}{std}
-% \InstanceKey{indent-width}{15 pt}
+% \InstanceKey{indent-width}{15pt}
% \InstanceSemantics
% Sets paragraphs fully-justified with the first line indented by
-% |15 pt|.
+% |15pt|.
% \end{InstanceDescription}
%
% \begin{InstanceDescription}{justification}{noindent}{std}
-% \InstanceKey{end-skip}{15 pt plus 1 fil}
-% \InstanceKey{indent-width}{0 pt}
+% \InstanceKey{end-skip}{15pt plus 1fil}
+% \InstanceKey{indent-width}{0pt}
% \InstanceSemantics
% Sets paragraphs fully-justified with no indent for the first line. To
% ensure that paragraphs have some visual distinction, the |end-skip| is
@@ -370,7 +370,7 @@
% \begin{TemplateDescription}{justification}{single}
% \TemplateKey{end-skip}{skip}
% {The skip inserted to fill the last line of a paragraph.}
-% {0 pt plus 1 fil}
+% {0pt plus 1fil}
% \TemplateKey{fixed-word-spacing}{boolean}
% {^^A
% Determines whether inter-word spacing has a stretch component (for
@@ -388,19 +388,19 @@
% The skip between the left margin of the galley and the left edge of a
% paragraph.^^A
% }
-% {0 pt}
+% {0pt}
% \TemplateKey{right-skip}{skip}
% {^^A
% The skip between the right margin of the galley and the right edge of a
% paragraph.^^A
% }
-% {0 pt}
+% {0pt}
% \TemplateKey{start-skip}{skip}
% {^^A
% The skip inserted in addition to |indent-width| at the start of a
% paragraph.^^A
% }
-% {0 pt}
+% {0pt}
% \TemplateKey{stretch-last-line}{boolean}
% {
% Determines whether inter-word spacing in the last line is stretched.
@@ -417,12 +417,12 @@
% paragraph.
% \end{TemplateDescription}
%
-% \begin{InstanceDescription}{justification}{ragged-left}{std}
-% \InstanceKey{end-skip}{0 pt}
+% \begin{InstanceDescription}[fixed-word-spacing-xxx]{justification}{ragged-left}{std}
+% \InstanceKey{end-skip}{0pt}
% \InstanceKey{fixed-word-spacing}{true}
-% \InstanceKey{indent-width}{0 pt}
-% \InstanceKey{left-skip}{0 pt plus 2 em}
-% \InstanceKey{right-skip}{0 pt}
+% \InstanceKey{indent-width}{0pt}
+% \InstanceKey{left-skip}{0pt plus 2em}
+% \InstanceKey{right-skip}{0pt}
% \InstanceSemantics
% Typesets material with a ragged left margin such that hyphenation will
% still occur and such that very short lines are discouraged. This is
@@ -429,12 +429,12 @@
% similar to the \LaTeXe{} \pkg{ragged2e} \env{RaggedLeft} environment.
% \end{InstanceDescription}
%
-% \begin{InstanceDescription}{justification}{ragged-right}{std}
-% \InstanceKey{end-skip}{0 pt}
+% \begin{InstanceDescription}[fixed-word-spacing-xxx]{justification}{ragged-right}{std}
+% \InstanceKey{end-skip}{0pt}
% \InstanceKey{fixed-word-spacing}{true}
-% \InstanceKey{indent-width}{0 pt}
-% \InstanceKey{left-skip}{0 pt}
-% \InstanceKey{right-skip}{0 pt plus 2 em}
+% \InstanceKey{indent-width}{0pt}
+% \InstanceKey{left-skip}{0pt}
+% \InstanceKey{right-skip}{0pt plus 2em}
% \InstanceSemantics
% Typesets material with a ragged right margin such that hyphenation will
% still occur and such that very short lines are discouraged. This is
@@ -441,12 +441,12 @@
% similar to the \LaTeXe{} \pkg{ragged2e} \env{RaggedLeft} environment.
% \end{InstanceDescription}
%
-% \begin{InstanceDescription}{justification}{center}{std}
-% \InstanceKey{end-skip}{0 pt}
+% \begin{InstanceDescription}[fixed-word-spacing-xxx]{justification}{center}{std}
+% \InstanceKey{end-skip}{0pt}
% \InstanceKey{fixed-word-spacing}{true}
-% \InstanceKey{indent-width}{0 pt}
-% \InstanceKey{left-skip}{0 pt plus 1 fil}
-% \InstanceKey{right-skip}{0 pt plus 1 fil}
+% \InstanceKey{indent-width}{0pt}
+% \InstanceKey{left-skip}{0pt plus 1fil}
+% \InstanceKey{right-skip}{0pt plus 1fil}
% \InstanceSemantics
% Centres typeset material such that hyphenation is discouraged and short
% lines are allowed.
@@ -493,7 +493,7 @@
% Extra demerit charge of two (or more) lines in succession end
% in a hyphen.^^A
% }
-% {10 000}
+% {10000}
% \TemplateKey{emergency-stretch}{skip}
% {^^A
% Additional stretch assumed for each line if no better line breaking
@@ -500,13 +500,13 @@
% can be found without it. This stretch is not actually added to lines,
% so its use may result in underfull box warnings.^^A
% }
-% {0 pt}
+% {0pt}
% \TemplateKey{final-hyphen-demerits}{integer}
% {Extra demerit charge if the second last line is hyphenated.}
% {5000}
% \TemplateKey{fuzz}{length}
% {Boundary below overfull lines are not reported.}
-% {0.1 pt}
+% {0.1pt}
% \TemplateKey{mismatch-demerits}{integer}
% {^^A
% Extra demerit charge if two visually incompatible lines follow
@@ -582,13 +582,13 @@
% {150}
% \TemplateKey{fuzz}{length}
% {Boundary below which overfull vertical boxes are not reported.}
-% {0.1 pt}
+% {0.1pt}
% \TemplateKey{interline-penalty}{integer}
% {Penalty for breaking between lines in a paragraph.}
% {0}
% \TemplateKey{pre-display-penalty}{integer}
% {Penalty for breaking between immediately before display math material.}
-% {10 000}
+% {10000}
% \TemplateKey{post-display-penalty}{integer}
% {Penalty for breaking between immediately after display math material.}
% {0}
@@ -608,18 +608,18 @@
% material but no immediately before it.
% \end{InstanceDescription}
%
-% \begin{InstanceDescription}{paragraph-breaking}{nobreak}{std}
-% \InstanceKey{interline-penalty}{10 000}
-% \InstanceKey{post-display-penalty}{10 000}
+% \begin{InstanceDescription}[post-display-penalty-xxxx]{paragraph-breaking}{nobreak}{std}
+% \InstanceKey{interline-penalty}{10000}
+% \InstanceKey{post-display-penalty}{10000}
% \InstanceSemantics
% Sets paragraphs such that they cannot be broken at all (as far as is
% possible in \TeX{}).
% \end{InstanceDescription}
%
-% \begin{InstanceDescription}{paragraph-breaking}{nolone}{std}
-% \InstanceKey{club-penalty}{10 000}
-% \InstanceKey{display-widow-penalty}{10 000}
-% \InstanceKey{widow-penalty}{10 000}
+% \begin{InstanceDescription}[post-display-penalty-xxxx]{paragraph-breaking}{nolone}{std}
+% \InstanceKey{club-penalty}{10000}
+% \InstanceKey{display-widow-penalty}{10000}
+% \InstanceKey{widow-penalty}{10000}
% \InstanceSemantics
% Sets paragraphs such that they cannot be broken to leave a club or
% widow line (as far as is possible in \TeX{}).
@@ -678,35 +678,35 @@
% material but no immediately before it.
% \end{InstanceDescription}
%
-% \begin{InstanceDescription}{paragraph-breaking}{single-nobreak}{single}
-% \InstanceKey{interline-penalty}{10 000}
-% \InstanceKey{post-display-penalty}{10 000}
+% \begin{InstanceDescription}[post-display-penalty-xxx]{paragraph-breaking}{single-nobreak}{single}
+% \InstanceKey{interline-penalty}{10000}
+% \InstanceKey{post-display-penalty}{10000}
% \InstanceSemantics
% Sets the next paragraph such that it cannot be broken at all (as far as is
% possible in \TeX{}).
% \end{InstanceDescription}
%
-% \begin{InstanceDescription}{paragraph-breaking}{single-noclub}{single}
-% \InstanceKey{club-penalty}{10 000}
-% \InstanceKey{display-club-penalty}{10 000}
+% \begin{InstanceDescription}[display-club-penalty-xxx]{paragraph-breaking}{single-noclub}{single}
+% \InstanceKey{club-penalty}{10000}
+% \InstanceKey{display-club-penalty}{10000}
% \InstanceSemantics
% Sets the next paragraph such that it cannot be broken to leave a club
% line (as far as is possible in \TeX{}).
% \end{InstanceDescription}
%
-% \begin{InstanceDescription}{paragraph-breaking}{single-nolone}{single}
-% \InstanceKey{club-penalty}{10 000}
-% \InstanceKey{display-club-penalty}{10 000}
-% \InstanceKey{display-widow-penalty}{10 000}
-% \InstanceKey{widow-penalty}{10 000}
+% \begin{InstanceDescription}[display-widow-penalty-xxx]{paragraph-breaking}{single-nolone}{single}
+% \InstanceKey{club-penalty}{10000}
+% \InstanceKey{display-club-penalty}{10000}
+% \InstanceKey{display-widow-penalty}{10000}
+% \InstanceKey{widow-penalty}{10000}
% \InstanceSemantics
% Sets the next paragraph such that it cannot be broken to leave a club or
% widow line (as far as is possible in \TeX{}).
% \end{InstanceDescription}
%
-% \begin{InstanceDescription}{paragraph-breaking}{single-nowidow}{single}
-% \InstanceKey{display-widow-penalty}{10 000}
-% \InstanceKey{widow-penalty}{10 000}
+% \begin{InstanceDescription}[display-widow-penalty-xxx]{paragraph-breaking}{single-nowidow}{single}
+% \InstanceKey{display-widow-penalty}{10000}
+% \InstanceKey{widow-penalty}{10000}
% \InstanceSemantics
% Sets the next paragraph such that it cannot be broken to leave a
% widow line (as far as is possible in \TeX{}).
@@ -732,7 +732,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{xgalley}{2018-09-24}{}
+\ProvidesExplPackage{xgalley}{2018-10-17}{}
{L3 Experimental galley}
\RequirePackage{xparse,xtemplate,l3galley}
% \end{macrocode}
@@ -761,13 +761,13 @@
% \begin{macrocode}
\DeclareTemplateInterface { measure } { absolute } { 0 }
{
- left-margin : length = 0 pt ,
- right-margin : length = 0 pt
+ left-margin : length = 0pt ,
+ right-margin : length = 0pt
}
\DeclareTemplateInterface { measure } { relative } { 0 }
{
- left-margin : length = 0 pt ,
- right-margin : length = 0 pt
+ left-margin : length = 0pt ,
+ right-margin : length = 0pt
}
% \end{macrocode}
%
@@ -827,13 +827,13 @@
% \begin{macrocode}
\DeclareTemplateInterface { parshape } { hang } { 0 }
{
- indent : length = 0 pt ,
+ indent : length = 0pt ,
on-left-side : boolean = true ,
lines : integer = 1
}
\DeclareTemplateInterface { parshape } { initial } { 0 }
{
- indent : length = 0 pt ,
+ indent : length = 0pt ,
on-left-side : boolean = true ,
lines : integer = 2
}
@@ -1004,22 +1004,22 @@
% \begin{macrocode}
\DeclareTemplateInterface { justification } { std } { 0 }
{
- end-skip : skip = 0 pt plus 1 fil ,
- fixed-word-spacing : boolean = false ,
- indent-width : length ,
- left-skip : skip = 0 pt ,
- right-skip : skip = 0 pt ,
- start-skip : skip = 0 pt ,
+ end-skip : skip = 0pt plus 1fil ,
+ fixed-word-spacing : boolean = false ,
+ indent-width : length ,
+ left-skip : skip = 0pt ,
+ right-skip : skip = 0pt ,
+ start-skip : skip = 0pt ,
stretch-last-line : boolean = false
}
\DeclareTemplateInterface { justification } { single } { 0 }
{
- end-skip : skip = 0 pt plus 1 fil ,
- fixed-word-spacing : boolean = false ,
- indent-width : length ,
- left-skip : skip = 0 pt ,
- right-skip : skip = 0 pt ,
- start-skip : skip = 0 pt ,
+ end-skip : skip = 0pt plus 1fil ,
+ fixed-word-spacing : boolean = false ,
+ indent-width : length ,
+ left-skip : skip = 0pt ,
+ right-skip : skip = 0pt ,
+ start-skip : skip = 0pt ,
stretch-last-line : boolean = false
}
% \end{macrocode}
@@ -1103,7 +1103,7 @@
% the standard template for all \LaTeX3 documents, it is applied here.
% \begin{macrocode}
\DeclareInstance { justification } { justified } { std }
- { indent-width = 15 pt }
+ { indent-width = 15pt }
\UseInstance { justification } { justified }
% \end{macrocode}
% The instance for no indentation at all but with justified text is
@@ -1113,8 +1113,8 @@
% \begin{macrocode}
\DeclareInstance { justification } { noindent } { std }
{
- end-skip = 15 pt plus 1 fil ,
- indent-width = 0 pt
+ end-skip = 15pt plus 1fil ,
+ indent-width = 0pt
}
% \end{macrocode}
% The other standard justification schemes are for text which ragged.
@@ -1126,19 +1126,19 @@
% \begin{macrocode}
\DeclareInstance { justification } { ragged-left } { std }
{
- end-skip = 0 pt ,
- fixed-word-spacing = true ,
- indent-width = 0 pt ,
- left-skip = 0 pt plus 2 em ,
- right-skip = 0 pt
+ end-skip = 0pt ,
+ fixed-word-spacing = true ,
+ indent-width = 0pt ,
+ left-skip = 0pt plus 2em ,
+ right-skip = 0pt
}
\DeclareInstance { justification } { ragged-right } { std }
{
- end-skip = 0 pt plus 1 fil ,
- fixed-word-spacing = true ,
- indent-width = 0 pt ,
- left-skip = 0 pt ,
- right-skip = 0 pt plus 2 em
+ end-skip = 0pt plus 1fil ,
+ fixed-word-spacing = true ,
+ indent-width = 0pt ,
+ left-skip = 0pt ,
+ right-skip = 0pt plus 2em
}
% \end{macrocode}
% The \texttt{center} instance is used to center material with minimal
@@ -1146,11 +1146,11 @@
% \begin{macrocode}
\DeclareInstance { justification } { center } { std }
{
- end-skip = 0 pt ,
- fixed-word-spacing = true ,
- indent-width = 0 pt ,
- left-skip = 0 pt plus 1 fil ,
- right-skip = 0 pt plus 1 fil
+ end-skip = 0pt ,
+ fixed-word-spacing = true ,
+ indent-width = 0pt ,
+ left-skip = 0pt plus 1fil ,
+ right-skip = 0pt plus 1fil
}
% \end{macrocode}
%
@@ -1199,16 +1199,16 @@
% \begin{macrocode}
\DeclareTemplateInterface { line-breaking } { std } { 0 }
{
- badness : integer = 1000 ,
- binop-penalty : integer = 700 ,
- double-hyphen-demerits : integer = 10 000 ,
- emergency-stretch : skip = 0 pt ,
- final-hyphen-demerits : integer = 5000 ,
- fuzz : length = 0.1 pt ,
- line-penalty : integer = 10 ,
- mismatch-demerits : integer = 10 000 ,
- pretolerance : integer = 100 ,
- relation-penalty : integer = 500 ,
+ badness : integer = 1000 ,
+ binop-penalty : integer = 700 ,
+ double-hyphen-demerits : integer = 10000 ,
+ emergency-stretch : skip = 0pt ,
+ final-hyphen-demerits : integer = 5000 ,
+ fuzz : length = 0.1pt ,
+ line-penalty : integer = 10 ,
+ mismatch-demerits : integer = 10000 ,
+ pretolerance : integer = 100 ,
+ relation-penalty : integer = 500 ,
tolerance : integer = 200
}
\DeclareTemplateCode{ line-breaking } { std } { 0 }
@@ -1256,15 +1256,15 @@
\DeclareObjectType { paragraph-breaking } { 0 }
\DeclareTemplateInterface { paragraph-breaking } { std } { 0 }
{
- badness : integer = 1000 ,
- broken-penalty : integer = 100 ,
- club-penalty : integer = 150 ,
- display-club-penalty : integer = 150 ,
- display-widow-penalty : integer = 150 ,
- fuzz : length = 0.1 pt ,
- interline-penalty : integer = 0 ,
- post-display-penalty : integer = 0 ,
- pre-display-penalty : integer = 10 000 ,
+ badness : integer = 1000 ,
+ broken-penalty : integer = 100 ,
+ club-penalty : integer = 150 ,
+ display-club-penalty : integer = 150 ,
+ display-widow-penalty : integer = 150 ,
+ fuzz : length = 0.1pt ,
+ interline-penalty : integer = 0 ,
+ post-display-penalty : integer = 0 ,
+ pre-display-penalty : integer = 10000 ,
widow-penalty : integer = 150
}
\DeclareTemplateCode { paragraph-breaking } { std } { 0 }
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/expl3.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/expl3.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/expl3.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -21,7 +21,7 @@
% for those people who are interested.
%
%<*driver|generic|package>
-\def\ExplFileDate{2018-09-24}%
+\def\ExplFileDate{2018-10-17}%
%</driver|generic|package>
%<*driver>
\documentclass[full]{l3doc}
@@ -49,7 +49,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3alloc.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3alloc.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3alloc.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -138,7 +138,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3box.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3box.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3box.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
@@ -1500,6 +1500,14 @@
% \end{verbatim}
% \end{function}
%
+% \begin{function}[added = 2018-10-01]{\peek_remove_spaces:n}
+% \begin{syntax}
+% \cs{peek_remove_spaces:n} \Arg{code}
+% \end{syntax}
+% Removes explicit and implicit space tokens (category code~$10$ and
+% character code~$32$) from the input stream, then inserts \meta{code}.
+% \end{function}
+%
% \end{documentation}
%
% \begin{implementation}
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3color-base.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3color-base.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3color-base.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -77,7 +77,7 @@
%
% \title{The \cls{l3doc} class}
% \author{\Team}
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
% \maketitle
% \tableofcontents
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -61,7 +61,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3drivers.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3drivers.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3drivers.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
@@ -554,23 +554,23 @@
%<*package>
\ProvidesExplFile
%<*dvipdfmx>
- {l3dvidpfmx.def}{2018-09-24}{}
+ {l3dvidpfmx.def}{2018-10-17}{}
{L3 Experimental driver: dvipdfmx}
%</dvipdfmx>
%<*dvips>
- {l3dvips.def}{2018-09-24}{}
+ {l3dvips.def}{2018-10-17}{}
{L3 Experimental driver: dvips}
%</dvips>
%<*dvisvgm>
- {l3dvisvgm.def}{2018-09-24}{}
+ {l3dvisvgm.def}{2018-10-17}{}
{L3 Experimental driver: dvisvgm}
%</dvisvgm>
%<*pdfmode>
- {l3pdfmode.def}{2018-09-24}{}
+ {l3pdfmode.def}{2018-10-17}{}
{L3 Experimental driver: PDF mode}
%</pdfmode>
%<*xdvipdfmx>
- {l3xdvidpfmx.def}{2018-09-24}{}
+ {l3xdvidpfmx.def}{2018-10-17}{}
{L3 Experimental driver: xdvipdfmx}
%</xdvipdfmx>
%</package>
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3file.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3file.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3file.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
@@ -427,7 +427,8 @@
%
% \subsection{Wrapping lines in output}
%
-% \begin{function}[added = 2012-06-28, updated = 2017-12-04]{\iow_wrap:nnnN}
+% \begin{function}[added = 2012-06-28, updated = 2017-12-04]
+% {\iow_wrap:nnnN \iow_wrap:nxnN}
% \begin{syntax}
% \cs{iow_wrap:nnnN} \Arg{text} \Arg{run-on text} \Arg{set up} \meta{function}
% \end{syntax}
@@ -1452,7 +1453,7 @@
% \end{macro}
% \end{macro}
%
-% \begin{macro}{\iow_wrap:nnnN}
+% \begin{macro}{\iow_wrap:nnnN, \iow_wrap:nxnN}
% The main wrapping function works as follows. First give |\\|,
% \verb*|\ | and other formatting commands the correct definition for
% messages and perform the given setup~|#3|. The definition of
@@ -1510,6 +1511,7 @@
\exp_args:NNf \group_end:
#4 { \tl_to_str:N \l_@@_wrap_tl }
}
+\cs_generate_variant:Nn \iow_wrap:nnnN { nx }
% \end{macrocode}
% \end{macro}
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3final.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3final.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3final.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -38,7 +38,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
% \maketitle
%
% \begin{documentation}
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -38,7 +38,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -38,7 +38,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -38,7 +38,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -38,7 +38,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -38,7 +38,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -38,7 +38,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -38,7 +38,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
% \maketitle
%
% \begin{documentation}
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -38,7 +38,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -47,7 +47,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3int.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3int.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3int.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
@@ -94,7 +94,7 @@
%
% \begin{function}[EXP, added = 2018-03-30]{\int_eval:w}
% \begin{syntax}
-% \cs{int_eval:w} \Arg{integer expression}
+% \cs{int_eval:w} \meta{integer expression}
% \end{syntax}
% Evaluates the \meta{integer expression} as described for
% \cs{int_eval:n}. The end of the expression is the first token
@@ -885,7 +885,7 @@
% space it is removed as in \texttt{f}-expansion, and so \cs{exp_stop_f:}
% may be employed as an end marker. Note that protected functions
% \emph{are} expanded by this process.
-%
+%
% This function requires exactly one expansion to produce a value, and so
% is suitable for use in cases where a number is required \enquote{directly}.
% In general, \cs{int_eval:n} is the preferred approach to generating
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
@@ -1207,6 +1207,12 @@
% \end{macrocode}
% \end{variable}
%
+% \begin{variable}{\l_@@_inherit_tl}
+% \begin{macrocode}
+\tl_new:N \l_@@_inherit_tl
+% \end{macrocode}
+% \end{variable}
+%
% \begin{variable}{\l_@@_property_tl}
% The \enquote{property} begin set for a key at definition time is
% stored here.
@@ -2339,6 +2345,7 @@
\cs_if_exist:cT
{ \c_@@_code_root_tl ##1 / \l_keys_key_tl }
{
+ \tl_set:Nn \l_@@_inherit_tl {##1}
\cs:w \c_@@_code_root_tl ##1 / \l_keys_key_tl
\exp_after:wN \cs_end: \exp_after:wN
{ \l_keys_value_tl }
@@ -2384,6 +2391,7 @@
% \end{macro}
%
% \begin{macro}[EXP]{\@@_choice_find:n}
+% \begin{macro}[EXP]{\@@_choice_find:nn}
% \begin{macro}[EXP]{\@@_multichoice_find:n}
% Executing a choice has two parts. First, try the choice given, then
% if that fails call the unknown key. That always exists, as it is created
@@ -2392,14 +2400,25 @@
% \begin{macrocode}
\cs_new:Npn \@@_choice_find:n #1
{
- \@@_execute:nn { \l_keys_path_tl / \@@_remove_spaces:n {#1} }
- { \@@_execute:nn { \l_keys_path_tl / unknown } { } }
+ \tl_if_empty:NTF \l_@@_inherit_tl
+ { \@@_choice_find:nn { \l_keys_path_tl } {#1} }
+ {
+ \@@_choice_find:nn
+ { \l_@@_inherit_tl / \l_keys_key_tl } {#1}
+ }
}
+\cs_new:Npn \@@_choice_find:nn #1#2
+ {
+ \cs_if_exist:cTF { \c_@@_code_root_tl #1 / \@@_remove_spaces:n {#2} }
+ { \use:c { \c_@@_code_root_tl #1 / \@@_remove_spaces:n {#2} } {#2} }
+ { \use:c { \c_@@_code_root_tl #1 / unknown } {#2} }
+ }
\cs_new:Npn \@@_multichoice_find:n #1
{ \clist_map_function:nN {#1} \@@_choice_find:n }
% \end{macrocode}
% \end{macro}
% \end{macro}
+% \end{macro}
%
% \subsection{Utilities}
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
@@ -148,7 +148,7 @@
% Produces the standard text
% \begin{quote}
% \ttfamily
-% Fatal \meta{module} error
+% Fatal Package \meta{module} Error
% \end{quote}
% This function can be redefined to alter the language in which the
% message is given, using |#1| as the name of the \meta{module} to
@@ -162,7 +162,7 @@
% Produces the standard text
% \begin{quote}
% \ttfamily
-% Critical \meta{module} error
+% Critical Package \meta{module} Error
% \end{quote}
% This function can be redefined to alter the language in which the
% message is given, using |#1| as the name of the \meta{module} to
@@ -176,7 +176,7 @@
% Produces the standard text
% \begin{quote}
% \ttfamily
-% \meta{module} error
+% Package \meta{module} Error
% \end{quote}
% This function can be redefined to alter the language in which the
% message is given, using |#1| as the name of the \meta{module} to
@@ -190,11 +190,12 @@
% Produces the standard text
% \begin{quote}
% \ttfamily
-% \meta{module} warning
+% Package \meta{module} Warning
% \end{quote}
% This function can be redefined to alter the language in which the
% message is given, using |#1| as the name of the \meta{module} to
-% be included.
+% be included. The \meta{type} of \meta{module} may be adjusted:
+% |Package| is the standard outcome: see \cs{msg_module_type:n}.
% \end{function}
%
% \begin{function}[EXP]{\msg_info_text:n}
@@ -204,15 +205,35 @@
% Produces the standard text:
% \begin{quote}
% \ttfamily
-% \meta{module} info
+% Package \meta{module} Info
% \end{quote}
% This function can be redefined to alter the language in which the
% message is given, using |#1| as the name of the \meta{module} to
-% be included.
+% be included. The \meta{type} of \meta{module} may be adjusted:
+% |Package| is the standard outcome: see \cs{msg_module_type:n}.
% \end{function}
%
-% \begin{function}[EXP]{\msg_see_documentation_text:n}
+% \begin{function}[EXP, added = 2019-10-10]{\msg_module_name:n}
% \begin{syntax}
+% \cs{msg_module_name:n} \Arg{module}
+% \end{syntax}
+% Expands to the public name of the \meta{module} as defined by
+% \cs{g_msg_module_name_prop} (or otherwise leaves the \meta{module}
+% unchanged).
+% \end{function}
+%
+% \begin{function}[EXP, added = 2019-10-10]{\msg_module_type:n}
+% \begin{syntax}
+% \cs{msg_module_type:n} \Arg{module}
+% \end{syntax}
+% Expands to the description which applies to the \meta{module},
+% for example a |Package| or |Class|. The information here is defined
+% in \cs{g_msg_module_type_prop}, and will default to |Package| if an
+% entry is not present.
+% \end{function}
+%
+% \begin{function}[EXP,updated = 2018-09-30]{\msg_see_documentation_text:n}
+% \begin{syntax}
% \cs{msg_see_documentation_text:n} \Arg{module}
% \end{syntax}
% Produces the standard text
@@ -223,9 +244,23 @@
% \end{quote}
% This function can be redefined to alter the language in which the
% message is given, using |#1| as the name of the \meta{module} to
-% be included.
+% be included. The name of the \meta{module} may be altered by use of
+% \cs{g_msg_module_documentation_prop}
% \end{function}
%
+% \begin{variable}[added = 2018-10-10]{\g_msg_module_name_prop}
+% Provides a mapping between the module name used for messages, and that
+% for documentation. For example, \LaTeX{}3 core messages are stored in
+% the reserved |LaTeX| tree, but are printed as |LaTeX3|.
+% \end{variable}
+%
+% \begin{variable}[added = 2018-10-10]{\g_msg_module_type_prop}
+% Provides a mapping between the module name used for messages, and that
+% type of module. For example, for \LaTeX{}3 core messages, an empty entry
+% is set here meaning that they are not described using the standard
+% |Package| text.
+% \end{variable}
+%
% \section{Issuing messages}
%
% Messages behave differently depending on the message class. In all cases,
@@ -458,72 +493,6 @@
% \end{verbatim}
% \end{function}
%
-% \section{Low-level message functions}
-%
-% The lower-level message functions should usually be accessed from the
-% higher-level system. However, there are occasions where direct
-% access to these functions is desirable.
-%
-% \begin{function}[added = 2012-06-28]{\msg_interrupt:nnn}
-% \begin{syntax}
-% \cs{msg_interrupt:nnn} \Arg{first line} \Arg{text} \Arg{extra text}
-% \end{syntax}
-% Interrupts the \TeX{} run, issuing a formatted message comprising
-% \meta{first line} and \meta{text} laid out in the format
-% \begin{verbatim}
-% !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-% !
-% ! <first line>
-% !
-% ! <text>
-% !...............................................
-% \end{verbatim}
-% where the \meta{text} is wrapped to fit within the current
-% line length. The user may then request more information, at which
-% stage the \meta{extra text} is shown in the terminal in the
-% format
-% \begin{verbatim}
-% |'''''''''''''''''''''''''''''''''''''''''''''''
-% | <extra text>
-% |...............................................
-% \end{verbatim}
-% where the \meta{extra text} is wrapped within the current
-% line length. Wrapping of both \meta{text} and \meta{more text} takes place
-% using \cs{iow_wrap:nnnN}; the documentation for the latter should be
-% consulted for full details.
-% \end{function}
-%
-% \begin{function}[added = 2012-06-28]{\msg_log:n}
-% \begin{syntax}
-% \cs{msg_log:n} \Arg{text}
-% \end{syntax}
-% Writes to the log file with the \meta{text} laid out in the format
-% \begin{verbatim}
-% .................................................
-% . <text>
-% .................................................
-% \end{verbatim}
-% where the \meta{text} is wrapped to fit within the current
-% line length. Wrapping takes place using \cs{iow_wrap:nnnN}; the
-% documentation for the latter should be consulted for full details.
-% \end{function}
-%
-% \begin{function}[added = 2012-06-28]{\msg_term:n}
-% \begin{syntax}
-% \cs{msg_term:n} \Arg{text}
-% \end{syntax}
-% Writes to the terminal and log file with the \meta{text} laid out in the
-% format
-% \begin{verbatim}
-% *************************************************
-% * <text>
-% *************************************************
-% \end{verbatim}
-% where the \meta{text} is wrapped to fit within the current
-% line length. Wrapping takes place using \cs{iow_wrap:nnnN}; the
-% documentation for the latter should be consulted for full details.
-% \end{function}
-%
% \end{documentation}
%
% \begin{implementation}
@@ -538,18 +507,18 @@
%<@@=msg>
% \end{macrocode}
%
-% \begin{variable}{\l_@@_internal_tl}
+% \begin{variable}{\l_@@_tmp_tl}
% A general scratch for the module.
% \begin{macrocode}
-\tl_new:N \l_@@_internal_tl
+\tl_new:N \l_@@_tmp_tl
% \end{macrocode}
% \end{variable}
%
-% \begin{variable}{\l_@@_line_context_bool}
-% Controls whether the line context is shown as part of the decoration
-% of all (non-expandable) messages.
+% \begin{variable}{\l_@@_name_str, \l_@@_text_str}
+% Used to save module info when creating messages.
% \begin{macrocode}
-\bool_new:N \l_@@_line_context_bool
+\str_new:N \l_@@_name_str
+\str_new:N \l_@@_text_str
% \end{macrocode}
% \end{variable}
%
@@ -702,7 +671,7 @@
%
% \subsection{Showing messages: low level mechanism}
%
-% \begin{macro}{\msg_interrupt:nnn}
+% \begin{macro}{\@@_interrupt:Nnnn}
% The low-level interruption macro is rather opaque, unfortunately.
% Depending on the availability of more information there is a choice
% of how to set up the further help. We feed the extra help text and
@@ -710,23 +679,27 @@
% must first setup \TeX{}'s \tn{errhelp} register before issuing an
% \tn{errmessage}.
% \begin{macrocode}
-\cs_new_protected:Npn \msg_interrupt:nnn #1#2#3
+\cs_new_protected:Npn \@@_interrupt:Nnnn #1#2#3#4
{
- \tl_if_empty:nTF {#3}
+ \str_set:Nx \l_@@_text_str { #1 {#2} }
+ \str_set:Nx \l_@@_name_str { \msg_module_name:n {#2} }
+ \tl_if_empty:nTF {#4}
{
- \@@_interrupt_wrap:nn { \\ \c_@@_no_info_text_tl }
- {#1 \\\\ #2 \\\\ \c_@@_continue_text_tl }
+ \@@_interrupt_wrap:nnn {#3}
+ { \c_@@_continue_text_tl }
+ { \c_@@_no_info_text_tl }
}
{
- \@@_interrupt_wrap:nn { \\ #3 }
- {#1 \\\\ #2 \\\\ \c_@@_help_text_tl }
+ \@@_interrupt_wrap:nnn {#3}
+ { \c_@@_help_text_tl }
+ {#4}
}
}
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_interrupt_wrap:nn}
-% \begin{macro}{\@@_interrupt_more_text:n}
+% \begin{macro}{\@@_interrupt_wrap:nnn}
+% \begin{macro}{\@@_interrupt_text:n, \@@_interrupt_more_text:n}
% First setup \TeX{}'s \tn{errhelp} register with the extra help |#1|,
% then build a nice-looking error message with |#2|. Everything is
% done using \texttt{x}-type expansion as the new line markers are
@@ -733,26 +706,43 @@
% different for the two type of text and need to be correctly set up.
% The auxiliary \cs{@@_interrupt_more_text:n} receives its argument
% as a line-wrapped string, which is thus unaffected by expansion.
+% We ave to split the main text into two parts as only the \enquote{message}
+% itself is wrapped with a leader: the generic help is wrapped at full
+% width. We also have to allow for the two characters used by \tn{errmessage}
+% itself.
% \begin{macrocode}
-\cs_new_protected:Npn \@@_interrupt_wrap:nn #1#2
+\cs_new_protected:Npn \@@_interrupt_wrap:nnn #1#2#3
{
- \iow_wrap:nnnN {#1} { | ~ } { } \@@_interrupt_more_text:n
- \iow_wrap:nnnN {#2} { ! ~ } { } \@@_interrupt_text:n
+ \iow_wrap:nnnN { \\ #3 } { } { } \@@_interrupt_more_text:n
+ \group_begin:
+ \int_sub:Nn \l_iow_line_count_int { 2 }
+ \iow_wrap:nxnN { \l_@@_text_str : ~ #1 }
+ {
+ ( \l_@@_name_str )
+ \prg_replicate:nn
+ {
+ \str_count:N \l_@@_text_str
+ - \str_count:N \l_@@_name_str
+ + 2
+ }
+ { ~ }
+ }
+ { } \@@_interrupt_text:n
+ \iow_wrap:nnnN { \l_@@_tmp_tl \\ \\ #2 } { } { }
+ \@@_interrupt:n
}
-\cs_new_protected:Npn \@@_interrupt_more_text:n #1
+\cs_new_protected:Npn \@@_interrupt_text:n #1
{
- \exp_args:Nx \tex_errhelp:D
- {
- |'''''''''''''''''''''''''''''''''''''''''''''''
- #1 \iow_newline:
- |...............................................
- }
+ \group_end:
+ \tl_set:Nn \l_@@_tmp_tl {#1}
}
+\cs_new_protected:Npn \@@_interrupt_more_text:n #1
+ { \exp_args:Nx \tex_errhelp:D { #1 \iow_newline: } }
% \end{macrocode}
% \end{macro}
% \end{macro}
%
-% \begin{macro}{\@@_interrupt_text:n}
+% \begin{macro}{\@@_interrupt:n}
% The business end of the process starts by producing some visual
% separation of the message from the main part of the log. The error
% message needs to be printed with everything made
@@ -760,7 +750,7 @@
% which \tn{errmessage} is called, and the end of the argument of the
% \tn{errmessage}, including the closing brace. We use an active |!|
% to call the \tn{errmessage} primitive, and end its argument with
-% \cs{use_none:n} \Arg{dots} which fills the output with dots. Two
+% \cs{use_none:n} \Arg{spaces} which fills the output with spaces. Two
% trailing closing braces are turned into spaces to hide them as well.
% The group in which we alter the definition of the active |!| is
% closed before producing the message: this ensures that tokens
@@ -780,22 +770,17 @@
% inserted by the user. This is unavoidable.
% \begin{macrocode}
\group_begin:
- \char_set_lccode:nn {`\{} {`\ }
- \char_set_lccode:nn {`\}} {`\ }
- \char_set_lccode:nn {`\&} {`\!}
+ \char_set_lccode:nn { 38 } { 32 } % &
+ \char_set_lccode:nn { 46 } { 32 } % .
+ \char_set_lccode:nn { 123 } { 32 } % {
+ \char_set_lccode:nn { 125 } { 32 } % }
\char_set_catcode_active:N \&
\tex_lowercase:D
{
\group_end:
- \cs_new_protected:Npn \@@_interrupt_text:n #1
+ \cs_new_protected:Npn \@@_interrupt:n #1
{
- \iow_term:x
- {
- \iow_newline:
- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- \iow_newline:
- !
- }
+ \iow_term:n { }
\__kernel_iow_with:Nnn \tex_newlinechar:D { `\^^J }
{
\__kernel_iow_with:Nnn \tex_errorcontextlines:D { -1 }
@@ -820,27 +805,6 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\msg_log:n}
-% \begin{macro}{\msg_term:n}
-% Printing to the log or terminal without a stop is rather easier.
-% A bit of simple visual work sets things off nicely.
-% \begin{macrocode}
-\cs_new_protected:Npn \msg_log:n #1
- {
- \iow_log:n { ................................................. }
- \iow_wrap:nnnN { . ~ #1} { . ~ } { } \iow_log:n
- \iow_log:n { ................................................. }
- }
-\cs_new_protected:Npn \msg_term:n #1
- {
- \iow_term:n { ************************************************* }
- \iow_wrap:nnnN { * ~ #1} { * ~ } { } \iow_term:n
- \iow_term:n { ************************************************* }
- }
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
% \subsection{Displaying messages}
%
% \LaTeX{} is handling error messages and so the \TeX{} ones are disabled.
@@ -852,7 +816,7 @@
%</initex>
% \end{macrocode}
%
-% \begin{macro}
+% \begin{macro}[EXP]
% {
% \msg_fatal_text:n ,
% \msg_critical_text:n ,
@@ -860,46 +824,86 @@
% \msg_warning_text:n ,
% \msg_info_text:n
% }
+% \begin{macro}[EXP]{\@@_text:nn}
+% \begin{macro}[EXP]{\@@_text:n}
% A function for issuing messages: both the text and order could
-% in principle vary.
+% in principle vary. The module name may be empty for kernel messages,
+% hence the slightly contorted code path for a space.
% \begin{macrocode}
\cs_new:Npn \msg_fatal_text:n #1
{
- Fatal~#1~error
- \bool_if:NT \l_@@_line_context_bool { ~ \msg_line_context: }
+ Fatal ~
+ \msg_error_text:n {#1}
}
\cs_new:Npn \msg_critical_text:n #1
{
- Critical~#1~error
- \bool_if:NT \l_@@_line_context_bool { ~ \msg_line_context: }
+ Critical ~
+ \msg_error_text:n {#1}
}
\cs_new:Npn \msg_error_text:n #1
+ { \@@_text:nn {#1} { Error } }
+\cs_new:Npn \msg_warning_text:n #1
+ { \@@_text:nn {#1} { Warning } }
+\cs_new:Npn \msg_info_text:n #1
+ { \@@_text:nn {#1} { Info } }
+\cs_new:Npn \@@_text:nn #1#2
{
- #1~error
- \bool_if:NT \l_@@_line_context_bool { ~ \msg_line_context: }
+ \exp_args:Nf \@@_text:n { \msg_module_type:n {#1} }
+ \msg_module_name:n {#1} ~
+ #2
}
-\cs_new:Npn \msg_warning_text:n #1
+\cs_new:Npn \@@_text:n #1
{
- #1~warning
- \bool_if:NT \l_@@_line_context_bool { ~ \msg_line_context: }
+ \tl_if_blank:nF {#1}
+ { #1 ~ }
}
-\cs_new:Npn \msg_info_text:n #1
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{variable}{\g_msg_module_name_prop, \g_msg_module_type_prop}
+% For storing public module information: the kernel data is set up
+% in advance.
+% \begin{macrocode}
+\prop_new:N \g_msg_module_name_prop
+\prop_gput:Nnn \g_msg_module_name_prop { LaTeX } { LaTeX3 }
+\prop_new:N \g_msg_module_type_prop
+\prop_gput:Nnn \g_msg_module_type_prop { LaTeX } { }
+% \end{macrocode}
+% \end{variable}
+%
+% \begin{macro}[EXP]{\msg_module_type:n}
+% Contextual footer information, with the potential to give modules an
+% alternative name.
+% \begin{macrocode}
+\cs_new:Npn \msg_module_type:n #1
{
- #1~info
- \bool_if:NT \l_@@_line_context_bool { ~ \msg_line_context: }
+ \prop_if_in:NnTF \g_msg_module_type_prop {#1}
+ { \prop_item:Nn \g_msg_module_type_prop {#1} }
+%<*initex>
+ { Module }
+%</initex>
+%<*package>
+ { Package }
+%</package>
}
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\msg_see_documentation_text:n}
-% Contextual footer information. The \LaTeX{} module only comprises
-% \LaTeX3 code, so we refer to the \LaTeX3 documentation rather than
-% simply \enquote{\LaTeX{}}.
+% \begin{macro}[EXP]{\msg_moudle_name:n, \msg_see_documentation_text:n}
+% Contextual footer information, with the potential to give modules an
+% alternative name.
% \begin{macrocode}
+\cs_new:Npn \msg_module_name:n #1
+ {
+ \prop_if_in:NnTF \g_msg_module_name_prop {#1}
+ { \prop_item:Nn \g_msg_module_name_prop {#1} }
+ {#1}
+ }
\cs_new:Npn \msg_see_documentation_text:n #1
{
- \\ \\ See~the~
- \str_if_eq:nnTF {#1} { LaTeX } { LaTeX3 } {#1} ~
+ See~the~ \msg_module_name:n {#1} ~
documentation~for~further~information.
}
% \end{macrocode}
@@ -965,12 +969,10 @@
% \begin{macrocode}
\@@_class_new:nn { fatal }
{
- \msg_interrupt:nnn
- { \msg_fatal_text:n {#1} : ~ "#2" }
- {
- \use:c { \c_@@_text_prefix_tl #1 / #2 } {#3} {#4} {#5} {#6}
- \msg_see_documentation_text:n {#1}
- }
+ \@@_interrupt:Nnnn
+ \msg_fatal_text:n
+ {#1}
+ { \use:c { \c_@@_text_prefix_tl #1 / #2 } {#3} {#4} {#5} {#6} }
{ \c_@@_fatal_text_tl }
\tex_end:D
}
@@ -993,12 +995,10 @@
% \begin{macrocode}
\@@_class_new:nn { critical }
{
- \msg_interrupt:nnn
- { \msg_critical_text:n {#1} : ~ "#2" }
- {
- \use:c { \c_@@_text_prefix_tl #1 / #2 } {#3} {#4} {#5} {#6}
- \msg_see_documentation_text:n {#1}
- }
+ \@@_interrupt:Nnnn
+ \msg_critical_text:n
+ {#1}
+ { \use:c { \c_@@_text_prefix_tl #1 / #2 } {#3} {#4} {#5} {#6} }
{ \c_@@_critical_text_tl }
\tex_endinput:D
}
@@ -1028,12 +1028,10 @@
{ \c_@@_more_text_prefix_tl #1 / #2 }
{#3} {#4} {#5} {#6}
{
- \msg_interrupt:nnn
- { \msg_error_text:n {#1} : ~ "#2" }
- {
- \use:c { \c_@@_text_prefix_tl #1 / #2 } {#3} {#4} {#5} {#6}
- \msg_see_documentation_text:n {#1}
- }
+ \@@_interrupt:Nnnn
+ \msg_error_text:n
+ {#1}
+ { \use:c { \c_@@_text_prefix_tl #1 / #2 } {#3} {#4} {#5} {#6} }
}
}
\cs_new_protected:Npn \@@_error:cnnnnn #1#2#3#4#5#6
@@ -1063,11 +1061,25 @@
% \begin{macrocode}
\@@_class_new:nn { warning }
{
- \msg_term:n
+ \str_set:Nx \l_@@_text_str { \msg_warning_text:n {#1} }
+ \str_set:Nx \l_@@_name_str { \msg_module_name:n {#1} }
+ \iow_term:n { }
+ \iow_wrap:nxnN
{
- \msg_warning_text:n {#1} : ~ "#2" \\ \\
+ \l_@@_text_str : ~
\use:c { \c_@@_text_prefix_tl #1 / #2 } {#3} {#4} {#5} {#6}
}
+ {
+ ( \l_@@_name_str )
+ \prg_replicate:nn
+ {
+ \str_count:N \l_@@_text_str
+ - \str_count:N \l_@@_name_str
+ }
+ { ~ }
+ }
+ { } \iow_term:n
+ \iow_term:n { }
}
% \end{macrocode}
% \end{macro}
@@ -1088,11 +1100,25 @@
% \begin{macrocode}
\@@_class_new:nn { info }
{
- \msg_log:n
+ \str_set:Nx \l_@@_text_str { \msg_info_text:n {#1} }
+ \str_set:Nx \l_@@_name_str { \msg_module_name:n {#1} }
+ \iow_log:n { }
+ \iow_wrap:nxnN
{
- \msg_info_text:n {#1} : ~ "#2" \\ \\
+ \l_@@_text_str : ~
\use:c { \c_@@_text_prefix_tl #1 / #2 } {#3} {#4} {#5} {#6}
}
+ {
+ ( \l_@@_name_str )
+ \prg_replicate:nn
+ {
+ \str_count:N \l_@@_text_str
+ - \str_count:N \l_@@_name_str
+ }
+ { ~ }
+ }
+ { } \iow_log:n
+ \iow_log:n { }
}
% \end{macrocode}
% \end{macro}
@@ -1187,13 +1213,13 @@
{
\tl_if_empty:nF {#1}
{ \exp_args:No \iow_term:n { \use_none:n #1 } }
- \tl_set:Nn \l_@@_internal_tl {#2}
+ \tl_set:Nn \l_@@_tmp_tl {#2}
\__kernel_iow_with:Nnn \tex_newlinechar:D { 10 }
{
\__kernel_iow_with:Nnn \tex_errorcontextlines:D { -1 }
{
\tex_showtokens:D \exp_after:wN \exp_after:wN \exp_after:wN
- { \exp_after:wN \l_@@_internal_tl }
+ { \exp_after:wN \l_@@_tmp_tl }
}
}
}
@@ -2044,7 +2070,96 @@
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}[deprecated = 2019-12-31]{\msg_log:n, \msg_term:n}
% \begin{macrocode}
+\__kernel_patch_deprecation:nnNNpn { 2019-12-31 } { \iow_log:n }
+\cs_new_protected:Npn \msg_log:n #1
+ {
+ \iow_log:n { ................................................. }
+ \iow_wrap:nnnN { . ~ #1} { . ~ } { } \iow_log:n
+ \iow_log:n { ................................................. }
+ }
+\__kernel_patch_deprecation:nnNNpn { 2019-12-31 } { \iow_term:n }
+\cs_new_protected:Npn \msg_term:n #1
+ {
+ \iow_term:n { ************************************************* }
+ \iow_wrap:nnnN { * ~ #1} { * ~ } { } \iow_term:n
+ \iow_term:n { ************************************************* }
+ }
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}[deprecated = 2019-12-31]{\msg_interrupt:nnn}
+% \begin{macrocode}
+\__kernel_patch_deprecation:nnNNpn { 2019-12-31 } { [Defined~error~message] }
+\cs_new_protected:Npn \msg_interrupt:nnn #1#2#3
+ {
+ \tl_if_empty:nTF {#3}
+ {
+ \@@_old_interrupt_wrap:nn { \\ \c_@@_no_info_text_tl }
+ {#1 \\\\ #2 \\\\ \c_@@_continue_text_tl }
+ }
+ {
+ \@@_old_interrupt_wrap:nn { \\ #3 }
+ {#1 \\\\ #2 \\\\ \c_@@_help_text_tl }
+ }
+ }
+\cs_new_protected:Npn \@@_old_interrupt_wrap:nn #1#2
+ {
+ \iow_wrap:nnnN {#1} { | ~ } { } \@@_old_interrupt_more_text:n
+ \iow_wrap:nnnN {#2} { ! ~ } { } \@@_old_interrupt_text:n
+ }
+\cs_new_protected:Npn \@@_old_interrupt_more_text:n #1
+ {
+ \exp_args:Nx \tex_errhelp:D
+ {
+ |'''''''''''''''''''''''''''''''''''''''''''''''
+ #1 \iow_newline:
+ |...............................................
+ }
+ }
+\group_begin:
+ \char_set_lccode:nn {`\{} {`\ }
+ \char_set_lccode:nn {`\}} {`\ }
+ \char_set_lccode:nn {`\&} {`\!}
+ \char_set_catcode_active:N \&
+\tex_lowercase:D
+ {
+ \group_end:
+ \cs_new_protected:Npn \@@_old_interrupt_text:n #1
+ {
+ \iow_term:x
+ {
+ \iow_newline:
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+ \iow_newline:
+ !
+ }
+ \__kernel_iow_with:Nnn \tex_newlinechar:D { `\^^J }
+ {
+ \__kernel_iow_with:Nnn \tex_errorcontextlines:D { -1 }
+ {
+ \group_begin:
+ \cs_set_protected:Npn &
+ {
+ \tex_errmessage:D
+ {
+ #1
+ \use_none:n
+ { ............................................ }
+ }
+ }
+ \exp_after:wN
+ \group_end:
+ &
+ }
+ }
+ }
+ }
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
%</initex|package>
% \end{macrocode}
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3names.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3names.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3names.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3oldmodules.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3oldmodules.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3oldmodules.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -42,7 +42,7 @@
% }
%
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
@@ -877,7 +877,7 @@
% \item \cs{g_@@_thread_state_intarray} maps each \meta{thread} (with
% $\texttt{min_active} \leq \meta{thread} < \texttt{max_active}$) to
% the \meta{state} in which the \meta{thread} currently is. The
-% \meta{threads} or ordered starting from the best to the least
+% \meta{threads} are ordered starting from the best to the least
% preferred.
% \item \tn{toks}\meta{thread} holds the submatch information for the
% \meta{thread}, as the contents of a property list.
@@ -899,9 +899,6 @@
% block corresponding to one match with all its submatches stored in
% consecutive entries.
% \end{itemize}
-% \tn{count} registers are not abused, which means that we can safely
-% use named integers in this module. Note that \tn{box} registers are
-% not abused either; maybe we could leverage those for some purpose.
%
% The code is structured as follows. Variables are introduced in the
% relevant section. First we present some generic helper functions. Then
@@ -1320,7 +1317,7 @@
\@@_build_for_cs:n {#1}
\bool_set_eq:NN \l_@@_saved_success_bool
\g_@@_success_bool
- \exp_args:NV \@@_match:n \l_@@_cs_name_tl
+ \exp_args:NV \@@_match_cs:n \l_@@_cs_name_tl
\if_meaning:w \c_true_bool \g_@@_success_bool
\group_insert_after:N \@@_break_true:w
\fi:
@@ -3686,10 +3683,11 @@
% \subsubsection{Variables used while building}
%
% \begin{variable}{\l_@@_min_state_int, \l_@@_max_state_int}
-% The last state that was allocated is $\cs{l_@@_max_state_int}-1$,
-% so that \cs{l_@@_max_state_int} always points to a free state.
-% The \texttt{min_state} variable is $1$, but is included to
-% avoid hard-coding this value everywhere.
+% The last state that was allocated is
+% $\cs{l_@@_max_state_int}-1$, so that \cs{l_@@_max_state_int} always
+% points to a free state. The \texttt{min_state} variable is
+% $1$ to begin with, but gets shifted in nested calls to the matching
+% code, namely in |\c{...}| constructions.
% \begin{macrocode}
\int_new:N \l_@@_min_state_int
\int_set:Nn \l_@@_min_state_int { 1 }
@@ -3802,6 +3800,23 @@
% \end{macro}
%
% \begin{macro}{\@@_build_for_cs:n}
+% The matching code relies on some global intarray variables, but only
+% uses a range of their entries. Specifically,
+% \begin{itemize}
+% \item \cs{g_@@_state_active_intarray} from \cs{l_@@_min_state_int}
+% to $\cs{l_@@_max_state_int}-1$;
+% \item \cs{g_@@_thread_state_intarray} from \cs{l_@@_min_active_int}
+% to $\cs{l_@@_max_active_int}-1$.
+% \end{itemize}
+% In fact, some data is stored in \tn{toks} registers (local) in the
+% same ranges so these ranges mustn't overlap. This is done by
+% setting \cs{l_@@_min_active_int} to \cs{l_@@_max_state_int} after
+% building the \textsc{nfa}. Here, in this nested call to the
+% matching code, we need the new versions of these ranges to involve
+% completely new entries of the intarray variables, so we begin by
+% setting (the new) \cs{l_@@_min_state_int} to (the old)
+% \cs{l_@@_max_active_int} to use higher entries.
+%
% When using a regex to match a cs, we don't insert a wildcard, we
% anchor at the end, and since we ignore submatches, there is no need
% to surround the expression with a group. However, for branches to
@@ -3816,6 +3831,7 @@
}
\cs_new_protected:Npn \@@_build_for_cs:n #1
{
+ \int_set_eq:NN \l_@@_min_state_int \l_@@_max_active_int
\int_set_eq:NN \l_@@_max_state_int \l_@@_min_state_int
\@@_build_new_state:
\@@_build_new_state:
@@ -4618,7 +4634,7 @@
%
% \subsubsection{Matching: framework}
%
-% \begin{macro}{\@@_match:n}
+% \begin{macro}{\@@_match:n, \@@_match_cs:n}
% \begin{macro}{\@@_match_init:}
% First store the query into \tn{toks} registers and arrays (see
% \cs{@@_query_set:nnn}). Then initialize the variables that should
@@ -4650,6 +4666,34 @@
\@@_match_once:
}
\__kernel_patch:nnNNpn
+ {
+ \@@_trace_push:nnN { regex } { 1 } \@@_match_cs:n
+ \@@_trace:nnx { regex } { 1 } { analyzing~query~token~list }
+ }
+ { \@@_trace_pop:nnN { regex } { 1 } \@@_match_cs:n }
+\cs_new_protected:Npn \@@_match_cs:n #1
+ {
+ \int_zero:N \l_@@_balance_int
+ \int_set:Nn \l_@@_curr_pos_int
+ {
+ \int_max:nn { 2 * \l_@@_max_state_int - \l_@@_min_state_int }
+ { \l_@@_max_pos_int }
+ + 1
+ }
+ \@@_query_set:nnn { } { -1 } { -2 }
+ \int_set_eq:NN \l_@@_min_pos_int \l_@@_curr_pos_int
+ \str_map_inline:nn {#1}
+ {
+ \@@_query_set:nnn { \exp_not:n {##1} }
+ { \tl_if_blank:nTF {##1} { 10 } { 12 } }
+ { `##1 }
+ }
+ \int_set_eq:NN \l_@@_max_pos_int \l_@@_curr_pos_int
+ \@@_query_set:nnn { } { -1 } { -2 }
+ \@@_match_init:
+ \@@_match_once:
+ }
+\__kernel_patch:nnNNpn
{ \@@_trace:nnx { regex } { 1 } { initializing } }
{ }
\cs_new_protected:Npn \@@_match_init:
@@ -6415,7 +6459,8 @@
{ Invalid~nested~'\iow_char:N\\c'~escape~in~regular~expression. }
{
The~'\iow_char:N\\c'~escape~cannot~be~used~within~
- a~control~sequence~test~'\iow_char:N\\c{...}'.~
+ a~control~sequence~test~'\iow_char:N\\c{...}'~
+ nor~another~category~test.~
To~combine~several~category~tests,~use~'\iow_char:N\\c[...]'.
}
\__kernel_msg_new:nnnn { kernel } { c-C-invalid }
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
@@ -746,7 +746,7 @@
% Recovers the content of a \meta{skip} and places it directly
% in the input stream. An error is raised if the variable does
% not exist or if it is invalid. Can be omitted in places where a
-% \meta{dimension} is required (such as in the argument of
+% \meta{dimension} or \meta{skip} is required (such as in the argument of
% \cs{skip_eval:n}).
% \begin{texnote}
% \cs{skip_use:N} is the \TeX{} primitive \tn{the}: this is one of
@@ -822,6 +822,7 @@
% \cs{skip_horizontal:n} \Arg{skipexpr}
% \end{syntax}
% Inserts a horizontal \meta{skip} into the current list.
+% The argument can also be a \meta{dim}.
% \begin{texnote}
% \cs{skip_horizontal:N} is the \TeX{} primitive \tn{hskip} renamed.
% \end{texnote}
@@ -834,6 +835,7 @@
% \cs{skip_vertical:n} \Arg{skipexpr}
% \end{syntax}
% Inserts a vertical \meta{skip} into the current list.
+% The argument can also be a \meta{dim}.
% \begin{texnote}
% \cs{skip_vertical:N} is the \TeX{} primitive \tn{vskip} renamed.
% \end{texnote}
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3str.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3str.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3str.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3token.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3token.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3token.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
@@ -2234,6 +2234,29 @@
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}{\peek_remove_spaces:n, \@@_remove_spaces:}
+% Repeatedly use \cs{@@_true_remove:w} to remove a space and call
+% \cs{@@_true_aux:w}.
+% \begin{macrocode}
+\cs_new_protected:Npn \peek_remove_spaces:n #1
+ {
+ \cs_set:Npx \@@_false:w { \exp_not:n {#1} }
+ \group_align_safe_begin:
+ \cs_set:Npn \@@_true_aux:w { \peek_after:Nw \@@_remove_spaces: }
+ \@@_true_aux:w
+ }
+\cs_new_protected:Npn \@@_remove_spaces:
+ {
+ \if_meaning:w \l_peek_token \c_space_token
+ \exp_after:wN \@@_true_remove:w
+ \else:
+ \group_align_safe_end:
+ \exp_after:wN \@@_false:w
+ \fi:
+ }
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macro}{\@@_token_generic_aux:NNNTF}
% The generic functions store the test token in both implicit and
% explicit modes, and the \texttt{true} and \texttt{false} code as
@@ -2366,133 +2389,74 @@
% \end{macro}
% \end{macro}
%
-% \begin{macro}{\@@_ignore_spaces_execute_branches:}
-% This function removes one space token at a time, and calls
-% \cs{@@_execute_branches:} when encountering the first non-space
-% token. We directly use the primitive meaning test rather than
-% \cs{token_if_eq_meaning:NNTF} because \cs{l_peek_token} may be an
-% outer macro (coming from non-\LaTeX3 packages). Spaces are removed
-% using a side-effect of \texttt{f}-expansion:
-% |\exp:w \exp_end_continue_f:w| removes one space.
+% \begin{macro}[TF]
+% {
+% \peek_catcode:N,
+% \peek_catcode_remove:N,
+% \peek_charcode:N,
+% \peek_charcode_remove:N,
+% \peek_meaning:N,
+% \peek_meaning_remove:N,
+% }
+% The public functions themselves cannot be defined using
+% \cs{prg_new_conditional:Npnn}. Instead, the |TF|, |T|, |F| variants
+% are defined in terms of corresponding variants of
+% \cs{@@_token_generic:NNTF} or \cs{@@_token_remove_generic:NNTF},
+% with first argument one of \cs{@@_execute_branches_catcode:},
+% \cs{@@_execute_branches_charcode:}, or
+% \cs{@@_execute_branches_meaning:}.
% \begin{macrocode}
-\cs_new_protected:Npn \@@_ignore_spaces_execute_branches:
+\tl_map_inline:nn { { catcode } { charcode } { meaning } }
{
- \if_meaning:w \l_peek_token \c_space_token
- \exp_after:wN \peek_after:Nw
- \exp_after:wN \@@_ignore_spaces_execute_branches:
- \exp:w \exp_end_continue_f:w
- \else:
- \exp_after:wN \@@_execute_branches:
- \fi:
+ \tl_map_inline:nn { { } { _remove } }
+ {
+ \tl_map_inline:nn { { TF } { T } { F } }
+ {
+ \cs_new_protected:cpx { peek_ #1 ##1 :N ####1 }
+ {
+ \exp_not:c { @@_token ##1 _generic:NN ####1 }
+ \exp_not:c { @@_execute_branches_ #1 : }
+ }
+ }
+ }
}
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_def:nnnn}
-% \begin{macro}{\@@_def:nnnnn}
-% The public functions themselves cannot be defined using
-% \cs{prg_new_conditional:Npnn} and so a couple of auxiliary functions
-% are used. As a result, everything is done inside a group. As a result
-% things are a bit complicated.
-% \begin{macrocode}
-\group_begin:
- \cs_set:Npn \@@_def:nnnn #1#2#3#4
- {
- \@@_def:nnnnn {#1} {#2} {#3} {#4} { TF }
- \@@_def:nnnnn {#1} {#2} {#3} {#4} { T }
- \@@_def:nnnnn {#1} {#2} {#3} {#4} { F }
- }
- \cs_set:Npn \@@_def:nnnnn #1#2#3#4#5
- {
- \cs_new_protected:cpx { #1 #5 }
- {
- \tl_if_empty:nF {#2}
- { \exp_not:n { \cs_set_eq:NN \@@_execute_branches: #2 } }
- \exp_not:c { #3 #5 }
- \exp_not:n {#4}
- }
- }
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
% \begin{macro}[TF]
% {
-% \peek_catcode:N, \peek_catcode_ignore_spaces:N,
-% \peek_catcode_remove:N, \peek_catcode_remove_ignore_spaces:N
+% \peek_catcode_ignore_spaces:N, \peek_catcode_remove_ignore_spaces:N,
+% \peek_charcode_ignore_spaces:N, \peek_charcode_remove_ignore_spaces:N,
+% \peek_meaning_ignore_spaces:N, \peek_meaning_remove_ignore_spaces:N
% }
-% With everything in place the definitions can take place. First for
-% category codes.
+% To ignore spaces, remove them using \cs{peek_remove_spaces:n}
+% before running the tests.
% \begin{macrocode}
- \@@_def:nnnn { peek_catcode:N }
- { }
- { @@_token_generic:NN }
- { \@@_execute_branches_catcode: }
- \@@_def:nnnn { peek_catcode_ignore_spaces:N }
- { \@@_execute_branches_catcode: }
- { @@_token_generic:NN }
- { \@@_ignore_spaces_execute_branches: }
- \@@_def:nnnn { peek_catcode_remove:N }
- { }
- { @@_token_remove_generic:NN }
- { \@@_execute_branches_catcode: }
- \@@_def:nnnn { peek_catcode_remove_ignore_spaces:N }
- { \@@_execute_branches_catcode: }
- { @@_token_remove_generic:NN }
- { \@@_ignore_spaces_execute_branches: }
+\tl_map_inline:nn
+ {
+ { catcode } { catcode_remove }
+ { charcode } { charcode_remove }
+ { meaning } { meaning_remove }
+ }
+ {
+ \cs_new_protected:cpx { peek_#1_ignore_spaces:NTF } ##1##2##3
+ {
+ \peek_remove_spaces:n
+ { \exp_not:c { peek_#1:NTF } ##1 {##2} {##3} }
+ }
+ \cs_new_protected:cpx { peek_#1_ignore_spaces:NT } ##1##2
+ {
+ \peek_remove_spaces:n
+ { \exp_not:c { peek_#1:NT } ##1 {##2} }
+ }
+ \cs_new_protected:cpx { peek_#1_ignore_spaces:NF } ##1##2
+ {
+ \peek_remove_spaces:n
+ { \exp_not:c { peek_#1:NF } ##1 {##2} }
+ }
+ }
% \end{macrocode}
% \end{macro}
-% \begin{macro}[TF]
-% {
-% \peek_charcode:N, \peek_charcode_ignore_spaces:N,
-% \peek_charcode_remove:N, \peek_charcode_remove_ignore_spaces:N
-% }
-% Then for character codes.
-% \begin{macrocode}
- \@@_def:nnnn { peek_charcode:N }
- { }
- { @@_token_generic:NN }
- { \@@_execute_branches_charcode: }
- \@@_def:nnnn { peek_charcode_ignore_spaces:N }
- { \@@_execute_branches_charcode: }
- { @@_token_generic:NN }
- { \@@_ignore_spaces_execute_branches: }
- \@@_def:nnnn { peek_charcode_remove:N }
- { }
- { @@_token_remove_generic:NN }
- { \@@_execute_branches_charcode: }
- \@@_def:nnnn { peek_charcode_remove_ignore_spaces:N }
- { \@@_execute_branches_charcode: }
- { @@_token_remove_generic:NN }
- { \@@_ignore_spaces_execute_branches: }
-% \end{macrocode}
-% \end{macro}
-% \begin{macro}[TF]
-% {
-% \peek_meaning:N, \peek_meaning_ignore_spaces:N,
-% \peek_meaning_remove:N, \peek_meaning_remove_ignore_spaces:N
-% }
-% Finally for meaning, with the group closed to remove the temporary
-% definition functions.
-% \begin{macrocode}
- \@@_def:nnnn { peek_meaning:N }
- { }
- { @@_token_generic:NN }
- { \@@_execute_branches_meaning: }
- \@@_def:nnnn { peek_meaning_ignore_spaces:N }
- { \@@_execute_branches_meaning: }
- { @@_token_generic:NN }
- { \@@_ignore_spaces_execute_branches: }
- \@@_def:nnnn { peek_meaning_remove:N }
- { }
- { @@_token_remove_generic:NN }
- { \@@_execute_branches_meaning: }
- \@@_def:nnnn { peek_meaning_remove_ignore_spaces:N }
- { \@@_execute_branches_meaning: }
- { @@_token_remove_generic:NN }
- { \@@_ignore_spaces_execute_branches: }
-\group_end:
-% \end{macrocode}
-% \end{macro}
%
% \subsection{Decomposing a macro definition}
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3packages/l3keys2e/l3keys2e.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3packages/l3keys2e/l3keys2e.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3packages/l3keys2e/l3keys2e.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -60,7 +60,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
@@ -131,7 +131,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{l3keys2e}{2018-09-24}{}
+\ProvidesExplPackage{l3keys2e}{2018-10-17}{}
{LaTeX2e option processing using LaTeX3 keys}
% \end{macrocode}
%
Modified: trunk/Master/texmf-dist/source/latex/l3packages/xfp/xfp.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3packages/xfp/xfp.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3packages/xfp/xfp.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -62,7 +62,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
@@ -161,7 +161,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{xfp}{2018-09-24}{}
+\ProvidesExplPackage{xfp}{2018-10-17}{}
{L3 Floating point unit}
% \end{macrocode}
%
Modified: trunk/Master/texmf-dist/source/latex/l3packages/xfrac/xfrac.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3packages/xfrac/xfrac.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3packages/xfrac/xfrac.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -63,7 +63,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
@@ -533,7 +533,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{xfrac}{2018-09-24}{}
+\ProvidesExplPackage{xfrac}{2018-10-17}{}
{L3 Experimental split-level fractions}
% \end{macrocode}
%
Modified: trunk/Master/texmf-dist/source/latex/l3packages/xparse/xparse.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3packages/xparse/xparse.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3packages/xparse/xparse.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -67,7 +67,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
@@ -818,7 +818,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{xparse}{2018-09-24}{}
+\ProvidesExplPackage{xparse}{2018-10-17}{}
{L3 Experimental document command parser}
% \end{macrocode}
%
@@ -3133,16 +3133,19 @@
\group_align_safe_begin:
\tex_escapechar:D = 92 \scan_stop:
\tl_clear:N \l_@@_v_arg_tl
- \peek_meaning_remove_ignore_spaces:NTF \c_group_begin_token
+ \peek_remove_spaces:n
{
- \group_align_safe_end:
- \@@_grab_v_bgroup:
+ \peek_meaning_remove:NTF \c_group_begin_token
+ {
+ \group_align_safe_end:
+ \@@_grab_v_bgroup:
+ }
+ {
+ \peek_N_type:TF
+ { \@@_grab_v_aux_test:N }
+ { \@@_grab_v_aux_abort:n { } }
+ }
}
- {
- \peek_N_type:TF
- { \@@_grab_v_aux_test:N }
- { \@@_grab_v_aux_abort:n { } }
- }
}
\cs_new_protected:Npn \@@_grab_v_group_end:
{
@@ -4601,7 +4604,7 @@
\keys_define:nn { xparse }
{
log-declarations .bool_set:N = \l_@@_log_bool ,
- log-declarations .initial:n = true
+ log-declarations .initial:n = false
}
\keys_set:nV { xparse } \l_@@_options_clist
\bool_if:NF \l_@@_log_bool
Modified: trunk/Master/texmf-dist/source/latex/l3packages/xtemplate/xtemplate.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3packages/xtemplate/xtemplate.dtx 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/source/latex/l3packages/xtemplate/xtemplate.dtx 2018-10-18 20:31:59 UTC (rev 48935)
@@ -63,7 +63,7 @@
% }^^A
% }
%
-% \date{Released 2018-09-24}
+% \date{Released 2018-10-17}
%
% \maketitle
%
@@ -682,7 +682,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{xtemplate}{2018-09-24}{}
+\ProvidesExplPackage{xtemplate}{2018-10-17}{}
{L3 Experimental prototype document functions}
% \end{macrocode}
%
Modified: trunk/Master/texmf-dist/tex/latex/l3experimental/l3color/l3color.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3experimental/l3color/l3color.sty 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/tex/latex/l3experimental/l3color/l3color.sty 2018-10-18 20:31:59 UTC (rev 48935)
@@ -20,7 +20,7 @@
%%
%% File: l3color.dtx Copyright(C) 2017-2018 The LaTeX3 Project
\RequirePackage{expl3}
-\ProvidesExplPackage{l3color}{2018-09-24}{}
+\ProvidesExplPackage{l3color}{2018-10-17}{}
{L3 Experimental color support}
\tl_new:N \l__color_tmp_tl
\prg_new_conditional:Npnn \__color_if_defined:n #1 { T, F, TF }
Modified: trunk/Master/texmf-dist/tex/latex/l3experimental/l3draw/l3draw.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3experimental/l3draw/l3draw.sty 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/tex/latex/l3experimental/l3draw/l3draw.sty 2018-10-18 20:31:59 UTC (rev 48935)
@@ -27,7 +27,7 @@
%%
%% File: l3draw.dtx Copyright(C) 2018 The LaTeX3 Project
\RequirePackage{expl3}
-\ProvidesExplPackage{l3draw}{2018-09-24}{}
+\ProvidesExplPackage{l3draw}{2018-10-17}{}
{L3 Experimental core drawing support}
\RequirePackage { l3color }
%% File: l3draw-boxes.dtx Copyright(C) 2018 The LaTeX3 Project
Modified: trunk/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-convert.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-convert.sty 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-convert.sty 2018-10-18 20:31:59 UTC (rev 48935)
@@ -20,7 +20,7 @@
%%
%% File: l3str-convert.dtx Copyright (C) 2013-2018 The LaTeX3 Project
\RequirePackage{expl3}
-\ProvidesExplPackage{l3str-convert}{2018-09-24}{}
+\ProvidesExplPackage{l3str-convert}{2018-10-17}{}
{L3 Experimental string encoding conversions}
\cs_if_exist:NF \use_ii_i:nn
{ \cs_new:Npn \use_ii_i:nn #1#2 { #2 #1 } }
Modified: trunk/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-format.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-format.sty 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-format.sty 2018-10-18 20:31:59 UTC (rev 48935)
@@ -20,7 +20,7 @@
%%
%% File: l3str-format.dtx Copyright (C) 2012-2018 The LaTeX3 Project
\RequirePackage{expl3}
-\ProvidesExplPackage{l3str-format}{2018-09-24}{}
+\ProvidesExplPackage{l3str-format}{2018-10-17}{}
{L3 Experimental string formatting}
\cs_generate_variant:Nn \use:nn { nf }
\cs_generate_variant:Nn \use:nnn { fnf }
Modified: trunk/Master/texmf-dist/tex/latex/l3experimental/l3sys-shell/l3sys-shell.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3experimental/l3sys-shell/l3sys-shell.sty 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/tex/latex/l3experimental/l3sys-shell/l3sys-shell.sty 2018-10-18 20:31:59 UTC (rev 48935)
@@ -20,7 +20,7 @@
%%
%% File: l3sys-shell.dtx Copyright(C) 2018 The LaTeX3 Project
\RequirePackage{expl3}
-\ProvidesExplPackage{l3sys-shell}{2018-09-24}{}
+\ProvidesExplPackage{l3sys-shell}{2018-10-17}{}
{L3 Experimental system shell functions}
\cs_new:Npn \__sys_path_to_win:n #1
{
Modified: trunk/Master/texmf-dist/tex/latex/l3experimental/xcoffins/xcoffins.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3experimental/xcoffins/xcoffins.sty 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/tex/latex/l3experimental/xcoffins/xcoffins.sty 2018-10-18 20:31:59 UTC (rev 48935)
@@ -20,7 +20,7 @@
%%
%% File: xcoffins.dtx Copyright(C) 2010-2012,2014,2016-2018 The LaTeX3 Project
\RequirePackage{xparse}
-\ProvidesExplPackage{xcoffins}{2018-09-24}{}
+\ProvidesExplPackage{xcoffins}{2018-10-17}{}
{L3 Experimental design level coffins}
\keys_define:nn { coffin }
{
Modified: trunk/Master/texmf-dist/tex/latex/l3experimental/xgalley/l3galley.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3experimental/xgalley/l3galley.sty 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/tex/latex/l3experimental/xgalley/l3galley.sty 2018-10-18 20:31:59 UTC (rev 48935)
@@ -33,7 +33,7 @@
}%
\endinput
}
-\ProvidesExplPackage{l3galley}{2018-09-24}{}
+\ProvidesExplPackage{l3galley}{2018-10-17}{}
{L3 Experimental galley code}
\int_new:N \l__galley_tmp_int
\seq_new:N \g__galley_tmpa_seq
Modified: trunk/Master/texmf-dist/tex/latex/l3experimental/xgalley/xgalley.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3experimental/xgalley/xgalley.sty 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/tex/latex/l3experimental/xgalley/xgalley.sty 2018-10-18 20:31:59 UTC (rev 48935)
@@ -21,7 +21,7 @@
%% File: xgalley.dtx Copyright (C) 1999-2001, 2004-2009 Frank Mittelbach
%% (C) 2010-2012,2014,2016-2018 The LaTeX3 Project
\RequirePackage{xparse}
-\ProvidesExplPackage{xgalley}{2018-09-24}{}
+\ProvidesExplPackage{xgalley}{2018-10-17}{}
{L3 Experimental galley}
\RequirePackage{xparse,xtemplate,l3galley}
\clist_new:N \l__galley_tmpa_clist
@@ -29,13 +29,13 @@
\DeclareObjectType { measure } { 0 }
\DeclareTemplateInterface { measure } { absolute } { 0 }
{
- left-margin : length = 0 pt ,
- right-margin : length = 0 pt
+ left-margin : length = 0pt ,
+ right-margin : length = 0pt
}
\DeclareTemplateInterface { measure } { relative } { 0 }
{
- left-margin : length = 0 pt ,
- right-margin : length = 0 pt
+ left-margin : length = 0pt ,
+ right-margin : length = 0pt
}
\cs_new_eq:NN \l__galley_left_margin_dim \leftmargin
\cs_new_eq:NN \l__galley_right_margin_dim \rightmargin
@@ -62,13 +62,13 @@
\DeclareObjectType { parshape } { 0 }
\DeclareTemplateInterface { parshape } { hang } { 0 }
{
- indent : length = 0 pt ,
+ indent : length = 0pt ,
on-left-side : boolean = true ,
lines : integer = 1
}
\DeclareTemplateInterface { parshape } { initial } { 0 }
{
- indent : length = 0 pt ,
+ indent : length = 0pt ,
on-left-side : boolean = true ,
lines : integer = 2
}
@@ -182,22 +182,22 @@
\DeclareObjectType { justification } { 0 }
\DeclareTemplateInterface { justification } { std } { 0 }
{
- end-skip : skip = 0 pt plus 1 fil ,
- fixed-word-spacing : boolean = false ,
- indent-width : length ,
- left-skip : skip = 0 pt ,
- right-skip : skip = 0 pt ,
- start-skip : skip = 0 pt ,
+ end-skip : skip = 0pt plus 1fil ,
+ fixed-word-spacing : boolean = false ,
+ indent-width : length ,
+ left-skip : skip = 0pt ,
+ right-skip : skip = 0pt ,
+ start-skip : skip = 0pt ,
stretch-last-line : boolean = false
}
\DeclareTemplateInterface { justification } { single } { 0 }
{
- end-skip : skip = 0 pt plus 1 fil ,
- fixed-word-spacing : boolean = false ,
- indent-width : length ,
- left-skip : skip = 0 pt ,
- right-skip : skip = 0 pt ,
- start-skip : skip = 0 pt ,
+ end-skip : skip = 0pt plus 1fil ,
+ fixed-word-spacing : boolean = false ,
+ indent-width : length ,
+ left-skip : skip = 0pt ,
+ right-skip : skip = 0pt ,
+ start-skip : skip = 0pt ,
stretch-last-line : boolean = false
}
\DeclareTemplateCode { justification } { std } { 0 }
@@ -262,36 +262,36 @@
\skip_set:Nn \@rightskip { \l_galley_line_right_skip }
}
\DeclareInstance { justification } { justified } { std }
- { indent-width = 15 pt }
+ { indent-width = 15pt }
\UseInstance { justification } { justified }
\DeclareInstance { justification } { noindent } { std }
{
- end-skip = 15 pt plus 1 fil ,
- indent-width = 0 pt
+ end-skip = 15pt plus 1fil ,
+ indent-width = 0pt
}
\DeclareInstance { justification } { ragged-left } { std }
{
- end-skip = 0 pt ,
- fixed-word-spacing = true ,
- indent-width = 0 pt ,
- left-skip = 0 pt plus 2 em ,
- right-skip = 0 pt
+ end-skip = 0pt ,
+ fixed-word-spacing = true ,
+ indent-width = 0pt ,
+ left-skip = 0pt plus 2em ,
+ right-skip = 0pt
}
\DeclareInstance { justification } { ragged-right } { std }
{
- end-skip = 0 pt plus 1 fil ,
- fixed-word-spacing = true ,
- indent-width = 0 pt ,
- left-skip = 0 pt ,
- right-skip = 0 pt plus 2 em
+ end-skip = 0pt plus 1fil ,
+ fixed-word-spacing = true ,
+ indent-width = 0pt ,
+ left-skip = 0pt ,
+ right-skip = 0pt plus 2em
}
\DeclareInstance { justification } { center } { std }
{
- end-skip = 0 pt ,
- fixed-word-spacing = true ,
- indent-width = 0 pt ,
- left-skip = 0 pt plus 1 fil ,
- right-skip = 0 pt plus 1 fil
+ end-skip = 0pt ,
+ fixed-word-spacing = true ,
+ indent-width = 0pt ,
+ left-skip = 0pt plus 1fil ,
+ right-skip = 0pt plus 1fil
}
\DeclareTemplateInterface { justification } { compound } { 0 }
{
@@ -314,16 +314,16 @@
\DeclareObjectType { line-breaking } { 0 }
\DeclareTemplateInterface { line-breaking } { std } { 0 }
{
- badness : integer = 1000 ,
- binop-penalty : integer = 700 ,
- double-hyphen-demerits : integer = 10 000 ,
- emergency-stretch : skip = 0 pt ,
- final-hyphen-demerits : integer = 5000 ,
- fuzz : length = 0.1 pt ,
- line-penalty : integer = 10 ,
- mismatch-demerits : integer = 10 000 ,
- pretolerance : integer = 100 ,
- relation-penalty : integer = 500 ,
+ badness : integer = 1000 ,
+ binop-penalty : integer = 700 ,
+ double-hyphen-demerits : integer = 10000 ,
+ emergency-stretch : skip = 0pt ,
+ final-hyphen-demerits : integer = 5000 ,
+ fuzz : length = 0.1pt ,
+ line-penalty : integer = 10 ,
+ mismatch-demerits : integer = 10000 ,
+ pretolerance : integer = 100 ,
+ relation-penalty : integer = 500 ,
tolerance : integer = 200
}
\DeclareTemplateCode{ line-breaking } { std } { 0 }
@@ -346,15 +346,15 @@
\DeclareObjectType { paragraph-breaking } { 0 }
\DeclareTemplateInterface { paragraph-breaking } { std } { 0 }
{
- badness : integer = 1000 ,
- broken-penalty : integer = 100 ,
- club-penalty : integer = 150 ,
- display-club-penalty : integer = 150 ,
- display-widow-penalty : integer = 150 ,
- fuzz : length = 0.1 pt ,
- interline-penalty : integer = 0 ,
- post-display-penalty : integer = 0 ,
- pre-display-penalty : integer = 10 000 ,
+ badness : integer = 1000 ,
+ broken-penalty : integer = 100 ,
+ club-penalty : integer = 150 ,
+ display-club-penalty : integer = 150 ,
+ display-widow-penalty : integer = 150 ,
+ fuzz : length = 0.1pt ,
+ interline-penalty : integer = 0 ,
+ post-display-penalty : integer = 0 ,
+ pre-display-penalty : integer = 10000 ,
widow-penalty : integer = 150
}
\DeclareTemplateCode { paragraph-breaking } { std } { 0 }
Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex 2018-10-18 20:31:59 UTC (rev 48935)
@@ -63,7 +63,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: expl3.dtx Copyright (C) 1990-2018 The LaTeX3 Project
-\def\ExplFileDate{2018-09-24}%
+\def\ExplFileDate{2018-10-17}%
\begingroup
\def\next{\endgroup}%
\expandafter\ifx\csname PackageError\endcsname\relax
@@ -8770,6 +8770,22 @@
\tex_afterassignment:D \__peek_true_aux:w
\cs_set_eq:NN \__peek_tmp:w
}
+\cs_new_protected:Npn \peek_remove_spaces:n #1
+ {
+ \cs_set:Npx \__peek_false:w { \exp_not:n {#1} }
+ \group_align_safe_begin:
+ \cs_set:Npn \__peek_true_aux:w { \peek_after:Nw \__peek_remove_spaces: }
+ \__peek_true_aux:w
+ }
+\cs_new_protected:Npn \__peek_remove_spaces:
+ {
+ \if_meaning:w \l_peek_token \c_space_token
+ \exp_after:wN \__peek_true_remove:w
+ \else:
+ \group_align_safe_end:
+ \exp_after:wN \__peek_false:w
+ \fi:
+ }
\cs_new_protected:Npn \__peek_token_generic_aux:NNNTF #1#2#3#4#5
{
\group_align_safe_begin:
@@ -8841,82 +8857,43 @@
\exp_after:wN \__peek_false:w
\fi:
}
-\cs_new_protected:Npn \__peek_ignore_spaces_execute_branches:
+\tl_map_inline:nn { { catcode } { charcode } { meaning } }
{
- \if_meaning:w \l_peek_token \c_space_token
- \exp_after:wN \peek_after:Nw
- \exp_after:wN \__peek_ignore_spaces_execute_branches:
- \exp:w \exp_end_continue_f:w
- \else:
- \exp_after:wN \__peek_execute_branches:
- \fi:
+ \tl_map_inline:nn { { } { _remove } }
+ {
+ \tl_map_inline:nn { { TF } { T } { F } }
+ {
+ \cs_new_protected:cpx { peek_ #1 ##1 :N ####1 }
+ {
+ \exp_not:c { __peek_token ##1 _generic:NN ####1 }
+ \exp_not:c { __peek_execute_branches_ #1 : }
+ }
+ }
+ }
}
-\group_begin:
- \cs_set:Npn \__peek_def:nnnn #1#2#3#4
- {
- \__peek_def:nnnnn {#1} {#2} {#3} {#4} { TF }
- \__peek_def:nnnnn {#1} {#2} {#3} {#4} { T }
- \__peek_def:nnnnn {#1} {#2} {#3} {#4} { F }
- }
- \cs_set:Npn \__peek_def:nnnnn #1#2#3#4#5
- {
- \cs_new_protected:cpx { #1 #5 }
- {
- \tl_if_empty:nF {#2}
- { \exp_not:n { \cs_set_eq:NN \__peek_execute_branches: #2 } }
- \exp_not:c { #3 #5 }
- \exp_not:n {#4}
- }
- }
- \__peek_def:nnnn { peek_catcode:N }
- { }
- { __peek_token_generic:NN }
- { \__peek_execute_branches_catcode: }
- \__peek_def:nnnn { peek_catcode_ignore_spaces:N }
- { \__peek_execute_branches_catcode: }
- { __peek_token_generic:NN }
- { \__peek_ignore_spaces_execute_branches: }
- \__peek_def:nnnn { peek_catcode_remove:N }
- { }
- { __peek_token_remove_generic:NN }
- { \__peek_execute_branches_catcode: }
- \__peek_def:nnnn { peek_catcode_remove_ignore_spaces:N }
- { \__peek_execute_branches_catcode: }
- { __peek_token_remove_generic:NN }
- { \__peek_ignore_spaces_execute_branches: }
- \__peek_def:nnnn { peek_charcode:N }
- { }
- { __peek_token_generic:NN }
- { \__peek_execute_branches_charcode: }
- \__peek_def:nnnn { peek_charcode_ignore_spaces:N }
- { \__peek_execute_branches_charcode: }
- { __peek_token_generic:NN }
- { \__peek_ignore_spaces_execute_branches: }
- \__peek_def:nnnn { peek_charcode_remove:N }
- { }
- { __peek_token_remove_generic:NN }
- { \__peek_execute_branches_charcode: }
- \__peek_def:nnnn { peek_charcode_remove_ignore_spaces:N }
- { \__peek_execute_branches_charcode: }
- { __peek_token_remove_generic:NN }
- { \__peek_ignore_spaces_execute_branches: }
- \__peek_def:nnnn { peek_meaning:N }
- { }
- { __peek_token_generic:NN }
- { \__peek_execute_branches_meaning: }
- \__peek_def:nnnn { peek_meaning_ignore_spaces:N }
- { \__peek_execute_branches_meaning: }
- { __peek_token_generic:NN }
- { \__peek_ignore_spaces_execute_branches: }
- \__peek_def:nnnn { peek_meaning_remove:N }
- { }
- { __peek_token_remove_generic:NN }
- { \__peek_execute_branches_meaning: }
- \__peek_def:nnnn { peek_meaning_remove_ignore_spaces:N }
- { \__peek_execute_branches_meaning: }
- { __peek_token_remove_generic:NN }
- { \__peek_ignore_spaces_execute_branches: }
-\group_end:
+\tl_map_inline:nn
+ {
+ { catcode } { catcode_remove }
+ { charcode } { charcode_remove }
+ { meaning } { meaning_remove }
+ }
+ {
+ \cs_new_protected:cpx { peek_#1_ignore_spaces:NTF } ##1##2##3
+ {
+ \peek_remove_spaces:n
+ { \exp_not:c { peek_#1:NTF } ##1 {##2} {##3} }
+ }
+ \cs_new_protected:cpx { peek_#1_ignore_spaces:NT } ##1##2
+ {
+ \peek_remove_spaces:n
+ { \exp_not:c { peek_#1:NT } ##1 {##2} }
+ }
+ \cs_new_protected:cpx { peek_#1_ignore_spaces:NF } ##1##2
+ {
+ \peek_remove_spaces:n
+ { \exp_not:c { peek_#1:NF } ##1 {##2} }
+ }
+ }
\exp_args:Nno \use:nn
{ \cs_new:Npn \__peek_get_prefix_arg_replacement:wN #1 }
{ \tl_to_str:n { macro : } #2 -> #3 \q_stop #4 }
@@ -9264,8 +9241,9 @@
}
}
%% File: l3msg.dtx Copyright (C) 2009-2018 The LaTeX3 Project
-\tl_new:N \l__msg_internal_tl
-\bool_new:N \l__msg_line_context_bool
+\tl_new:N \l__msg_tmp_tl
+\str_new:N \l__msg_name_str
+\str_new:N \l__msg_text_str
\tl_const:Nn \c__msg_text_prefix_tl { msg~text~>~ }
\tl_const:Nn \c__msg_more_text_prefix_tl { msg~extra~text~>~ }
\prg_new_conditional:Npnn \msg_if_exist:nn #1#2 { p , T , F , TF }
@@ -9350,49 +9328,61 @@
\c_space_tl
\msg_line_number:
}
-\cs_new_protected:Npn \msg_interrupt:nnn #1#2#3
+\cs_new_protected:Npn \__msg_interrupt:Nnnn #1#2#3#4
{
- \tl_if_empty:nTF {#3}
+ \str_set:Nx \l__msg_text_str { #1 {#2} }
+ \str_set:Nx \l__msg_name_str { \msg_module_name:n {#2} }
+ \tl_if_empty:nTF {#4}
{
- \__msg_interrupt_wrap:nn { \\ \c__msg_no_info_text_tl }
- {#1 \\\\ #2 \\\\ \c__msg_continue_text_tl }
+ \__msg_interrupt_wrap:nnn {#3}
+ { \c__msg_continue_text_tl }
+ { \c__msg_no_info_text_tl }
}
{
- \__msg_interrupt_wrap:nn { \\ #3 }
- {#1 \\\\ #2 \\\\ \c__msg_help_text_tl }
+ \__msg_interrupt_wrap:nnn {#3}
+ { \c__msg_help_text_tl }
+ {#4}
}
}
-\cs_new_protected:Npn \__msg_interrupt_wrap:nn #1#2
+\cs_new_protected:Npn \__msg_interrupt_wrap:nnn #1#2#3
{
- \iow_wrap:nnnN {#1} { | ~ } { } \__msg_interrupt_more_text:n
- \iow_wrap:nnnN {#2} { ! ~ } { } \__msg_interrupt_text:n
+ \iow_wrap:nnnN { \\ #3 } { } { } \__msg_interrupt_more_text:n
+ \group_begin:
+ \int_sub:Nn \l_iow_line_count_int { 2 }
+ \iow_wrap:nxnN { \l__msg_text_str : ~ #1 }
+ {
+ ( \l__msg_name_str )
+ \prg_replicate:nn
+ {
+ \str_count:N \l__msg_text_str
+ - \str_count:N \l__msg_name_str
+ + 2
+ }
+ { ~ }
+ }
+ { } \__msg_interrupt_text:n
+ \iow_wrap:nnnN { \l__msg_tmp_tl \\ \\ #2 } { } { }
+ \__msg_interrupt:n
}
-\cs_new_protected:Npn \__msg_interrupt_more_text:n #1
+\cs_new_protected:Npn \__msg_interrupt_text:n #1
{
- \exp_args:Nx \tex_errhelp:D
- {
- |'''''''''''''''''''''''''''''''''''''''''''''''
- #1 \iow_newline:
- |...............................................
- }
+ \group_end:
+ \tl_set:Nn \l__msg_tmp_tl {#1}
}
+\cs_new_protected:Npn \__msg_interrupt_more_text:n #1
+ { \exp_args:Nx \tex_errhelp:D { #1 \iow_newline: } }
\group_begin:
- \char_set_lccode:nn {`\{} {`\ }
- \char_set_lccode:nn {`\}} {`\ }
- \char_set_lccode:nn {`\&} {`\!}
+ \char_set_lccode:nn { 38 } { 32 } % &
+ \char_set_lccode:nn { 46 } { 32 } % .
+ \char_set_lccode:nn { 123 } { 32 } % {
+ \char_set_lccode:nn { 125 } { 32 } % }
\char_set_catcode_active:N \&
\tex_lowercase:D
{
\group_end:
- \cs_new_protected:Npn \__msg_interrupt_text:n #1
+ \cs_new_protected:Npn \__msg_interrupt:n #1
{
- \iow_term:x
- {
- \iow_newline:
- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- \iow_newline:
- !
- }
+ \iow_term:n { }
\__kernel_iow_with:Nnn \tex_newlinechar:D { `\^^J }
{
\__kernel_iow_with:Nnn \tex_errorcontextlines:D { -1 }
@@ -9414,47 +9404,52 @@
}
}
}
-\cs_new_protected:Npn \msg_log:n #1
- {
- \iow_log:n { ................................................. }
- \iow_wrap:nnnN { . ~ #1} { . ~ } { } \iow_log:n
- \iow_log:n { ................................................. }
- }
-\cs_new_protected:Npn \msg_term:n #1
- {
- \iow_term:n { ************************************************* }
- \iow_wrap:nnnN { * ~ #1} { * ~ } { } \iow_term:n
- \iow_term:n { ************************************************* }
- }
\cs_new:Npn \msg_fatal_text:n #1
{
- Fatal~#1~error
- \bool_if:NT \l__msg_line_context_bool { ~ \msg_line_context: }
+ Fatal ~
+ \msg_error_text:n {#1}
}
\cs_new:Npn \msg_critical_text:n #1
{
- Critical~#1~error
- \bool_if:NT \l__msg_line_context_bool { ~ \msg_line_context: }
+ Critical ~
+ \msg_error_text:n {#1}
}
\cs_new:Npn \msg_error_text:n #1
+ { \__msg_text:nn {#1} { Error } }
+\cs_new:Npn \msg_warning_text:n #1
+ { \__msg_text:nn {#1} { Warning } }
+\cs_new:Npn \msg_info_text:n #1
+ { \__msg_text:nn {#1} { Info } }
+\cs_new:Npn \__msg_text:nn #1#2
{
- #1~error
- \bool_if:NT \l__msg_line_context_bool { ~ \msg_line_context: }
+ \exp_args:Nf \__msg_text:n { \msg_module_type:n {#1} }
+ \msg_module_name:n {#1} ~
+ #2
}
-\cs_new:Npn \msg_warning_text:n #1
+\cs_new:Npn \__msg_text:n #1
{
- #1~warning
- \bool_if:NT \l__msg_line_context_bool { ~ \msg_line_context: }
+ \tl_if_blank:nF {#1}
+ { #1 ~ }
}
-\cs_new:Npn \msg_info_text:n #1
+\prop_new:N \g_msg_module_name_prop
+\prop_gput:Nnn \g_msg_module_name_prop { LaTeX } { LaTeX3 }
+\prop_new:N \g_msg_module_type_prop
+\prop_gput:Nnn \g_msg_module_type_prop { LaTeX } { }
+\cs_new:Npn \msg_module_type:n #1
{
- #1~info
- \bool_if:NT \l__msg_line_context_bool { ~ \msg_line_context: }
+ \prop_if_in:NnTF \g_msg_module_type_prop {#1}
+ { \prop_item:Nn \g_msg_module_type_prop {#1} }
+ { Package }
}
+\cs_new:Npn \msg_module_name:n #1
+ {
+ \prop_if_in:NnTF \g_msg_module_name_prop {#1}
+ { \prop_item:Nn \g_msg_module_name_prop {#1} }
+ {#1}
+ }
\cs_new:Npn \msg_see_documentation_text:n #1
{
- \\ \\ See~the~
- \str_if_eq:nnTF {#1} { LaTeX } { LaTeX3 } {#1} ~
+ See~the~ \msg_module_name:n {#1} ~
documentation~for~further~information.
}
\group_begin:
@@ -9498,23 +9493,19 @@
}
\__msg_class_new:nn { fatal }
{
- \msg_interrupt:nnn
- { \msg_fatal_text:n {#1} : ~ "#2" }
- {
- \use:c { \c__msg_text_prefix_tl #1 / #2 } {#3} {#4} {#5} {#6}
- \msg_see_documentation_text:n {#1}
- }
+ \__msg_interrupt:Nnnn
+ \msg_fatal_text:n
+ {#1}
+ { \use:c { \c__msg_text_prefix_tl #1 / #2 } {#3} {#4} {#5} {#6} }
{ \c__msg_fatal_text_tl }
\tex_end:D
}
\__msg_class_new:nn { critical }
{
- \msg_interrupt:nnn
- { \msg_critical_text:n {#1} : ~ "#2" }
- {
- \use:c { \c__msg_text_prefix_tl #1 / #2 } {#3} {#4} {#5} {#6}
- \msg_see_documentation_text:n {#1}
- }
+ \__msg_interrupt:Nnnn
+ \msg_critical_text:n
+ {#1}
+ { \use:c { \c__msg_text_prefix_tl #1 / #2 } {#3} {#4} {#5} {#6} }
{ \c__msg_critical_text_tl }
\tex_endinput:D
}
@@ -9524,12 +9515,10 @@
{ \c__msg_more_text_prefix_tl #1 / #2 }
{#3} {#4} {#5} {#6}
{
- \msg_interrupt:nnn
- { \msg_error_text:n {#1} : ~ "#2" }
- {
- \use:c { \c__msg_text_prefix_tl #1 / #2 } {#3} {#4} {#5} {#6}
- \msg_see_documentation_text:n {#1}
- }
+ \__msg_interrupt:Nnnn
+ \msg_error_text:n
+ {#1}
+ { \use:c { \c__msg_text_prefix_tl #1 / #2 } {#3} {#4} {#5} {#6} }
}
}
\cs_new_protected:Npn \__msg_error:cnnnnn #1#2#3#4#5#6
@@ -9541,19 +9530,47 @@
\cs_new:Npn \__msg_no_more_text:nnnn #1#2#3#4 { }
\__msg_class_new:nn { warning }
{
- \msg_term:n
+ \str_set:Nx \l__msg_text_str { \msg_warning_text:n {#1} }
+ \str_set:Nx \l__msg_name_str { \msg_module_name:n {#1} }
+ \iow_term:n { }
+ \iow_wrap:nxnN
{
- \msg_warning_text:n {#1} : ~ "#2" \\ \\
+ \l__msg_text_str : ~
\use:c { \c__msg_text_prefix_tl #1 / #2 } {#3} {#4} {#5} {#6}
}
+ {
+ ( \l__msg_name_str )
+ \prg_replicate:nn
+ {
+ \str_count:N \l__msg_text_str
+ - \str_count:N \l__msg_name_str
+ }
+ { ~ }
+ }
+ { } \iow_term:n
+ \iow_term:n { }
}
\__msg_class_new:nn { info }
{
- \msg_log:n
+ \str_set:Nx \l__msg_text_str { \msg_info_text:n {#1} }
+ \str_set:Nx \l__msg_name_str { \msg_module_name:n {#1} }
+ \iow_log:n { }
+ \iow_wrap:nxnN
{
- \msg_info_text:n {#1} : ~ "#2" \\ \\
+ \l__msg_text_str : ~
\use:c { \c__msg_text_prefix_tl #1 / #2 } {#3} {#4} {#5} {#6}
}
+ {
+ ( \l__msg_name_str )
+ \prg_replicate:nn
+ {
+ \str_count:N \l__msg_text_str
+ - \str_count:N \l__msg_name_str
+ }
+ { ~ }
+ }
+ { } \iow_log:n
+ \iow_log:n { }
}
\__msg_class_new:nn { log }
{
@@ -9586,13 +9603,13 @@
{
\tl_if_empty:nF {#1}
{ \exp_args:No \iow_term:n { \use_none:n #1 } }
- \tl_set:Nn \l__msg_internal_tl {#2}
+ \tl_set:Nn \l__msg_tmp_tl {#2}
\__kernel_iow_with:Nnn \tex_newlinechar:D { 10 }
{
\__kernel_iow_with:Nnn \tex_errorcontextlines:D { -1 }
{
\tex_showtokens:D \exp_after:wN \exp_after:wN \exp_after:wN
- { \exp_after:wN \l__msg_internal_tl }
+ { \exp_after:wN \l__msg_tmp_tl }
}
}
}
@@ -10148,6 +10165,85 @@
\cs_generate_variant:Nn \__kernel_msg_expandable_error:nnnnn { nnfff }
\cs_generate_variant:Nn \__kernel_msg_expandable_error:nnnn { nnff }
\cs_generate_variant:Nn \__kernel_msg_expandable_error:nnn { nnf }
+\__kernel_patch_deprecation:nnNNpn { 2019-12-31 } { \iow_log:n }
+\cs_new_protected:Npn \msg_log:n #1
+ {
+ \iow_log:n { ................................................. }
+ \iow_wrap:nnnN { . ~ #1} { . ~ } { } \iow_log:n
+ \iow_log:n { ................................................. }
+ }
+\__kernel_patch_deprecation:nnNNpn { 2019-12-31 } { \iow_term:n }
+\cs_new_protected:Npn \msg_term:n #1
+ {
+ \iow_term:n { ************************************************* }
+ \iow_wrap:nnnN { * ~ #1} { * ~ } { } \iow_term:n
+ \iow_term:n { ************************************************* }
+ }
+\__kernel_patch_deprecation:nnNNpn { 2019-12-31 } { [Defined~error~message] }
+\cs_new_protected:Npn \msg_interrupt:nnn #1#2#3
+ {
+ \tl_if_empty:nTF {#3}
+ {
+ \__msg_old_interrupt_wrap:nn { \\ \c__msg_no_info_text_tl }
+ {#1 \\\\ #2 \\\\ \c__msg_continue_text_tl }
+ }
+ {
+ \__msg_old_interrupt_wrap:nn { \\ #3 }
+ {#1 \\\\ #2 \\\\ \c__msg_help_text_tl }
+ }
+ }
+\cs_new_protected:Npn \__msg_old_interrupt_wrap:nn #1#2
+ {
+ \iow_wrap:nnnN {#1} { | ~ } { } \__msg_old_interrupt_more_text:n
+ \iow_wrap:nnnN {#2} { ! ~ } { } \__msg_old_interrupt_text:n
+ }
+\cs_new_protected:Npn \__msg_old_interrupt_more_text:n #1
+ {
+ \exp_args:Nx \tex_errhelp:D
+ {
+ |'''''''''''''''''''''''''''''''''''''''''''''''
+ #1 \iow_newline:
+ |...............................................
+ }
+ }
+\group_begin:
+ \char_set_lccode:nn {`\{} {`\ }
+ \char_set_lccode:nn {`\}} {`\ }
+ \char_set_lccode:nn {`\&} {`\!}
+ \char_set_catcode_active:N \&
+\tex_lowercase:D
+ {
+ \group_end:
+ \cs_new_protected:Npn \__msg_old_interrupt_text:n #1
+ {
+ \iow_term:x
+ {
+ \iow_newline:
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+ \iow_newline:
+ !
+ }
+ \__kernel_iow_with:Nnn \tex_newlinechar:D { `\^^J }
+ {
+ \__kernel_iow_with:Nnn \tex_errorcontextlines:D { -1 }
+ {
+ \group_begin:
+ \cs_set_protected:Npn &
+ {
+ \tex_errmessage:D
+ {
+ #1
+ \use_none:n
+ { ............................................ }
+ }
+ }
+ \exp_after:wN
+ \group_end:
+ &
+ }
+ }
+ }
+ }
%% File: l3file.dtx Copyright (C) 1990-2018 The LaTeX3 Project
\tl_new:N \l__ior_internal_tl
\int_const:Nn \c_term_ior { 16 }
@@ -10476,6 +10572,7 @@
\exp_args:NNf \group_end:
#4 { \tl_to_str:N \l__iow_wrap_tl }
}
+\cs_generate_variant:Nn \iow_wrap:nnnN { nx }
\cs_new_protected:Npn \__iow_wrap_do:
{
\tl_set:Nx \l__iow_wrap_tl
@@ -11766,6 +11863,7 @@
\bool_new:N \l__keys_no_value_bool
\bool_new:N \l__keys_only_known_bool
\tl_new:N \l_keys_path_tl
+\tl_new:N \l__keys_inherit_tl
\tl_new:N \l__keys_property_tl
\bool_new:N \l__keys_selective_bool
\bool_new:N \l__keys_filtered_bool
@@ -12409,6 +12507,7 @@
\cs_if_exist:cT
{ \c__keys_code_root_tl ##1 / \l_keys_key_tl }
{
+ \tl_set:Nn \l__keys_inherit_tl {##1}
\cs:w \c__keys_code_root_tl ##1 / \l_keys_key_tl
\exp_after:wN \cs_end: \exp_after:wN
{ \l_keys_value_tl }
@@ -12450,9 +12549,19 @@
}
\cs_new:Npn \__keys_choice_find:n #1
{
- \__keys_execute:nn { \l_keys_path_tl / \__keys_remove_spaces:n {#1} }
- { \__keys_execute:nn { \l_keys_path_tl / unknown } { } }
+ \tl_if_empty:NTF \l__keys_inherit_tl
+ { \__keys_choice_find:nn { \l_keys_path_tl } {#1} }
+ {
+ \__keys_choice_find:nn
+ { \l__keys_inherit_tl / \l_keys_key_tl } {#1}
+ }
}
+\cs_new:Npn \__keys_choice_find:nn #1#2
+ {
+ \cs_if_exist:cTF { \c__keys_code_root_tl #1 / \__keys_remove_spaces:n {#2} }
+ { \use:c { \c__keys_code_root_tl #1 / \__keys_remove_spaces:n {#2} } {#2} }
+ { \use:c { \c__keys_code_root_tl #1 / unknown } {#2} }
+ }
\cs_new:Npn \__keys_multichoice_find:n #1
{ \clist_map_function:nN {#1} \__keys_choice_find:n }
\cs_new:Npn \__keys_parent:n #1
@@ -20017,7 +20126,7 @@
\__regex_build_for_cs:n {#1}
\bool_set_eq:NN \l__regex_saved_success_bool
\g__regex_success_bool
- \exp_args:NV \__regex_match:n \l__regex_cs_name_tl
+ \exp_args:NV \__regex_match_cs:n \l__regex_cs_name_tl
\if_meaning:w \c_true_bool \g__regex_success_bool
\group_insert_after:N \__regex_break_true:w
\fi:
@@ -21488,6 +21597,7 @@
}
\cs_new_protected:Npn \__regex_build_for_cs:n #1
{
+ \int_set_eq:NN \l__regex_min_state_int \l__regex_max_active_int
\int_set_eq:NN \l__regex_max_state_int \l__regex_min_state_int
\__regex_build_new_state:
\__regex_build_new_state:
@@ -21867,6 +21977,34 @@
\__regex_match_once:
}
\__kernel_patch:nnNNpn
+ {
+ \__regex_trace_push:nnN { regex } { 1 } \__regex_match_cs:n
+ \__regex_trace:nnx { regex } { 1 } { analyzing~query~token~list }
+ }
+ { \__regex_trace_pop:nnN { regex } { 1 } \__regex_match_cs:n }
+\cs_new_protected:Npn \__regex_match_cs:n #1
+ {
+ \int_zero:N \l__regex_balance_int
+ \int_set:Nn \l__regex_curr_pos_int
+ {
+ \int_max:nn { 2 * \l__regex_max_state_int - \l__regex_min_state_int }
+ { \l__regex_max_pos_int }
+ + 1
+ }
+ \__regex_query_set:nnn { } { -1 } { -2 }
+ \int_set_eq:NN \l__regex_min_pos_int \l__regex_curr_pos_int
+ \str_map_inline:nn {#1}
+ {
+ \__regex_query_set:nnn { \exp_not:n {##1} }
+ { \tl_if_blank:nTF {##1} { 10 } { 12 } }
+ { `##1 }
+ }
+ \int_set_eq:NN \l__regex_max_pos_int \l__regex_curr_pos_int
+ \__regex_query_set:nnn { } { -1 } { -2 }
+ \__regex_match_init:
+ \__regex_match_once:
+ }
+\__kernel_patch:nnNNpn
{ \__regex_trace:nnx { regex } { 1 } { initializing } }
{ }
\cs_new_protected:Npn \__regex_match_init:
@@ -22850,7 +22988,8 @@
{ Invalid~nested~'\iow_char:N\\c'~escape~in~regular~expression. }
{
The~'\iow_char:N\\c'~escape~cannot~be~used~within~
- a~control~sequence~test~'\iow_char:N\\c{...}'.~
+ a~control~sequence~test~'\iow_char:N\\c{...}'~
+ nor~another~category~test.~
To~combine~several~category~tests,~use~'\iow_char:N\\c[...]'.
}
\__kernel_msg_new:nnnn { kernel } { c-C-invalid }
Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex 2018-10-18 20:31:59 UTC (rev 48935)
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: expl3.dtx Copyright (C) 1990-2018 The LaTeX3 Project
-\def\ExplFileDate{2018-09-24}%
+\def\ExplFileDate{2018-10-17}%
\let\ExplLoaderFileDate\ExplFileDate
\begingroup
\def\tempa{LaTeX2e}%
Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/expl3.sty 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/expl3.sty 2018-10-18 20:31:59 UTC (rev 48935)
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: expl3.dtx Copyright (C) 1990-2018 The LaTeX3 Project
-\def\ExplFileDate{2018-09-24}%
+\def\ExplFileDate{2018-10-17}%
\let\ExplLoaderFileDate\ExplFileDate
\ProvidesPackage{expl3}
[%
Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def 2018-10-18 20:31:59 UTC (rev 48935)
@@ -20,7 +20,7 @@
%%
%% File: l3drivers.dtx Copyright(C) 2011-2018 The LaTeX3 Project
\ProvidesExplFile
- {l3dvidpfmx.def}{2018-09-24}{}
+ {l3dvidpfmx.def}{2018-10-17}{}
{L3 Experimental driver: dvipdfmx}
\cs_new_eq:NN \__driver_literal:e \tex_special:D
\cs_new_protected:Npn \__driver_literal:n #1
Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvips.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvips.def 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvips.def 2018-10-18 20:31:59 UTC (rev 48935)
@@ -20,7 +20,7 @@
%%
%% File: l3drivers.dtx Copyright(C) 2011-2018 The LaTeX3 Project
\ProvidesExplFile
- {l3dvips.def}{2018-09-24}{}
+ {l3dvips.def}{2018-10-17}{}
{L3 Experimental driver: dvips}
\cs_new_eq:NN \__driver_literal:e \tex_special:D
\cs_new_protected:Npn \__driver_literal:n #1
Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvisvgm.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvisvgm.def 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvisvgm.def 2018-10-18 20:31:59 UTC (rev 48935)
@@ -20,7 +20,7 @@
%%
%% File: l3drivers.dtx Copyright(C) 2011-2018 The LaTeX3 Project
\ProvidesExplFile
- {l3dvisvgm.def}{2018-09-24}{}
+ {l3dvisvgm.def}{2018-10-17}{}
{L3 Experimental driver: dvisvgm}
\cs_new_eq:NN \__driver_literal:e \tex_special:D
\cs_new_protected:Npn \__driver_literal:n #1
Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/l3pdfmode.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/l3pdfmode.def 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/l3pdfmode.def 2018-10-18 20:31:59 UTC (rev 48935)
@@ -20,7 +20,7 @@
%%
%% File: l3drivers.dtx Copyright(C) 2011-2018 The LaTeX3 Project
\ProvidesExplFile
- {l3pdfmode.def}{2018-09-24}{}
+ {l3pdfmode.def}{2018-10-17}{}
{L3 Experimental driver: PDF mode}
\cs_new_eq:NN \__driver_literal:e \tex_special:D
\cs_new_protected:Npn \__driver_literal:n #1
Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/l3xdvipdfmx.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/l3xdvipdfmx.def 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/l3xdvipdfmx.def 2018-10-18 20:31:59 UTC (rev 48935)
@@ -20,7 +20,7 @@
%%
%% File: l3drivers.dtx Copyright(C) 2011-2018 The LaTeX3 Project
\ProvidesExplFile
- {l3xdvidpfmx.def}{2018-09-24}{}
+ {l3xdvidpfmx.def}{2018-10-17}{}
{L3 Experimental driver: xdvipdfmx}
\cs_new_eq:NN \__driver_literal:e \tex_special:D
\cs_new_protected:Npn \__driver_literal:n #1
Modified: trunk/Master/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty 2018-10-18 20:31:59 UTC (rev 48935)
@@ -32,7 +32,7 @@
}%
\endinput
}
-\ProvidesExplPackage{l3keys2e}{2018-09-24}{}
+\ProvidesExplPackage{l3keys2e}{2018-10-17}{}
{LaTeX2e option processing using LaTeX3 keys}
\cs_generate_variant:Nn \clist_put_right:Nn { Nv }
\cs_generate_variant:Nn \keys_if_exist:nnT { nx }
Modified: trunk/Master/texmf-dist/tex/latex/l3packages/xfp/xfp.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3packages/xfp/xfp.sty 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/tex/latex/l3packages/xfp/xfp.sty 2018-10-18 20:31:59 UTC (rev 48935)
@@ -33,7 +33,7 @@
\endinput
}
\RequirePackage{xparse}
-\ProvidesExplPackage{xfp}{2018-09-24}{}
+\ProvidesExplPackage{xfp}{2018-10-17}{}
{L3 Floating point unit}
\NewExpandableDocumentCommand \fpeval { m } { \fp_eval:n {#1} }
\NewExpandableDocumentCommand \inteval { m } { \int_eval:n {#1} }
Modified: trunk/Master/texmf-dist/tex/latex/l3packages/xfrac/xfrac.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3packages/xfrac/xfrac.sty 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/tex/latex/l3packages/xfrac/xfrac.sty 2018-10-18 20:31:59 UTC (rev 48935)
@@ -34,7 +34,7 @@
\endinput
}
\RequirePackage{amstext,graphicx,l3keys2e,textcomp,xparse,xtemplate}
-\ProvidesExplPackage{xfrac}{2018-09-24}{}
+\ProvidesExplPackage{xfrac}{2018-10-17}{}
{L3 Experimental split-level fractions}
\keys_define:nn { xfrac }
{
Modified: trunk/Master/texmf-dist/tex/latex/l3packages/xparse/xparse.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3packages/xparse/xparse.sty 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/tex/latex/l3packages/xparse/xparse.sty 2018-10-18 20:31:59 UTC (rev 48935)
@@ -36,7 +36,7 @@
}%
\endinput
}
-\ProvidesExplPackage{xparse}{2018-09-24}{}
+\ProvidesExplPackage{xparse}{2018-10-17}{}
{L3 Experimental document command parser}
\tl_new:N \l__xparse_arg_spec_tl
\tl_new:N \l__xparse_args_tl
@@ -1293,16 +1293,19 @@
\group_align_safe_begin:
\tex_escapechar:D = 92 \scan_stop:
\tl_clear:N \l__xparse_v_arg_tl
- \peek_meaning_remove_ignore_spaces:NTF \c_group_begin_token
+ \peek_remove_spaces:n
{
- \group_align_safe_end:
- \__xparse_grab_v_bgroup:
+ \peek_meaning_remove:NTF \c_group_begin_token
+ {
+ \group_align_safe_end:
+ \__xparse_grab_v_bgroup:
+ }
+ {
+ \peek_N_type:TF
+ { \__xparse_grab_v_aux_test:N }
+ { \__xparse_grab_v_aux_abort:n { } }
+ }
}
- {
- \peek_N_type:TF
- { \__xparse_grab_v_aux_test:N }
- { \__xparse_grab_v_aux_abort:n { } }
- }
}
\cs_new_protected:Npn \__xparse_grab_v_group_end:
{
@@ -2216,7 +2219,7 @@
\keys_define:nn { xparse }
{
log-declarations .bool_set:N = \l__xparse_log_bool ,
- log-declarations .initial:n = true
+ log-declarations .initial:n = false
}
\keys_set:nV { xparse } \l__xparse_options_clist
\bool_if:NF \l__xparse_log_bool
Modified: trunk/Master/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.sty 2018-10-18 20:30:37 UTC (rev 48934)
+++ trunk/Master/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.sty 2018-10-18 20:31:59 UTC (rev 48935)
@@ -36,7 +36,7 @@
}%
\endinput
}
-\ProvidesExplPackage{xtemplate}{2018-09-24}{}
+\ProvidesExplPackage{xtemplate}{2018-10-17}{}
{L3 Experimental prototype document functions}
\tl_const:Nn \c__xtemplate_code_root_tl { template~code~>~ }
\tl_const:Nn \c__xtemplate_defaults_root_tl { template~defaults~>~ }
More information about the tex-live-commits
mailing list