diff options
author | Karl Berry <karl@freefriends.org> | 2017-07-21 22:02:53 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2017-07-21 22:02:53 +0000 |
commit | 51d74983b14a9c2832b6bfbdcac4e99243aabbb6 (patch) | |
tree | 05fdccae9fc0c2c4cbd2371ae2b9cc1b73ea615c /Master/texmf-dist/source/latex/l3packages | |
parent | 71fb1b25309a75d246b0896063f0940332c85919 (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')
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} % |