summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/l3packages
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2017-07-21 22:02:53 +0000
committerKarl Berry <karl@freefriends.org>2017-07-21 22:02:53 +0000
commit51d74983b14a9c2832b6bfbdcac4e99243aabbb6 (patch)
tree05fdccae9fc0c2c4cbd2371ae2b9cc1b73ea615c /Master/texmf-dist/source/latex/l3packages
parent71fb1b25309a75d246b0896063f0940332c85919 (diff)
l3 (21jul17)
git-svn-id: svn://tug.org/texlive/trunk@44864 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/l3packages')
-rw-r--r--Master/texmf-dist/source/latex/l3packages/l3keys2e/l3keys2e.dtx8
-rw-r--r--Master/texmf-dist/source/latex/l3packages/xfp/xfp.dtx8
-rw-r--r--Master/texmf-dist/source/latex/l3packages/xfrac/xfrac.dtx8
-rw-r--r--Master/texmf-dist/source/latex/l3packages/xparse/xparse.dtx127
-rw-r--r--Master/texmf-dist/source/latex/l3packages/xtemplate/xtemplate.dtx8
5 files changed, 86 insertions, 73 deletions
diff --git a/Master/texmf-dist/source/latex/l3packages/l3keys2e/l3keys2e.dtx b/Master/texmf-dist/source/latex/l3packages/l3keys2e/l3keys2e.dtx
index 7d93a5cad0e..abd41d41c05 100644
--- a/Master/texmf-dist/source/latex/l3packages/l3keys2e/l3keys2e.dtx
+++ b/Master/texmf-dist/source/latex/l3packages/l3keys2e/l3keys2e.dtx
@@ -23,8 +23,8 @@
%<*driver|package>
% The version of expl3 required is tested as early as possible, as
% some really old versions do not define \ProvidesExplPackage.
-\RequirePackage{expl3}[2017/07/15]
-%<package>\@ifpackagelater{expl3}{2017/07/15}
+\RequirePackage{expl3}[2017/07/19]
+%<package>\@ifpackagelater{expl3}{2017/07/19}
%<package> {}
%<package> {%
%<package> \PackageError{l3keys2e}{Support package l3kernel too old}
@@ -60,7 +60,7 @@
% }^^A
% }
%
-% \date{Released 2017/07/15}
+% \date{Released 2017/07/19}
%
% \maketitle
%
@@ -131,7 +131,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{l3keys2e}{2017/07/15}{}
+\ProvidesExplPackage{l3keys2e}{2017/07/19}{}
{LaTeX2e option processing using LaTeX3 keys}
% \end{macrocode}
%
diff --git a/Master/texmf-dist/source/latex/l3packages/xfp/xfp.dtx b/Master/texmf-dist/source/latex/l3packages/xfp/xfp.dtx
index f5af0b21774..1b0a6063dac 100644
--- a/Master/texmf-dist/source/latex/l3packages/xfp/xfp.dtx
+++ b/Master/texmf-dist/source/latex/l3packages/xfp/xfp.dtx
@@ -23,8 +23,8 @@
%<*driver|package>
% The version of expl3 required is tested as early as possible, as
% some really old versions do not define \ProvidesExplPackage.
-\RequirePackage{expl3}[2017/07/15]
-%<package>\@ifpackagelater{expl3}{2017/07/15}
+\RequirePackage{expl3}[2017/07/19]
+%<package>\@ifpackagelater{expl3}{2017/07/19}
%<package> {}
%<package> {%
%<package> \PackageError{xfp}{Support package l3kernel too old}
@@ -62,7 +62,7 @@
% }^^A
% }
%
-% \date{Released 2017/07/15}
+% \date{Released 2017/07/19}
%
% \maketitle
%
@@ -143,7 +143,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{xfp}{2017/07/15}{}
+\ProvidesExplPackage{xfp}{2017/07/19}{}
{L3 Floating point unit}
% \end{macrocode}
%
diff --git a/Master/texmf-dist/source/latex/l3packages/xfrac/xfrac.dtx b/Master/texmf-dist/source/latex/l3packages/xfrac/xfrac.dtx
index 289e1932800..668a640a081 100644
--- a/Master/texmf-dist/source/latex/l3packages/xfrac/xfrac.dtx
+++ b/Master/texmf-dist/source/latex/l3packages/xfrac/xfrac.dtx
@@ -24,8 +24,8 @@
%<*driver|package>
% The version of expl3 required is tested as early as possible, as
% some really old versions do not define \ProvidesExplPackage.
-\RequirePackage{expl3}[2017/07/15]
-%<package>\@ifpackagelater{expl3}{2017/07/15}
+\RequirePackage{expl3}[2017/07/19]
+%<package>\@ifpackagelater{expl3}{2017/07/19}
%<package> {}
%<package> {%
%<package> \PackageError{xfrac}{Support package l3kernel too old}
@@ -63,7 +63,7 @@
% }^^A
% }
%
-% \date{Released 2017/07/15}
+% \date{Released 2017/07/19}
%
% \maketitle
%
@@ -533,7 +533,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{xfrac}{2017/07/15}{}
+\ProvidesExplPackage{xfrac}{2017/07/19}{}
{L3 Experimental split-level fractions}
% \end{macrocode}
%
diff --git a/Master/texmf-dist/source/latex/l3packages/xparse/xparse.dtx b/Master/texmf-dist/source/latex/l3packages/xparse/xparse.dtx
index 9f43230d35c..34826137abe 100644
--- a/Master/texmf-dist/source/latex/l3packages/xparse/xparse.dtx
+++ b/Master/texmf-dist/source/latex/l3packages/xparse/xparse.dtx
@@ -27,8 +27,8 @@
%<*driver|package>
% The version of expl3 required is tested as early as possible, as
% some really old versions do not define \ProvidesExplPackage.
-\RequirePackage{expl3}[2017/07/15]
-%<package>\@ifpackagelater{expl3}{2017/07/15}
+\RequirePackage{expl3}[2017/07/19]
+%<package>\@ifpackagelater{expl3}{2017/07/19}
%<package> {}
%<package> {%
%<package> \PackageError{xparse}{Support package l3kernel too old}
@@ -67,7 +67,7 @@
% }^^A
% }
%
-% \date{Released 2017/07/15}
+% \date{Released 2017/07/19}
%
% \maketitle
%
@@ -131,15 +131,15 @@
% internal code surrounded by a brace pair. This is the \pkg{xparse}
% type specifier for a normal \TeX{} argument.
% \item[l] An argument which reads everything up to the first
-% open group token: in standard \LaTeX{} this is a left brace.
+% begin-group token: in standard \LaTeX{} this is a left brace.
% \item[r] Reads a \enquote{required} delimited argument, where the
-% delimiters are given as \meta{token1} and \meta{token2}:
-% \texttt{r}\meta{token1}\meta{token2}. If the opening \meta{token}
+% delimiters are given as \meta{char1} and \meta{char2}:
+% \texttt{r}\meta{char1}\meta{char2}. If the opening \meta{character}
% is missing, the default marker |-NoValue-| will be inserted after
% a suitable error.
% \item[R] As for \texttt{r}, this is a \enquote{required} delimited
% argument but has a user-definable recovery \meta{default}, given
-% as \texttt{R}\meta{token1}\meta{token2}\marg{default}.
+% as \texttt{R}\meta{char1}\meta{char2}\marg{default}.
% \item[u] Reads an argument \enquote{until} \meta{tokens} are encountered,
% where the desired \meta{tokens} are given as an argument to the
% specifier: \texttt{u}\marg{tokens}.
@@ -158,35 +158,35 @@
% \item[o] A standard \LaTeX{} optional argument, surrounded with square
% brackets, which will supply
% the special |-NoValue-| marker if not given (as described later).
-% \item[d] An optional argument which is delimited by \meta{token1}
-% and \meta{token2}, which are given as arguments:
-% \texttt{d}\meta{token1}\meta{token2}. As with \texttt{o}, if no
+% \item[d] An optional argument which is delimited by \meta{char1}
+% and \meta{char2}, given as follows:
+% \texttt{d}\meta{char1}\meta{char2}. As with \texttt{o}, if no
% value is given the special marker |-NoValue-| is returned.
% \item[O] As for \texttt{o}, but returns \meta{default} if no
% value is given. Should be given as \texttt{O}\marg{default}.
% \item[D] As for \texttt{d}, but returns \meta{default} if no
-% value is given: \texttt{D}\meta{token1}\meta{token2}\marg{default}.
+% value is given: \texttt{D}\meta{char1}\meta{char2}\marg{default}.
% Internally, the \texttt{o}, \texttt{d} and \texttt{O} types are
% short-cuts to an appropriated-constructed \texttt{D} type argument.
% \item[s] An optional star, which will result in a value
% \cs{BooleanTrue} if a star is present and \cs{BooleanFalse}
% otherwise (as described later).
-% \item[t] An optional \meta{token}, which will result in a value
-% \cs{BooleanTrue} if \meta{token} is present and \cs{BooleanFalse}
-% otherwise. Given as \texttt{t}\meta{token}.
+% \item[t] An optional \meta{char}, which will result in a value
+% \cs{BooleanTrue} if \meta{char} is present and \cs{BooleanFalse}
+% otherwise. Given as \texttt{t}\meta{char}.
% \item[g] An optional argument given inside a pair of \TeX{} group
% tokens (in standard \LaTeX, |{| \ldots |}|), which returns
% |-NoValue-| if not present.
% \item[G] As for \texttt{g} but returns \meta{default} if no value
% is given: \texttt{G}\marg{default}.
% \item[e] A set of optional \emph{embellishments}, each of which
-% requires a \emph{value}: \texttt{e}\marg{tokens}. If an
+% requires a \emph{value}: \texttt{e}\marg{chars}. If an
% embellishment is not present, |-NoValue-| is returned. Each
% embellishment gives one argument, ordered as for the list of
-% \meta{tokens} in the argument specification. All \meta{tokens}
+% \meta{chars} in the argument specification. All \meta{chars}
% must be distinct. \emph{This is an experimental type}.
% \item[E] As for \texttt{e} but returns one or more \meta{defaults}
-% if values are not given: \texttt{E}\marg{tokens}\marg{defaults}. See
+% if values are not given: \texttt{E}\marg{chars}\marg{defaults}. See
% Section~\ref{sec:embellishment} for more details.
% \end{itemize}
%
@@ -235,14 +235,14 @@
% \foobaz[ {abc}] % => " {abc}"
% \end{verbatim}
%
-% Two more tokens have a special meaning when creating an argument
+% Two more characters have a special meaning when creating an argument
% specifier. First, \texttt{+} is used to make an argument long (to
% accept paragraph tokens). In contrast to \LaTeXe's \cs{newcommand},
% this applies on an argument-by-argument basis. So modifying the
% example to `|s o o +m O{default}|' means that the mandatory argument
% is now \cs{long}, whereas the optional arguments are not.
%
-% Secondly, the token \texttt{>} is used to declare so-called
+% Secondly, the character \texttt{>} is used to declare so-called
% \enquote{argument processors}, which can be used to modify the contents of an
% argument before it is passed to the macro definition. The use of
% argument processors is a somewhat advanced topic, (or at least a less
@@ -354,20 +354,20 @@
% \subsection{Default values for \enquote{embellishments}}
% \label{sec:embellishment}
%
-% The \texttt{E}-type argument allows one default value per test token.
+% The \texttt{E}-type argument allows one default value per test character.
% This is achieved by giving a list of defaults for each entry in the
% list, for example:
% \begin{verbatim}
% E{^_}{{UP}{DOWN}}
% \end{verbatim}
-% If the list of default values is \emph{shorter} than the list of test tokens,
-% the special \cs{NoValue} marker will be returned (as for the \texttt{e}-type
+% If the list of default values is \emph{shorter} than the list of test characters,
+% the special |-NoValue-| marker will be returned (as for the \texttt{e}-type
% argument). Thus for example
% \begin{verbatim}
% E{^_}{{UP}}
% \end{verbatim}
-% has default \texttt{UP} for the |^| test token, but will return the
-% \cs{NoValue} marker as a default for |_|. This allows mixing of explicit
+% has default \texttt{UP} for the |^| test character, but will return the
+% |-NoValue-| marker as a default for |_|. This allows mixing of explicit
% defaults with testing for missing values.
%
% \subsection{Declaring commands and environments}
@@ -514,7 +514,7 @@
%
% \begin{variable}{\BooleanFalse, \BooleanTrue}
% The \texttt{true} and \texttt{false} flags set when searching for
-% an optional token (using \texttt{s} or \texttt{t\meta{token}}) have
+% an optional character (using \texttt{s} or \texttt{t\meta{char}}) have
% names which are accessible outside of code blocks.
% \end{variable}
%
@@ -545,7 +545,7 @@
% processor can therefore be used to regularise input at an early stage,
% allowing the internal functions to be completely independent of input
% form. Processors are applied to user input and to default values for
-% optional arguments, but \emph{not} to the special \cs{NoValue} marker.
+% optional arguments, but \emph{not} to the special |-NoValue-| marker.
%
% Each argument processor is specified by the syntax
% \texttt{>}\marg{processor} in the argument specification. Processors
@@ -593,7 +593,7 @@
% input. The processed input is placed inside
% $\text{\meta{number}} + 1$ sets of braces for further use.
% If there are fewer than \Arg{number} of \Arg{tokens} in the argument
-% then \cs{NoValue} markers are added at the end of the processed
+% then |-NoValue-| markers are added at the end of the processed
% argument.
% \begin{verbatim}
% \NewDocumentCommand \foo
@@ -776,7 +776,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{xparse}{2017/07/15}{}
+\ProvidesExplPackage{xparse}{2017/07/19}{}
{L3 Experimental document command parser}
% \end{macrocode}
%
@@ -1487,7 +1487,7 @@
% The first thing that is done in the loop is to check that the various
% argument types have the correct number of data items associated with
% them. The opportunity is also taken to make sure that where a single
-% token is required, one has actually been supplied.
+% character is required, one has actually been supplied.
%
% The second is that processors and the marker~|+| for long arguments
% must be followed by arguments.
@@ -1667,10 +1667,10 @@
% }
% \begin{macro}[aux]{\@@_normalize_E_unique_check:w}
% Optional argument types. Check that all required data is present
-% (and consists of single tokens if applicable) and check for
+% (and consists of single characters if applicable) and check for
% forbidden types for expandable commands. For \texttt{E}-type
% require that there is at least one embellishment, that each one is a
-% single token, and that there aren't more optional arguments than
+% single character, and that there aren't more optional arguments than
% embellishments; also remember that each embellishment counts as one
% argument for \cs{l_@@_current_arg_int}. Then in each case
% store the data in \cs{l_@@_arg_spec_tl}, and
@@ -1680,9 +1680,9 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_normalize_type_D:w #1#2#3
{
- \@@_single_token_check:n {#1}
- \@@_single_token_check:n {#2}
\quark_if_recursion_tail_stop_do:nn {#3} { \@@_bad_arg_spec:wn }
+ \@@_single_char_check:n {#1}
+ \@@_single_char_check:n {#2}
\@@_add_arg_spec:n { D #1 #2 {#3} }
\tl_put_right:Nn \l_@@_last_delimiters_tl {#1}
\bool_set_false:N \l_@@_grab_expandably_bool
@@ -1692,7 +1692,7 @@
{
\quark_if_recursion_tail_stop_do:nn {#2} { \@@_bad_arg_spec:wn }
\tl_if_blank:nT {#1} { \@@_bad_arg_spec:wn }
- \tl_map_function:nN {#1} \@@_single_token_check:n
+ \tl_map_function:nN {#1} \@@_single_char_check:n
\@@_normalize_E_unique_check:w #1 \q_nil \q_stop
\int_compare:nNnT { \tl_count:n {#2} } > { \tl_count:n {#1} }
{ \@@_bad_arg_spec:wn }
@@ -1720,8 +1720,8 @@
}
\cs_new_protected:Npn \@@_normalize_type_t:w #1
{
- \@@_single_token_check:n {#1}
\quark_if_recursion_tail_stop_do:Nn #1 { \@@_bad_arg_spec:wn }
+ \@@_single_char_check:n {#1}
\tl_put_right:Nn \l_@@_arg_spec_tl { t #1 }
\tl_put_right:Nn \l_@@_last_delimiters_tl {#1}
\bool_set_false:N \l_@@_grab_expandably_bool
@@ -1741,7 +1741,7 @@
% \@@_normalize_type_v:w
% }
% Mandatory arguments. First check the required data is present,
-% consists of single tokens where applicable, and that the argument
+% consists of single characters where applicable, and that the argument
% type is allowed for expandable commands if applicable. For the
% \texttt{m} and \texttt{R} argument types check that they do not
% follow some optional argument with that delimiter as otherwise the
@@ -1767,9 +1767,9 @@
}
\cs_new_protected:Npn \@@_normalize_type_R:w #1#2#3
{
- \@@_single_token_check:n {#1}
- \@@_single_token_check:n {#2}
\quark_if_recursion_tail_stop_do:nn {#3} { \@@_bad_arg_spec:wn }
+ \@@_single_char_check:n {#1}
+ \@@_single_char_check:n {#2}
\@@_delimiter_check:nnn {#1} { R/r } { \tl_to_str:n {#1} }
\@@_add_arg_spec:n { R #1 #2 {#3} }
\int_incr:N \l_@@_mandatory_args_int
@@ -1797,15 +1797,26 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_single_token_check:n}
-% A spin-out function to check that what should be single tokens really
-% are single tokens.
+% \begin{macro}{\@@_single_char_check:n}
+% Checks that what should be single characters really are single
+% characters (possibly surrounded by spaces).
% \begin{macrocode}
-\cs_new_protected:Npn \@@_single_token_check:n #1
+\cs_new_protected:Npn \@@_single_char_check:n #1
{
- \exp_args:Nx \tl_if_single_token:nF { \tl_trim_spaces:n {#1} }
+ \exp_args:Nx \tl_if_single_token:nTF { \tl_trim_spaces:n {#1} }
{
- \__msg_kernel_error:nnxx { xparse } { not-single-token }
+ \group_begin:
+ \tex_escapechar:D = 92 \scan_stop:
+ \exp_args:Nx \tl_if_single_token:nF
+ { \exp_args:No \tl_to_str:n { \use:nn #1 { } } }
+ {
+ \__msg_kernel_warning:nnxx { xparse } { not-single-char }
+ { \iow_char:N \\ \l_@@_function_tl } { \tl_to_str:n {#1} }
+ }
+ \group_end:
+ }
+ {
+ \__msg_kernel_error:nnxx { xparse } { not-single-char }
{ \iow_char:N \\ \l_@@_function_tl } { \tl_to_str:n {#1} }
\@@_bad_def:wn
}
@@ -1887,18 +1898,17 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_add_arg_spec:n #1
{
- \bool_if:NF \l_@@_long_bool
+ \bool_lazy_and:nnT
+ { ! \l_@@_long_bool }
+ { \l_@@_some_long_bool }
{
- \bool_if:NT \l_@@_some_long_bool
+ \bool_if:NT \l_@@_expandable_bool
{
- \bool_if:NT \l_@@_expandable_bool
- {
- \__msg_kernel_error:nnx { xparse } { inconsistent-long }
- { \iow_char:N \\ \l_@@_function_tl }
- \@@_bad_def:wn
- }
- \bool_set_false:N \l_@@_grab_expandably_bool
+ \__msg_kernel_error:nnx { xparse } { inconsistent-long }
+ { \iow_char:N \\ \l_@@_function_tl }
+ \@@_bad_def:wn
}
+ \bool_set_false:N \l_@@_grab_expandably_bool
}
\bool_if:NTF \l_@@_long_bool
{ \bool_set_true:N \l_@@_some_long_bool }
@@ -4140,12 +4150,15 @@
\\ \\
LaTeX~will~ignore~this~entire~definition.
}
-\__msg_kernel_new:nnnn { xparse } { not-single-token }
- { Argument~delimiter~'#2'~for~the~command~'#1'~should~be~a~single~token. }
+\__msg_kernel_new:nnnn { xparse } { not-single-char }
+ {
+ Argument~delimiter~'#2'~for~the~command~'#1'~should~be~
+ a~single~character.
+ }
{
\c__msg_coding_error_text_tl
- The~argument~specification~provided~was~not~valid:~
- in~a~place~where~a~single~token~is~required,~LaTeX~found~'#2'. \\ \\
+ The~argument~specification~provided~was~not~valid:~in~a~place~
+ where~a~single~character~is~required,~LaTeX~found~'#2'. \\ \\
LaTeX~will~ignore~this~entire~definition.
}
\__msg_kernel_new:nnnn { xparse } { processor-in-expandable }
diff --git a/Master/texmf-dist/source/latex/l3packages/xtemplate/xtemplate.dtx b/Master/texmf-dist/source/latex/l3packages/xtemplate/xtemplate.dtx
index 6e02cb5befd..8a472f07df9 100644
--- a/Master/texmf-dist/source/latex/l3packages/xtemplate/xtemplate.dtx
+++ b/Master/texmf-dist/source/latex/l3packages/xtemplate/xtemplate.dtx
@@ -27,8 +27,8 @@
%<*driver|package>
% The version of expl3 required is tested as early as possible, as
% some really old versions do not define \ProvidesExplPackage.
-\RequirePackage{expl3}[2017/07/15]
-%<package>\@ifpackagelater{expl3}{2017/07/15}
+\RequirePackage{expl3}[2017/07/19]
+%<package>\@ifpackagelater{expl3}{2017/07/19}
%<package> {}
%<package> {%
%<package> \PackageError{xtemplate}{Support package l3kernel too old}
@@ -63,7 +63,7 @@
% }^^A
% }
%
-% \date{Released 2017/07/15}
+% \date{Released 2017/07/19}
%
% \maketitle
%
@@ -682,7 +682,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{xtemplate}{2017/07/15}{}
+\ProvidesExplPackage{xtemplate}{2017/07/19}{}
{L3 Experimental prototype document functions}
% \end{macrocode}
%