summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2012-09-05 22:58:18 +0000
committerKarl Berry <karl@freefriends.org>2012-09-05 22:58:18 +0000
commitc556c94cbf233fa607dc3ac6a664f23efba92c07 (patch)
treefd6e97db5854a06159dea563eff175ea9e588a7c /Master/texmf-dist/tex
parente5a6b18348ead0cec45f680a2bacf024120cfdec (diff)
latex3
git-svn-id: svn://tug.org/texlive/trunk@27600 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex')
-rw-r--r--Master/texmf-dist/tex/latex/l3experimental/l3dt/l3dt.sty2
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/expl3.sty4
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/l3doc.cls49
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/l3fp.sty133
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/l3prop.sty2
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/l3tl.sty20
-rw-r--r--Master/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty6
-rw-r--r--Master/texmf-dist/tex/latex/l3packages/xparse/xparse.sty6
-rw-r--r--Master/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.sty6
9 files changed, 110 insertions, 118 deletions
diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3dt/l3dt.sty b/Master/texmf-dist/tex/latex/l3experimental/l3dt/l3dt.sty
index 408f52b8bdd..4cb2ad8617b 100644
--- a/Master/texmf-dist/tex/latex/l3experimental/l3dt/l3dt.sty
+++ b/Master/texmf-dist/tex/latex/l3experimental/l3dt/l3dt.sty
@@ -47,7 +47,7 @@
%% -----------------------------------------------------------------------
%%
\RequirePackage{expl3}
-\GetIdInfo$Id: l3dt.dtx 4153 2012-08-29 07:18:26Z joseph $
+\GetIdInfo$Id: l3dt.dtx 4190 2012-09-03 00:23:31Z bruno $
{L3 Experimental data tables}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
index edf7566552f..d18bfd8148c 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
+++ b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
@@ -60,8 +60,8 @@
}
\def\ExplFileName{expl3}
\def\ExplFileDescription{L3 Experimental code bundle wrapper}
-\def\ExplFileDate{2012/08/29}
-\def\ExplFileVersion{4160}
+\def\ExplFileDate{2012/09/05}
+\def\ExplFileVersion{4205}
\RequirePackage{etex}
\reserveinserts{32}
\ProvidesExplPackage
diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3doc.cls b/Master/texmf-dist/tex/latex/l3kernel/l3doc.cls
index 641a13ec78c..81daef1452a 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/l3doc.cls
+++ b/Master/texmf-dist/tex/latex/l3kernel/l3doc.cls
@@ -4,8 +4,7 @@
%%
%% The original source files were:
%%
-%% l3doc.dtx (with options: `class,cfg')
-%%
+%% l3doc.dtx (with options: `class')
%%
%% EXPERIMENTAL CODE
%%
@@ -14,7 +13,6 @@
%%
%% Do not distribute a modified version of this file.
%%
-%%
%% File: l3doc.dtx Copyright (C) 1990-2012 The LaTeX3 project
%%
%% It may be distributed and/or modified under the conditions of the
@@ -1448,51 +1446,6 @@
\DisableCrossrefs
\OnlyDescription
}
-\tl_new:N \Team
-\tl_set:Nn \Team
- {
- The~\LaTeX3~Project\thanks
- {
- Frank~Mittelbach,~Denys~Duchier,~Chris~Rowley,~
- Rainer~Sch\"opf,~Johannes~Braams,~Michael~Downes,~
- David~Carlisle,~Alan~Jeffrey,~Morten~H\o{}gholm,~Thomas~Lotze,~
- Javier~Bezos,~Will~Robertson,~Joseph~Wright,~Bruno~Le~Floch
- }
- }
-\NewDocumentCommand{\ExplMakeTitle}{mm}
- {
- \title
- {
- The~\pkg{#1}~package \\ #2
- \thanks
- {
- This~file~describes~v\ExplFileVersion,~
- last~revised~\ExplFileDate.
- }
- }
- \author
- {
- The~\LaTeX3~Project\thanks{E-mail:~
- \href{mailto:latex-l@listserv.uni-heidelberg.de}
- {latex-l@listserv.uni-heidelberg.de}}
- }
- \date{Released~\ExplFileDate}
- \maketitle
- }
-\DeclareDocumentCommand\ie{}{\emph{i.e.}}
-\DeclareDocumentCommand\eg{}{\emph{e.g.}}
-\DeclareDocumentCommand\Ie{}{\emph{I.e.}}
-\DeclareDocumentCommand\Eg{}{\emph{E.g.}}
-\AtBeginDocument
- {
- \clist_map_inline:nn
- {
- asin, acos, atan, acot,
- asinh, acosh, atanh, acoth, round, floor, ceil
- }
- { \exp_args:Nc \DeclareMathOperator{#1}{#1} }
- }
-\NewDocumentCommand { \nan } { } { \text { \texttt { nan } } }
%%
%%
%% End of file `l3doc.cls'.
diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3fp.sty b/Master/texmf-dist/tex/latex/l3kernel/l3fp.sty
index cd23b05bfc1..eac513e519c 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/l3fp.sty
+++ b/Master/texmf-dist/tex/latex/l3kernel/l3fp.sty
@@ -108,7 +108,7 @@
\cs_new_protected:Npn \__fp_chk:w #1 ;
{
\__msg_kernel_error:nnx { kernel } { misused-fp }
- { \__fp_to_tl:w \s__fp \__fp_chk:w #1 ; }
+ { \fp_to_tl:n { \s__fp \__fp_chk:w #1 ; } }
}
\__scan_new:N \s__fp_mark
\__scan_new:N \s__fp_stop
@@ -214,6 +214,13 @@
\cs_new:Npn \__fp_exp_after_normal:Nwwwww
#1 #2; 1 #3 ; 1 #4 ; 1 #5 ; 1 #6 ;
{ \s__fp \__fp_chk:w 1 #1 {#2} {#3} {#4} {#5} {#6} ; }
+\cs_new:Npn \__fp_exp_after_array_f:w #1
+ {
+ \cs:w __fp_exp_after \__fp_type_from_scan:N #1 _f:nw \cs_end:
+ { \__fp_exp_after_array_f:w }
+ #1
+ }
+\cs_new_eq:NN \__fp_exp_after_stop_f:nw \use_none:nn
\int_const:Nn \c__fp_leading_shift_int { - 5 0000 }
\int_const:Nn \c__fp_middle_shift_int { 5 0000 * 9999 }
\int_const:Nn \c__fp_trailing_shift_int { 5 0000 * 10000 }
@@ -328,7 +335,7 @@
\exp_after:wN \use_i:nn
\fi:
}
-\cs_new:Npn \__fp_array_count:w #1 @
+\cs_new:Npn \__fp_array_count:n #1
{
\int_use:N \__int_eval:w \c_zero
\__fp_array_count_loop:Nw #1 { ? \__prg_break: } ;
@@ -337,6 +344,19 @@
}
\cs_new:Npn \__fp_array_count_loop:Nw #1#2;
{ \use_none:n #1 + \c_one \__fp_array_count_loop:Nw }
+\cs_new:Npn \__fp_expand:n #1
+ {
+ \__fp_expand_loop:nwnN { }
+ #1 \prg_do_nothing:
+ \s__fp_mark { } \__fp_expand_loop:nwnN
+ \s__fp_mark { } \__fp_use_i_until_s:nw ;
+ }
+\cs_new:Npn \__fp_expand_loop:nwnN #1#2 \s__fp_mark #3 #4
+ {
+ \exp_after:wN #4 \tex_romannumeral:D -`0
+ #2
+ \s__fp_mark { #3 #1 } #4
+ }
\__msg_kernel_new:nnnn { kernel } { misused-fp }
{ A~floating~point~with~value~'#1'~was~misused. }
{
@@ -421,7 +441,7 @@
{ \cs_set:Npn \__fp_invalid_operation:nnw ##1##2##3; }
{
#1
- \__fp_error:nnfn { invalid } {##2} { \__fp_to_tl:w ##3; } { }
+ \__fp_error:nnfn { invalid } {##2} { \fp_to_tl:n { ##3; } } { }
\fp_flag_on:n { invalid_operation }
##1
}
@@ -430,7 +450,7 @@
{
#1
\__fp_error:nffn { invalid-ii }
- { \__fp_to_tl:w ##2; } { \__fp_to_tl:w ##3; } {##1}
+ { \fp_to_tl:n { ##2; } } { \fp_to_tl:n { ##3; } } {##1}
\fp_flag_on:n { invalid_operation }
\exp_after:wN \c_nan_fp
}
@@ -455,7 +475,7 @@
{ \cs_set:Npn \__fp_division_by_zero_o:Nnw ##1##2##3; }
{
#1
- \__fp_error:nnfn { zero-div } {##2} { \__fp_to_tl:w ##3; } { }
+ \__fp_error:nnfn { zero-div } {##2} { \fp_to_tl:n { ##3; } } { }
\fp_flag_on:n { division_by_zero }
\exp_after:wN ##1
}
@@ -464,7 +484,7 @@
{
#1
\__fp_error:nffn { zero-div-ii }
- { \__fp_to_tl:w ##3; } { \__fp_to_tl:w ##4; } {##2}
+ { \fp_to_tl:n { ##3; } } { \fp_to_tl:n { ##4; } } {##2}
\fp_flag_on:n { division_by_zero }
\exp_after:wN ##1
}
@@ -493,7 +513,7 @@
#1
\__fp_error:nffn
{ flow \if_meaning:w 1 ##1 -to \fi: }
- { \__fp_to_tl:w \s__fp \__fp_chk:w ##1##2##3; }
+ { \fp_to_tl:n { \s__fp \__fp_chk:w ##1##2##3; } }
{ \token_if_eq_meaning:NNF 0 ##2 { - } #4 }
{#2}
\fp_flag_on:n {#2}
@@ -869,20 +889,21 @@
}
\cs_new:Npn \__fp_parse_operand_relax:NN #1#2
{
- \cs:w __fp_exp_after \__fp_type_from_scan:N #2 _f:nw \cs_end:
+ \cs:w __fp_parse_exp_after \__fp_type_from_scan:N #2 _f:nw \cs_end:
{
\exp_after:wN \__fp_parse_infix:NN
\exp_after:wN #1 \tex_romannumeral:D \__fp_parse_expand:w
}
#2
}
-\cs_new:Npn \__fp_exp_after_mark_f:nw #1
+\cs_new_eq:NN \__fp_parse_exp_after_f:nw \__fp_exp_after_f:nw
+\cs_new:Npn \__fp_parse_exp_after_mark_f:nw #1
{
\__msg_kernel_expandable_error:nn { kernel } { fp-early-end }
\exp_after:wN \c_nan_fp
\tex_romannumeral:D -`0 #1
}
-\cs_new:cpn { __fp_exp_after_?_f:nw } #1#2
+\cs_new:cpn { __fp_parse_exp_after_?_f:nw } #1#2
{
\__msg_kernel_expandable_error:nnn
{ kernel } { bad-variable } {#2}
@@ -1367,7 +1388,7 @@
\tex_romannumeral:D
}
\cs_new:Npn \__fp_parse_until_test:NwN #1 #2 @ #3 { #3 #1 #2 @ }
-\cs_new:Npn \__fp_parse_stop_until:N #1 { }
+\cs_new_eq:NN \__fp_parse_stop_until:N \use_none:n
\cs_new:Npn \__fp_parse_infix_after_operand:NwN #1 #2;
{
\__fp_exp_after_f:nw { \__fp_parse_infix:NN #1 }
@@ -1534,7 +1555,7 @@
{ #2 #1 #3 \__fp_parse_expand:w }
\cs_new:Npn \__fp_parse_apply_round:NNwN #1#2#3@#4
{
- \if_case:w \__int_eval:w \__fp_array_count:w #3@ - \c_one \__int_eval_end:
+ \if_case:w \__int_eval:w \__fp_array_count:n {#3} - \c_one \__int_eval_end:
\__fp_round:Nwn #2 #3 {0} \tex_romannumeral:D
\or: \__fp_round:Nww #2 #3 \tex_romannumeral:D
\else:
@@ -1561,8 +1582,8 @@
\__fp_parse_expand:w
}
}
-\__fp_tmp:w - { neg }
-\__fp_tmp:w ! { not }
+\__fp_tmp:w - { - }
+\__fp_tmp:w ! { ! }
\group_begin:
\char_set_catcode_letter:N \)
\cs_new:cpn { __fp_parse_prefix_(:Nw } #1
@@ -1592,13 +1613,6 @@
}
}
\group_end:
-\cs_new:Npn \__fp_exp_after_array_f:w #1
- {
- \cs:w __fp_exp_after \__fp_type_from_scan:N #1 _f:nw \cs_end:
- { \__fp_exp_after_array_f:w }
- #1
- }
-\cs_new:Npn \__fp_exp_after_stop_f:nw #1#2 { }
\cs_new:cpn {__fp_parse_prefix_.:Nw} #1
{
\exp_after:wN \__fp_parse_infix_after_operand:NwN
@@ -2090,7 +2104,7 @@
{ \fi: \fi: #2 }
\cs_new:Npn \__fp_minmax_break_o:w #1 \fi: \fi: #2 \s__fp #3; #4;
{ \fi: \__fp_exp_after_o:w \s__fp #3; }
-\cs_new:Npn \__fp_not_o:w \s__fp \__fp_chk:w #1#2;
+\cs_new:cpn { __fp_!_o:w } \s__fp \__fp_chk:w #1#2;
{
\if_meaning:w 0 #1
\exp_after:wN \exp_after:wN \exp_after:wN \c_one_fp
@@ -2773,7 +2787,7 @@
\__int_value:w \__fp_round_digit:Nw #7 #8 ;
\exp_after:wN ;
}
-\cs_new:Npn \__fp_neg_o:w #1 \s__fp \__fp_chk:w #2 #3
+\cs_new:cpn { __fp_-_o:w } #1 \s__fp \__fp_chk:w #2 #3
{
\exp_after:wN \__fp_exp_after_o:w
\exp_after:wN \s__fp
@@ -3775,7 +3789,7 @@
\cs_new:Npn \__fp_pow_neg:www \s__fp \__fp_chk:w #1#2; #3; #4;
{
\if_case:w \__fp_pow_neg_case:w #4 ;
- \exp_after:wN \__fp_neg_o:w
+ \cs:w __fp_-_o:w \exp_after:wN \cs_end:
\or:
\if_int_compare:w \__int_eval:w #1 / \c_two = \c_one
\__fp_invalid_operation_o:Nww ^ #3; #4;
@@ -4193,11 +4207,12 @@
\cs_new:Npn \__fp_trim_zeros_loop:w #1 0; #2 { #2 #1 ; #2 }
\cs_new:Npn \__fp_trim_zeros_dot:w #1 .; { \__fp_trim_zeros_end:w #1 ; }
\cs_new:Npn \__fp_trim_zeros_end:w #1 ; #2 \s__stop { #1 }
-\cs_new:Npn \fp_to_scientific:N #1 { \exp_after:wN \__fp_to_scientific:w #1 }
+\cs_new:Npn \fp_to_scientific:N #1
+ { \exp_after:wN \__fp_to_scientific_dispatch:w #1 }
\cs_generate_variant:Nn \fp_to_scientific:N { c }
\cs_new_nopar:Npn \fp_to_scientific:n
{
- \exp_after:wN \__fp_to_scientific:w
+ \exp_after:wN \__fp_to_scientific_dispatch:w
\tex_romannumeral:D -`0 \__fp_parse:n
}
\group_begin:
@@ -4205,7 +4220,7 @@
\tl_to_lowercase:n
{
\group_end:
- \cs_new:Npn \__fp_to_scientific:w \s__fp \__fp_chk:w #1#2
+ \cs_new:Npn \__fp_to_scientific_dispatch:w \s__fp \__fp_chk:w #1#2
{
\if_meaning:w 2 #2 \exp_after:wN - \tex_romannumeral:D -`0 \fi:
\if_case:w #1 \exp_stop_f:
@@ -4247,14 +4262,15 @@
}
\cs_new:Npn \__fp_to_scientific_normal:wNw #1 ; #2#3;
{ \__fp_trim_zeros:w #2.#3 ; #1 }
-\cs_new:Npn \fp_to_decimal:N #1 { \exp_after:wN \__fp_to_decimal:w #1 }
+\cs_new:Npn \fp_to_decimal:N #1
+ { \exp_after:wN \__fp_to_decimal_dispatch:w #1 }
\cs_generate_variant:Nn \fp_to_decimal:N { c }
\cs_new_nopar:Npn \fp_to_decimal:n
{
- \exp_after:wN \__fp_to_decimal:w
+ \exp_after:wN \__fp_to_decimal_dispatch:w
\tex_romannumeral:D -`0 \__fp_parse:n
}
-\cs_new:Npn \__fp_to_decimal:w \s__fp \__fp_chk:w #1#2
+\cs_new:Npn \__fp_to_decimal_dispatch:w \s__fp \__fp_chk:w #1#2
{
\if_meaning:w 2 #2 \exp_after:wN - \tex_romannumeral:D -`0 \fi:
\if_case:w #1 \exp_stop_f:
@@ -4315,14 +4331,14 @@
#3.#4 ;
}
\cs_new:Npn \__fp_to_decimal_huge:wnnnn #1; #2#3#4#5 { #2#3#4#5 #1 }
-\cs_new:Npn \fp_to_tl:N #1 { \exp_after:wN \__fp_to_tl:w #1 }
+\cs_new:Npn \fp_to_tl:N #1 { \exp_after:wN \__fp_to_tl_dispatch:w #1 }
\cs_generate_variant:Nn \fp_to_tl:N { c }
\cs_new_nopar:Npn \fp_to_tl:n
{
- \exp_after:wN \__fp_to_tl:w
+ \exp_after:wN \__fp_to_tl_dispatch:w
\tex_romannumeral:D -`0 \__fp_parse:n
}
-\cs_new:Npn \__fp_to_tl:w \s__fp \__fp_chk:w #1#2
+\cs_new:Npn \__fp_to_tl_dispatch:w \s__fp \__fp_chk:w #1#2
{
\if_meaning:w 2 #2 \exp_after:wN - \tex_romannumeral:D -`0 \fi:
\if_case:w #1 \exp_stop_f:
@@ -4352,16 +4368,16 @@
\cs_generate_variant:Nn \fp_to_dim:N { c }
\cs_new:Npx \fp_to_dim:n #1
{ \exp_not:N \fp_to_decimal:n {#1} \tl_to_str:n {pt} }
-\cs_new:Npn \fp_to_int:N #1 { \exp_after:wN \__fp_to_int:w #1 }
+\cs_new:Npn \fp_to_int:N #1 { \exp_after:wN \__fp_to_int_dispatch:w #1 }
\cs_generate_variant:Nn \fp_to_int:N { c }
\cs_new_nopar:Npn \fp_to_int:n
{
- \exp_after:wN \__fp_to_int:w
+ \exp_after:wN \__fp_to_int_dispatch:w
\tex_romannumeral:D -`0 \__fp_parse:n
}
-\cs_new:Npn \__fp_to_int:w #1;
+\cs_new:Npn \__fp_to_int_dispatch:w #1;
{
- \exp_after:wN \__fp_to_decimal:w \tex_romannumeral:D -`0
+ \exp_after:wN \__fp_to_decimal_dispatch:w \tex_romannumeral:D -`0
\__fp_round:Nwn \__fp_round_to_nearest:NNN #1; { 0 }
}
\cs_new:Npn \dim_to_fp:n #1
@@ -4405,19 +4421,28 @@
{ \fp_to_decimal:n { abs \__fp_parse:n {#1} } }
\cs_new:Npn \__fp_array_to_clist:n #1
{
- \__fp_array_to_clist_i:wwww ;
- #1
- \__fp_array_to_clist_ii:ww \s__fp ; @
- ; , ~ , ~ @ \s_stop
+ \tl_if_empty:nF {#1}
+ {
+ \__fp_expand:n
+ {
+ { \use_ii:nn }
+ \__fp_array_to_clist_loop:Nw #1 { ? \__prg_break: } ;
+ \__prg_break_point:
+ }
+ }
}
-\cs_new:Npn \__fp_array_to_clist_i:wwww #1; #2 \s__fp #3; #4 @
+\cs_new:Npx \__fp_array_to_clist_loop:Nw #1#2;
{
- #2
- \exp_after:wN \__fp_array_to_clist_i:wwww
- \tex_romannumeral:D -`0 \__fp_to_tl:w \s__fp #3 ; ;
- #4 , ~ #1 @
+ \exp_not:N \use_none:n #1
+ \exp_not:N \exp_after:wN
+ {
+ \exp_not:N \exp_after:wN ,
+ \exp_not:N \exp_after:wN \c_space_tl
+ \exp_not:N \tex_romannumeral:D -`0
+ \exp_not:N \__fp_to_tl_dispatch:w #1 #2 ;
+ }
+ \exp_not:N \__fp_array_to_clist_loop:Nw
}
-\cs_new:Npn \__fp_array_to_clist_ii:ww #1 ; , ~ , ~ #2 @ #3 \s_stop {#2}
%%
%% File: l3fp-assign.dtx Copyright (C) 2011-2012 The LaTeX3 project
%%
@@ -4555,8 +4580,18 @@
{ \if_meaning:w #1 0 \prg_return_true: \else: \prg_return_false: \fi: }
\cs_new_protected_nopar:Npn \fp_abs:N { \__fp_abs:NNN \tl_set:Nx \__fp_abs_o:w }
\cs_new_protected_nopar:Npn \fp_gabs:N { \__fp_abs:NNN \tl_gset:Nx \__fp_abs_o:w }
-\cs_new_protected_nopar:Npn \fp_neg:N { \__fp_abs:NNN \tl_set:Nx \__fp_neg_o:w }
-\cs_new_protected_nopar:Npn \fp_gneg:N { \__fp_abs:NNN \tl_gset:Nx \__fp_neg_o:w }
+\cs_new_protected_nopar:Npx \fp_neg:N
+ {
+ \exp_not:N \__fp_abs:NNN
+ \exp_not:N \tl_set:Nx
+ \exp_not:c { __fp_-_o:w }
+ }
+\cs_new_protected_nopar:Npx \fp_gneg:N
+ {
+ \exp_not:N \__fp_abs:NNN
+ \exp_not:N \tl_gset:Nx
+ \exp_not:c { __fp_-_o:w }
+ }
\cs_new_protected:Npn \__fp_abs:NNN #1#2#3
{ #1 #3 { \exp_after:wN #2 #3 \prg_do_nothing: } }
\cs_generate_variant:Nn \fp_abs:N { c }
diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3prop.sty b/Master/texmf-dist/tex/latex/l3kernel/l3prop.sty
index 1e692963872..e9ecb340822 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/l3prop.sty
+++ b/Master/texmf-dist/tex/latex/l3kernel/l3prop.sty
@@ -46,7 +46,7 @@
%%
%% -----------------------------------------------------------------------
\RequirePackage{l3bootstrap}
-\GetIdInfo$Id: l3prop.dtx 4092 2012-08-14 14:04:41Z bruno $
+\GetIdInfo$Id: l3prop.dtx 4190 2012-09-03 00:23:31Z bruno $
{L3 Property lists}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3tl.sty b/Master/texmf-dist/tex/latex/l3kernel/l3tl.sty
index ddcd94376cf..8a8d89bb904 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/l3tl.sty
+++ b/Master/texmf-dist/tex/latex/l3kernel/l3tl.sty
@@ -46,7 +46,7 @@
%%
%% -----------------------------------------------------------------------
\RequirePackage{l3bootstrap}
-\GetIdInfo$Id: l3tl.dtx 3991 2012-07-16 19:00:35Z joseph $
+\GetIdInfo$Id: l3tl.dtx 4201 2012-09-05 08:00:54Z joseph $
{L3 Token lists}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
@@ -69,7 +69,6 @@
}
\cs_generate_variant:Nn \tl_const:Nn { c }
\cs_generate_variant:Nn \tl_const:Nx { c }
-\tl_const:Nn \c_empty_tl { }
\cs_new_protected:Npn \tl_clear:N #1
{ \tl_set_eq:NN #1 \c_empty_tl }
\cs_new_protected:Npn \tl_gclear:N #1
@@ -104,6 +103,7 @@
\cs_new_eq:NN \tl_if_exist:cT \cs_if_exist:cT
\cs_new_eq:NN \tl_if_exist:cF \cs_if_exist:cF
\cs_new_eq:NN \tl_if_exist_p:c \cs_if_exist_p:c
+\tl_const:Nn \c_empty_tl { }
\tl_const:Nx \c_job_name_tl { \tex_jobname:D }
\tl_const:Nn \c_space_tl { ~ }
\cs_new_protected:Npn \tl_set:Nn #1#2
@@ -589,16 +589,19 @@
\cs_generate_variant:Nn \tl_reverse:N { c }
\cs_generate_variant:Nn \tl_greverse:N { c }
\cs_new:Npn \tl_head:w #1#2 \q_stop {#1}
-\cs_new:Npn \tl_tail:w #1#2 \q_stop {#2}
\cs_new:Npn \tl_head:n #1
{ \etex_unexpanded:D \exp_after:wN { \tl_head:w #1 { } \q_stop } }
-\cs_new:Npn \tl_tail:n #1
- { \etex_unexpanded:D \__tl_tail:w #1 \q_mark { } \q_mark \q_stop }
-\cs_new:Npn \__tl_tail:w #1 #2 \q_mark #3 \q_stop { {#2} }
-\cs_new_nopar:Npn \tl_head:N { \exp_args:No \tl_head:n }
\cs_generate_variant:Nn \tl_head:n { V , v , f }
-\cs_new_nopar:Npn \tl_tail:N { \exp_args:No \tl_tail:n }
+\cs_new_nopar:Npn \tl_head:N { \exp_args:No \tl_head:n }
+\cs_new:Npn \tl_tail:n #1
+ {
+ \etex_unexpanded:D
+ \tl_if_blank:nTF {#1}
+ { { } }
+ { \exp_after:wN { \use_none:n #1 } }
+ }
\cs_generate_variant:Nn \tl_tail:n { V , v , f }
+\cs_new_nopar:Npn \tl_tail:N { \exp_args:No \tl_tail:n }
\cs_new:Npn \str_head:n #1
{
\exp_after:wN \__str_head:w
@@ -741,6 +744,7 @@
{ p , T , F , TF }
\prg_new_eq_conditional:NNn \tl_if_head_space:n \tl_if_head_is_space:n
{ p , T , F , TF }
+\cs_new:Npn \tl_tail:w #1#2 \q_stop {#2}
%%
%%
%% End of file `l3tl.sty'.
diff --git a/Master/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty b/Master/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty
index 6f0ba740b12..32ca88703df 100644
--- a/Master/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty
+++ b/Master/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty
@@ -46,8 +46,8 @@
%%
%% -----------------------------------------------------------------------
%%
-\RequirePackage{expl3}[2012/08/29]
-\@ifpackagelater{expl3}{2012/08/29}
+\RequirePackage{expl3}[2012/09/05]
+\@ifpackagelater{expl3}{2012/09/05}
{}
{%
\PackageError{l3keys2e}{Support package l3kernel too old.}
@@ -59,7 +59,7 @@
\endinput
}
\RequirePackage{xparse}
-\GetIdInfo$Id: l3keys2e.dtx 4160 2012-08-29 18:57:05Z joseph $
+\GetIdInfo$Id: l3keys2e.dtx 4205 2012-09-05 10:30:28Z joseph $
{LaTeX2e option processing using LaTeX3 keys}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
diff --git a/Master/texmf-dist/tex/latex/l3packages/xparse/xparse.sty b/Master/texmf-dist/tex/latex/l3packages/xparse/xparse.sty
index e94dd2437cc..5ea62b01a99 100644
--- a/Master/texmf-dist/tex/latex/l3packages/xparse/xparse.sty
+++ b/Master/texmf-dist/tex/latex/l3packages/xparse/xparse.sty
@@ -50,8 +50,8 @@
%%
%% -----------------------------------------------------------------------
%%
-\RequirePackage{expl3}[2012/08/29]
-\@ifpackagelater{expl3}{2012/08/29}
+\RequirePackage{expl3}[2012/09/05]
+\@ifpackagelater{expl3}{2012/09/05}
{}
{%
\PackageError{xparse}{Support package l3kernel too old.}
@@ -62,7 +62,7 @@
}%
\endinput
}
-\GetIdInfo$Id: xparse.dtx 4160 2012-08-29 18:57:05Z joseph $
+\GetIdInfo$Id: xparse.dtx 4205 2012-09-05 10:30:28Z joseph $
{L3 Experimental document command parser}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
diff --git a/Master/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.sty b/Master/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.sty
index eae460818a5..b210a1d7d49 100644
--- a/Master/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.sty
+++ b/Master/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.sty
@@ -50,8 +50,8 @@
%%
%% -----------------------------------------------------------------------
%%
-\RequirePackage{expl3}[2012/08/29]
-\@ifpackagelater{expl3}{2012/08/29}
+\RequirePackage{expl3}[2012/09/05]
+\@ifpackagelater{expl3}{2012/09/05}
{}
{%
\PackageError{xtemplate}{Support package l3kernel too old.}
@@ -62,7 +62,7 @@
}%
\endinput
}
-\GetIdInfo$Id: xtemplate.dtx 4160 2012-08-29 18:57:05Z joseph $
+\GetIdInfo$Id: xtemplate.dtx 4205 2012-09-05 10:30:28Z joseph $
{L3 Experimental prototype document functions}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}