summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source')
-rw-r--r--Master/texmf-dist/source/latex/l3build/l3build.dtx28
-rw-r--r--Master/texmf-dist/source/latex/l3build/l3build.lua14
-rw-r--r--Master/texmf-dist/source/latex/l3experimental/l3sort/l3sort.dtx6
-rw-r--r--Master/texmf-dist/source/latex/l3experimental/l3str/l3flag.dtx6
-rw-r--r--Master/texmf-dist/source/latex/l3experimental/l3str/l3regex.dtx6
-rw-r--r--Master/texmf-dist/source/latex/l3experimental/l3str/l3str-expl.dtx90
-rw-r--r--Master/texmf-dist/source/latex/l3experimental/xgalley/l3galley.dtx6
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/expl3.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3.ins26
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx11
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3int.dtx101
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3oldmodules.dtx162
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3token.dtx42
-rw-r--r--Master/texmf-dist/source/latex/l3packages/l3keys2e/l3keys2e.dtx6
-rw-r--r--Master/texmf-dist/source/latex/l3packages/xparse/xparse.dtx6
-rw-r--r--Master/texmf-dist/source/latex/l3packages/xtemplate/xtemplate.dtx6
16 files changed, 348 insertions, 172 deletions
diff --git a/Master/texmf-dist/source/latex/l3build/l3build.dtx b/Master/texmf-dist/source/latex/l3build/l3build.dtx
index 615aabb1db5..daf670e9666 100644
--- a/Master/texmf-dist/source/latex/l3build/l3build.dtx
+++ b/Master/texmf-dist/source/latex/l3build/l3build.dtx
@@ -39,8 +39,8 @@
\RequirePackage{expl3}
\def\ExplFileName{l3build}
\def\ExplFileDescription{L3 Regression test suite}
-\def\ExplFileDate{2014/08/25}
-\def\ExplFileVersion{5378}
+\def\ExplFileDate{2014/09/15}
+\def\ExplFileVersion{5423}
\documentclass[full]{l3doc}
\renewcommand\partname{Part}
\usepackage{multicol,needspace}
@@ -134,6 +134,7 @@
\luavarset{unpacksearch} {true} {Look in \texttt{tds} dirs for unpacking?}
\luavarseparator
\luavarset{checkruns} {1} {How many times to run a check file before comparing the log.}
+\luavarset{packtdszip} {false} {Build a TDS-style zip file for CTAN?}
\luavarset{scriptname} {"build.lua"} {Name of script used in dependencies.}
\luavarset{typesetcmds} {""} {Instructions to be passed to \TeX{} when doing typesetting.}
}
@@ -280,7 +281,6 @@
% \item doc
% \item install
% \item save \meta{name} [\meta{engine}]
-% \item unpack
% \end{itemize}
% These commands are described below.
%
@@ -332,9 +332,10 @@
%
%
% \begin{buildcmd}{ctan}
-% Creates an archive of the package and its documentation, suitable for uploading to CTAN including a |.tds.zip| file containing the `\TeX\ Directory Structure' layout of the package or bundle.
+% Creates an archive of the package and its documentation, suitable for uploading to CTAN
% The archive is compiled in \var{distribdir}, and if the results are successful the resultant |.zip| file is moved into the same directory as the build script.
-% The archive therefore contains two `views' of the package:
+% If \var{packtdszip} is set true then the building process includes a |.tds.zip| file containing the `\TeX\ Directory Structure' layout of the package or bundle.
+% The archive therefore may contain two `views' of the package:
% \begin{Verbatim}
% abc.zip/
% abc/
@@ -354,6 +355,9 @@
% \end{Verbatim}
% The files copied into the archive are controlled by a number of variables.
% The `root' of the TDS structure is defined by \var{tdsroot}, which is \luavar{tdsroot} by default. Plain users would redefine this to |"plain"| (or perhaps |"generic"|), for example.
+% The build process for a |.tds.zip| file currently assumes a `standard'
+% structure in which all extracted files should be places inside the |tex|
+% tree in a single directory, as shown above.
%
% \pagebreak[2]
% The |doc| tree is constructed from:
@@ -403,7 +407,8 @@
%
%
% \begin{buildcmd}{unpack}
-% Unpacks all files into the directory defined by \var{unpackdir}. This occurs before other build commands such as |doc|, |check|, etc., and should usually not be necessary to perform on its own (except for testing).
+% This is an internal target that is normally not needed on user level.
+% It unpacks all files into the directory defined by \var{unpackdir}. This occurs before other build commands such as |doc|, |check|, etc.
%
% The unpacking process is performed by executing the \var{unpackexe} (default \texttt{tex}) with options \var{unpackopts} on all files defined by the \var{unpackfiles} variable; by default, all files that match \luavar{unpackfiles}.
%
@@ -642,7 +647,7 @@
% \item
% \cs{TESTEXP} surrounds its contents with \cs{TYPE} and formatting to match \cs{TEST}; this can be used as a shorthand to test expandable commands.
% \item
-% TODO: would a \cs{TESTREXP} command (based on \cs{romannumeral} expansion) be useful as well?
+% TODO: would a \cs{TESTFEXP} command (based on \cs{romannumeral} expansion) be useful as well?
% \end{itemize}
% An example of some of these commands is shown following.
% \begin{Verbatim}
@@ -825,6 +830,15 @@
\showboxdepth=\maxdimen
% \end{macrocode}
%
+% The |\showoutput| command of \LaTeX{} calls |\loggingoutput| which in
+% turn calls |\errorstopmode| but we want to continue running without
+% any stops.
+% \begin{macrocode}
+\def\loggingoutput{\tracingoutput1
+ \showboxbreadth\maxdimen\showboxdepth\maxdimen}
+% \end{macrocode}
+
+%
% Set the newline character: \LaTeXe{} does this but plain-based formats
% do not.
% \begin{macrocode}
diff --git a/Master/texmf-dist/source/latex/l3build/l3build.lua b/Master/texmf-dist/source/latex/l3build/l3build.lua
index 9e6bd7d8c59..3abb619392b 100644
--- a/Master/texmf-dist/source/latex/l3build/l3build.lua
+++ b/Master/texmf-dist/source/latex/l3build/l3build.lua
@@ -17,8 +17,8 @@
--]]
-- Version information: should be identical to that in l3build.dtx
-release_date = "2014/08/25"
-release_ver = "5378"
+release_date = "2014/09/15"
+release_ver = "5423"
-- "module" is a deprecated function in Lua 5.2: as we want the name
-- for other purposes, and it should eventually be 'free', simply
@@ -129,6 +129,7 @@ end
-- Other required settings
checkruns = checkruns or 1
+packtdszip = packtdszip or false -- Not actually needed but clearer
scriptname = scriptname or "build.lua" -- Script used in each directory
typesetcmds = typesetcmds or ""
@@ -472,6 +473,10 @@ function formatlog (logfile, newfile)
line = string.gsub (
line, "cm, mm, dd, cc, bp, or sp", "cm, mm, dd, cc, nd, nc, bp, or sp"
)
+ -- Normalise a case where a LuaTeX bug misprints \csname\endcsname
+ -- This comes before the normalisation of the appearance of
+ -- \csname\endcsname in case we alter that!
+ line = string.gsub (line, "\\ycsnam\\rendcsnam", "\\csname\\endcsname")
-- Normalise a case where fixing a TeX bug changes the message text
line = string.gsub (line, "\\csname\\endcsname ", "\\csname\\endcsname")
-- Zap "on line <num>" and replace with "on line ..."
@@ -646,7 +651,6 @@ help = help or function ()
print " build save <name> - save test log for <name> for all engines "
print " build save <name> <engine> - save test log for <name> for <engine> "
end
- print " build unpack - extract packages "
print ""
end
@@ -817,7 +821,9 @@ function ctan (standalone)
end
end
dirzip (tdsdir, bundle .. ".tds")
- cp (bundle .. ".tds.zip", tdsdir, ctandir)
+ if packtdszip then
+ cp (bundle .. ".tds.zip", tdsdir, ctandir)
+ end
dirzip (ctandir, bundle)
cp (bundle .. ".zip", ctandir, ".")
else
diff --git a/Master/texmf-dist/source/latex/l3experimental/l3sort/l3sort.dtx b/Master/texmf-dist/source/latex/l3experimental/l3sort/l3sort.dtx
index ecccb6e8986..073b580e598 100644
--- a/Master/texmf-dist/source/latex/l3experimental/l3sort/l3sort.dtx
+++ b/Master/texmf-dist/source/latex/l3experimental/l3sort/l3sort.dtx
@@ -37,8 +37,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}[2014/08/25]
-%<package>\@ifpackagelater{expl3}{2014/08/25}
+\RequirePackage{expl3}[2014/09/15]
+%<package>\@ifpackagelater{expl3}{2014/09/15}
%<package> {}
%<package> {%
%<package> \PackageError{l3sort}{Support package l3kernel too old}
@@ -50,7 +50,7 @@
%<package> }%
%<package> \endinput
%<package> }
-\GetIdInfo$Id: l3sort.dtx 5378 2014-08-25 10:59:48Z joseph $
+\GetIdInfo$Id: l3sort.dtx 5423 2014-09-15 10:48:14Z joseph $
{L3 Experimental sorting functions}
%</driver|package>
%<*driver>
diff --git a/Master/texmf-dist/source/latex/l3experimental/l3str/l3flag.dtx b/Master/texmf-dist/source/latex/l3experimental/l3str/l3flag.dtx
index f64f8643cc0..fb868a326f7 100644
--- a/Master/texmf-dist/source/latex/l3experimental/l3str/l3flag.dtx
+++ b/Master/texmf-dist/source/latex/l3experimental/l3str/l3flag.dtx
@@ -36,8 +36,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}[2014/08/25]
-%<package>\@ifpackagelater{expl3}{2014/08/25}
+\RequirePackage{expl3}[2014/09/15]
+%<package>\@ifpackagelater{expl3}{2014/09/15}
%<package> {}
%<package> {%
%<package> \PackageError{l3flag}{Support package l3kernel too old}
@@ -49,7 +49,7 @@
%<package> }%
%<package> \endinput
%<package> }
-\GetIdInfo$Id: l3flag.dtx 5378 2014-08-25 10:59:48Z joseph $
+\GetIdInfo$Id: l3flag.dtx 5423 2014-09-15 10:48:14Z joseph $
{L3 Experimental flags}
%</driver|package>
%<*driver>
diff --git a/Master/texmf-dist/source/latex/l3experimental/l3str/l3regex.dtx b/Master/texmf-dist/source/latex/l3experimental/l3str/l3regex.dtx
index d306b577aac..89ca8f80578 100644
--- a/Master/texmf-dist/source/latex/l3experimental/l3str/l3regex.dtx
+++ b/Master/texmf-dist/source/latex/l3experimental/l3str/l3regex.dtx
@@ -36,8 +36,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}[2014/08/25]
-%<package>\@ifpackagelater{expl3}{2014/08/25}
+\RequirePackage{expl3}[2014/09/15]
+%<package>\@ifpackagelater{expl3}{2014/09/15}
%<package> {}
%<package> {%
%<package> \PackageError{l3regex}{Support package l3kernel too old}
@@ -49,7 +49,7 @@
%<package> }%
%<package> \endinput
%<package> }
-\GetIdInfo$Id: l3regex.dtx 5378 2014-08-25 10:59:48Z joseph $
+\GetIdInfo$Id: l3regex.dtx 5423 2014-09-15 10:48:14Z joseph $
{L3 Experimental regular expressions}
%</driver|package>
%<*driver>
diff --git a/Master/texmf-dist/source/latex/l3experimental/l3str/l3str-expl.dtx b/Master/texmf-dist/source/latex/l3experimental/l3str/l3str-expl.dtx
index 89f34666730..2bce0b00e88 100644
--- a/Master/texmf-dist/source/latex/l3experimental/l3str/l3str-expl.dtx
+++ b/Master/texmf-dist/source/latex/l3experimental/l3str/l3str-expl.dtx
@@ -36,8 +36,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}[2014/08/25]
-%<package>\@ifpackagelater{expl3}{2014/08/25}
+\RequirePackage{expl3}[2014/09/15]
+%<package>\@ifpackagelater{expl3}{2014/09/15}
%<package> {}
%<package> {%
%<package> \PackageError{l3str}{Support package l3kernel too old}
@@ -49,7 +49,7 @@
%<package> }%
%<package> \endinput
%<package> }
-\GetIdInfo$Id: l3str-expl.dtx 5378 2014-08-25 10:59:48Z joseph $
+\GetIdInfo$Id: l3str-expl.dtx 5423 2014-09-15 10:48:14Z joseph $
{L3 Experimental strings}
\def\ExplFileName{l3str}
%</driver|package>
@@ -280,90 +280,6 @@
% line to the terminal.
% \end{function}
%
-% \section{String conditionals}
-%
-% \begin{function}[EXP,pTF]
-% {
-% \str_if_eq:nn, \str_if_eq:Vn, \str_if_eq:on, \str_if_eq:no,
-% \str_if_eq:nV, \str_if_eq:VV
-% }
-% \begin{syntax}
-% \cs{str_if_eq_p:nn} \Arg{tl_1} \Arg{tl_2}
-% \cs{str_if_eq:nnTF} \Arg{tl_1} \Arg{tl_2} \Arg{true code} \Arg{false code}
-% \end{syntax}
-% Compares the string representations of the two \meta{token lists} on
-% a character by character basis, and is \texttt{true} if the two
-% lists contain the same characters in the same order. Thus for
-% example
-% \begin{verbatim}
-% \str_if_eq_p:no { abc } { \tl_to_str:n { abc } }
-% \end{verbatim}
-% is logically \texttt{true}.
-% \end{function}
-%
-% \begin{function}[EXP,pTF, added = 2012-06-05]{\str_if_eq_x:nn}
-% \begin{syntax}
-% \cs{str_if_eq_x_p:nn} \Arg{tl_1} \Arg{tl_2}
-% \cs{str_if_eq_x:nnTF} \Arg{tl_1} \Arg{tl_2} \Arg{true code} \Arg{false code}
-% \end{syntax}
-% Compares the full expansion of two \meta{token lists} on a character by
-% character basis, and is \texttt{true} if the two lists contain the same
-% characters in the same order. Thus for example
-% \begin{verbatim}
-% \str_if_eq_x_p:nn { abc } { \tl_to_str:n { abc } }
-% \end{verbatim}
-% is logically \texttt{true}.
-% \end{function}
-%
-% \begin{function}[added = 2013-07-24, EXP, TF]{\str_case:nn, \str_case:on}
-% \begin{syntax}
-% \cs{str_case:nnTF} \Arg{test string} \\
-% ~~|{| \\
-% ~~~~\Arg{string case_1} \Arg{code case_1} \\
-% ~~~~\Arg{string case_2} \Arg{code case_2} \\
-% ~~~~\ldots \\
-% ~~~~\Arg{string case_n} \Arg{code case_n} \\
-% ~~|}| \\
-% ~~\Arg{true code}
-% ~~\Arg{false code}
-% \end{syntax}
-% This function compares the \meta{test string} in turn with each
-% of the \meta{string cases}. If the two are equal (as described for
-% \cs{str_if_eq:nnTF} then the
-% associated \meta{code} is left in the input stream. If any of the
-% cases are matched, the \meta{true code} is also inserted into the
-% input stream (after the code for the appropriate case), while if none
-% match then the \meta{false code} is inserted. The function
-% \cs{str_case:nn}, which does nothing if there is no match, is also
-% available.
-% \end{function}
-%
-% \begin{function}[added = 2013-07-24, EXP, TF]{\str_case_x:nn}
-% \begin{syntax}
-% \cs{str_case_x:nnn} \Arg{test string} \\
-% ~~|{| \\
-% ~~~~\Arg{string case_1} \Arg{code case_1} \\
-% ~~~~\Arg{string case_2} \Arg{code case_2} \\
-% ~~~~\ldots \\
-% ~~~~\Arg{string case_n} \Arg{code case_n} \\
-% ~~|}| \\
-% ~~\Arg{true code}
-% ~~\Arg{false code}
-% \end{syntax}
-% This function compares the full expansion of the \meta{test string}
-% in turn with the full expansion of the \meta{string cases}. If the two
-% full expansions are equal (as described for \cs{str_if_eq:nnTF} then the
-% associated \meta{code} is left in the input stream. If any of the
-% cases are matched, the \meta{true code} is also inserted into the
-% input stream (after the code for the appropriate case), while if none
-% match then the \meta{false code} is inserted. The function
-% \cs{str_case_x:nn}, which does nothing if there is no match, is also
-% available.
-% The \meta{test string} is expanded in each comparison, and must
-% always yield the same result: for example, random numbers must
-% not be used within this string.
-% \end{function}
-%
% \section{Viewing strings}
%
% \begin{function}{\str_show:N, \str_show:c, \str_show:n}
diff --git a/Master/texmf-dist/source/latex/l3experimental/xgalley/l3galley.dtx b/Master/texmf-dist/source/latex/l3experimental/xgalley/l3galley.dtx
index f162ca679e2..2a47769ad34 100644
--- a/Master/texmf-dist/source/latex/l3experimental/xgalley/l3galley.dtx
+++ b/Master/texmf-dist/source/latex/l3experimental/xgalley/l3galley.dtx
@@ -38,8 +38,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}[2014/08/25]
-%<package>\@ifpackagelater{expl3}{2014/08/25}
+\RequirePackage{expl3}[2014/09/15]
+%<package>\@ifpackagelater{expl3}{2014/09/15}
%<package> {}
%<package> {%
%<package> \PackageError{l3galley}{Support package l3kernel too old}
@@ -51,7 +51,7 @@
%<package> }%
%<package> \endinput
%<package> }
-\GetIdInfo$Id: l3galley.dtx 5378 2014-08-25 10:59:48Z joseph $
+\GetIdInfo$Id: l3galley.dtx 5423 2014-09-15 10:48:14Z joseph $
{L3 Experimental galley code}
%</driver|package>
%<*driver>
diff --git a/Master/texmf-dist/source/latex/l3kernel/expl3.dtx b/Master/texmf-dist/source/latex/l3kernel/expl3.dtx
index 3b53a382d18..d5248ec5e5e 100644
--- a/Master/texmf-dist/source/latex/l3kernel/expl3.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/expl3.dtx
@@ -36,8 +36,8 @@
%<*driver|generic|package>
\def\ExplFileName{expl3}
\def\ExplFileDescription{L3 programming layer}
-\def\ExplFileDate{2014/08/25}
-\def\ExplFileVersion{5378}
+\def\ExplFileDate{2014/09/15}
+\def\ExplFileVersion{5423}
%</driver|generic|package>
%<*driver>
\documentclass[full]{l3doc}
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3.ins b/Master/texmf-dist/source/latex/l3kernel/l3.ins
index 3b99651a170..1c1bc9ce336 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3.ins
+++ b/Master/texmf-dist/source/latex/l3kernel/l3.ins
@@ -95,4 +95,30 @@ Do not distribute a modified version of this file.
\generate{\file{l3names.def} {\from{l3names.dtx} {names}}}
+
+% old modules generating a usage error:
+
+\generate{\file{l3basics.sty} {\from{l3oldmodules.dtx} {l3basics,oldmodules}}}
+\generate{\file{l3bootstrap.sty} {\from{l3oldmodules.dtx} {l3bootstrap,oldmodules}}}
+\generate{\file{l3box.sty} {\from{l3oldmodules.dtx} {l3box,oldmodules}}}
+\generate{\file{l3candidates.sty} {\from{l3oldmodules.dtx} {l3candidates,oldmodules}}}
+\generate{\file{l3clist.sty} {\from{l3oldmodules.dtx} {l3clist,oldmodules}}}
+\generate{\file{l3coffins.sty} {\from{l3oldmodules.dtx} {l3coffins,oldmodules}}}
+\generate{\file{l3color.sty} {\from{l3oldmodules.dtx} {l3color,oldmodules}}}
+\generate{\file{l3expan.sty} {\from{l3oldmodules.dtx} {l3expan,oldmodules}}}
+\generate{\file{l3file.sty} {\from{l3oldmodules.dtx} {l3file,oldmodules}}}
+\generate{\file{l3fp.sty} {\from{l3oldmodules.dtx} {l3fp,oldmodules}}}
+\generate{\file{l3int.sty} {\from{l3oldmodules.dtx} {l3int,oldmodules}}}
+\generate{\file{l3keys.sty} {\from{l3oldmodules.dtx} {l3keys,oldmodules}}}
+\generate{\file{l3msg.sty} {\from{l3oldmodules.dtx} {l3msg,oldmodules}}}
+\generate{\file{l3names.sty} {\from{l3oldmodules.dtx} {l3names,oldmodules}}}
+\generate{\file{l3prg.sty} {\from{l3oldmodules.dtx} {l3prg,oldmodules}}}
+\generate{\file{l3prop.sty} {\from{l3oldmodules.dtx} {l3prop,oldmodules}}}
+\generate{\file{l3quark.sty} {\from{l3oldmodules.dtx} {l3quark,oldmodules}}}
+\generate{\file{l3seq.sty} {\from{l3oldmodules.dtx} {l3seq,oldmodules}}}
+\generate{\file{l3skip.sty} {\from{l3oldmodules.dtx} {l3skip,oldmodules}}}
+\generate{\file{l3tl.sty} {\from{l3oldmodules.dtx} {l3tl,oldmodules}}}
+\generate{\file{l3token.sty} {\from{l3oldmodules.dtx} {l3token,oldmodules}}}
+
+
\endbatchfile
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx
index 88f30d3ce87..7ce1c6367b1 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx
@@ -36,7 +36,7 @@
%
%<*driver>
\documentclass[full]{l3doc}
-\GetIdInfo$Id: l3fp-parse.dtx 5223 2014-07-18 01:54:05Z bruno $
+\GetIdInfo$Id: l3fp-parse.dtx 5383 2014-08-25 13:17:55Z bruno $
{L3 Floating-point expression parsing}
\begin{document}
\DocInput{\jobname.dtx}
@@ -891,7 +891,10 @@
\exp_after:wN \@@_parse_prefix:NNN
\exp_after:wN #1
\exp_after:wN #2
- \cs:w @@_parse_prefix_#2:Nw \exp_after:wN \cs_end:
+ \cs:w
+ @@_parse_prefix_ \token_to_str:N #2 :Nw
+ \exp_after:wN
+ \cs_end:
\tex_romannumeral:D
\fi:
\@@_parse_expand:w
@@ -967,7 +970,7 @@
}
\cs_new:Npn \@@_parse_prefix_unknown:NNN #1#2#3
{
- \cs_if_exist:cTF { @@_parse_infix_#1:N }
+ \cs_if_exist:cTF { @@_parse_infix_ \token_to_str:N #1 :N }
{
\__msg_kernel_expandable_error:nnn
{ kernel } { fp-missing-number } {#1}
@@ -2133,7 +2136,7 @@
\else:
\exp_after:wN \@@_parse_infix_check:NNN
\cs:w
- @@_parse_infix_#2:N
+ @@_parse_infix_ \token_to_str:N #2 :N
\exp_after:wN \exp_after:wN \exp_after:wN
\cs_end:
\fi:
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3int.dtx b/Master/texmf-dist/source/latex/l3kernel/l3int.dtx
index 78d244e3845..42036030d8d 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3int.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3int.dtx
@@ -37,7 +37,7 @@
\documentclass[full]{l3doc}
%</driver>
%<*driver|package>
-\GetIdInfo$Id: l3int.dtx 5372 2014-08-25 02:01:41Z bruno $
+\GetIdInfo$Id: l3int.dtx 5421 2014-09-14 07:52:58Z joseph $
{L3 Integers}
%</driver|package>
%<*driver>
@@ -100,10 +100,17 @@
% both evaluate to \( -6 \). The \Arg{integer expression} may
% contain the operators \texttt{+}, \texttt{-}, \texttt{*} and
% \texttt{/}, along with parenthesis \texttt{(} and \texttt{)}.
-% After two expansions, \cs{int_eval:n} yields an
-% \meta{integer denotation} which is left in the input stream. This is
-% \emph{not} an \meta{internal integer}, and therefore requires
-% suitable termination if used in a \TeX{}-style integer assignment.
+% Any functions within the expressions should expand to an
+% \meta{integer denotation}: a sequence of a sign and digits matching
+% the regex |\-?[0-9]+|).
+% After expansion \cs{int_eval:n} yields an \meta{integer denotation}
+% which is left in the input stream.
+% \begin{texnote}
+% Exactly two expansions are needed to evaluate \cs{int_eval:n}.
+% The result is \emph{not} an \meta{internal integer}, and therefore
+% requires suitable termination if used in a \TeX{}-style integer
+% assignment.
+% \end{texnote}
% \end{function}
%
% \begin{function}[EXP, updated = 2012-09-26]{\int_abs:n}
@@ -587,6 +594,8 @@
% \cs{int_to_symbols:nnn} to define an alphabet-specific
% function. The basic \cs{int_to_alph:n} and \cs{int_to_Alph:n}
% functions should not be modified.
+% The resulting tokens are digits with category code $12$ (other) and
+% letters with category code $11$ (letter).
% \end{function}
%
% \begin{function}[updated = 2011-09-17, EXP]{\int_to_symbols:nnn}
@@ -634,6 +643,8 @@
% input stream. Letters are used for digits beyond~$9$: lower
% case letters for \cs{int_to_hex:n} and upper case ones for
% \cs{int_to_Hex:n}.
+% The resulting tokens are digits with category code $12$ (other) and
+% letters with category code $11$ (letter).
% \end{function}
%
% \begin{function}[added = 2014-02-11, EXP]{\int_to_oct:n}
@@ -643,6 +654,8 @@
% Calculates the value of the \meta{integer expression} and places
% the octal (base~$8$) representation of the result in the input
% stream.
+% The resulting tokens are digits with category code $12$ (other) and
+% letters with category code $11$ (letter).
% \end{function}
%
% \begin{function}[updated = 2014-02-11, EXP]
@@ -658,6 +671,8 @@
% case letters for \cs{int_to_base:n} and upper case ones for
% \cs{int_to_Base:n}.
% The maximum \meta{base} value is $36$.
+% The resulting tokens are digits with category code $12$ (other) and
+% letters with category code $11$ (letter).
% \begin{texnote}
% This is a generic version of \cs{int_to_bin:n}, \emph{etc.}
% \end{texnote}
@@ -675,63 +690,85 @@
%
% \section{Converting from other formats to integers}
%
-% \begin{function}[EXP]{\int_from_alph:n}
+% \begin{function}[updated = 2014-08-25, EXP]{\int_from_alph:n}
% \begin{syntax}
% \cs{int_from_alph:n} \Arg{letters}
% \end{syntax}
% Converts the \meta{letters} into the integer (base~$10$)
-% representation and leaves this in the input stream. The
-% \meta{letters} are treated using the English alphabet only, with
-% \enquote{a} equal to $1$ through to \enquote{z} equal to $26$. Either lower
-% or upper case letters may be used. This is the inverse function of
-% \cs{int_to_alph:n}.
+% representation and leaves this in the input stream. The
+% \meta{letters} are first converted to a string, with no expansion.
+% Lower and upper case letters from the English alphabet may be used,
+% with \enquote{a} equal to $1$ through to \enquote{z} equal to $26$.
+% The function also accepts a leading sign, made of |+| and~|-|. This
+% is the inverse function of \cs{int_to_alph:n} and
+% \cs{int_to_Alph:n}.
% \end{function}
%
-% \begin{function}[added = 2014-02-11, EXP]{\int_from_bin:n}
+% \begin{function}[added = 2014-02-11, updated = 2014-08-25, EXP]
+% {\int_from_bin:n}
% \begin{syntax}
% \cs{int_from_bin:n} \Arg{binary number}
% \end{syntax}
% Converts the \meta{binary number} into the integer (base~$10$)
% representation and leaves this in the input stream.
+% The \meta{binary number} is first converted to a string, with no
+% expansion. The function accepts a leading sign, made of |+|
+% and~|-|, followed by binary digits. This is the inverse function
+% of \cs{int_to_bin:n}.
% \end{function}
%
-% \begin{function}[added = 2014-02-11, EXP]{\int_from_hex:n}
+% \begin{function}[added = 2014-02-11, updated = 2014-08-25, EXP]
+% {\int_from_hex:n}
% \begin{syntax}
% \cs{int_from_hex:n} \Arg{hexadecimal number}
% \end{syntax}
-% Converts the \meta{hexadecimal number} into the integer
-% (base~$10$) representation and leaves this in the input stream.
-% Digits greater than $9$ may be represented in the
-% \meta{hexadecimal number} by upper or lower case letters.
+% Converts the \meta{hexadecimal number} into the integer (base~$10$)
+% representation and leaves this in the input stream. Digits greater
+% than $9$ may be represented in the \meta{hexadecimal number} by
+% upper or lower case letters. The \meta{hexadecimal number} is first
+% converted to a string, with no expansion. The function also accepts
+% a leading sign, made of |+| and~|-|. This is the inverse function
+% of \cs{int_to_hex:n} and \cs{int_to_Hex:n}.
% \end{function}
%
-% \begin{function}[added = 2014-02-11, EXP]{\int_from_oct:n}
+% \begin{function}[added = 2014-02-11, updated = 2014-08-25, EXP]
+% {\int_from_oct:n}
% \begin{syntax}
% \cs{int_from_oct:n} \Arg{octal number}
% \end{syntax}
% Converts the \meta{octal number} into the integer (base~$10$)
% representation and leaves this in the input stream.
+% The \meta{octal number} is first converted to a string, with no
+% expansion. The function accepts a leading sign, made of |+|
+% and~|-|, followed by octal digits. This is the inverse function
+% of \cs{int_to_oct:n}.
% \end{function}
%
-% \begin{function}[updated = 2014-08-25, EXP]{\int_from_roman:n}
+% \begin{function}[updated = 2014-08-25, updated = 2014-08-25, EXP]
+% {\int_from_roman:n}
% \begin{syntax}
% \cs{int_from_roman:n} \Arg{roman numeral}
% \end{syntax}
% Converts the \meta{roman numeral} into the integer (base~$10$)
-% representation and leaves this in the input stream. The
+% representation and leaves this in the input stream. The \meta{roman
+% numeral} is first converted to a string, with no expansion. The
% \meta{roman numeral} may be in upper or lower case; if the numeral
-% contains letters besides |mdclxvi| or |MDCLXVI| then the resulting
-% value will be $-1$.
+% contains characters besides |mdclxvi| or |MDCLXVI| then the
+% resulting value will be $-1$. This is the inverse function of
+% \cs{int_to_roman:n} and \cs{int_to_Roman:n}.
% \end{function}
%
-% \begin{function}[EXP]{\int_from_base:nn}
+% \begin{function}[updated = 2014-08-25, EXP]{\int_from_base:nn}
% \begin{syntax}
% \cs{int_from_base:nn} \Arg{number} \Arg{base}
% \end{syntax}
-% Converts the \meta{number} in \meta{base} into the appropriate
-% value in base $10$. The \meta{number} should consist of
-% digits and letters (either lower or upper case), plus optionally
-% a leading sign. The maximum \meta{base} value is $36$.
+% Converts the \meta{number} expressed in \meta{base} into the
+% appropriate value in base $10$. The \meta{number} is first
+% converted to a string, with no expansion. The \meta{number} should
+% consist of digits and letters (either lower or upper case), plus
+% optionally a leading sign. The maximum \meta{base} value is $36$.
+% This is the inverse function of \cs{int_to_base:nn} and
+% \cs{int_to_Base:nn}.
% \end{function}
%
% \section{Viewing integers}
@@ -941,7 +978,7 @@
% Done in \pkg{l3basics}.
% \end{macro}
% \end{macro}
-%
+%
% \begin{macro}{\or:}
% Done in \pkg{l3basics}.
% \end{macro}
@@ -1754,7 +1791,7 @@
% \UnitTested
% Nothing exciting here.
% \begin{macrocode}
-\cs_new:Npn \int_to_arabic:n #1 { \int_eval:n {#1} }
+\cs_new_eq:NN \int_to_arabic:n \int_eval:n
% \end{macrocode}
% \end{macro}
%
@@ -1795,7 +1832,7 @@
% \end{macro}
% \end{macro}
%
-% \begin{macro}{\int_to_alph:n,\int_to_Alph:n}
+% \begin{macro}{\int_to_alph:n, \int_to_Alph:n}
% \UnitTested
% These both use the above function with input functions that make sense
% for the alphabet in English.
@@ -2138,7 +2175,7 @@
{
\int_eval:n
{
- \@@_pass_signs:wn #1
+ \exp_after:wN \@@_pass_signs:wn \tl_to_str:n {#1}
\q_stop { \@@_from_alph:nN { 0 } }
\q_recursion_tail \q_recursion_stop
}
@@ -2170,7 +2207,7 @@
{
\int_eval:n
{
- \@@_pass_signs:wn #1
+ \exp_after:wN \@@_pass_signs:wn \tl_to_str:n {#1}
\q_stop { \@@_from_base:nnN { 0 } {#2} }
\q_recursion_tail \q_recursion_stop
}
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3oldmodules.dtx b/Master/texmf-dist/source/latex/l3kernel/l3oldmodules.dtx
new file mode 100644
index 00000000000..4d884f8381d
--- /dev/null
+++ b/Master/texmf-dist/source/latex/l3kernel/l3oldmodules.dtx
@@ -0,0 +1,162 @@
+% \iffalse meta-comment
+%
+%% File: l3oldmodules.dtx Copyright (C) 2014 The LaTeX3 Project
+%%
+%% It may be distributed and/or modified under the conditions of the
+%% LaTeX Project Public License (LPPL), either version 1.3c of this
+%% license or (at your option) any later version. The latest version
+%% of this license is in the file
+%%
+%% http://www.latex-project.org/lppl.txt
+%%
+%% This file is part of the "l3kernel bundle" (The Work in LPPL)
+%% and all files in that bundle must be distributed together.
+%%
+%% The released version of this bundle is available from CTAN.
+%%
+%% -----------------------------------------------------------------------
+%%
+%% The development version of the bundle can be found at
+%%
+%% http://www.latex-project.org/svnroot/experimental/trunk/
+%%
+%% for those people who are interested.
+%%
+%%%%%%%%%%%
+%% NOTE: %%
+%%%%%%%%%%%
+%%
+%% Snapshots taken from the repository represent work in progress and may
+%% not work or may contain conflicting material! We therefore ask
+%% people _not_ to put them into distributions, archives, etc. without
+%% prior consultation with the LaTeX3 Project.
+%%
+%% -----------------------------------------------------------------------
+%
+%<*driver|oldmodules>
+\def\ExplFileDate{2014/09/06}
+%</driver|oldmodules>
+%<*driver>
+\documentclass[full]{l3doc}
+\begin{document}
+ \DocInput{\jobname.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \title{Obsolete individual modules}
+%
+% \author{^^A
+% The \LaTeX3 Project\thanks
+% {^^A
+% E-mail:
+% \href{mailto:latex-team@latex-project.org}
+% {latex-team@latex-project.org}^^A
+% }^^A
+% }
+%
+%
+% \date{Released \ExplFileDate}
+
+% \maketitle
+%
+% \section{Introduction}
+%
+% \begin{documentation}
+% The source code for \texttt{expl3} is organized by modules, e.g.,
+% integer processing is found in \texttt{l3int.dtx}, etc. Initially
+% each such module was used to generate a corresponding
+% \texttt{.sty} that was then loaded as part of the \texttt{expl3}
+% package.
+%
+% It was however also possible to load only individual modules (they
+% would then load other modules as necessary. This scheme was done
+% to ease testing and updates during the time the kernel code saw a
+% lot of update.
+%
+% However, keeping dependencies between modules current became a
+% complex task and in fact most modules would require most other
+% modules so that in the end everything or nearly everything was
+% loaded anyway.
+%
+% We therefore decided to stop providing individual module packages
+% but instead generate all code into a single file that is then
+% loaded as part of the \texttt{expl3} package. This decision was
+% announced a while back and with the recent \texttt{expl3}
+% distributions it because a reality.
+%
+% To help user that do have code or documents referencing the old
+% module packages, we provide (for the time being) skeleton packages
+% that generate an error message and then load the \texttt{expl3} so
+% that the user can continue.
+% Eventually these packages will get fully removed.
+% \end{documentation}
+%
+% \section{Implementation}
+%
+% \begin{implementation}
+%
+% First store the current package name in a macro for later use.
+% \begin{macrocode}
+%<*oldmodules>
+\def\old@liii@module@name
+%<l3basics>{l3basics}
+%<l3bootstrap>{l3bootstrap}
+%<l3box>{l3box}
+%<l3candidates>{l3candidates}
+%<l3clist>{l3clist}
+%<l3coffins>{l3coffins}
+%<l3color>{l3color}
+%<l3expan>{l3expan}
+%<l3file>{l3file}
+%<l3fp>{l3fp}
+%<l3int>{l3int}
+%<l3keys>{l3keys}
+%<l3msg>{l3msg}
+%<l3names>{l3names}
+%<l3prg>{l3prg}
+%<l3prop>{l3prop}
+%<l3quark>{l3quark}
+%<l3seq>{l3seq}
+%<l3skip>{l3skip}
+%<l3tl>{l3tl}
+%<l3token>{l3token}
+% \end{macrocode}
+%
+% Then identify the current package:
+% \begin{macrocode}
+\ProvidesPackage\old@liii@module@name
+ [%
+ \ExplFileDate\space v-no-info
+ Obsolete L3 package
+ ]
+% \end{macrocode}
+% Describe the current situation on the terminal, then generate an
+% error to ensure that the message is actually seen.
+% \begin{macrocode}
+\typeout{*****************************************************************}
+\typeout{** }
+\typeout{** Package \old@liii@module@name\space is obsolete and has been removed!}
+\typeout{** }
+\typeout{** Its functionality is now only provided as part of in the expl3 package}
+\typeout{** }
+\typeout{** After showing you an error message you can hit <return> we will continue}
+\typeout{** for now by loading expl3 for you. However, at some point in the future}
+\typeout{** the old packages will be removed.}
+\typeout{** }
+\typeout{** Therefore, please replace '\string\usepackage{\old@liii@module@name}'}
+\typeout{** with '\string\usepackage{expl3}' in your documents as soon as possible.}
+\typeout{** }
+\typeout{*******************************************************************}
+\PackageError\old@liii@module@name{This package is obsolete ---
+ use 'expl3' instead}\@ehc
+% \end{macrocode}
+% Finally load \texttt{expl3} so that the user can continue for now.
+% \begin{macrocode}
+\RequirePackage{expl3}
+%</oldmodules>
+% \end{macrocode}
+%
+% \end{implementation}
+%
+% \endinput
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3token.dtx b/Master/texmf-dist/source/latex/l3kernel/l3token.dtx
index 416bf573160..cd310c06d3a 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3token.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3token.dtx
@@ -37,7 +37,7 @@
\documentclass[full]{l3doc}
%</driver>
%<*driver|package>
-\GetIdInfo$Id: l3token.dtx 5354 2014-08-23 01:35:39Z bruno $
+\GetIdInfo$Id: l3token.dtx 5422 2014-09-15 10:44:23Z joseph $
{L3 Experimental token manipulation}
%</driver|package>
%<*driver>
@@ -911,7 +911,7 @@
% \cs_set:Npn \next #1#2 { x #1 y #2 }
% \end{verbatim}
% will leave |#1#2| in the input stream. If the \meta{token} is
-% not a macro then \cs{scan_stop:} will be left in the input stream
+% not a macro then \cs{scan_stop:} will be left in the input stream.
% \begin{texnote}
% If the arg~spec. contains the string |->|, then the |spec| function
% will produce incorrect results.
@@ -930,7 +930,11 @@
% \cs_set:Npn \next #1#2 { x #1~y #2 }
% \end{verbatim}
% will leave \verb|x#1 y#2| in the input stream. If the \meta{token} is
-% not a macro then \cs{scan_stop:} will be left in the input stream
+% not a macro then \cs{scan_stop:} will be left in the input stream.
+% \begin{texnote}
+% If the arg~spec. contains the string |->|, then the |spec| function
+% will produce incorrect results.
+% \end{texnote}
% \end{function}
%
% \begin{function}[EXP]{\token_get_prefix_spec:N}
@@ -1171,23 +1175,31 @@
% \c_catcode_letter_token,
% \c_catcode_other_token
% }
-% We define these useful tokens. We have to do it by hand with the
-% brace tokens for obvious reasons.
+% We define these useful tokens. For the brace and space tokens things have
+% to be done by hand: the formal argument spec.~for \cs{cs_new_eq:NN} does
+% not cover them so we do things by hand. (As currently coded it would
+% \emph{work} with \cs{cs_new_eq:NN} but that's not really a great idea to
+% show off: we want people to stick to the defined interfaces and that
+% includes us.) So that these few odd names go into the log when appropriate
+% there is a need to hand-apply the \cs{__chk_if_free_cs:N} check.
% \begin{macrocode}
-\cs_new_eq:NN \c_group_begin_token {
-\cs_new_eq:NN \c_group_end_token }
\group_begin:
+ \__chk_if_free_cs:N \c_group_begin_token
+ \tex_global:D \tex_let:D \c_group_begin_token {
+ \__chk_if_free_cs:N \c_group_end_token
+ \tex_global:D \tex_let:D \c_group_end_token }
\char_set_catcode_math_toggle:N \*
- \token_new:Nn \c_math_toggle_token { * }
+ \cs_new_eq:NN \c_math_toggle_token *
\char_set_catcode_alignment:N \*
- \token_new:Nn \c_alignment_token { * }
- \token_new:Nn \c_parameter_token { # }
- \token_new:Nn \c_math_superscript_token { ^ }
+ \cs_new_eq:NN \c_alignment_token *
+ \cs_new_eq:NN \c_parameter_token #
+ \cs_new_eq:NN \c_math_superscript_token ^
\char_set_catcode_math_subscript:N \*
- \token_new:Nn \c_math_subscript_token { * }
- \token_new:Nn \c_space_token { ~ }
- \token_new:Nn \c_catcode_letter_token { a }
- \token_new:Nn \c_catcode_other_token { 1 }
+ \cs_new_eq:NN \c_math_subscript_token *
+ \__chk_if_free_cs:N \c_space_token
+ \use:n { \tex_global:D \tex_let:D \c_space_token = ~ } ~
+ \cs_new_eq:NN \c_catcode_letter_token a
+ \cs_new_eq:NN \c_catcode_other_token 1
\group_end:
% \end{macrocode}
% \end{macro}
diff --git a/Master/texmf-dist/source/latex/l3packages/l3keys2e/l3keys2e.dtx b/Master/texmf-dist/source/latex/l3packages/l3keys2e/l3keys2e.dtx
index 0bffa0cef39..c9f97b05af6 100644
--- a/Master/texmf-dist/source/latex/l3packages/l3keys2e/l3keys2e.dtx
+++ b/Master/texmf-dist/source/latex/l3packages/l3keys2e/l3keys2e.dtx
@@ -37,8 +37,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}[2014/08/25]
-%<package>\@ifpackagelater{expl3}{2014/08/25}
+\RequirePackage{expl3}[2014/09/15]
+%<package>\@ifpackagelater{expl3}{2014/09/15}
%<package> {}
%<package> {%
%<package> \PackageError{l3keys2e}{Support package l3kernel too old}
@@ -50,7 +50,7 @@
%<package> }%
%<package> \endinput
%<package> }
-\GetIdInfo$Id: l3keys2e.dtx 5378 2014-08-25 10:59:48Z joseph $
+\GetIdInfo$Id: l3keys2e.dtx 5423 2014-09-15 10:48:14Z joseph $
{LaTeX2e option processing using LaTeX3 keys}
%</driver|package>
%<*driver>
diff --git a/Master/texmf-dist/source/latex/l3packages/xparse/xparse.dtx b/Master/texmf-dist/source/latex/l3packages/xparse/xparse.dtx
index e354b21deaa..6342bb959ba 100644
--- a/Master/texmf-dist/source/latex/l3packages/xparse/xparse.dtx
+++ b/Master/texmf-dist/source/latex/l3packages/xparse/xparse.dtx
@@ -41,8 +41,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}[2014/08/25]
-%<package>\@ifpackagelater{expl3}{2014/08/25}
+\RequirePackage{expl3}[2014/09/15]
+%<package>\@ifpackagelater{expl3}{2014/09/15}
%<package> {}
%<package> {%
%<package> \PackageError{xparse}{Support package l3kernel too old}
@@ -54,7 +54,7 @@
%<package> }%
%<package> \endinput
%<package> }
-\GetIdInfo$Id: xparse.dtx 5378 2014-08-25 10:59:48Z joseph $
+\GetIdInfo$Id: xparse.dtx 5423 2014-09-15 10:48:14Z joseph $
{L3 Experimental document command parser}
%</driver|package>
%<*driver>
diff --git a/Master/texmf-dist/source/latex/l3packages/xtemplate/xtemplate.dtx b/Master/texmf-dist/source/latex/l3packages/xtemplate/xtemplate.dtx
index 54ed4a7c0a7..c762ea22d75 100644
--- a/Master/texmf-dist/source/latex/l3packages/xtemplate/xtemplate.dtx
+++ b/Master/texmf-dist/source/latex/l3packages/xtemplate/xtemplate.dtx
@@ -41,8 +41,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}[2014/08/25]
-%<package>\@ifpackagelater{expl3}{2014/08/25}
+\RequirePackage{expl3}[2014/09/15]
+%<package>\@ifpackagelater{expl3}{2014/09/15}
%<package> {}
%<package> {%
%<package> \PackageError{xtemplate}{Support package l3kernel too old}
@@ -54,7 +54,7 @@
%<package> }%
%<package> \endinput
%<package> }
-\GetIdInfo$Id: xtemplate.dtx 5378 2014-08-25 10:59:48Z joseph $
+\GetIdInfo$Id: xtemplate.dtx 5423 2014-09-15 10:48:14Z joseph $
{L3 Experimental prototype document functions}
%</driver|package>
%<*driver>