texlive[49692] Master/texmf-dist: l3kernel (13jan19)
commits+karl at tug.org
commits+karl at tug.org
Mon Jan 14 00:32:05 CET 2019
Revision: 49692
http://tug.org/svn/texlive?view=revision&revision=49692
Author: karl
Date: 2019-01-14 00:32:04 +0100 (Mon, 14 Jan 2019)
Log Message:
-----------
l3kernel (13jan19)
Modified Paths:
--------------
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/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/l3term-glossary.pdf
trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex
trunk/Master/texmf-dist/doc/latex/l3kernel/source3.pdf
trunk/Master/texmf-dist/doc/latex/l3kernel/source3.tex
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/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/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/l3doc.cls
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
Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md 2019-01-13 23:32:04 UTC (rev 49692)
@@ -7,6 +7,18 @@
## [Unreleased]
+## [2019-01-12]
+
+### Changed
+
+- Improved `expl3` loading time with LuaTeX and XeTeX
+- Improved performance of `\ior_map_inline:Nn` and related functions
+
+### Fixed
+
+- Handling of accented characters under mixed case changing in 8-bit engines
+ (see #514)
+
## [2019-01-01]
### Added
@@ -218,7 +230,8 @@
- Step functions have been added for dim variables,
e.g. `\dim_step_inline:nnnn`
-[Unreleased]: https://github.com/latex3/latex3/compare/2019-01-01...HEAD
+[Unreleased]: https://github.com/latex3/latex3/compare/2019-01-12...HEAD
+[2019-01-12]: https://github.com/latex3/latex3/compare/2019-01-01...2019-01-12
[2019-01-01]: https://github.com/latex3/latex3/compare/2018-12-12...2019-01-01
[2018-12-12]: https://github.com/latex3/latex3/compare/2018-12-11...2018-12-12
[2018-12-11]: https://github.com/latex3/latex3/compare/2018-12-06...2018-12-11
Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/README.md 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/README.md 2019-01-13 23:32:04 UTC (rev 49692)
@@ -1,7 +1,7 @@
LaTeX3 Programming Conventions
==============================
-Release 2019-01-01
+Release 2019-01-12
Overview
--------
@@ -100,6 +100,6 @@
-----
-<p>Copyright (C) 1998-2012,2015-2018 The LaTeX3 Project <br />
+<p>Copyright (C) 1998-2012,2015-2019 The LaTeX3 Project <br />
<a href="http://latex-project.org/">http://latex-project.org/</a> <br />
All rights reserved.</p>
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 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/interface3.tex 2019-01-13 23:32:04 UTC (rev 49692)
@@ -52,7 +52,7 @@
{latex-team at latex-project.org}%
}%
}
-\date{Released 2019-01-01}
+\date{Released 2019-01-12}
\pagenumbering{roman}
\maketitle
Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3docstrip.pdf
===================================================================
(Binary files differ)
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 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.tex 2019-01-13 23:32:04 UTC (rev 49692)
@@ -30,7 +30,7 @@
{latex-team at latex-project.org}%
}%
}
-\date{Released 2019-01-01}
+\date{Released 2019-01-12}
\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 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.tex 2019-01-13 23:32:04 UTC (rev 49692)
@@ -30,7 +30,7 @@
{latex-team at latex-project.org}%
}%
}
-\date{Released 2019-01-01}
+\date{Released 2019-01-12}
\newcommand{\TF}{\textit{(TF)}}
Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex 2019-01-13 23:32:04 UTC (rev 49692)
@@ -30,7 +30,7 @@
{latex-team at latex-project.org}%
}%
}
-\date{Released 2019-01-01}
+\date{Released 2019-01-12}
\newcommand{\TF}{\textit{(TF)}}
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 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/source3.tex 2019-01-13 23:32:04 UTC (rev 49692)
@@ -51,7 +51,7 @@
{latex-team at latex-project.org}%
}%
}
-\date{Released 2019-01-01}
+\date{Released 2019-01-12}
\pagenumbering{roman}
\maketitle
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/expl3.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/expl3.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/expl3.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -21,7 +21,7 @@
% for those people who are interested.
%
%<*driver|generic|package>
-\def\ExplFileDate{2019-01-01}%
+\def\ExplFileDate{2019-01-12}%
%</driver|generic|package>
%<*driver>
\documentclass[full]{l3doc}
@@ -49,7 +49,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3alloc.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3alloc.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3alloc.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -138,7 +138,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3box.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3box.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3box.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
@@ -583,7 +583,7 @@
% \vbox_gset_to_ht:Nnw, \vbox_gset_to_ht:cnw
% }
% \begin{syntax}
-% \cs{vbox_set_to_wd:Nnw} \meta{box} \Arg{dimexpr} \meta{contents} \cs{vbox_set_end:}
+% \cs{vbox_set_to_ht:Nnw} \meta{box} \Arg{dimexpr} \meta{contents} \cs{vbox_set_end:}
% \end{syntax}
% Typesets the \meta{contents} to the height given by the \meta{dimexpr}
% and then stores the result inside the \meta{box}. In contrast
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
@@ -353,9 +353,7 @@
% path and the additional paths controlled by \cs{file_path_include:n}.
% If found, sets the \meta{str var} to the size of the file in bytes.
% Where the file is not found, the \meta{str var} will be empty.
-% \begin{texnote}
-% Currently this is not available with \XeTeX{}.
-% \end{texnote}
+% This is not available in older versions of \XeTeX{}.
% \end{function}
%
% \begin{function}[added = 2017-07-09]{\file_get_timestamp:nN}
@@ -369,9 +367,7 @@
% \meta{minute}\meta{second}\meta{offset}, where the latter may be |Z|
% (UTC) or \meta{plus-minus}\meta{hours}|'|\meta{minutes}|'|.
% Where the file is not found, the \meta{str var} will be empty.
-% \begin{texnote}
-% Currently this is not available with \XeTeX{}.
-% \end{texnote}
+% This is not available in older versions of \XeTeX{}.
% \end{function}
%
% \begin{function}[added = 2014-07-02]{\file_if_exist_input:n, \file_if_exist_input:nF}
@@ -451,8 +447,9 @@
% $2^{30}-1$, an error occurs. Entries are generated in the same way
% as repeated calls to \cs{int_rand:nn} or \cs{int_rand:n}
% respectively, in particular for the second function the
-% \meta{minimum} is $1$. This is not yet available in \XeTeX{}.
+% \meta{minimum} is $1$.
% Assignments are always global.
+% This is not available in older versions of \XeTeX{}.
% \end{function}
%
% \subsection{Working with contents of integer arrays}
@@ -632,7 +629,8 @@
% \end{syntax}
% Selects a pseudo-random key--value pair from the \meta{property list}
% and returns \Arg{key} and \Arg{value}. If the \meta{property list} is
-% empty the result is empty. This is not yet available in \XeTeX{}.
+% empty the result is empty.
+% This is not available in older versions of \XeTeX{}.
% \begin{texnote}
% The result is returned within the \tn{unexpanded}
% primitive (\cs{exp_not:n}), which means that the \meta{value}
@@ -4443,34 +4441,39 @@
\exp_after:wN \@@_tmp:w \l_@@_internal_a_tl
\@@_loop:nn
}
- \cs_set_protected:Npn \@@_tmp:w #1#2#3#4#5#6#7#8
+ \cs_set_protected:Npn \@@_tmp:nnnn #1#2#3#4#5
{
\tl_const:cx
{
- c_@@_lower_case_
- \char_generate:nn {#1} { 12 }
+ c_@@_ #1 _case_
\char_generate:nn {#2} { 12 }
+ \char_generate:nn {#3} { 12 }
_tl
}
{
\exp_after:wN \exp_after:wN \exp_after:wN
+ \exp_not:N \char_generate:nn {#4} { 13 }
+ \exp_after:wN \exp_after:wN \exp_after:wN
\exp_not:N \char_generate:nn {#5} { 13 }
- \exp_after:wN \exp_after:wN \exp_after:wN
- \exp_not:N \char_generate:nn {#6} { 13 }
}
+ }
+ \cs_set_protected:Npn \@@_tmp:w #1#2#3#4#5#6#7#8
+ {
\tl_const:cx
{
- c_@@_upper_case_
- \char_generate:nn {#5} { 12 }
- \char_generate:nn {#6} { 12 }
+ c_@@_lower_case_
+ \char_generate:nn {#1} { 12 }
+ \char_generate:nn {#2} { 12 }
_tl
}
{
\exp_after:wN \exp_after:wN \exp_after:wN
- \exp_not:N \char_generate:nn {#1} { 13 }
+ \exp_not:N \char_generate:nn {#5} { 13 }
\exp_after:wN \exp_after:wN \exp_after:wN
- \exp_not:N \char_generate:nn {#2} { 13 }
+ \exp_not:N \char_generate:nn {#6} { 13 }
}
+ \@@_tmp:nnnn { upper } {#5} {#6} {#1} {#2}
+ \@@_tmp:nnnn { mixed } {#5} {#6} {#1} {#2}
}
\@@_loop:nn
{ 00C0 } { 00E0 }
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-%% File: l3coffins.dtx Copyright(C) 2010-2019 The LaTeX3 Project
+%% File: l3coffins.dtx Copyright (C) 2010-2019 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
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3color-base.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3color-base.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3color-base.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-%% File: l3color-base.dtx Copyright(C) 2011,2012,2014,2016-2019 The LaTeX3 Project
+%% File: l3color-base.dtx Copyright (C) 2011,2012,2014,2016-2019 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
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -29,7 +29,7 @@
\askforoverwritefalse
\preamble
-Copyright (C) 1990-2017 The LaTeX3 Project
+Copyright (C) 1990-2017,2019 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
@@ -77,7 +77,7 @@
%
% \title{The \cls{l3doc} class}
% \author{\Team}
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
% \maketitle
% \tableofcontents
%
@@ -1351,6 +1351,8 @@
{ The~deprecated~function(s)~'#1'~should~have~been~removed~on~#2. }
\msg_new:nnn { l3doc } { date-format }
{ The~date~'#1'~should~be~given~in~YYYY-MM-DD~format. }
+\msg_new:nnn { l3doc } { future-date }
+ { The~added/updated~date~'#2'~of~'#1'~is~in~the~future. }
\msg_new:nnn { l3doc } { syntax-nested-function }
{
The~'syntax'~environment~should~be~used~in~the~
@@ -2370,8 +2372,8 @@
\bool_set_true:N \l_@@_macro_noTF_bool
\bool_set_true:N \l_@@_macro_TF_bool
} ,
- added .code:n = { \@@_date_set:Nn \l_@@_date_added_tl {#1} },
- updated .code:n = { \@@_date_set:Nn \l_@@_date_updated_tl {#1} } ,
+ added .code:n = { \@@_date_set_past:Nn \l_@@_date_added_tl {#1} },
+ updated .code:n = { \@@_date_set_past:Nn \l_@@_date_updated_tl {#1} } ,
deprecated .code:n = { \@@_deprecated_on:n {#1} } ,
tested .code:n = { } ,
label .code:n =
@@ -2385,9 +2387,11 @@
}
% \end{macrocode}
%
-% \begin{macro}{\@@_date_set:Nn}
+% \begin{macro}{\@@_date_set:Nn,\@@_date_set_past:Nn}
% Normalize the date into the format \texttt{YYYY-MM-DD}; more
-% precisely month and day are allowed to be single digits.
+% precisely month and day are allowed to be single digits. The
+% \cs{@@_date_set_past:Nn} function only allows dates in the past (or
+% same day).
% \begin{macrocode}
\cs_new_protected:Npn \@@_date_set:Nn #1#2
{
@@ -2399,6 +2403,17 @@
\tl_set:Nn #1 { 1970-01-01 }
}
}
+\cs_new_protected:Npn \@@_date_set_past:Nn #1#2
+ {
+ \@@_date_set:Nn #1 {#2}
+ \exp_args:No \@@_date_compare:nNnT
+ {#1} > { \tex_year:D - \tex_month:D - \tex_day:D }
+ {
+ \msg_error:nnxx { l3doc } { future-date }
+ { \tl_to_str:N \l_@@_macro_argument_tl }
+ {#1}
+ }
+ }
% \end{macrocode}
% \end{macro}
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -61,7 +61,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3drivers.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3drivers.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3drivers.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-%% File: l3drivers.dtx Copyright(C) 2011-2019 The LaTeX3 Project
+%% File: l3drivers.dtx Copyright (C) 2011-2019 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
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
@@ -554,23 +554,23 @@
%<*package>
\ProvidesExplFile
%<*dvipdfmx>
- {l3dvidpfmx.def}{2019-01-01}{}
+ {l3dvidpfmx.def}{2019-01-12}{}
{L3 Experimental driver: dvipdfmx}
%</dvipdfmx>
%<*dvips>
- {l3dvips.def}{2019-01-01}{}
+ {l3dvips.def}{2019-01-12}{}
{L3 Experimental driver: dvips}
%</dvips>
%<*dvisvgm>
- {l3dvisvgm.def}{2019-01-01}{}
+ {l3dvisvgm.def}{2019-01-12}{}
{L3 Experimental driver: dvisvgm}
%</dvisvgm>
%<*pdfmode>
- {l3pdfmode.def}{2019-01-01}{}
+ {l3pdfmode.def}{2019-01-12}{}
{L3 Experimental driver: PDF mode}
%</pdfmode>
%<*xdvipdfmx>
- {l3xdvidpfmx.def}{2019-01-01}{}
+ {l3xdvidpfmx.def}{2019-01-12}{}
{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 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3file.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3file.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3file.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
@@ -1002,11 +1002,11 @@
\cs_new_protected:Npn \@@_map_inline_loop:NNN #1#2#3
{
#2 #3 \l_@@_internal_tl
- \ior_if_eof:NF #3
- {
- \exp_args:No #1 \l_@@_internal_tl
- \@@_map_inline_loop:NNN #1#2#3
- }
+ \if_eof:w #3
+ \exp_after:wN \use_none:nnnnnnn
+ \fi:
+ \exp_args:No #1 \l_@@_internal_tl
+ \@@_map_inline_loop:NNN #1#2#3
}
% \end{macrocode}
% \end{macro}
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3final.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3final.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3final.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -38,7 +38,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
% \maketitle
%
% \begin{documentation}
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-%% File: l3fp-aux.dtx Copyright(C) 2011-2019 The LaTeX3 Project
+%% File: l3fp-aux.dtx Copyright (C) 2011-2019 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
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -38,7 +38,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-%% File: l3fp-convert.dtx Copyright(C) 2011-2019 The LaTeX3 Project
+%% File: l3fp-convert.dtx Copyright (C) 2011-2019 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
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -38,7 +38,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -38,7 +38,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -38,7 +38,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -38,7 +38,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -38,7 +38,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-%% File: l3fp-round.dtx Copyright(C) 2011-2019 The LaTeX3 Project
+%% File: l3fp-round.dtx Copyright (C) 2011-2019 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
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -38,7 +38,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
% \maketitle
%
% \begin{documentation}
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -38,7 +38,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -47,7 +47,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
@@ -91,18 +91,21 @@
% $\operatorname{asinh} x$, $\operatorname{acosh} x$,
% $\operatorname{atanh} x$, $\operatorname{acoth} x$,
% $\operatorname{asech} x$, $\operatorname{acsch} x$.
-% \item Extrema: $\max(x,y,\ldots)$, $\min(x,y,\ldots)$,
+% \item Extrema: $\max(x_{1},x_{2},\ldots)$, $\min(x_{1},x_{2},\ldots)$,
% $\operatorname{abs}(x)$.
-% \item Rounding functions ($n=0$ by default, $t=\nan$ by default):
-% $\operatorname{trunc}(x,n)$ rounds towards zero,
-% $\operatorname{floor}(x,n)$ rounds towards~$-\infty$,
-% $\operatorname{ceil}(x,n)$ rounds towards~$+\infty$,
-% $\operatorname{round}(x,n,t)$ rounds to the closest value, with
+% \item Rouning functions, controlled by two optional
+% values, $n$ (number of places, $0$ by default) and
+% $t$ (behavior on a tie, $\nan$ by default):
+% \begin{itemize}
+% \item $\operatorname{trunc}(x,n)$ rounds towards zero,
+% \item $\operatorname{floor}(x,n)$ rounds towards~$-\infty$,
+% \item $\operatorname{ceil}(x,n)$ rounds towards~$+\infty$,
+% \item $\operatorname{round}(x,n,t)$ rounds to the closest value, with
% ties rounded to an even value by default, towards zero if $t=0$,
-% towards $+\infty$ if $t>0$ and towards $-\infty$ if $t<0$. And
-% \emph{(not yet)} modulo, and \enquote{quantize}.
-% \item Random numbers: $\mathop{rand}()$, $\mathop{randint}(m,n)$ in
-% all engines except \XeTeX{}.
+% towards $+\infty$ if $t>0$ and towards $-\infty$ if $t<0$.
+% \end{itemize}
+% And \emph{(not yet)} modulo, and \enquote{quantize}.
+% \item Random numbers: $\mathop{rand}()$, $\mathop{randint}(m,n)$.
% \item Constants: \texttt{pi}, \texttt{deg} (one degree in radians).
% \item Dimensions, automatically expressed in points, \emph{e.g.},
% \texttt{pc} is~$12$.
@@ -1263,13 +1266,13 @@
% \cs{fp_eval:n} \{ |rand()| \}
% \end{syntax}
% Produces a pseudo-random floating-point number (multiple of
-% $10^{-16}$) between $0$~included and $1$~excluded. This is not yet
-% available in \XeTeX{}. The random seed can be queried using
+% $10^{-16}$) between $0$~included and $1$~excluded. This is not available
+% in older versions of \XeTeX{}. The random seed can be queried using
% \cs{sys_rand_seed:} and set using \cs{sys_gset_rand_seed:n}.
% \begin{texnote}
% This is based on pseudo-random numbers provided by the engine's
% primitive \tn{pdfuniformdeviate} in \pdfTeX{}, \pTeX{}, \upTeX{}
-% and \tn{uniformdeviate} in \LuaTeX{}. The underlying code is
+% and \tn{uniformdeviate} in \LuaTeX{} and \XeTeX{}. The underlying code is
% based on Metapost, which follows an additive scheme recommended in
% Section 3.6 of \enquote{The Art of Computer Programming,
% Volume~2}.
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3int.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3int.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3int.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
@@ -791,8 +791,8 @@
% \cs{int_rand:nn} \Arg{intexpr_1} \Arg{intexpr_2}
% \end{syntax}
% Evaluates the two \meta{integer expressions} and produces a
-% pseudo-random number between the two (with bounds included). This
-% is not yet available in \XeTeX{}.
+% pseudo-random number between the two (with bounds included).
+% This is not available in older versions of \XeTeX{}.
% \end{function}
%
% \begin{function}[EXP, added = 2018-05-05]{\int_rand:n}
@@ -801,7 +801,7 @@
% \end{syntax}
% Evaluates the \meta{integer expression} then produces a
% pseudo-random number between $1$ and the \meta{intexpr} (included).
-% This is not yet available in \XeTeX{}.
+% This is not available in older versions of \XeTeX{}.
% \end{function}
%
% \section{Viewing integers}
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
@@ -213,7 +213,7 @@
% |Package| is the standard outcome: see \cs{msg_module_type:n}.
% \end{function}
%
-% \begin{function}[EXP, added = 2019-10-10]{\msg_module_name:n}
+% \begin{function}[EXP, added = 2018-10-10]{\msg_module_name:n}
% \begin{syntax}
% \cs{msg_module_name:n} \Arg{module}
% \end{syntax}
@@ -222,7 +222,7 @@
% unchanged).
% \end{function}
%
-% \begin{function}[EXP, added = 2019-10-10]{\msg_module_type:n}
+% \begin{function}[EXP, added = 2018-10-10]{\msg_module_type:n}
% \begin{syntax}
% \cs{msg_module_type:n} \Arg{module}
% \end{syntax}
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3names.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3names.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3names.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
@@ -294,8 +294,8 @@
% \cs{seq_rand_item:N} \meta{seq~var}
% \end{syntax}
% Selects a pseudo-random item of the \meta{sequence}. If the
-% \meta{sequence} is empty the result is empty. This is not yet
-% available in \XeTeX{}.
+% \meta{sequence} is empty the result is empty.
+% This is not available in older versions of \XeTeX{}.
% \begin{texnote}
% The result is returned within the \tn{unexpanded}
% primitive (\cs{exp_not:n}), which means that the \meta{item}
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3str.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3str.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3str.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
@@ -731,9 +731,7 @@
% \emph{only} the Latin alphabet characters A--Z are case-folded
% (\emph{i.e.}~the \textsc{ascii} range which coincides with
% \textsc{utf-8}). Full \textsc{utf-8} support is available with both
-% \XeTeX{} and \LuaTeX{}, subject only to the fact that \XeTeX{} in
-% particular has issues with characters of code above hexadecimal
-% $0\mathrm{xFFFF}$ when interacting with \cs{tl_to_str:n}.
+% \XeTeX{} and \LuaTeX{}.
% \end{texnote}
% \end{function}
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
@@ -1016,8 +1016,8 @@
% \cs{tl_rand_item:n} \Arg{token list}
% \end{syntax}
% Selects a pseudo-random item of the \meta{token list}. If the
-% \meta{token list} is blank, the result is empty. This is not yet
-% available in \XeTeX{}.
+% \meta{token list} is blank, the result is empty.
+% This is not available in older versions of \XeTeX{}.
% \begin{texnote}
% The result is returned within the \tn{unexpanded}
% primitive (\cs{exp_not:n}), which means that the \meta{item}
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3token.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3token.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3token.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
@@ -139,10 +139,11 @@
% \item $8$ (math subscript)
% \item $11$ (letter)
% \item $12$ (other)
-% \item $13$ (active) (not \XeTeX{})
+% \item $13$ (active)
% \end{itemize}
% and other values raise an error. The \meta{charcode} may be any one valid
% for the engine in use.
+% Active characters cannot be generated in older versions of \XeTeX{}.
% \end{function}
%
% \begin{variable}[added = 2011-09-05]{\c_catcode_other_space_tl}
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx 2019-01-13 23:32:04 UTC (rev 49692)
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2019-01-01}
+% \date{Released 2019-01-12}
%
% \maketitle
%
@@ -73,7 +73,9 @@
% As only the data needs to remain at the end of this process, everything
% is set up inside a group. The only thing that is outside is creating a
% stream: they are global anyway and it is best to force a stream for
-% all engines.
+% all engines. For performance reasons, some of the code here is very
+% low-level: the material is read during loading \pkg{expl3} in package
+% mode.
% \begin{macrocode}
\ior_new:N \g_@@_data_ior
\bool_lazy_or:nnTF { \sys_if_engine_luatex_p: } { \sys_if_engine_xetex_p: }
@@ -84,6 +86,29 @@
% \begin{macrocode}
\cs_set_eq:NN \@@_generate:w \tex_Uchar:D
% \end{macrocode}
+% A fast local implementation for generating characters.
+% \begin{macrocode}
+ \cs_set:Npx \@@_generate:n #1
+ {
+ \sys_if_engine_luatex:TF
+ {
+ \exp_not:N \lua_now:e
+ {
+ l3kernel.charcat
+ (
+ \exp_not:N \tex_number:D #1 ,
+ \exp_not:N \tex_the:D \tex_catcode:D #1
+ )
+ }
+ }
+ {
+ \exp_not:N \tex_Ucharcat:D
+ \exp_not:N \tex_number:D #1 ~
+ \c_space_tl
+ \exp_not:N \tex_the:D \tex_catcode:D #1 ~
+ }
+ }
+% \end{macrocode}
% Parse the main Unicode data file for title case exceptions (the one-to-one
% lower and upper case mappings it contains are all be covered by the \TeX{}
% data). There are no comments in the main data file so this can be done using
@@ -96,23 +121,22 @@
\cs_set_protected:Npn \@@_data_auxii:w
#1 ; #2 ; #3 ; #4 ; #5 ; #6 ; #7 \q_stop
{
- \tl_if_blank:nF {#7}
- {
- \str_if_eq:nnF {#5} {#7}
- {
- \tl_const:cx
- { c_@@_mixed_case_ \@@_generate:w "#1 _tl }
- {
- \char_generate:nn { "#7 }
- { \char_value_catcode:n { "#7 } }
- }
- }
- }
+ \cs_set_nopar:Npn \l_@@_tmpa_tl {#7}
+ \reverse_if:N \if_meaning:w \l_@@_tmpa_tl \c_empty_tl
+ \cs_set_nopar:Npn \l_@@_tmpb_tl {#5}
+ \reverse_if:N \if_meaning:w \l_@@_tmpa_tl \l_@@_tmpb_tl
+ \tl_const:cx
+ { c_@@_mixed_case_ \@@_generate:w "#1 _tl }
+ { \@@_generate:n { "#7 } }
+ \fi:
+ \fi:
}
\ior_map_inline:Nn \g_@@_data_ior
{
- \tl_if_blank:nF {#1}
- { \@@_data_auxi:w #1 \q_stop }
+ \cs_set_nopar:Npn \l_@@_tmpa_tl {#1}
+ \reverse_if:N \if_meaning:w \l_@@_tmpa_tl \c_space_tl
+ \@@_data_auxi:w #1 \q_stop
+ \fi:
}
\ior_close:N \g_@@_data_ior
% \end{macrocode}
@@ -126,46 +150,37 @@
\ior_open:Nn \g_@@_data_ior { CaseFolding.txt }
\cs_set_protected:Npn \@@_data_auxi:w #1 ;~ #2 ;~ #3 ; #4 \q_stop
{
- \str_if_eq:nnTF {#2} { C }
- {
- \int_compare:nNnF
- { \char_value_lccode:n {"#1} } = {"#3}
- {
- \tl_const:cx
- { c_@@_fold_case_ \@@_generate:w "#1 _tl }
- {
- \char_generate:nn { "#3 }
- { \char_value_catcode:n { "#3 } }
- }
- }
- }
- {
- \str_if_eq:nnT {#2} { F }
- { \@@_data_auxii:w #1 ~ #3 ~ \q_stop }
- }
+ \if:w \tl_head:n { #2 ? } C
+ \reverse_if:N \if_int_compare:w
+ \char_value_lccode:n {"#1} = "#3 ~
+ \tl_const:cx
+ { c_@@_fold_case_ \@@_generate:w "#1 _tl }
+ { \@@_generate:n { "#3 } }
+ \fi:
+ \else:
+ \if:w \tl_head:n { #2 ? } F
+ \@@_data_auxii:w #1 ~ #3 ~ \q_stop
+ \fi:
+ \fi:
}
\cs_set_protected:Npn \@@_data_auxii:w #1 ~ #2 ~ #3 ~ #4 \q_stop
{
\tl_const:cx { c_@@_fold_case_ \@@_generate:w "#1 _tl }
{
- \char_generate:nn { "#2 }
- { \char_value_catcode:n { "#2 } }
- \char_generate:nn { "#3 }
- { \char_value_catcode:n { "#3 } }
+ \@@_generate:n { "#2 }
+ \@@_generate:n { "#3 }
\tl_if_blank:nF {#4}
- {
- \char_generate:nn { "#4 }
- { \char_value_catcode:n { "#4 } }
- }
+ { \@@_generate:n { "#4 } }
}
}
\ior_str_map_inline:Nn \g_@@_data_ior
{
- \tl_if_blank:nF {#1}
- {
- \str_if_eq:eeF { \tl_head:n {#1} } { \c_hash_str }
- { \@@_data_auxi:w #1 \q_stop }
- }
+ \cs_set_nopar:Npn \l_@@_tmpa_tl {#1}
+ \reverse_if:N \if_meaning:w \l_@@_tmpa_tl \c_empty_tl
+ \reverse_if:N \if:w \tl_head:n { #1 ? } \c_hash_str
+ \@@_data_auxi:w #1 \q_stop
+ \fi:
+ \fi:
}
\ior_close:N \g_@@_data_ior
% \end{macrocode}
@@ -189,31 +204,30 @@
{
\tl_const:cx { c_@@_ #2 _case_ \@@_generate:w "#1 _tl }
{
- \char_generate:nn { "#3 }
- { \char_value_catcode:n { "#3 } }
- \char_generate:nn { "#4 }
- { \char_value_catcode:n { "#4 } }
+ \@@_generate:n { "#3 }
+ \@@_generate:n { "#4 }
\tl_if_blank:nF {#5}
- {
- \char_generate:nn { "#5 }
- { \char_value_catcode:n { "#5 } }
- }
+ { \@@_generate:n { "#5 } }
}
}
}
\ior_str_map_inline:Nn \g_@@_data_ior
{
- \tl_if_blank:nF {#1}
- {
- \str_if_eq:eeTF { \tl_head:n {#1} } { \c_hash_str }
+ \cs_set_nopar:Npn \l_@@_tmpa_tl {#1}
+ \reverse_if:N \if_meaning:w \l_@@_tmpa_tl \c_empty_tl
+ \if:w \tl_head:n { #1 ? } \c_hash_str
+ \cs_set_nopar:Npx \l_@@_tmpb_tl
{
- \str_if_eq:eeT
- {#1}
- { \c_hash_str \c_space_tl Conditional~Mappings }
- { \ior_map_break: }
+ \c_hash_str \c_space_tl
+ \tl_to_str:n { Conditional~Mappings }
}
- { \@@_data_auxi:w #1 \q_stop }
- }
+ \if_meaning:w \l_@@_tmpa_tl \l_@@_tmpb_tl
+ \exp_after:wN \exp_after:wN \exp_after:wN \ior_map_break:
+ \fi:
+ \else:
+ \@@_data_auxi:w #1 \q_stop
+ \fi:
+ \fi:
}
\ior_close:N \g_@@_data_ior
\group_end:
Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex 2019-01-13 23:32:04 UTC (rev 49692)
@@ -63,7 +63,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: expl3.dtx Copyright (C) 1990-2019 The LaTeX3 Project
-\def\ExplFileDate{2019-01-01}%
+\def\ExplFileDate{2019-01-12}%
\begingroup
\def\next{\endgroup}%
\expandafter\ifx\csname PackageError\endcsname\relax
@@ -10514,11 +10514,11 @@
\cs_new_protected:Npn \__ior_map_inline_loop:NNN #1#2#3
{
#2 #3 \l__ior_internal_tl
- \ior_if_eof:NF #3
- {
- \exp_args:No #1 \l__ior_internal_tl
- \__ior_map_inline_loop:NNN #1#2#3
- }
+ \if_eof:w #3
+ \exp_after:wN \use_none:nnnnnnn
+ \fi:
+ \exp_args:No #1 \l__ior_internal_tl
+ \__ior_map_inline_loop:NNN #1#2#3
}
\int_const:Nn \c_log_iow { -1 }
\int_const:Nn \c_term_iow
@@ -13017,7 +13017,7 @@
}
}
%% File: l3fp.dtx Copyright (C) 2011-2019 The LaTeX3 Project
-%% File: l3fp-aux.dtx Copyright(C) 2011-2019 The LaTeX3 Project
+%% File: l3fp-aux.dtx Copyright (C) 2011-2019 The LaTeX3 Project
\cs_new_eq:NN \__fp_int_eval:w \tex_numexpr:D
\cs_new_eq:NN \__fp_int_eval_end: \scan_stop:
\cs_new_eq:NN \__fp_int_to_roman:w \tex_romannumeral:D
@@ -13596,7 +13596,7 @@
{ Invalid~operation~ (#1) #3 (#2) }
\__kernel_msg_new:nnn { kernel } { fp-unknown-type }
{ Unknown~type~for~'#1' }
-%% File: l3fp-round.dtx Copyright(C) 2011-2019 The LaTeX3 Project
+%% File: l3fp-round.dtx Copyright (C) 2011-2019 The LaTeX3 Project
\cs_new:Npn \__fp_parse_word_trunc:N
{ \__fp_parse_function:NNN \__fp_round_o:Nw \__fp_round_to_zero:NNN }
\cs_new:Npn \__fp_parse_word_floor:N
@@ -18482,7 +18482,7 @@
{ \__fp_asin_auxi_o:NnNww #1 {#3} #4 }
}
}
-%% File: l3fp-convert.dtx Copyright(C) 2011-2019 The LaTeX3 Project
+%% File: l3fp-convert.dtx Copyright (C) 2011-2019 The LaTeX3 Project
\cs_new:Npn \__fp_tuple_convert:Nw #1 \s__fp_tuple \__fp_tuple_chk:w #2 ;
{
\int_case:nnF { \__fp_array_count:n {#2} }
@@ -24014,7 +24014,7 @@
}
}
}
-%% File: l3color-base.dtx Copyright(C) 2011,2012,2014,2016-2019 The LaTeX3 Project
+%% File: l3color-base.dtx Copyright (C) 2011,2012,2014,2016-2019 The LaTeX3 Project
\cs_new_eq:NN \color_group_begin: \group_begin:
\cs_new_eq:NN \color_group_end: \group_end:
\cs_new_protected:Npn \color_ensure_current:
@@ -24037,7 +24037,7 @@
{ \driver_color_spot:nn {#1} {#2} }
\tl_new:N \l__color_current_tl
\tl_set:Nn \l__color_current_tl { gray~0 }
-%% File: l3coffins.dtx Copyright(C) 2010-2019 The LaTeX3 Project
+%% File: l3coffins.dtx Copyright (C) 2010-2019 The LaTeX3 Project
\box_new:N \l__coffin_internal_box
\dim_new:N \l__coffin_internal_dim
\tl_new:N \l__coffin_internal_tl
@@ -24919,6 +24919,26 @@
{
\group_begin:
\cs_set_eq:NN \__char_generate:w \tex_Uchar:D
+ \cs_set:Npx \__char_generate:n #1
+ {
+ \sys_if_engine_luatex:TF
+ {
+ \exp_not:N \lua_now:e
+ {
+ l3kernel.charcat
+ (
+ \exp_not:N \tex_number:D #1 ,
+ \exp_not:N \tex_the:D \tex_catcode:D #1
+ )
+ }
+ }
+ {
+ \exp_not:N \tex_Ucharcat:D
+ \exp_not:N \tex_number:D #1 ~
+ \c_space_tl
+ \exp_not:N \tex_the:D \tex_catcode:D #1 ~
+ }
+ }
\ior_open:Nn \g__char_data_ior { UnicodeData.txt }
\cs_set_protected:Npn \__char_data_auxi:w
#1 ; #2 ; #3 ; #4 ; #5 ; #6 ; #7 ; #8 ; #9 ;
@@ -24926,68 +24946,58 @@
\cs_set_protected:Npn \__char_data_auxii:w
#1 ; #2 ; #3 ; #4 ; #5 ; #6 ; #7 \q_stop
{
- \tl_if_blank:nF {#7}
- {
- \str_if_eq:nnF {#5} {#7}
- {
- \tl_const:cx
- { c__char_mixed_case_ \__char_generate:w "#1 _tl }
- {
- \char_generate:nn { "#7 }
- { \char_value_catcode:n { "#7 } }
- }
- }
- }
+ \cs_set_nopar:Npn \l__char_tmpa_tl {#7}
+ \reverse_if:N \if_meaning:w \l__char_tmpa_tl \c_empty_tl
+ \cs_set_nopar:Npn \l__char_tmpb_tl {#5}
+ \reverse_if:N \if_meaning:w \l__char_tmpa_tl \l__char_tmpb_tl
+ \tl_const:cx
+ { c__char_mixed_case_ \__char_generate:w "#1 _tl }
+ { \__char_generate:n { "#7 } }
+ \fi:
+ \fi:
}
\ior_map_inline:Nn \g__char_data_ior
{
- \tl_if_blank:nF {#1}
- { \__char_data_auxi:w #1 \q_stop }
+ \cs_set_nopar:Npn \l__char_tmpa_tl {#1}
+ \reverse_if:N \if_meaning:w \l__char_tmpa_tl \c_space_tl
+ \__char_data_auxi:w #1 \q_stop
+ \fi:
}
\ior_close:N \g__char_data_ior
\ior_open:Nn \g__char_data_ior { CaseFolding.txt }
\cs_set_protected:Npn \__char_data_auxi:w #1 ;~ #2 ;~ #3 ; #4 \q_stop
{
- \str_if_eq:nnTF {#2} { C }
- {
- \int_compare:nNnF
- { \char_value_lccode:n {"#1} } = {"#3}
- {
- \tl_const:cx
- { c__char_fold_case_ \__char_generate:w "#1 _tl }
- {
- \char_generate:nn { "#3 }
- { \char_value_catcode:n { "#3 } }
- }
- }
- }
- {
- \str_if_eq:nnT {#2} { F }
- { \__char_data_auxii:w #1 ~ #3 ~ \q_stop }
- }
+ \if:w \tl_head:n { #2 ? } C
+ \reverse_if:N \if_int_compare:w
+ \char_value_lccode:n {"#1} = "#3 ~
+ \tl_const:cx
+ { c__char_fold_case_ \__char_generate:w "#1 _tl }
+ { \__char_generate:n { "#3 } }
+ \fi:
+ \else:
+ \if:w \tl_head:n { #2 ? } F
+ \__char_data_auxii:w #1 ~ #3 ~ \q_stop
+ \fi:
+ \fi:
}
\cs_set_protected:Npn \__char_data_auxii:w #1 ~ #2 ~ #3 ~ #4 \q_stop
{
\tl_const:cx { c__char_fold_case_ \__char_generate:w "#1 _tl }
{
- \char_generate:nn { "#2 }
- { \char_value_catcode:n { "#2 } }
- \char_generate:nn { "#3 }
- { \char_value_catcode:n { "#3 } }
+ \__char_generate:n { "#2 }
+ \__char_generate:n { "#3 }
\tl_if_blank:nF {#4}
- {
- \char_generate:nn { "#4 }
- { \char_value_catcode:n { "#4 } }
- }
+ { \__char_generate:n { "#4 } }
}
}
\ior_str_map_inline:Nn \g__char_data_ior
{
- \tl_if_blank:nF {#1}
- {
- \str_if_eq:eeF { \tl_head:n {#1} } { \c_hash_str }
- { \__char_data_auxi:w #1 \q_stop }
- }
+ \cs_set_nopar:Npn \l__char_tmpa_tl {#1}
+ \reverse_if:N \if_meaning:w \l__char_tmpa_tl \c_empty_tl
+ \reverse_if:N \if:w \tl_head:n { #1 ? } \c_hash_str
+ \__char_data_auxi:w #1 \q_stop
+ \fi:
+ \fi:
}
\ior_close:N \g__char_data_ior
\ior_open:Nn \g__char_data_ior { SpecialCasing.txt }
@@ -25006,31 +25016,30 @@
{
\tl_const:cx { c__char_ #2 _case_ \__char_generate:w "#1 _tl }
{
- \char_generate:nn { "#3 }
- { \char_value_catcode:n { "#3 } }
- \char_generate:nn { "#4 }
- { \char_value_catcode:n { "#4 } }
+ \__char_generate:n { "#3 }
+ \__char_generate:n { "#4 }
\tl_if_blank:nF {#5}
- {
- \char_generate:nn { "#5 }
- { \char_value_catcode:n { "#5 } }
- }
+ { \__char_generate:n { "#5 } }
}
}
}
\ior_str_map_inline:Nn \g__char_data_ior
{
- \tl_if_blank:nF {#1}
- {
- \str_if_eq:eeTF { \tl_head:n {#1} } { \c_hash_str }
+ \cs_set_nopar:Npn \l__char_tmpa_tl {#1}
+ \reverse_if:N \if_meaning:w \l__char_tmpa_tl \c_empty_tl
+ \if:w \tl_head:n { #1 ? } \c_hash_str
+ \cs_set_nopar:Npx \l__char_tmpb_tl
{
- \str_if_eq:eeT
- {#1}
- { \c_hash_str \c_space_tl Conditional~Mappings }
- { \ior_map_break: }
+ \c_hash_str \c_space_tl
+ \tl_to_str:n { Conditional~Mappings }
}
- { \__char_data_auxi:w #1 \q_stop }
- }
+ \if_meaning:w \l__char_tmpa_tl \l__char_tmpb_tl
+ \exp_after:wN \exp_after:wN \exp_after:wN \ior_map_break:
+ \fi:
+ \else:
+ \__char_data_auxi:w #1 \q_stop
+ \fi:
+ \fi:
}
\ior_close:N \g__char_data_ior
\group_end:
@@ -26810,34 +26819,39 @@
\exp_after:wN \__tl_tmp:w \l__tl_internal_a_tl
\__tl_loop:nn
}
- \cs_set_protected:Npn \__tl_tmp:w #1#2#3#4#5#6#7#8
+ \cs_set_protected:Npn \__tl_tmp:nnnn #1#2#3#4#5
{
\tl_const:cx
{
- c__tl_lower_case_
- \char_generate:nn {#1} { 12 }
+ c__tl_ #1 _case_
\char_generate:nn {#2} { 12 }
+ \char_generate:nn {#3} { 12 }
_tl
}
{
\exp_after:wN \exp_after:wN \exp_after:wN
+ \exp_not:N \char_generate:nn {#4} { 13 }
+ \exp_after:wN \exp_after:wN \exp_after:wN
\exp_not:N \char_generate:nn {#5} { 13 }
- \exp_after:wN \exp_after:wN \exp_after:wN
- \exp_not:N \char_generate:nn {#6} { 13 }
}
+ }
+ \cs_set_protected:Npn \__tl_tmp:w #1#2#3#4#5#6#7#8
+ {
\tl_const:cx
{
- c__tl_upper_case_
- \char_generate:nn {#5} { 12 }
- \char_generate:nn {#6} { 12 }
+ c__tl_lower_case_
+ \char_generate:nn {#1} { 12 }
+ \char_generate:nn {#2} { 12 }
_tl
}
{
\exp_after:wN \exp_after:wN \exp_after:wN
- \exp_not:N \char_generate:nn {#1} { 13 }
+ \exp_not:N \char_generate:nn {#5} { 13 }
\exp_after:wN \exp_after:wN \exp_after:wN
- \exp_not:N \char_generate:nn {#2} { 13 }
+ \exp_not:N \char_generate:nn {#6} { 13 }
}
+ \__tl_tmp:nnnn { upper } {#5} {#6} {#1} {#2}
+ \__tl_tmp:nnnn { mixed } {#5} {#6} {#1} {#2}
}
\__tl_loop:nn
{ 00C0 } { 00E0 }
Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex 2019-01-13 23:32:04 UTC (rev 49692)
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: expl3.dtx Copyright (C) 1990-2019 The LaTeX3 Project
-\def\ExplFileDate{2019-01-01}%
+\def\ExplFileDate{2019-01-12}%
\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 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/expl3.sty 2019-01-13 23:32:04 UTC (rev 49692)
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: expl3.dtx Copyright (C) 1990-2019 The LaTeX3 Project
-\def\ExplFileDate{2019-01-01}%
+\def\ExplFileDate{2019-01-12}%
\let\ExplLoaderFileDate\ExplFileDate
\ProvidesPackage{expl3}
[%
Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/l3doc.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/l3doc.cls 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/l3doc.cls 2019-01-13 23:32:04 UTC (rev 49692)
@@ -373,6 +373,8 @@
{ The~deprecated~function(s)~'#1'~should~have~been~removed~on~#2. }
\msg_new:nnn { l3doc } { date-format }
{ The~date~'#1'~should~be~given~in~YYYY-MM-DD~format. }
+\msg_new:nnn { l3doc } { future-date }
+ { The~added/updated~date~'#2'~of~'#1'~is~in~the~future. }
\msg_new:nnn { l3doc } { syntax-nested-function }
{
The~'syntax'~environment~should~be~used~in~the~
@@ -968,8 +970,8 @@
\bool_set_true:N \l__codedoc_macro_noTF_bool
\bool_set_true:N \l__codedoc_macro_TF_bool
} ,
- added .code:n = { \__codedoc_date_set:Nn \l__codedoc_date_added_tl {#1} },
- updated .code:n = { \__codedoc_date_set:Nn \l__codedoc_date_updated_tl {#1} } ,
+ added .code:n = { \__codedoc_date_set_past:Nn \l__codedoc_date_added_tl {#1} },
+ updated .code:n = { \__codedoc_date_set_past:Nn \l__codedoc_date_updated_tl {#1} } ,
deprecated .code:n = { \__codedoc_deprecated_on:n {#1} } ,
tested .code:n = { } ,
label .code:n =
@@ -991,6 +993,17 @@
\tl_set:Nn #1 { 1970-01-01 }
}
}
+\cs_new_protected:Npn \__codedoc_date_set_past:Nn #1#2
+ {
+ \__codedoc_date_set:Nn #1 {#2}
+ \exp_args:No \__codedoc_date_compare:nNnT
+ {#1} > { \tex_year:D - \tex_month:D - \tex_day:D }
+ {
+ \msg_error:nnxx { l3doc } { future-date }
+ { \tl_to_str:N \l__codedoc_macro_argument_tl }
+ {#1}
+ }
+ }
\cs_new_protected:Npn \__codedoc_deprecated_on:n #1
{
\__codedoc_date_set:Nn \l__codedoc_tmpa_tl {#1}
Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def 2019-01-13 23:32:04 UTC (rev 49692)
@@ -18,9 +18,9 @@
%% This file is part of the "l3kernel bundle" (The Work in LPPL)
%% and all files in that bundle must be distributed together.
%%
-%% File: l3drivers.dtx Copyright(C) 2011-2019 The LaTeX3 Project
+%% File: l3drivers.dtx Copyright (C) 2011-2019 The LaTeX3 Project
\ProvidesExplFile
- {l3dvidpfmx.def}{2019-01-01}{}
+ {l3dvidpfmx.def}{2019-01-12}{}
{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 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvips.def 2019-01-13 23:32:04 UTC (rev 49692)
@@ -18,9 +18,9 @@
%% This file is part of the "l3kernel bundle" (The Work in LPPL)
%% and all files in that bundle must be distributed together.
%%
-%% File: l3drivers.dtx Copyright(C) 2011-2019 The LaTeX3 Project
+%% File: l3drivers.dtx Copyright (C) 2011-2019 The LaTeX3 Project
\ProvidesExplFile
- {l3dvips.def}{2019-01-01}{}
+ {l3dvips.def}{2019-01-12}{}
{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 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvisvgm.def 2019-01-13 23:32:04 UTC (rev 49692)
@@ -18,9 +18,9 @@
%% This file is part of the "l3kernel bundle" (The Work in LPPL)
%% and all files in that bundle must be distributed together.
%%
-%% File: l3drivers.dtx Copyright(C) 2011-2019 The LaTeX3 Project
+%% File: l3drivers.dtx Copyright (C) 2011-2019 The LaTeX3 Project
\ProvidesExplFile
- {l3dvisvgm.def}{2019-01-01}{}
+ {l3dvisvgm.def}{2019-01-12}{}
{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 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/l3pdfmode.def 2019-01-13 23:32:04 UTC (rev 49692)
@@ -18,9 +18,9 @@
%% This file is part of the "l3kernel bundle" (The Work in LPPL)
%% and all files in that bundle must be distributed together.
%%
-%% File: l3drivers.dtx Copyright(C) 2011-2019 The LaTeX3 Project
+%% File: l3drivers.dtx Copyright (C) 2011-2019 The LaTeX3 Project
\ProvidesExplFile
- {l3pdfmode.def}{2019-01-01}{}
+ {l3pdfmode.def}{2019-01-12}{}
{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 2019-01-13 23:31:16 UTC (rev 49691)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/l3xdvipdfmx.def 2019-01-13 23:32:04 UTC (rev 49692)
@@ -18,9 +18,9 @@
%% This file is part of the "l3kernel bundle" (The Work in LPPL)
%% and all files in that bundle must be distributed together.
%%
-%% File: l3drivers.dtx Copyright(C) 2011-2019 The LaTeX3 Project
+%% File: l3drivers.dtx Copyright (C) 2011-2019 The LaTeX3 Project
\ProvidesExplFile
- {l3xdvidpfmx.def}{2019-01-01}{}
+ {l3xdvidpfmx.def}{2019-01-12}{}
{L3 Experimental driver: xdvipdfmx}
\cs_new_eq:NN \__driver_literal:e \tex_special:D
\cs_new_protected:Npn \__driver_literal:n #1
More information about the tex-live-commits
mailing list