diff options
author | Karl Berry <karl@freefriends.org> | 2012-01-19 22:49:13 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2012-01-19 22:49:13 +0000 |
commit | 17d590a6bcf898806aeec2d7aa57d641a440ca10 (patch) | |
tree | dd82ac37aed8f78a0eca38ab7b5c1250b6585fef /Master/texmf-dist/tex/latex/l3kernel | |
parent | 2648c52105e48119c27762f885fefa29d172b38b (diff) |
l3kernel 3209 (19jan12)
git-svn-id: svn://tug.org/texlive/trunk@25157 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/l3kernel')
22 files changed, 520 insertions, 396 deletions
diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty index 906b5d1fc9f..4c96696adb5 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty @@ -13,7 +13,7 @@ %% %% Do not distribute a modified version of this file. %% -%% File: expl3.dtx Copyright (C) 1990-2011 The LaTeX3 Project +%% File: expl3.dtx Copyright (C) 1990-2012 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 @@ -45,11 +45,22 @@ %% prior consultation with the LaTeX3 Project. %% %% ----------------------------------------------------------------------- -\RequirePackage{l3names} +\RequirePackage{l3names}[2011/12/30] +\@ifpackagelater{l3names}{2011/12/30} + {} + { + \PackageError{expl3}{Mismatched LaTeX3 packages detected.} + { + Please install an up to date~version of l3kernel + using your TeX package manager or from CTAN.\\ \\ + Loading expl3 will abort! + } + \endinput + } \def\ExplFileName{expl3} \def\ExplFileDescription{L3 Experimental code bundle wrapper} -\def\ExplFileDate{2011/12/29} -\def\ExplFileVersion{3109} +\def\ExplFileDate{2012/01/19} +\def\ExplFileVersion{3209} \RequirePackage{etex} \reserveinserts{32} \RequirePackage{calc} @@ -71,7 +82,7 @@ \fi \RequirePackage{ l3basics, l3expan, l3tl } \ifodd \l@expl@check@declarations@bool \relax - \cs_new_protected:Npn \tl_check_exists:N #1 + \cs_new_protected:Npn \cs_check_exists:N #1 { \cs_if_exist:NF #1 { @@ -81,34 +92,34 @@ } \cs_set_protected:Npn \tl_set:Nn #1#2 { - \tl_check_exists:N #1 + \cs_check_exists:N #1 \cs_set_nopar:Npx #1 { \exp_not:n {#2} } } \cs_set_protected:Npn \tl_set:Nx #1#2 { - \tl_check_exists:N #1 + \cs_check_exists:N #1 \cs_set_nopar:Npx #1 {#2} } \cs_set_protected:Npn \tl_gset:Nn #1#2 { - \tl_check_exists:N #1 + \cs_check_exists:N #1 \cs_gset_nopar:Npx #1 { \exp_not:n {#2} } } \cs_set_protected:Npn \tl_gset:Nx #1#2 { - \tl_check_exists:N #1 + \cs_check_exists:N #1 \cs_gset_nopar:Npx #1 {#2} } \cs_set_protected:Npn \tl_set_eq:NN #1#2 { - \tl_check_exists:N #1 - \tl_check_exists:N #2 + \cs_check_exists:N #1 + \cs_check_exists:N #2 \cs_set_eq:NN #1 #2 } \cs_set_protected:Npn \tl_gset_eq:NN #1#2 { - \tl_check_exists:N #1 - \tl_check_exists:N #2 + \cs_check_exists:N #1 + \cs_check_exists:N #2 \cs_gset_eq:NN #1 #2 } \fi @@ -116,7 +127,58 @@ l3seq, l3int, l3quark, - l3prg, + l3prg} +\ifodd \l@expl@check@declarations@bool \relax + \cs_set_protected:Npn \bool_set_true:N #1 + { + \cs_check_exists:N #1 + \cs_set_eq:NN #1 \c_true_bool + } + \cs_set_protected:Npn \bool_set_false:N #1 + { + \cs_check_exists:N #1 + \cs_set_eq:NN #1 \c_false_bool + } + \cs_set_protected:Npn \bool_gset_true:N #1 + { + \cs_check_exists:N #1 + \cs_gset_eq:NN #1 \c_true_bool + } + \cs_set_protected:Npn \bool_gset_false:N #1 + { + \cs_check_exists:N #1 + \cs_gset_eq:NN #1 \c_false_bool + } + \cs_set_protected:Npn \bool_set_eq:NN #1 + { + \cs_check_exists:N #1 + \cs_set_eq:NN #1 + } + \cs_undefine:N \bool_set_eq:cN + \cs_undefine:N \bool_set_eq:Nc + \cs_undefine:N \bool_set_eq:cc + \cs_generate_variant:Nn \bool_set_eq:NN { c , Nc , cc } + \cs_set_protected:Npn \bool_gset_eq:NN #1 + { + \cs_check_exists:N #1 + \cs_set_eq:NN #1 + } + \cs_undefine:N \bool_gset_eq:cN + \cs_undefine:N \bool_gset_eq:Nc + \cs_undefine:N \bool_gset_eq:cc + \cs_generate_variant:Nn \bool_gset_eq:NN { c , Nc , cc } + \cs_set_protected:Npn \bool_set:Nn #1#2 + { + \cs_check_exists:N #1 + \tex_chardef:D #1 = \bool_if_p:n {#2} + } + \cs_set_protected:Npn \bool_gset:Nn #1#2 + { + \cs_check_exists:N #1 + \tex_global:D \tex_chardef:D #1 = \bool_if_p:n {#2} + } +\fi +\RequirePackage{ l3clist, l3token, l3prop, diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3basics.sty b/Master/texmf-dist/tex/latex/l3kernel/l3basics.sty index 6faa1110ad1..39a6bbaef22 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3basics.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3basics.sty @@ -13,7 +13,7 @@ %% %% Do not distribute a modified version of this file. %% -%% File: l3basics.dtx Copyright (C) 1990-2011 The LaTeX3 project +%% File: l3basics.dtx Copyright (C) 1990-2012 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 @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3basics.dtx 3090 2011-12-23 03:12:53Z bruno $ +\GetIdInfo$Id: l3basics.dtx 3196 2012-01-15 09:44:05Z joseph $ {L3 Experimental basic definitions} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} @@ -141,13 +141,9 @@ \cs_set:Npn \use:c #1 { \cs:w #1 \cs_end: } \cs_set_protected:Npn \use:x #1 { - \group_begin: - \cs_set_nopar:Npx \cs_tmp:w {#1} - \exp_after:wN - \group_end: - \cs_tmp:w + \cs_set_nopar:Npx \l_exp_internal_tl {#1} + \l_exp_internal_tl } -\cs_set:Npn \cs_tmp:w { } \cs_set:Npn \use:n #1 {#1} \cs_set:Npn \use:nn #1#2 {#1#2} \cs_set:Npn \use:nnn #1#2#3 {#1#2#3} @@ -618,9 +614,11 @@ \cs_new_protected:Npn \cs_generate_from_arg_count_aux:nwn #1 #2 \fi: #3 { \fi: #3 #1 } -\cs_new_nopar:Npn \cs_generate_from_arg_count:cNnn +\cs_new_protected_nopar:Npn \cs_generate_from_arg_count:cNnn { \exp_args:Nc \cs_generate_from_arg_count:NNnn } -\cs_new:Npn \cs_generate_from_arg_count_error_msg:Nn #1#2 +\cs_new_protected_nopar:Npn \cs_generate_from_arg_count:Ncnn + { \exp_args:NNc \cs_generate_from_arg_count:NNnn } +\cs_new_protected:Npn \cs_generate_from_arg_count_error_msg:Nn #1#2 { \msg_kernel_error:nnxx { kernel } { bad-number-of-arguments } { \token_to_str:N #1 } { \int_eval:n {#2} } @@ -710,7 +708,7 @@ \cs_new:Npn \kernel_register_show:N #1 { \cs_if_exist:NTF #1 - { \tex_showthe:D #1 } + { \tex_showthe:D \use:n #1 } { \msg_kernel_error:nnx { kernel } { variable-not-defined } { \token_to_str:N #1 } @@ -767,14 +765,6 @@ \cs_new_eq:NN \prg_break_point:n \use:n \cs_new:Npn \prg_map_break: #1 \prg_break_point:n #2 { #2 } \cs_new:Npn \prg_map_break:n #1 #2 \prg_break_point:n #3 { #3 #1 } -\cs_new_eq:NN \c_luatex_is_engine_bool \luatex_if_engine_p: -\cs_new_eq:NN \c_pdftex_is_engine_bool \pdftex_if_engine_p: -\cs_new_eq:NN \c_xetex_is_engine_bool \xetex_if_engine_p: -\cs_set:Npn \use_i_after_fi:nw #1 \fi: { \fi: #1 } -\cs_set:Npn \use_i_after_else:nw #1 \else: #2 \fi: { \fi: #1 } -\cs_set:Npn \use_i_after_or:nw #1 \or: #2 \fi: { \fi: #1 } -\cs_set:Npn \use_i_after_orelse:nw #1#2#3 \fi: { \fi: #1 } -\tex_let:D \cs_set_eq:NwN \tex_let:D %% %% %% End of file `l3basics.sty'. diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3bootstrap.sty b/Master/texmf-dist/tex/latex/l3kernel/l3bootstrap.sty index 9c0033a0958..f5320078a78 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3bootstrap.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3bootstrap.sty @@ -94,7 +94,7 @@ {\def\ExplFileDate{#2}} \protected\def\GetIdInfoAuxSVN#1\relax#2-#3-#4\relax#5Z\relax {\def\ExplFileDate{#2/#3/#4}} -\GetIdInfo$Id: l3bootstrap.dtx 3006 2011-11-25 13:29:59Z joseph $ +\GetIdInfo$Id: l3bootstrap.dtx 3110 2011-12-29 14:23:48Z joseph $ {L3 experimental bootstrap code} \ProvidesPackage{l3bootstrap} [% diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3box.sty b/Master/texmf-dist/tex/latex/l3kernel/l3box.sty index 14f032e0ea5..9176a912928 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3box.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3box.sty @@ -13,7 +13,7 @@ %% %% Do not distribute a modified version of this file. %% -%% File: l3box.dtx Copyright (C) 2005-2011 The LaTeX3 Project +%% File: l3box.dtx Copyright (C) 2005-2012 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 @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3box.dtx 3086 2011-12-22 17:55:46Z bruno $ +\GetIdInfo$Id: l3box.dtx 3158 2012-01-09 00:47:42Z bruno $ {L3 Experimental boxes} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} @@ -263,8 +263,8 @@ \dim_new:N \l_box_bottom_new_dim \dim_new:N \l_box_left_new_dim \dim_new:N \l_box_right_new_dim -\box_new:N \l_box_tmp_box -\fp_new:N \l_box_tmp_fp +\box_new:N \l_box_internal_box +\fp_new:N \l_box_internal_fp \fp_new:N \l_box_x_fp \fp_new:N \l_box_y_fp \fp_new:N \l_box_x_new_fp @@ -303,40 +303,40 @@ { \box_rotate_quadrant_three: } { \box_rotate_quadrant_four: } } - \hbox_set:Nn \l_box_tmp_box { \box_use:N #1 } - \hbox_set:Nn \l_box_tmp_box + \hbox_set:Nn \l_box_internal_box { \box_use:N #1 } + \hbox_set:Nn \l_box_internal_box { \tex_kern:D -\l_box_left_new_dim \hbox:n { \driver_box_rotate_begin: - \box_use:N \l_box_tmp_box + \box_use:N \l_box_internal_box \driver_box_rotate_end: } } - \box_set_ht:Nn \l_box_tmp_box { \l_box_top_new_dim } - \box_set_dp:Nn \l_box_tmp_box { -\l_box_bottom_new_dim } - \box_set_wd:Nn \l_box_tmp_box + \box_set_ht:Nn \l_box_internal_box { \l_box_top_new_dim } + \box_set_dp:Nn \l_box_internal_box { -\l_box_bottom_new_dim } + \box_set_wd:Nn \l_box_internal_box { \l_box_right_new_dim - \l_box_left_new_dim } - \box_use:N \l_box_tmp_box + \box_use:N \l_box_internal_box } \cs_new_protected:Npn \box_rotate_set_sin_cos: { - \fp_set_eq:NN \l_box_tmp_fp \l_box_angle_fp - \fp_div:Nn \l_box_tmp_fp { 180 } - \fp_mul:Nn \l_box_tmp_fp { \c_pi_fp } - \fp_sin:Nn \l_box_sin_fp { \l_box_tmp_fp } - \fp_cos:Nn \l_box_cos_fp { \l_box_tmp_fp } + \fp_set_eq:NN \l_box_internal_fp \l_box_angle_fp + \fp_div:Nn \l_box_internal_fp { 180 } + \fp_mul:Nn \l_box_internal_fp { \c_pi_fp } + \fp_sin:Nn \l_box_sin_fp { \l_box_internal_fp } + \fp_cos:Nn \l_box_cos_fp { \l_box_internal_fp } } \cs_new_protected:Npn \box_rotate_x:nnN #1#2#3 { \fp_set_from_dim:Nn \l_box_x_fp {#1} \fp_set_from_dim:Nn \l_box_y_fp {#2} \fp_set_eq:NN \l_box_x_new_fp \l_box_x_fp - \fp_set_eq:NN \l_box_tmp_fp \l_box_y_fp + \fp_set_eq:NN \l_box_internal_fp \l_box_y_fp \fp_mul:Nn \l_box_x_new_fp { \l_box_cos_fp } - \fp_mul:Nn \l_box_tmp_fp { \l_box_sin_fp } - \fp_sub:Nn \l_box_x_new_fp { \l_box_tmp_fp } + \fp_mul:Nn \l_box_internal_fp { \l_box_sin_fp } + \fp_sub:Nn \l_box_x_new_fp { \l_box_internal_fp } \dim_set:Nn #3 { \fp_to_dim:N \l_box_x_new_fp } } \cs_new_protected:Npn \box_rotate_y:nnN #1#2#3 @@ -344,10 +344,10 @@ \fp_set_from_dim:Nn \l_box_x_fp {#1} \fp_set_from_dim:Nn \l_box_y_fp {#2} \fp_set_eq:NN \l_box_y_new_fp \l_box_y_fp - \fp_set_eq:NN \l_box_tmp_fp \l_box_x_fp + \fp_set_eq:NN \l_box_internal_fp \l_box_x_fp \fp_mul:Nn \l_box_y_new_fp { \l_box_cos_fp } - \fp_mul:Nn \l_box_tmp_fp { \l_box_sin_fp } - \fp_add:Nn \l_box_y_new_fp { \l_box_tmp_fp } + \fp_mul:Nn \l_box_internal_fp { \l_box_sin_fp } + \fp_add:Nn \l_box_y_new_fp { \l_box_internal_fp } \dim_set:Nn #3 { \fp_to_dim:N \l_box_y_new_fp } } \cs_new_protected:Npn \box_rotate_quadrant_one: @@ -406,12 +406,12 @@ \dim_set:Nn \l_box_right_dim { \box_wd:N #1 } \dim_zero:N \l_box_left_dim \fp_set_from_dim:Nn \l_box_scale_x_fp {#2} - \fp_set_from_dim:Nn \l_box_tmp_fp { \l_box_right_dim } - \fp_div:Nn \l_box_scale_x_fp { \l_box_tmp_fp } + \fp_set_from_dim:Nn \l_box_internal_fp { \l_box_right_dim } + \fp_div:Nn \l_box_scale_x_fp { \l_box_internal_fp } \fp_set_from_dim:Nn \l_box_scale_y_fp {#3} - \fp_set_from_dim:Nn \l_box_tmp_fp + \fp_set_from_dim:Nn \l_box_internal_fp { \l_box_top_dim - \l_box_bottom_dim } - \fp_div:Nn \l_box_scale_y_fp { \l_box_tmp_fp } + \fp_div:Nn \l_box_scale_y_fp { \l_box_internal_fp } \fp_compare:NNNTF \l_box_scale_x_fp = \c_one_fp { \fp_compare:NNNTF \l_box_scale_y_fp = \c_one_fp @@ -453,9 +453,9 @@ \dim_set:Nn \l_box_right_dim { \box_wd:N #1 } \dim_zero:N \l_box_left_dim \fp_set_from_dim:Nn \l_box_scale_y_fp {#2} - \fp_set_from_dim:Nn \l_box_tmp_fp + \fp_set_from_dim:Nn \l_box_internal_fp { \l_box_top_dim - \l_box_bottom_dim } - \fp_div:Nn \l_box_scale_y_fp { \l_box_tmp_fp } + \fp_div:Nn \l_box_scale_y_fp { \l_box_internal_fp } \fp_set_eq:NN \l_box_scale_x_fp \l_box_scale_y_fp \fp_compare:NNNTF \l_box_scale_y_fp = \c_one_fp { \box_use:N #1 } @@ -474,8 +474,8 @@ \dim_set:Nn \l_box_right_dim { \box_wd:N #1 } \dim_zero:N \l_box_left_dim \fp_set_from_dim:Nn \l_box_scale_x_fp {#2} - \fp_set_from_dim:Nn \l_box_tmp_fp { \l_box_right_dim } - \fp_div:Nn \l_box_scale_x_fp { \l_box_tmp_fp } + \fp_set_from_dim:Nn \l_box_internal_fp { \l_box_right_dim } + \fp_div:Nn \l_box_scale_x_fp { \l_box_internal_fp } \fp_set_eq:NN \l_box_scale_y_fp \l_box_scale_x_fp \fp_compare:NNNTF \l_box_scale_x_fp = \c_one_fp { \box_use:N #1 } @@ -524,26 +524,26 @@ } \cs_new_protected:Npn \box_resize_common:N #1 { - \hbox_set:Nn \l_box_tmp_box + \hbox_set:Nn \l_box_internal_box { \driver_box_scale_begin: \hbox_overlap_right:n { \box_use:N #1 } \driver_box_scale_end: } - \box_set_ht:Nn \l_box_tmp_box { \l_box_top_new_dim } - \box_set_dp:Nn \l_box_tmp_box { \l_box_bottom_new_dim } + \box_set_ht:Nn \l_box_internal_box { \l_box_top_new_dim } + \box_set_dp:Nn \l_box_internal_box { \l_box_bottom_new_dim } \fp_compare:NNNTF \l_box_scale_x_fp < \c_zero_fp { \hbox_to_wd:nn { \l_box_right_new_dim } { \tex_kern:D \l_box_right_new_dim - \box_use:N \l_box_tmp_box + \box_use:N \l_box_internal_box \tex_hss:D } } { - \box_set_wd:Nn \l_box_tmp_box { \l_box_right_new_dim } - \box_use:N \l_box_tmp_box + \box_set_wd:Nn \l_box_internal_box { \l_box_right_new_dim } + \box_use:N \l_box_internal_box } } \cs_new_protected:Npn \box_clip:N #1 diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3clist.sty b/Master/texmf-dist/tex/latex/l3kernel/l3clist.sty index 611599be6bd..bf523e186e1 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3clist.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3clist.sty @@ -15,6 +15,7 @@ %% %% File: l3clist.dtx Copyright (C) 2004-2011 Frank Mittelbach, %% The LaTeX3 project +%% (C) 2012 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 @@ -47,12 +48,12 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3clist.dtx 3086 2011-12-22 17:55:46Z bruno $ +\GetIdInfo$Id: l3clist.dtx 3157 2012-01-09 00:42:07Z bruno $ {L3 Experimental comma separated lists} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} \package_check_loaded_expl: -\tl_new:N \l_clist_tmpa_clist +\tl_new:N \l_clist_internal_clist \cs_new_protected:Npn \clist_tmp:w { } \cs_new_eq:NN \clist_new:N \tl_new:N \cs_new_eq:NN \clist_new:c \tl_new:c @@ -140,8 +141,8 @@ { \clist_put_left_aux:NNNn \clist_gconcat:NNN \clist_set:Nn } \cs_new_protected:Npn \clist_put_left_aux:NNNn #1#2#3#4 { - #2 \l_clist_tmpa_clist {#4} - #1 #3 \l_clist_tmpa_clist #3 + #2 \l_clist_internal_clist {#4} + #1 #3 \l_clist_internal_clist #3 } \cs_generate_variant:Nn \clist_put_left:Nn { NV , No , Nx } \cs_generate_variant:Nn \clist_put_left:Nn { c , cV , co , cx } @@ -153,8 +154,8 @@ { \clist_put_right_aux:NNNn \clist_gconcat:NNN \clist_gset:Nn } \cs_new_protected:Npn \clist_put_right_aux:NNNn #1#2#3#4 { - #2 \l_clist_tmpa_clist {#4} - #1 #3 #3 \l_clist_tmpa_clist + #2 \l_clist_internal_clist {#4} + #1 #3 #3 \l_clist_internal_clist } \cs_generate_variant:Nn \clist_put_right:Nn { NV , No , Nx } \cs_generate_variant:Nn \clist_put_right:Nn { c , cV , co , cx } @@ -201,20 +202,20 @@ \cs_new_eq:NN \clist_gpush:cx \clist_gput_left:cx \cs_new_eq:NN \clist_use:N \tl_use:N \cs_new_eq:NN \clist_use:c \tl_use:c -\clist_new:N \l_clist_remove_clist +\clist_new:N \l_clist_internal_remove_clist \cs_new_protected:Npn \clist_remove_duplicates:N { \clist_remove_duplicates_aux:NN \clist_set_eq:NN } \cs_new_protected:Npn \clist_gremove_duplicates:N { \clist_remove_duplicates_aux:NN \clist_gset_eq:NN } \cs_new_protected:Npn \clist_remove_duplicates_aux:NN #1#2 { - \clist_clear:N \l_clist_remove_clist + \clist_clear:N \l_clist_internal_remove_clist \clist_map_inline:Nn #2 { - \clist_if_in:NnF \l_clist_remove_clist {##1} - { \clist_put_right:Nn \l_clist_remove_clist {##1} } + \clist_if_in:NnF \l_clist_internal_remove_clist {##1} + { \clist_put_right:Nn \l_clist_internal_remove_clist {##1} } } - #1 #2 \l_clist_remove_clist + #1 #2 \l_clist_internal_remove_clist } \cs_generate_variant:Nn \clist_remove_duplicates:N { c } \cs_generate_variant:Nn \clist_gremove_duplicates:N { c } @@ -249,7 +250,6 @@ \cs_new:Npn \clist_remove_all_aux:w #1 , \q_mark , #2 , { \exp_not:n {#1} } \cs_generate_variant:Nn \clist_remove_all:Nn { c } \cs_generate_variant:Nn \clist_gremove_all:Nn { c } -\clist_new:N \l_clist_if_in_clist \prg_new_eq_conditional:NNn \clist_if_empty:N \tl_if_empty:N { p , T , F , TF } \prg_new_eq_conditional:NNn \clist_if_empty:c \tl_if_empty:c { p , T , F , TF } \prg_new_eq_conditional:NNn \clist_if_eq:NN \tl_if_eq:NN { p , T , F , TF } @@ -262,8 +262,8 @@ } \prg_new_protected_conditional:Npnn \clist_if_in:nn #1#2 { T , F , TF } { - \clist_set:Nn \l_clist_if_in_clist {#1} - \exp_args:No \clist_if_in_return:nn \l_clist_if_in_clist {#2} + \clist_set:Nn \l_clist_internal_clist {#1} + \exp_args:No \clist_if_in_return:nn \l_clist_internal_clist {#2} } \cs_new_protected:Npn \clist_if_in_return:nn #1#2 { @@ -325,8 +325,8 @@ } \cs_new_protected:Npn \clist_map_inline:nn #1 { - \clist_set:Nn \l_clist_tmpa_clist {#1} - \clist_map_inline:Nn \l_clist_tmpa_clist + \clist_set:Nn \l_clist_internal_clist {#1} + \clist_map_inline:Nn \l_clist_internal_clist } \cs_generate_variant:Nn \clist_map_inline:Nn { c } \cs_new_protected:Npn \clist_map_variable:NNn #1#2#3 @@ -342,8 +342,8 @@ } \cs_new_protected:Npn \clist_map_variable:nNn #1 { - \clist_set:Nn \l_clist_tmpa_clist {#1} - \clist_map_variable:NNn \l_clist_tmpa_clist + \clist_set:Nn \l_clist_internal_clist {#1} + \clist_map_variable:NNn \l_clist_internal_clist } \cs_new_protected:Npn \clist_map_variable_aux:Nnw #1#2#3, { @@ -364,11 +364,11 @@ } \cs_new_protected:Npn \clist_show:n #1 { - \clist_set:Nn \l_clist_tmpa_clist {#1} + \clist_set:Nn \l_clist_internal_clist {#1} \msg_aux_show:Nnx - \l_clist_tmpa_clist + \l_clist_internal_clist { clist } - { \clist_map_function:NN \l_clist_tmpa_clist \msg_aux_show:n } + { \clist_map_function:NN \l_clist_internal_clist \msg_aux_show:n } } \cs_generate_variant:Nn \clist_show:N { c } \clist_new:N \l_tmpa_clist @@ -426,7 +426,7 @@ \cs_new:Npn \clist_item_N_loop:nw #1 #2, { \int_compare:nNnTF {#1} = \c_zero - { \use_i_delimit_by_q_stop:nw {#2} } + { \use_i_delimit_by_q_stop:nw { \exp_not:n {#2} } } { \exp_args:Nf \clist_item_N_loop:nw { \int_eval:n { #1 - 1 } } } } \cs_generate_variant:Nn \clist_item:Nn { c } @@ -459,7 +459,7 @@ \exp_after:wN \exp_after:wN \exp_after:wN \clist_item_n_strip:w \tl_trim_spaces:n {#1} , } -\cs_new:Npn \clist_item_n_strip:w #1 , {#1} +\cs_new:Npn \clist_item_n_strip:w #1 , { \exp_not:n {#1} } \cs_new_protected:Npn \clist_set_from_seq:NN { \clist_set_from_seq_aux:NNNN \clist_clear:N \tl_set:Nx } \cs_new_protected:Npn \clist_gset_from_seq:NN @@ -469,17 +469,20 @@ \seq_if_empty:NTF #4 { #1 #3 } { - \seq_push_item_def:n + #2 #3 { - , - \tl_if_empty:oTF { \clist_set_from_seq_aux:w ##1 ~ , ##1 ~ } - { \exp_not:n {##1} } - { \exp_not:n { {##1} } } + \exp_last_unbraced:Nf \use_none:n + { \seq_map_function:NN #4 \clist_wrap_item:n } } - #2 #3 { \exp_last_unbraced:Nf \use_none:n #4 } - \seq_pop_item_def: } } +\cs_new:Npn \clist_wrap_item:n #1 + { + , + \tl_if_empty:oTF { \clist_set_from_seq_aux:w #1 ~ , #1 ~ } + { \exp_not:n {#1} } + { \exp_not:n { {#1} } } + } \cs_new:Npn \clist_set_from_seq_aux:w #1 , #2 ~ { } \cs_generate_variant:Nn \clist_set_from_seq:NN { Nc } \cs_generate_variant:Nn \clist_set_from_seq:NN { c , cc } @@ -502,10 +505,6 @@ { \clist_if_empty_n_aux:wNw } } \cs_new:Npn \clist_if_empty_n_aux:wNw #1 \q_mark #2#3 \q_stop {#2} -\cs_new_protected:Npn \clist_trim_spaces:N #1 { \clist_set:No #1 {#1} } -\cs_new_protected:Npn \clist_gtrim_spaces:N #1 { \clist_gset:No #1 {#1} } -\cs_generate_variant:Nn \clist_trim_spaces:N { c } -\cs_generate_variant:Nn \clist_gtrim_spaces:N { c } %% %% %% End of file `l3clist.sty'. diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3coffins.sty b/Master/texmf-dist/tex/latex/l3kernel/l3coffins.sty index 5edde5b4de8..c13164ef700 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3coffins.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3coffins.sty @@ -13,7 +13,7 @@ %% %% Do not distribute a modified version of this file. %% -%% File: l3coffins.dtx Copyright(C) 2010,2011 The LaTeX3 Project +%% File: l3coffins.dtx Copyright(C) 2010-2012 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 @@ -47,32 +47,32 @@ %% ----------------------------------------------------------------------- %% \RequirePackage{l3names} -\GetIdInfo$Id: l3coffins.dtx 3086 2011-12-22 17:55:46Z bruno $ +\GetIdInfo$Id: l3coffins.dtx 3155 2012-01-08 22:53:03Z bruno $ {L3 Experimental coffin code layer} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} \package_check_loaded_expl: -\box_new:N \l_coffin_tmp_box -\dim_new:N \l_coffin_tmp_dim -\fp_new:N \l_coffin_tmp_fp -\tl_new:N \l_coffin_tmp_tl +\box_new:N \l_coffin_internal_box +\dim_new:N \l_coffin_internal_dim +\fp_new:N \l_coffin_internal_fp +\tl_new:N \l_coffin_internal_tl \prop_new:N \c_coffin_corners_prop \prop_put:Nnn \c_coffin_corners_prop { tl } { { 0 pt } { 0 pt } } \prop_put:Nnn \c_coffin_corners_prop { tr } { { 0 pt } { 0 pt } } \prop_put:Nnn \c_coffin_corners_prop { bl } { { 0 pt } { 0 pt } } \prop_put:Nnn \c_coffin_corners_prop { br } { { 0 pt } { 0 pt } } \prop_new:N \c_coffin_poles_prop -\tl_set:Nn \l_coffin_tmp_tl { { 0 pt } { 0 pt } { 0 pt } { 1000 pt } } -\prop_put:Nno \c_coffin_poles_prop { l } { \l_coffin_tmp_tl } -\prop_put:Nno \c_coffin_poles_prop { hc } { \l_coffin_tmp_tl } -\prop_put:Nno \c_coffin_poles_prop { r } { \l_coffin_tmp_tl } -\tl_set:Nn \l_coffin_tmp_tl { { 0 pt } { 0 pt } { 1000 pt } { 0 pt } } -\prop_put:Nno \c_coffin_poles_prop { b } { \l_coffin_tmp_tl } -\prop_put:Nno \c_coffin_poles_prop { vc } { \l_coffin_tmp_tl } -\prop_put:Nno \c_coffin_poles_prop { t } { \l_coffin_tmp_tl } -\prop_put:Nno \c_coffin_poles_prop { B } { \l_coffin_tmp_tl } -\prop_put:Nno \c_coffin_poles_prop { H } { \l_coffin_tmp_tl } -\prop_put:Nno \c_coffin_poles_prop { T } { \l_coffin_tmp_tl } +\tl_set:Nn \l_coffin_internal_tl { { 0 pt } { 0 pt } { 0 pt } { 1000 pt } } +\prop_put:Nno \c_coffin_poles_prop { l } { \l_coffin_internal_tl } +\prop_put:Nno \c_coffin_poles_prop { hc } { \l_coffin_internal_tl } +\prop_put:Nno \c_coffin_poles_prop { r } { \l_coffin_internal_tl } +\tl_set:Nn \l_coffin_internal_tl { { 0 pt } { 0 pt } { 1000 pt } { 0 pt } } +\prop_put:Nno \c_coffin_poles_prop { b } { \l_coffin_internal_tl } +\prop_put:Nno \c_coffin_poles_prop { vc } { \l_coffin_internal_tl } +\prop_put:Nno \c_coffin_poles_prop { t } { \l_coffin_internal_tl } +\prop_put:Nno \c_coffin_poles_prop { B } { \l_coffin_internal_tl } +\prop_put:Nno \c_coffin_poles_prop { H } { \l_coffin_internal_tl } +\prop_put:Nno \c_coffin_poles_prop { T } { \l_coffin_internal_tl } \fp_new:N \l_coffin_calc_a_fp \fp_new:N \l_coffin_calc_b_fp \fp_new:N \l_coffin_calc_c_fp @@ -169,15 +169,15 @@ \coffin_reset_structure:N #1 \coffin_update_poles:N #1 \coffin_update_corners:N #1 - \vbox_set_top:Nn \l_coffin_tmp_box { \vbox_unpack:N #1 } + \vbox_set_top:Nn \l_coffin_internal_box { \vbox_unpack:N #1 } \coffin_set_pole:Nnx #1 { T } { { 0 pt } - { \dim_eval:n { \box_ht:N #1 - \box_ht:N \l_coffin_tmp_box } } + { \dim_eval:n { \box_ht:N #1 - \box_ht:N \l_coffin_internal_box } } { 1000 pt } { 0 pt } } - \box_clear:N \l_coffin_tmp_box + \box_clear:N \l_coffin_internal_box } } \cs_generate_variant:Nn \vcoffin_set:Nnn { c } @@ -212,17 +212,17 @@ \coffin_reset_structure:N #1 \coffin_update_poles:N #1 \coffin_update_corners:N #1 - \vbox_set_top:Nn \l_coffin_tmp_box { \vbox_unpack:N #1 } + \vbox_set_top:Nn \l_coffin_internal_box { \vbox_unpack:N #1 } \coffin_set_pole:Nnx #1 { T } { { 0 pt } { - \dim_eval:n { \box_ht:N #1 - \box_ht:N \l_coffin_tmp_box } + \dim_eval:n { \box_ht:N #1 - \box_ht:N \l_coffin_internal_box } } { 1000 pt } { 0 pt } } - \box_clear:N \l_coffin_tmp_box + \box_clear:N \l_coffin_internal_box } } } @@ -500,10 +500,10 @@ \dim_compare:nNnT { \l_coffin_offset_x_dim } < \c_zero_dim { \tex_kern:D -\l_coffin_offset_x_dim } \hbox_unpack:N \l_coffin_aligned_coffin - \dim_set:Nn \l_coffin_tmp_dim + \dim_set:Nn \l_coffin_internal_dim { \l_coffin_offset_x_dim - \box_wd:N #1 + \box_wd:N #4 } - \dim_compare:nNnT \l_coffin_tmp_dim < \c_zero_dim - { \tex_kern:D -\l_coffin_tmp_dim } + \dim_compare:nNnT \l_coffin_internal_dim < \c_zero_dim + { \tex_kern:D -\l_coffin_internal_dim } } \coffin_reset_structure:N \l_coffin_aligned_coffin \prop_clear:c @@ -585,10 +585,10 @@ \dim_set:Nn \l_coffin_x_dim { #3 + #7 } \dim_set:Nn \l_coffin_y_dim { #4 + #8 } \tl_if_in:nnTF {#2} { - } - { \tl_set:Nn \l_coffin_tmp_tl { {#2} } } - { \tl_set:Nn \l_coffin_tmp_tl { { #1 - #2 } } } + { \tl_set:Nn \l_coffin_internal_tl { {#2} } } + { \tl_set:Nn \l_coffin_internal_tl { { #1 - #2 } } } \exp_last_unbraced:NNo \coffin_set_pole:Nnx \l_coffin_aligned_coffin - { \l_coffin_tmp_tl } + { \l_coffin_internal_tl } { { \dim_use:N \l_coffin_x_dim } { \dim_use:N \l_coffin_y_dim } {#5} {#6} @@ -660,11 +660,11 @@ \dim_new:N \l_coffin_top_corner_dim \cs_new_protected:Npn \coffin_rotate:Nn #1#2 { - \fp_set:Nn \l_coffin_tmp_fp {#2} - \fp_div:Nn \l_coffin_tmp_fp { 180 } - \fp_mul:Nn \l_coffin_tmp_fp { \c_pi_fp } - \fp_sin:Nn \l_coffin_sin_fp { \l_coffin_tmp_fp } - \fp_cos:Nn \l_coffin_cos_fp { \l_coffin_tmp_fp } + \fp_set:Nn \l_coffin_internal_fp {#2} + \fp_div:Nn \l_coffin_internal_fp { 180 } + \fp_mul:Nn \l_coffin_internal_fp { \c_pi_fp } + \fp_sin:Nn \l_coffin_sin_fp { \l_coffin_internal_fp } + \fp_cos:Nn \l_coffin_cos_fp { \l_coffin_internal_fp } \prop_map_inline:cn { l_coffin_corners_ \int_value:w #1 _prop } { \coffin_rotate_corner:Nnnn #1 {##1} ##2 } \prop_map_inline:cn { l_coffin_poles_ \int_value:w #1 _prop } @@ -699,11 +699,11 @@ { { 0 pt } { \dim_use:N \box_ht:N #1 } } \prop_put:Nnx \l_coffin_bounding_prop { tr } { { \dim_use:N \box_wd:N #1 } { \dim_use:N \box_ht:N #1 } } - \dim_set:Nn \l_coffin_tmp_dim { - \box_dp:N #1 } + \dim_set:Nn \l_coffin_internal_dim { - \box_dp:N #1 } \prop_put:Nnx \l_coffin_bounding_prop { bl } - { { 0 pt } { \dim_use:N \l_coffin_tmp_dim } } + { { 0 pt } { \dim_use:N \l_coffin_internal_dim } } \prop_put:Nnx \l_coffin_bounding_prop { br } - { { \dim_use:N \box_wd:N #1 } { \dim_use:N \l_coffin_tmp_dim } } + { { \dim_use:N \box_wd:N #1 } { \dim_use:N \l_coffin_internal_dim } } } \cs_new_protected:Npn \coffin_rotate_bounding:nnn #1#2#3 { @@ -734,15 +734,15 @@ \fp_set_from_dim:Nn \l_coffin_x_fp {#1} \fp_set_from_dim:Nn \l_coffin_y_fp {#2} \fp_set_eq:NN \l_coffin_x_prime_fp \l_coffin_x_fp - \fp_set_eq:NN \l_coffin_tmp_fp \l_coffin_y_fp + \fp_set_eq:NN \l_coffin_internal_fp \l_coffin_y_fp \fp_mul:Nn \l_coffin_x_prime_fp { \l_coffin_cos_fp } - \fp_mul:Nn \l_coffin_tmp_fp { \l_coffin_sin_fp } - \fp_sub:Nn \l_coffin_x_prime_fp { \l_coffin_tmp_fp } + \fp_mul:Nn \l_coffin_internal_fp { \l_coffin_sin_fp } + \fp_sub:Nn \l_coffin_x_prime_fp { \l_coffin_internal_fp } \fp_set_eq:NN \l_coffin_y_prime_fp \l_coffin_y_fp - \fp_set_eq:NN \l_coffin_tmp_fp \l_coffin_x_fp + \fp_set_eq:NN \l_coffin_internal_fp \l_coffin_x_fp \fp_mul:Nn \l_coffin_y_prime_fp { \l_coffin_cos_fp } - \fp_mul:Nn \l_coffin_tmp_fp { \l_coffin_sin_fp } - \fp_add:Nn \l_coffin_y_prime_fp { \l_coffin_tmp_fp } + \fp_mul:Nn \l_coffin_internal_fp { \l_coffin_sin_fp } + \fp_add:Nn \l_coffin_y_prime_fp { \l_coffin_internal_fp } \dim_set:Nn #3 { \fp_to_dim:N \l_coffin_x_prime_fp } \dim_set:Nn #4 { \fp_to_dim:N \l_coffin_y_prime_fp } } @@ -796,11 +796,11 @@ \coffin_set_user_dimensions:N #1 \box_resize:Nnn #1 {#2} {#3} \fp_set_from_dim:Nn \l_coffin_scale_x_fp {#2} - \fp_set_from_dim:Nn \l_coffin_tmp_fp { \Width } - \fp_div:Nn \l_coffin_scale_x_fp { \l_coffin_tmp_fp } + \fp_set_from_dim:Nn \l_coffin_internal_fp { \Width } + \fp_div:Nn \l_coffin_scale_x_fp { \l_coffin_internal_fp } \fp_set_from_dim:Nn \l_coffin_scale_y_fp {#3} - \fp_set_from_dim:Nn \l_coffin_tmp_fp { \TotalHeight } - \fp_div:Nn \l_coffin_scale_y_fp { \l_coffin_tmp_fp } + \fp_set_from_dim:Nn \l_coffin_internal_fp { \TotalHeight } + \fp_div:Nn \l_coffin_scale_y_fp { \l_coffin_internal_fp } \coffin_resize_common:Nnn #1 {#2} {#3} } \cs_generate_variant:Nn \coffin_resize:Nnn { c } @@ -837,12 +837,12 @@ \cs_generate_variant:Nn \coffin_scale:Nnn { c } \cs_new_protected:Npn \coffin_scale_vector:nnNN #1#2#3#4 { - \fp_set_from_dim:Nn \l_coffin_tmp_fp {#1} - \fp_mul:Nn \l_coffin_tmp_fp { \l_coffin_scale_x_fp } - \dim_set:Nn #3 { \fp_to_dim:N \l_coffin_tmp_fp } - \fp_set_from_dim:Nn \l_coffin_tmp_fp {#2} - \fp_mul:Nn \l_coffin_tmp_fp { \l_coffin_scale_y_fp } - \dim_set:Nn #4 { \fp_to_dim:N \l_coffin_tmp_fp } + \fp_set_from_dim:Nn \l_coffin_internal_fp {#1} + \fp_mul:Nn \l_coffin_internal_fp { \l_coffin_scale_x_fp } + \dim_set:Nn #3 { \fp_to_dim:N \l_coffin_internal_fp } + \fp_set_from_dim:Nn \l_coffin_internal_fp {#2} + \fp_mul:Nn \l_coffin_internal_fp { \l_coffin_scale_y_fp } + \dim_set:Nn #4 { \fp_to_dim:N \l_coffin_internal_fp } } \cs_new_protected:Npn \coffin_scale_corner:Nnnn #1#2#3#4 { @@ -921,7 +921,6 @@ \prop_new:N \l_coffin_display_poles_prop \tl_new:N \l_coffin_display_font_tl \tl_set:Nn \l_coffin_display_font_tl { \sffamily \tiny } -\prop_new:N \l_coffin_handles_tmp_prop \cs_new_protected:Npn \coffin_mark_handle:Nnnn #1#2#3#4 { \hcoffin_set:Nn \l_coffin_display_pole_coffin @@ -938,12 +937,12 @@ ( \tl_to_str:n { #2 , #3 } ) } \prop_get:NnN \l_coffin_display_handles_prop - { #2 #3 } \l_coffin_tmp_tl - \quark_if_no_value:NTF \l_coffin_tmp_tl + { #2 #3 } \l_coffin_internal_tl + \quark_if_no_value:NTF \l_coffin_internal_tl { \prop_get:NnN \l_coffin_display_handles_prop - { #3 #2 } \l_coffin_tmp_tl - \quark_if_no_value:NTF \l_coffin_tmp_tl + { #3 #2 } \l_coffin_internal_tl + \quark_if_no_value:NTF \l_coffin_internal_tl { \coffin_attach_mark:NnnNnnnn #1 {#2} {#3} \l_coffin_display_coord_coffin { l } { vc } @@ -951,12 +950,12 @@ } { \exp_last_unbraced:No \coffin_mark_handle_aux:nnnnNnn - \l_coffin_tmp_tl #1 {#2} {#3} + \l_coffin_internal_tl #1 {#2} {#3} } } { \exp_last_unbraced:No \coffin_mark_handle_aux:nnnnNnn - \l_coffin_tmp_tl #1 {#2} {#3} + \l_coffin_internal_tl #1 {#2} {#3} } } \cs_new_protected:Npn \coffin_mark_handle_aux:nnnnNnn #1#2#3#4#5#6#7 @@ -984,7 +983,6 @@ \tl_if_eq:NNT \l_coffin_pole_a_tl \l_coffin_pole_b_tl { \prop_del:Nn \l_coffin_display_poles_prop { B } } \coffin_set_eq:NN \l_coffin_display_coffin #1 - \prop_clear:N \l_coffin_handles_tmp_prop \prop_map_inline:Nn \l_coffin_display_poles_prop { \prop_del:Nn \l_coffin_display_poles_prop {##1} @@ -1012,12 +1010,12 @@ ( \tl_to_str:n { #1 , ##1 } ) } \prop_get:NnN \l_coffin_display_handles_prop - { #1 ##1 } \l_coffin_tmp_tl - \quark_if_no_value:NTF \l_coffin_tmp_tl + { #1 ##1 } \l_coffin_internal_tl + \quark_if_no_value:NTF \l_coffin_internal_tl { \prop_get:NnN \l_coffin_display_handles_prop - { ##1 #1 } \l_coffin_tmp_tl - \quark_if_no_value:NTF \l_coffin_tmp_tl + { ##1 #1 } \l_coffin_internal_tl + \quark_if_no_value:NTF \l_coffin_internal_tl { \coffin_display_attach:Nnnnn \l_coffin_display_coord_coffin { l } { vc } @@ -1026,12 +1024,12 @@ { \exp_last_unbraced:No \coffin_display_handles_aux:nnnn - \l_coffin_tmp_tl + \l_coffin_internal_tl } } { \exp_last_unbraced:No \coffin_display_handles_aux:nnnn - \l_coffin_tmp_tl + \l_coffin_internal_tl } } } @@ -1072,35 +1070,18 @@ { \cs_if_exist:cTF { l_coffin_poles_ \int_value:w #1 _prop } { - \iow_term:x - { - \iow_newline: - Size~of~coffin~\token_to_str:N #1 : \iow_newline: - > ~ ht~=~\dim_use:N \box_ht:N #1 \iow_newline: - > ~ dp~=~\dim_use:N \box_dp:N #1 \iow_newline: - > ~ wd~=~\dim_use:N \box_wd:N #1 \iow_newline: - } - \iow_term:x { Poles~of~coffin~\token_to_str:N #1 : } - \tl_set:Nx \l_coffin_tmp_tl + \msg_aux_show:Nnx #1 { coffins } { \prop_map_function:cN { l_coffin_poles_ \int_value:w #1 _prop } - \coffin_show_aux:nn + \msg_aux_show_unbraced:nn } - \etex_showtokens:D \exp_after:wN \exp_after:wN \exp_after:wN - { \exp_after:wN \coffin_show_aux:w \l_coffin_tmp_tl } } { - \iow_term:x { ---~No~poles~found~--- } - \tl_show:n { Is~this~really~a~coffin? } + \msg_aux_use:nn { LaTeX / coffins } { no-pole } + \msg_aux_show:x { } } } -\cs_new:Npn \coffin_show_aux:nn #1#2 - { - \iow_newline: > \c_space_tl \c_space_tl - #1 \c_space_tl \c_space_tl => \c_space_tl \c_space_tl \exp_not:n {#2} - } -\cs_new:Npn \coffin_show_aux:w #1 > ~ { } \cs_generate_variant:Nn \coffin_show_structure:N { c } \msg_kernel_new:nnnn { coffins } { no-pole-intersection } { No~intersection~between~coffin~poles. } @@ -1120,6 +1101,19 @@ LaTeX~was~asked~to~find~a~typesetting~pole~for~a~coffin,~ but~either~the~coffin~does~not~exist~or~the~pole~name~is~wrong. } +\msg_kernel_new:nnn { coffins } { show } + { + Size~of~coffin~\token_to_str:N #1 : \\ + > ~ ht~=~\dim_use:N \box_ht:N #1 \\ + > ~ dp~=~\dim_use:N \box_dp:N #1 \\ + > ~ wd~=~\dim_use:N \box_wd:N #1 \\ + Poles~of~coffin~\token_to_str:N #1 : + } +\msg_kernel_new:nnn { coffins } { no-pole } + { + ---~No~poles~found~--- \\ + Is~this~really~a~coffin? + } %% %% %% End of file `l3coffins.sty'. diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3doc.cls b/Master/texmf-dist/tex/latex/l3kernel/l3doc.cls index a79e13d795e..d27ec84831e 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3doc.cls +++ b/Master/texmf-dist/tex/latex/l3kernel/l3doc.cls @@ -6,7 +6,6 @@ %% %% l3doc.dtx (with options: `class') %% -%% %% EXPERIMENTAL CODE %% %% Do not distribute this file without also distributing the @@ -14,7 +13,6 @@ %% %% Do not distribute a modified version of this file. %% -%% %% File: l3doc.dtx Copyright (C) 1990-2011 The LaTeX3 project %% %% It may be distributed and/or modified under the conditions of the diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3expan.sty b/Master/texmf-dist/tex/latex/l3kernel/l3expan.sty index b0fded9bb79..f3bf00e9997 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3expan.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3expan.sty @@ -13,7 +13,7 @@ %% %% Do not distribute a modified version of this file. %% -%% File: l3expan.dtx Copyright (C) 1990-2011 The LaTeX3 project +%% File: l3expan.dtx Copyright (C) 1990-2012 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 @@ -46,19 +46,19 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3expan.dtx 3086 2011-12-22 17:55:46Z bruno $ +\GetIdInfo$Id: l3expan.dtx 3196 2012-01-15 09:44:05Z joseph $ {L3 Experimental argument expansion} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} \package_check_loaded_expl: -\cs_new_nopar:Npn \l_exp_tl { } +\cs_new_nopar:Npn \l_exp_internal_tl { } \cs_new:Npn \exp_arg_next:nnn #1#2#3 { #2 \::: { #3 {#1} } } -\cs_new:Npn \exp_arg_next_nobrace:nnn #1#2#3 { #2 \::: { #3 #1 } } +\cs_new:Npn \exp_arg_next:Nnn #1#2#3 { #2 \::: { #3 #1 } } \cs_new:Npn \::: #1 {#1} \cs_new:Npn \::n #1 \::: #2#3 { #1 \::: { #2 {#3} } } \cs_new:Npn \::N #1 \::: #2#3 { #1 \::: {#2#3} } \cs_new:Npn \::c #1 \::: #2#3 - { \exp_after:wN \exp_arg_next_nobrace:nnn \cs:w #3 \cs_end: {#1} {#2} } + { \exp_after:wN \exp_arg_next:Nnn \cs:w #3 \cs_end: {#1} {#2} } \cs_new:Npn \::o #1 \::: #2#3 { \exp_after:wN \exp_arg_next:nnn \exp_after:wN {#3} {#1} {#2} } \cs_new:Npn \::f #1 \::: #2#3 @@ -70,8 +70,8 @@ \use:nn { \cs_new_eq:NN \exp_stop_f: } { ~ } \cs_new_protected:Npn \::x #1 \::: #2#3 { - \cs_set_nopar:Npx \l_exp_tl { {#3} } - \exp_after:wN \exp_arg_next:nnn \l_exp_tl {#1} {#2} + \cs_set_nopar:Npx \l_exp_internal_tl { {#3} } + \exp_after:wN \exp_arg_next:nnn \l_exp_internal_tl {#1} {#2} } \cs_new:Npn \::V #1 \::: #2#3 { @@ -207,8 +207,9 @@ \cs_new_nopar:Npn \exp_args:Nnf { \::n \::f \::: } \cs_new_nopar:Npn \exp_args:Nno { \::n \::o \::: } \cs_new_nopar:Npn \exp_args:NnV { \::n \::V \::: } -\cs_new_nopar:Npn \exp_args:Noc { \::o \::c \::: } \cs_new_nopar:Npn \exp_args:Noo { \::o \::o \::: } +\cs_new_nopar:Npn \exp_args:Nof { \::o \::f \::: } +\cs_new_nopar:Npn \exp_args:Noc { \::o \::c \::: } \cs_new_protected_nopar:Npn \exp_args:NNx { \::N \::x \::: } \cs_new_protected_nopar:Npn \exp_args:Ncx { \::c \::x \::: } \cs_new_protected_nopar:Npn \exp_args:Nnx { \::n \::x \::: } @@ -247,8 +248,8 @@ } \cs_new_protected:Npn \::x_unbraced \::: #1#2 { - \cs_set_nopar:Npx \l_exp_tl { \exp_not:n {#1} #2 } - \l_exp_tl + \cs_set_nopar:Npx \l_exp_internal_tl { \exp_not:n {#1} #2 } + \l_exp_internal_tl } \cs_new:Npn \exp_last_unbraced:NV #1#2 { \exp_after:wN #1 \tex_romannumeral:D \exp_eval_register:N #2 } @@ -291,6 +292,7 @@ \cs_new:Npn \exp_last_two_unbraced_aux:noN #1#2#3 { \exp_after:wN #3 #2 #1 } \cs_new:Npn \exp_not:o #1 { \etex_unexpanded:D \exp_after:wN {#1} } +\cs_new:Npn \exp_not:c #1 { \exp_after:wN \exp_not:N \cs:w #1 \cs_end: } \cs_new:Npn \exp_not:f #1 { \etex_unexpanded:D \exp_after:wN { \tex_romannumeral:D -`0 #1 } } \cs_new:Npn \exp_not:V #1 @@ -303,7 +305,6 @@ \etex_unexpanded:D \exp_after:wN { \tex_romannumeral:D \exp_eval_register:c {#1} } } -\cs_new:Npn \exp_not:c #1 { \exp_after:wN \exp_not:N \cs:w #1 \cs_end: } \cs_new_protected:Npn \cs_generate_variant:Nn #1 { \chk_if_exist_cs:N #1 @@ -311,9 +312,9 @@ \cs_split_function:NN #1 \cs_generate_variant_aux:nnNNn #1 } -\cs_new:Npn \cs_generate_variant_aux:nnNNn #1#2#3#4#5 +\cs_new_protected:Npn \cs_generate_variant_aux:nnNNn #1#2#3#4#5 { \cs_generate_variant_aux:Nnnw #4 {#1}{#2} #5 , ? , \q_recursion_stop } -\cs_new:Npn \cs_generate_variant_aux:Nnnw #1#2#3#4 , +\cs_new_protected:Npn \cs_generate_variant_aux:Nnnw #1#2#3#4 , { \if:w ? #4 \exp_after:wN \use_none_delimit_by_q_recursion_stop:w @@ -340,7 +341,7 @@ {#4} \cs_generate_variant_aux:Nnnw #1 {#2} {#3} } -\cs_new:Npn \cs_generate_variant_aux:NNn #1 #2 #3 +\cs_new_protected:Npn \cs_generate_variant_aux:NNn #1 #2 #3 { \cs_if_free:NTF #2 { @@ -369,7 +370,7 @@ \tex_lowercase:D { \group_end: - \cs_new:Npn \cs_generate_variant_aux:N #1 + \cs_new_protected:Npn \cs_generate_variant_aux:N #1 { \exp_after:wN \cs_generate_variant_aux:w \token_to_meaning:N #1 @@ -378,7 +379,7 @@ \q_mark \cs_new_nopar:Npx \q_stop } - \cs_new:Npn \cs_generate_variant_aux:w + \cs_new_protected:Npn \cs_generate_variant_aux:w #1 ? PROTECTEZ #2 \q_mark #3 #4 \q_stop { \cs_set_eq:NN \cs_tmp:w #3 diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3file.sty b/Master/texmf-dist/tex/latex/l3kernel/l3file.sty index 5ee45083280..2ae16bd987d 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3file.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3file.sty @@ -13,7 +13,7 @@ %% %% Do not distribute a modified version of this file. %% -%% File: l3file.dtx Copyright (C) 2009-2011 The LaTeX3 Project +%% File: l3file.dtx Copyright (C) 2009-2012 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 @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3file.dtx 3095 2011-12-26 22:33:23Z joseph $ +\GetIdInfo$Id: l3file.dtx 3158 2012-01-09 00:47:42Z bruno $ {L3 Experimental file operations} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} @@ -55,17 +55,18 @@ \tl_gset_eq:NN \g_file_current_name_tl \@currname \seq_new:N \g_file_stack_seq \seq_new:N \g_file_record_seq -\tl_new:N \l_file_name_tl +\tl_new:N \l_file_internal_name_tl \seq_new:N \l_file_search_path_seq -\seq_new:N \l_file_search_path_saved_seq -\seq_new:N \l_file_tmpa_seq +\seq_new:N \l_file_internal_saved_path_seq +\seq_new:N \l_file_internal_seq +\ior_new:N \g_file_internal_ior \cs_new_protected:Npn \file_add_path:nN #1#2 { - \ior_open:Nn \g_file_test_ior {#1} - \ior_if_eof:NTF \g_file_test_ior + \ior_open:Nn \g_file_internal_ior {#1} + \ior_if_eof:NTF \g_file_internal_ior { \file_add_path_search:nN {#1} #2 } { - \ior_close:N \g_file_test_ior + \ior_close:N \g_file_internal_ior \tl_set:Nx #2 {#1} } } @@ -74,40 +75,40 @@ \tl_clear:N #2 \cs_if_exist:NT \input@path { - \seq_set_eq:NN \l_file_search_path_saved_seq \l_file_search_path_seq - \seq_set_from_clist:NN \l_file_tmpa_seq \input@path + \seq_set_eq:NN \l_file_internal_saved_path_seq \l_file_search_path_seq + \seq_set_from_clist:NN \l_file_internal_seq \input@path \seq_concat:NNN \l_file_search_path_seq - \l_file_search_path_seq \l_file_tmpa_seq + \l_file_search_path_seq \l_file_internal_seq } \seq_map_inline:Nn \l_file_search_path_seq { - \ior_open:Nn \g_file_test_ior { ##1 #1 } - \ior_if_eof:NF \g_file_test_ior + \ior_open:Nn \g_file_internal_ior { ##1 #1 } + \ior_if_eof:NF \g_file_internal_ior { \tl_set:Nx #2 { ##1 #1 } \seq_map_break: } } \cs_if_exist:NT \input@path - { \seq_set_eq:NN \l_file_search_path_seq \l_file_search_path_saved_seq } - \ior_close:N \g_file_test_ior + { \seq_set_eq:NN \l_file_search_path_seq \l_file_internal_saved_path_seq } + \ior_close:N \g_file_internal_ior } \prg_new_protected_conditional:Nnn \file_if_exist:n { T , F , TF } { - \file_add_path:nN {#1} \l_file_name_tl - \tl_if_empty:NTF \l_file_name_tl + \file_add_path:nN {#1} \l_file_internal_name_tl + \tl_if_empty:NTF \l_file_internal_name_tl { \prg_return_false: } { \prg_return_true: } } \cs_new_protected:Npn \file_input:n #1 { - \file_add_path:nN {#1} \l_file_name_tl - \tl_if_empty:NF \l_file_name_tl + \file_add_path:nN {#1} \l_file_internal_name_tl + \tl_if_empty:NF \l_file_internal_name_tl { \@addtofilelist {#1} \seq_gpush:NV \g_file_stack_seq \g_file_current_name_tl \tl_gset:Nn \g_file_current_name_tl {#1} - \exp_after:wN \tex_input:D \l_file_name_tl \c_space_tl + \exp_after:wN \tex_input:D \l_file_internal_name_tl \c_space_tl \seq_gpop:NN \g_file_stack_seq \g_file_current_name_tl } } @@ -127,8 +128,8 @@ } \AtBeginDocument { - \seq_set_from_clist:NN \l_file_tmpa_seq \@filelist - \seq_gconcat:NNN \g_file_record_seq \g_file_record_seq \l_file_tmpa_seq + \seq_set_from_clist:NN \l_file_internal_seq \@filelist + \seq_gconcat:NNN \g_file_record_seq \g_file_record_seq \l_file_internal_seq } %% %% diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3fp.sty b/Master/texmf-dist/tex/latex/l3kernel/l3fp.sty index 00d73728018..e22994a4726 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3fp.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3fp.sty @@ -13,7 +13,7 @@ %% %% Do not distribute a modified version of this file. %% -%% File: l3fp.dtx Copyright (C) 2010,2011 The LaTeX3 Project +%% File: l3fp.dtx Copyright (C) 2010-2012 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 @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3fp.dtx 3086 2011-12-22 17:55:46Z bruno $ +\GetIdInfo$Id: l3fp.dtx 3154 2012-01-08 22:46:28Z bruno $ {L3 Experimental floating-point operations} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} @@ -115,8 +115,8 @@ \int_new:N \l_fp_round_target_int \tl_new:N \l_fp_sign_tl \int_new:N \l_fp_split_sign_int -\int_new:N \l_fp_tmp_int -\tl_new:N \l_fp_tmp_tl +\int_new:N \l_fp_internal_int +\tl_new:N \l_fp_internal_tl \int_new:N \l_fp_trig_octant_int \int_new:N \l_fp_trig_sign_int \int_new:N \l_fp_trig_decimal_int @@ -136,34 +136,34 @@ } \cs_new_protected:Npn \fp_split:Nn #1#2 { - \tl_set:Nx \l_fp_tmp_tl {#2} - \tl_set_rescan:Nno \l_fp_tmp_tl { \char_set_catcode_ignore:n { 32 } } - { \l_fp_tmp_tl } + \tl_set:Nx \l_fp_internal_tl {#2} + \tl_set_rescan:Nno \l_fp_internal_tl { \char_set_catcode_ignore:n { 32 } } + { \l_fp_internal_tl } \l_fp_split_sign_int \c_one \fp_split_sign: \use:c { l_fp_input_ #1 _sign_int } \l_fp_split_sign_int - \exp_after:wN \fp_split_exponent:w \l_fp_tmp_tl e e \q_stop #1 + \exp_after:wN \fp_split_exponent:w \l_fp_internal_tl e e \q_stop #1 } \cs_new_protected_nopar:Npn \fp_split_sign: { \if_int_compare:w \pdftex_strcmp:D - { \exp_after:wN \tl_head:w \l_fp_tmp_tl ? \q_stop } { - } + { \exp_after:wN \tl_head:w \l_fp_internal_tl ? \q_stop } { - } = \c_zero - \tl_set:Nx \l_fp_tmp_tl + \tl_set:Nx \l_fp_internal_tl { \exp_after:wN - \tl_tail:w \l_fp_tmp_tl \prg_do_nothing: \q_stop + \tl_tail:w \l_fp_internal_tl \prg_do_nothing: \q_stop } \l_fp_split_sign_int -\l_fp_split_sign_int \exp_after:wN \fp_split_sign: \else: \if_int_compare:w \pdftex_strcmp:D - { \exp_after:wN \tl_head:w \l_fp_tmp_tl ? \q_stop } { + } + { \exp_after:wN \tl_head:w \l_fp_internal_tl ? \q_stop } { + } = \c_zero - \tl_set:Nx \l_fp_tmp_tl + \tl_set:Nx \l_fp_internal_tl { \exp_after:wN - \tl_tail:w \l_fp_tmp_tl \prg_do_nothing: \q_stop + \tl_tail:w \l_fp_internal_tl \prg_do_nothing: \q_stop } \exp_after:wN \exp_after:wN \exp_after:wN \fp_split_sign: \fi: @@ -183,9 +183,9 @@ { \fp_split_aux_iii:w {#1#2#3#4#5#6#7#8#9} } \cs_new_protected:Npn \fp_split_aux_iii:w #1#2 \q_stop { - \l_fp_tmp_int 1 #1 \scan_stop: + \l_fp_internal_int 1 #1 \scan_stop: \exp_after:wN \fp_split_decimal:w - \int_use:N \l_fp_tmp_int 000000000 \q_stop + \int_use:N \l_fp_internal_int 000000000 \q_stop } \cs_new_protected:Npn \fp_split_decimal:w #1#2#3#4#5#6#7#8#9 { \fp_split_decimal_aux:w {#2#3#4#5#6#7#8#9} } @@ -252,12 +252,12 @@ #2 ##1##2##3##4##5##6##7##8 \scan_stop: \tex_advance:D #3 \c_one_thousand_million \tex_divide:D #3 \c_ten - \tl_set:Nx \l_fp_tmp_tl + \tl_set:Nx \l_fp_internal_tl { ##9 \exp_after:wN \use_none:n \int_use:N #3 } - #3 \l_fp_tmp_tl \scan_stop: + #3 \l_fp_internal_tl \scan_stop: \tex_advance:D #4 \c_one } \fp_standardise_aux: @@ -299,13 +299,13 @@ \l_fp_input_b_integer_int #1#2#3#4#5#6#7#8 \scan_stop: \tex_advance:D \l_fp_input_b_decimal_int \c_one_thousand_million \tex_divide:D \l_fp_input_b_decimal_int \c_ten - \tl_set:Nx \l_fp_tmp_tl + \tl_set:Nx \l_fp_internal_tl { #9 \exp_after:wN \use_none:n \int_use:N \l_fp_input_b_decimal_int } - \l_fp_input_b_decimal_int \l_fp_tmp_tl \scan_stop: + \l_fp_input_b_decimal_int \l_fp_internal_tl \scan_stop: \tex_advance:D \l_fp_input_b_exponent_int \c_one } \cs_new_protected_nopar:Npn \fp_level_input_exponents_b: @@ -324,13 +324,13 @@ \l_fp_input_a_integer_int #1#2#3#4#5#6#7#8 \scan_stop: \tex_advance:D \l_fp_input_a_decimal_int \c_one_thousand_million \tex_divide:D \l_fp_input_a_decimal_int \c_ten - \tl_set:Nx \l_fp_tmp_tl + \tl_set:Nx \l_fp_internal_tl { #9 \exp_after:wN \use_none:n \int_use:N \l_fp_input_a_decimal_int } - \l_fp_input_a_decimal_int \l_fp_tmp_tl \scan_stop: + \l_fp_input_a_decimal_int \l_fp_internal_tl \scan_stop: \tex_advance:D \l_fp_input_a_exponent_int \c_one } \cs_new_protected:Npn \fp_tmp:w #1#2 { } @@ -352,6 +352,12 @@ { \tl_gset_eq:NN #1 \c_zero_fp } \cs_generate_variant:Nn \fp_zero:N { c } \cs_generate_variant:Nn \fp_gzero:N { c } +\cs_new_protected:Npn \fp_zero_new:N #1 + { \cs_if_exist:NTF #1 { \fp_zero:N #1 } { \fp_new:N #1 } } +\cs_new_protected:Npn \fp_gzero_new:N #1 + { \cs_if_exist:NTF #1 { \fp_gzero:N #1 } { \fp_new:N #1 } } +\cs_generate_variant:Nn \fp_zero_new:N { c } +\cs_generate_variant:Nn \fp_gzero_new:N { c } \cs_new_protected_nopar:Npn \fp_set:Nn { \fp_set_aux:NNn \tl_set:Nn } \cs_new_protected_nopar:Npn \fp_gset:Nn { \fp_set_aux:NNn \tl_gset:Nn } \cs_new_protected:Npn \fp_set_aux:NNn #1#2#3 @@ -393,12 +399,12 @@ \cs_new_protected:Npn \fp_set_from_dim_aux:NNn #1#2#3 { \group_begin: - \l_fp_tmp_skip \etex_glueexpr:D #3 \scan_stop: - \l_fp_tmp_dim \l_fp_tmp_skip + \l_fp_internal_skip \etex_glueexpr:D #3 \scan_stop: + \l_fp_internal_dim \l_fp_internal_skip \fp_split:Nn a { \exp_after:wN \fp_set_from_dim_aux:w - \dim_use:N \l_fp_tmp_dim + \dim_use:N \l_fp_internal_dim } \fp_standardise:NNNN \l_fp_input_a_sign_int @@ -434,8 +440,8 @@ \fp_set_from_dim_aux:w \cs_generate_variant:Nn \fp_set_from_dim:Nn { c } \cs_generate_variant:Nn \fp_gset_from_dim:Nn { c } -\dim_new:N \l_fp_tmp_dim -\skip_new:N \l_fp_tmp_skip +\dim_new:N \l_fp_internal_dim +\skip_new:N \l_fp_internal_skip \cs_new_eq:NN \fp_set_eq:NN \tl_set_eq:NN \cs_new_eq:NN \fp_set_eq:cN \tl_set_eq:cN \cs_new_eq:NN \fp_set_eq:Nc \tl_set_eq:Nc @@ -900,15 +906,15 @@ { \if_int_compare:w \l_fp_round_position_int < \l_fp_round_target_int \bool_if:NTF \l_fp_round_carry_bool - { \l_fp_tmp_int \int_eval:w #1 + \c_one \scan_stop: } - { \l_fp_tmp_int \int_eval:w #1 \scan_stop: } - \if_int_compare:w \l_fp_tmp_int = \c_ten - \l_fp_tmp_int \c_zero + { \l_fp_internal_int \int_eval:w #1 + \c_one \scan_stop: } + { \l_fp_internal_int \int_eval:w #1 \scan_stop: } + \if_int_compare:w \l_fp_internal_int = \c_ten + \l_fp_internal_int \c_zero \else: \bool_set_false:N \l_fp_round_carry_bool \fi: \tl_set:Nx \l_fp_round_decimal_tl - { \int_use:N \l_fp_tmp_int \l_fp_round_decimal_tl } + { \int_use:N \l_fp_internal_int \l_fp_round_decimal_tl } \else: \tl_set:Nx \l_fp_round_decimal_tl { 0 \l_fp_round_decimal_tl } \if_int_compare:w \l_fp_round_position_int = \l_fp_round_target_int @@ -956,7 +962,7 @@ \group_begin: \fp_read:N #2 \tex_advance:D \l_fp_input_a_decimal_int \c_one_thousand_million - \tl_set:Nx \l_fp_tmp_tl + \tl_set:Nx \l_fp_internal_tl { \if_int_compare:w \l_fp_input_a_sign_int < \c_zero + @@ -971,7 +977,7 @@ \int_use:N \l_fp_input_a_exponent_int } \exp_after:wN \group_end: \exp_after:wN - #1 \exp_after:wN #2 \exp_after:wN { \l_fp_tmp_tl } + #1 \exp_after:wN #2 \exp_after:wN { \l_fp_internal_tl } } \cs_new_protected_nopar:Npn \fp_add:Nn { \fp_add_aux:NNn \tl_set:Nn } \cs_new_protected_nopar:Npn \fp_gadd:Nn { \fp_add_aux:NNn \tl_gset:Nn } @@ -1504,16 +1510,16 @@ } \cs_new_protected:Npn \fp_div_integer:NNNNN #1#2#3#4#5 { - \l_fp_tmp_int #1 - \tex_divide:D \l_fp_tmp_int #3 - \l_fp_tmp_int \int_eval:w #1 - \l_fp_tmp_int * #3 \int_eval_end: + \l_fp_internal_int #1 + \tex_divide:D \l_fp_internal_int #3 + \l_fp_internal_int \int_eval:w #1 - \l_fp_internal_int * #3 \int_eval_end: #4 #1 \tex_divide:D #4 #3 #5 #2 \tex_divide:D #5 #3 - \tex_multiply:D \l_fp_tmp_int \c_one_thousand - \tex_divide:D \l_fp_tmp_int #3 - #5 \int_eval:w #5 + \l_fp_tmp_int * \c_one_million \int_eval_end: + \tex_multiply:D \l_fp_internal_int \c_one_thousand + \tex_divide:D \l_fp_internal_int #3 + #5 \int_eval:w #5 + \l_fp_internal_int * \c_one_million \int_eval_end: \if_int_compare:w #5 > \c_one_thousand_million \tex_advance:D #4 \c_one \tex_advance:D #5 -\c_one_thousand_million @@ -1568,21 +1574,21 @@ \if_int_compare:w \l_fp_input_a_integer_int = \c_zero \l_fp_input_a_decimal_int #1#2#3#4#5#6#7#8 \scan_stop: \else: - \tl_set:Nx \l_fp_tmp_tl + \tl_set:Nx \l_fp_internal_tl { \int_use:N \l_fp_input_a_integer_int #1#2#3#4#5#6#7#8 } \l_fp_input_a_integer_int \c_zero - \l_fp_input_a_decimal_int \l_fp_tmp_tl \scan_stop: + \l_fp_input_a_decimal_int \l_fp_internal_tl \scan_stop: \fi: \tex_divide:D \l_fp_input_a_extended_int \c_ten - \tl_set:Nx \l_fp_tmp_tl + \tl_set:Nx \l_fp_internal_tl { #9 \int_use:N \l_fp_input_a_extended_int } - \l_fp_input_a_extended_int \l_fp_tmp_tl \scan_stop: + \l_fp_input_a_extended_int \l_fp_internal_tl \scan_stop: \tex_advance:D \l_fp_input_a_exponent_int \c_one } \cs_new_protected_nopar:Npn \fp_extended_normalise_output: @@ -1600,14 +1606,14 @@ { \l_fp_output_integer_int #1#2#3#4#5#6#7#8 \scan_stop: \tex_advance:D \l_fp_output_decimal_int \c_one_thousand_million - \tl_set:Nx \l_fp_tmp_tl + \tl_set:Nx \l_fp_internal_tl { #9 \exp_after:wN \use_none:n \int_use:N \l_fp_output_decimal_int } \exp_after:wN \fp_extended_normalise_output_aux_ii:NNNNNNNNN - \l_fp_tmp_tl + \l_fp_internal_tl } \cs_new_protected:Npn \fp_extended_normalise_output_aux_ii:NNNNNNNNN #1#2#3#4#5#6#7#8#9 @@ -1619,13 +1625,13 @@ { \tex_advance:D \l_fp_output_extended_int \c_one_thousand_million \tex_divide:D \l_fp_output_extended_int \c_ten - \tl_set:Nx \l_fp_tmp_tl + \tl_set:Nx \l_fp_internal_tl { #1 \exp_after:wN \use_none:n \int_use:N \l_fp_output_extended_int } - \l_fp_output_extended_int \l_fp_tmp_tl \scan_stop: + \l_fp_output_extended_int \l_fp_internal_tl \scan_stop: \tex_advance:D \l_fp_output_exponent_int \c_one } \cs_new_protected_nopar:Npn \fp_trig_normalise: @@ -2347,27 +2353,27 @@ \l_fp_exp_exponent_int \c_zero \exp_after:wN \fp_exp_integer_tens: \else: - \tl_set:Nx \l_fp_tmp_tl + \tl_set:Nx \l_fp_internal_tl { \exp_after:wN \use_i:nnn \int_use:N \l_fp_input_a_integer_int } \l_fp_input_a_integer_int \int_eval:w - \l_fp_input_a_integer_int - \l_fp_tmp_tl 00 + \l_fp_input_a_integer_int - \l_fp_internal_tl 00 \int_eval_end: \if_int_compare:w \l_fp_input_a_sign_int < \c_zero \if_int_compare:w \l_fp_output_integer_int > 200 \scan_stop: \fp_exp_const:cx { c_fp_exp ( \l_fp_arg_tl ) _fp } { \c_zero_fp } \else: - \fp_exp_integer_const:n { - \l_fp_tmp_tl 00 } + \fp_exp_integer_const:n { - \l_fp_internal_tl 00 } \exp_after:wN \exp_after:wN \exp_after:wN \exp_after:wN \exp_after:wN \exp_after:wN \exp_after:wN \fp_exp_integer_tens: \fi: \else: - \fp_exp_integer_const:n { \l_fp_tmp_tl 00 } + \fp_exp_integer_const:n { \l_fp_internal_tl 00 } \exp_after:wN \exp_after:wN \exp_after:wN \exp_after:wN \fp_exp_integer_tens: \fi: @@ -2380,19 +2386,19 @@ \l_fp_output_extended_int \l_fp_exp_extended_int \l_fp_output_exponent_int \l_fp_exp_exponent_int \if_int_compare:w \l_fp_input_a_integer_int > \c_nine - \tl_set:Nx \l_fp_tmp_tl + \tl_set:Nx \l_fp_internal_tl { \exp_after:wN \use_i:nn \int_use:N \l_fp_input_a_integer_int } \l_fp_input_a_integer_int \int_eval:w - \l_fp_input_a_integer_int - \l_fp_tmp_tl 0 + \l_fp_input_a_integer_int - \l_fp_internal_tl 0 \int_eval_end: \if_int_compare:w \l_fp_input_a_sign_int > \c_zero - \fp_exp_integer_const:n { \l_fp_tmp_tl 0 } + \fp_exp_integer_const:n { \l_fp_internal_tl 0 } \else: - \fp_exp_integer_const:n { - \l_fp_tmp_tl 0 } + \fp_exp_integer_const:n { - \l_fp_internal_tl 0 } \fi: \fp_mul:NNNNNNNNN \l_fp_exp_integer_int \l_fp_exp_decimal_int \l_fp_exp_extended_int @@ -2723,21 +2729,21 @@ \if_int_compare:w \l_fp_exp_integer_int = \c_zero \l_fp_exp_decimal_int #1#2#3#4#5#6#7#8 \scan_stop: \else: - \tl_set:Nx \l_fp_tmp_tl + \tl_set:Nx \l_fp_internal_tl { \int_use:N \l_fp_exp_integer_int #1#2#3#4#5#6#7#8 } \l_fp_exp_integer_int \c_zero - \l_fp_exp_decimal_int \l_fp_tmp_tl \scan_stop: + \l_fp_exp_decimal_int \l_fp_internal_tl \scan_stop: \fi: \tex_divide:D \l_fp_exp_extended_int \c_ten - \tl_set:Nx \l_fp_tmp_tl + \tl_set:Nx \l_fp_internal_tl { #9 \int_use:N \l_fp_exp_extended_int } - \l_fp_exp_extended_int \l_fp_tmp_tl \scan_stop: + \l_fp_exp_extended_int \l_fp_internal_tl \scan_stop: \tex_advance:D \l_fp_exp_exponent_int \c_one } \cs_new_protected_nopar:Npn \fp_ln_mantissa: @@ -2860,13 +2866,13 @@ \if_int_compare:w \l_fp_output_integer_int = \c_zero \l_fp_output_decimal_int #1#2#3#4#5#6#7#8 \scan_stop: \else: - \tl_set:Nx \l_fp_tmp_tl + \tl_set:Nx \l_fp_internal_tl { \int_use:N \l_fp_output_integer_int #1#2#3#4#5#6#7#8 } \l_fp_output_integer_int \c_zero - \l_fp_output_decimal_int \l_fp_tmp_tl \scan_stop: + \l_fp_output_decimal_int \l_fp_internal_tl \scan_stop: \fi: \tex_advance:D \l_fp_output_exponent_int \c_one } @@ -3304,7 +3310,7 @@ } \cs_new_protected_nopar:cpn { fp_compare_<: } { - \tl_set:Nx \l_fp_tmp_tl + \tl_set:Nx \l_fp_internal_tl { \int_set:Nn \exp_not:N \l_fp_input_a_sign_int { \int_use:N \l_fp_input_b_sign_int } @@ -3323,18 +3329,18 @@ \int_set:Nn \exp_not:N \l_fp_input_b_exponent_int { \int_use:N \l_fp_input_a_exponent_int } } - \l_fp_tmp_tl + \l_fp_internal_tl \use:c { fp_compare_>: } } \prg_new_protected_conditional:Npnn \fp_compare:n #1 { T , F , TF } { \group_begin: - \tl_set:Nx \l_fp_tmp_tl + \tl_set:Nx \l_fp_internal_tl { \group_end: \fp_compare_aux_i:w #1 \exp_not:n { == \q_nil == \q_stop } } - \l_fp_tmp_tl + \l_fp_internal_tl } \cs_new_protected:Npn \fp_compare_aux_i:w #1 == #2 == #3 \q_stop { diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3int.sty b/Master/texmf-dist/tex/latex/l3kernel/l3int.sty index eaf62805f81..9f85bb04e58 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3int.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3int.sty @@ -13,7 +13,7 @@ %% %% Do not distribute a modified version of this file. %% -%% File: l3int.dtx Copyright (C) 1990-2011 The LaTeX3 Project +%% File: l3int.dtx Copyright (C) 1990-2012 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 @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3int.dtx 3086 2011-12-22 17:55:46Z bruno $ +\GetIdInfo$Id: l3int.dtx 3139 2012-01-07 19:53:09Z bruno $ {L3 Experimental integers} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3io.sty b/Master/texmf-dist/tex/latex/l3kernel/l3io.sty index 685dd7ca945..16312914578 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3io.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3io.sty @@ -13,7 +13,7 @@ %% %% Do not distribute a modified version of this file. %% -%% File: l3io.dtx Copyright (C) 1990-2011 The LaTeX3 Project +%% File: l3io.dtx Copyright (C) 1990-2012 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 @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3io.dtx 3096 2011-12-27 09:09:18Z joseph $ +\GetIdInfo$Id: l3io.dtx 3160 2012-01-09 02:33:23Z bruno $ {L3 Experimental input-output operations} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} @@ -135,6 +135,8 @@ \tl_map_break: } } +\iow_new:N \g_iow_internal_iow +\ior_new:N \g_ior_internal_ior \cs_new_protected:Npn \iow_stream_alloc:N #1 { \cs_if_exist:cTF { g_iow_ \int_use:N \l_iow_stream_int _iow } @@ -143,10 +145,10 @@ \iow_stream_alloc_aux: \int_compare:nNnT \l_iow_stream_int = \c_sixteen { - \iow_raw_new:N \g_iow_tmp_iow - \int_set:Nn \l_iow_stream_int { \g_iow_tmp_iow } + \iow_raw_new:N \g_iow_internal_iow + \int_set:Nn \l_iow_stream_int { \g_iow_internal_iow } \cs_gset_eq:cN - { g_iow_ \int_use:N \l_iow_stream_int _iow } \g_iow_tmp_iow + { g_iow_ \int_use:N \l_iow_stream_int _iow } \g_iow_internal_iow } \cs_gset_eq:Nc #1 { g_iow_ \int_use:N \l_iow_stream_int _iow } } @@ -172,10 +174,10 @@ \ior_stream_alloc_aux: \int_compare:nNnT \l_ior_stream_int = \c_sixteen { - \ior_raw_new:N \g_ior_tmp_ior - \int_set:Nn \l_ior_stream_int { \g_ior_tmp_ior } + \ior_raw_new:N \g_ior_internal_ior + \int_set:Nn \l_ior_stream_int { \g_ior_internal_ior } \cs_gset_eq:cN - { g_ior_ \int_use:N \l_iow_stream_int _ior } \g_ior_tmp_ior + { g_ior_ \int_use:N \l_iow_stream_int _ior } \g_ior_internal_ior } \cs_gset_eq:Nc #1 { g_ior_ \int_use:N \l_ior_stream_int _ior } } @@ -462,6 +464,39 @@ { \etex_readline:D #1 to #2 } \cs_new_protected:Npn \ior_str_gto:NN #1#2 { \tex_global:D \etex_readline:D #1 to #2 } +\tl_new:N \l_ior_internal_tl +\cs_new_protected_nopar:Npn \ior_map_inline:nn + { \ior_map_inline_aux:Nnn \ior_to:NN } +\cs_new_protected_nopar:Npn \ior_str_map_inline:nn + { \ior_map_inline_aux:Nnn \ior_str_to:NN } +\cs_new_protected_nopar:Npn \ior_map_inline_aux:Nnn + { + \exp_args:Ncc \ior_map_inline_aux:NNNnn + { g_ior_map_ \int_use:N \g_prg_map_int _ior } + { ior_map_ \int_use:N \g_prg_map_int :n } + } +\cs_new_protected:Npn \ior_map_inline_aux:NNNnn #1#2#3#4#5 + { + \cs_if_exist:NF #1 { \ior_new:N #1 } + \cs_set:Npn #2 ##1 {#5} + \ior_open:Nn #1 {#4} + \int_gincr:N \g_prg_map_int + \ior_if_eof:NF #1 { \ior_map_inline_loop:NNN #1#2#3 } + \prg_break_point:n + { + \int_gdecr:N \g_prg_map_int + \ior_close:N #1 + } + } +\cs_new_protected:Npn \ior_map_inline_loop:NNN #1#2#3 + { + #3 #1 \l_ior_internal_tl + \ior_if_eof:NF #1 + { + \exp_args:No #2 \l_ior_internal_tl + \ior_map_inline_loop:NNN #1#2#3 + } + } %% %% %% End of file `l3io.sty'. diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3luatex.sty b/Master/texmf-dist/tex/latex/l3kernel/l3luatex.sty index 2328dda0623..9643cba784c 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3luatex.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3luatex.sty @@ -13,7 +13,7 @@ %% %% Do not distribute a modified version of this file. %% -%% File: l3luatex.dtx Copyright (C) 2010,2011 The LaTeX3 Project +%% File: l3luatex.dtx Copyright (C) 2010-2012 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 @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3luatex.dtx 3086 2011-12-22 17:55:46Z bruno $ +\GetIdInfo$Id: l3luatex.dtx 3158 2012-01-09 00:47:42Z bruno $ {L3 Experimental LuaTeX-specific functions} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} @@ -127,9 +127,9 @@ { \int_gsub:Nn \g_cctab_stack_int { \c_two } \seq_if_empty:NTF \g_cctab_stack_seq - { \tl_set:Nn \l_cctab_tmp_tl { 0 } } - { \seq_gpop:NN \g_cctab_stack_seq \l_cctab_tmp_tl } - \luatex_catcodetable:D \l_cctab_tmp_tl \scan_stop: + { \tl_set:Nn \l_cctab_internal_tl { 0 } } + { \seq_gpop:NN \g_cctab_stack_seq \l_cctab_internal_tl } + \luatex_catcodetable:D \l_cctab_internal_tl \scan_stop: } \luatex_if_engine:F { @@ -149,7 +149,7 @@ \cs_set_protected:Npn \cctab_begin:N #1 { \BeginCatcodeRegime #1 } \cs_set_protected_nopar:Npn \cctab_end: { \EndCatcodeRegime } } -\tl_new:N \l_cctab_tmp_tl +\tl_new:N \l_cctab_internal_tl \cs_new_protected:Npn \cctab_gset:Nn #1#2 { \group_begin: diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3msg.sty b/Master/texmf-dist/tex/latex/l3kernel/l3msg.sty index 7090d10d2a5..90d70060297 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3msg.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3msg.sty @@ -13,7 +13,7 @@ %% %% Do not distribute a modified version of this file. %% -%% File: l3msg.dtx Copyright (C) 2009-2011 The LaTeX3 Project +%% File: l3msg.dtx Copyright (C) 2009-2012 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 @@ -46,12 +46,12 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3msg.dtx 3086 2011-12-22 17:55:46Z bruno $ +\GetIdInfo$Id: l3msg.dtx 3153 2012-01-08 22:05:30Z bruno $ {L3 Experimental messages} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} \package_check_loaded_expl: -\tl_new:N \l_msg_tmp_tl +\tl_new:N \l_msg_internal_tl \tl_const:Nn \c_msg_text_prefix_tl { msg~text~>~ } \tl_const:Nn \c_msg_more_text_prefix_tl { msg~extra~text~>~ } \cs_new_protected:Npn \msg_new:nnnn #1#2 @@ -160,14 +160,14 @@ { \tl_set:Nn \l_msg_text_tl {#1} } \cs_new_protected:Npn \msg_interrupt_more_text:n #1 { - \protected@edef \l_msg_tmp_tl + \protected@edef \l_msg_internal_tl { |''''''''''''''''''''''''''''''''''''''''''''''' #1 \msg_newline: |............................................... } - \tex_errhelp:D \exp_after:wN { \l_msg_tmp_tl } + \tex_errhelp:D \exp_after:wN { \l_msg_internal_tl } } \group_begin: % { \char_set_lccode:nn {`\}} {`\ } @@ -572,22 +572,22 @@ { Negative~argument~for~\prg_replicate:nn. } \msg_kernel_new:nnn { seq } { show } { - Sequence~\token_to_str:N #1~ + The~sequence~\token_to_str:N #1~ \seq_if_empty:NTF #1 { is~empty } { contains~the~items~(without~outer~braces): } } \msg_kernel_new:nnn { prop } { show } { - Property~list~\token_to_str:N #1~ + The~property~list~\token_to_str:N #1~ \prop_if_empty:NTF #1 { is~empty } { contains~the~pairs~(without~outer~braces): } } \msg_kernel_new:nnn { clist } { show } { - Comma~list~ - \str_if_eq:nnF {#1} { \l_clist_tmpa_clist } { \token_to_str:N #1~} + The~comma~list~ + \str_if_eq:nnF {#1} { \l_clist_internal_clist } { \token_to_str:N #1~} \clist_if_empty:NTF #1 { is~empty } { contains~the~items~(without~outer~braces): } @@ -652,16 +652,16 @@ \msg_expandable_kernel_error:nnnnnn {#1} {#2} { } { } { } { } } -\tl_new:N \l_msg_show_tl \cs_new_protected:Npn \msg_aux_use:nn #1#2 { \msg_aux_use:nnxxxx {#1} {#2} { } { } { } { } } \cs_new_protected:Npn \msg_aux_use:nnxxxx #1#2#3#4#5#6 { - \iow_term:x + \iow_wrap:xnnnN { \use:c { \c_msg_text_prefix_tl #1 / #2 } {#3} {#4} {#5} {#6} } + { } \c_zero { } \iow_term:x } \cs_new_protected:Npn \msg_aux_show:Nnx #1#2#3 { @@ -677,14 +677,14 @@ } \cs_new_protected:Npn \msg_aux_show:x #1 { - \tl_set:Nx \l_msg_show_tl {#1} - \tl_if_empty:NT \l_msg_show_tl - { \tl_set:Nx \l_msg_show_tl { > } } + \tl_set:Nx \l_msg_internal_tl {#1} + \tl_if_empty:NT \l_msg_internal_tl + { \tl_set:Nx \l_msg_internal_tl { > } } \exp_args:Nf \etex_showtokens:D { \exp_after:wN \exp_after:wN \exp_after:wN \msg_aux_show:w - \exp_after:wN \l_msg_show_tl + \exp_after:wN \l_msg_internal_tl \exp_after:wN } \prg_do_nothing: diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3names.sty b/Master/texmf-dist/tex/latex/l3kernel/l3names.sty index aa3e05244c3..6532d0d0c7d 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3names.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3names.sty @@ -45,8 +45,8 @@ %% prior consultation with the LaTeX3 Project. %% %% ----------------------------------------------------------------------- -\RequirePackage{l3bootstrap} -\GetIdInfo$Id: l3names.dtx 2944 2011-11-11 07:10:26Z joseph $ +\RequirePackage{l3bootstrap}[2011-12-29] +\GetIdInfo$Id: l3names.dtx 3113 2011-12-30 09:05:11Z joseph $ {L3 Experimental namespace for primitives} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3prg.sty b/Master/texmf-dist/tex/latex/l3kernel/l3prg.sty index 69475b6617b..c0dc6c71502 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3prg.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3prg.sty @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3prg.dtx 3086 2011-12-22 17:55:46Z bruno $ +\GetIdInfo$Id: l3prg.dtx 3122 2011-12-31 20:57:36Z joseph $ {L3 Experimental control structures} %% \ProvidesExplPackage @@ -76,9 +76,9 @@ \cs_new_eq:NN \bool_gset_eq:Nc \cs_gset_eq:Nc \cs_new_eq:NN \bool_gset_eq:cN \cs_gset_eq:cN \cs_new_eq:NN \bool_gset_eq:cc \cs_gset_eq:cc -\cs_new:Npn \bool_set:Nn #1#2 +\cs_new_protected:Npn \bool_set:Nn #1#2 { \tex_chardef:D #1 = \bool_if_p:n {#2} } -\cs_new:Npn \bool_gset:Nn #1#2 +\cs_new_protected:Npn \bool_gset:Nn #1#2 { \tex_global:D \tex_chardef:D #1 = \bool_if_p:n {#2} } \cs_generate_variant:Nn \bool_set:Nn { c } \cs_generate_variant:Nn \bool_gset:Nn { c } diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3prop.sty b/Master/texmf-dist/tex/latex/l3kernel/l3prop.sty index 869c381a1bb..c58cff46737 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3prop.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3prop.sty @@ -13,7 +13,7 @@ %% %% Do not distribute a modified version of this file. %% -%% File: l3prop.dtx Copyright (C) 1990-2011 The LaTeX3 Project +%% File: l3prop.dtx Copyright (C) 1990-2012 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 @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3prop.dtx 3086 2011-12-22 17:55:46Z bruno $ +\GetIdInfo$Id: l3prop.dtx 3158 2012-01-09 00:47:42Z bruno $ {L3 Experimental property lists} %% \ProvidesExplPackage @@ -312,12 +312,12 @@ \exp_last_unbraced:Noo \prop_get_Nn_aux:nwn { \tl_to_str:n {#2} } #1 \tl_to_str:n {#2} \q_prop { } - \q_recursion_stop + \prg_break_point:n { } } \cs_new:Npn \prop_get_Nn_aux:nwn #1 \q_prop #2 \q_prop #3 { \str_if_eq:xxTF {#1} {#2} - { \use_i_delimit_by_q_recursion_stop:nw {#3} } + { \prg_map_break:n { \exp_not:n {#3} } } { \prop_get_Nn_aux:nwn {#1} } } \cs_generate_variant:Nn \prop_get:Nn { c } diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3quark.sty b/Master/texmf-dist/tex/latex/l3kernel/l3quark.sty index 3a9a6489663..344873f2405 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3quark.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3quark.sty @@ -13,7 +13,7 @@ %% %% Do not distribute a modified version of this file. %% -%% File: l3quark.dtx Copyright (C) 1990-2011 The LaTeX3 Project +%% File: l3quark.dtx Copyright (C) 1990-2012 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 @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3quark.dtx 3086 2011-12-22 17:55:46Z bruno $ +\GetIdInfo$Id: l3quark.dtx 3148 2012-01-08 15:42:18Z bruno $ {L3 Experimental quarks} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3seq.sty b/Master/texmf-dist/tex/latex/l3kernel/l3seq.sty index 743e17ed121..2b47a5c01d8 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3seq.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3seq.sty @@ -13,7 +13,7 @@ %% %% Do not distribute a modified version of this file. %% -%% File: l3seq.dtx Copyright (C) 1990-2011 The LaTeX3 Project +%% File: l3seq.dtx Copyright (C) 1990-2012 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 @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3seq.dtx 3085 2011-12-22 16:29:26Z bruno $ +\GetIdInfo$Id: l3seq.dtx 3158 2012-01-09 00:47:42Z bruno $ {L3 Experimental sequences and stacks} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} @@ -56,8 +56,8 @@ \msg_expandable_kernel_error:nn { seq } { misused } \use_none:n } -\tl_new:N \l_seq_tmpa_tl -\tl_new:N \l_seq_tmpb_tl +\tl_new:N \l_seq_internal_a_tl +\tl_new:N \l_seq_internal_b_tl \cs_new_eq:NN \seq_new:N \tl_new:N \cs_new_eq:NN \seq_new:c \tl_new:c \cs_new_eq:NN \seq_clear:N \tl_clear:N @@ -85,19 +85,19 @@ \tl_if_empty:nTF {#3} { #1 #2 { \tl_map_function:nN {#4} \seq_wrap_item:n } } { - \tl_set:Nn \l_seq_tmpa_tl + \tl_set:Nn \l_seq_internal_a_tl { \seq_set_split_aux_i:w \prg_do_nothing: #4 \seq_set_split_aux_end: } - \tl_replace_all:Nnn \l_seq_tmpa_tl { #3 } + \tl_replace_all:Nnn \l_seq_internal_a_tl { #3 } { \seq_set_split_aux_end: \seq_set_split_aux_i:w \prg_do_nothing: } - \tl_set:Nx \l_seq_tmpa_tl { \l_seq_tmpa_tl } - #1 #2 { \l_seq_tmpa_tl } + \tl_set:Nx \l_seq_internal_a_tl { \l_seq_internal_a_tl } + #1 #2 { \l_seq_internal_a_tl } } } \cs_new:Npn \seq_set_split_aux_i:w #1 \seq_set_split_aux_end: @@ -131,20 +131,20 @@ \cs_generate_variant:Nn \seq_gput_right:Nn { NV , Nv , No , Nx } \cs_generate_variant:Nn \seq_gput_right:Nn { c , cV , cv , co , cx } \cs_new:Npn \seq_wrap_item:n #1 { \exp_not:n { \seq_item:n {#1} } } -\seq_new:N \l_seq_remove_seq +\seq_new:N \l_seq_internal_remove_seq \cs_new_protected:Npn \seq_remove_duplicates:N { \seq_remove_duplicates_aux:NN \seq_set_eq:NN } \cs_new_protected:Npn \seq_gremove_duplicates:N { \seq_remove_duplicates_aux:NN \seq_gset_eq:NN } \cs_new_protected:Npn \seq_remove_duplicates_aux:NN #1#2 { - \seq_clear:N \l_seq_remove_seq + \seq_clear:N \l_seq_internal_remove_seq \seq_map_inline:Nn #2 { - \seq_if_in:NnF \l_seq_remove_seq {##1} - { \seq_put_right:Nn \l_seq_remove_seq {##1} } + \seq_if_in:NnF \l_seq_internal_remove_seq {##1} + { \seq_put_right:Nn \l_seq_internal_remove_seq {##1} } } - #1 #2 \l_seq_remove_seq + #1 #2 \l_seq_internal_remove_seq } \cs_generate_variant:Nn \seq_remove_duplicates:N { c } \cs_generate_variant:Nn \seq_gremove_duplicates:N { c } @@ -159,16 +159,16 @@ \str_if_eq:nnT {##1} {#3} { \if_false: { \fi: } - \tl_set:Nn \l_seq_tmpb_tl {##1} + \tl_set:Nn \l_seq_internal_b_tl {##1} #1 #2 { \if_false: } \fi: \exp_not:o {#2} - \tl_if_eq:NNT \l_seq_tmpa_tl \l_seq_tmpb_tl + \tl_if_eq:NNT \l_seq_internal_a_tl \l_seq_internal_b_tl { \use_none:nn } } \seq_wrap_item:n {##1} } - \tl_set:Nn \l_seq_tmpa_tl {#3} + \tl_set:Nn \l_seq_internal_a_tl {#3} #1 #2 {#2} \seq_pop_item_def: } @@ -182,11 +182,11 @@ { T , F , TF } { \group_begin: - \tl_set:Nn \l_seq_tmpa_tl {#2} + \tl_set:Nn \l_seq_internal_a_tl {#2} \cs_set_protected:Npn \seq_item:n ##1 { - \tl_set:Nn \l_seq_tmpb_tl {##1} - \if_meaning:w \l_seq_tmpa_tl \l_seq_tmpb_tl + \tl_set:Nn \l_seq_internal_b_tl {##1} + \if_meaning:w \l_seq_internal_a_tl \l_seq_internal_b_tl \exp_after:wN \seq_if_in_aux: \fi: } @@ -476,7 +476,7 @@ { \use_none:n #2 \int_compare:nNnTF {#1} = \c_zero - { \seq_break:n {#3} } + { \seq_break:n { \exp_not:n {#3} } } { \exp_args:Nf \seq_item_aux:nnn { \int_eval:n { #1 - 1 } } } } \cs_generate_variant:Nn \seq_item:Nn { c } diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3skip.sty b/Master/texmf-dist/tex/latex/l3kernel/l3skip.sty index 62cbdf92adb..0250bedeb7c 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3skip.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3skip.sty @@ -14,6 +14,7 @@ %% Do not distribute a modified version of this file. %% %% File: l3skip.dtx Copyright (C) 2004-2011 Frank Mittelbach, The LaTeX3 Project +%% (C) 2012 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 @@ -46,9 +47,8 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3skip.dtx 3086 2011-12-22 17:55:46Z bruno $ +\GetIdInfo$Id: l3skip.dtx 3139 2012-01-07 19:53:09Z bruno $ {L3 Experimental dimensions and skips} - \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} \package_check_loaded_expl: @@ -65,6 +65,12 @@ \cs_new_protected:Npn \dim_gzero:N { \tex_global:D \dim_zero:N } \cs_generate_variant:Nn \dim_zero:N { c } \cs_generate_variant:Nn \dim_gzero:N { c } +\cs_new_protected:Npn \dim_zero_new:N #1 + { \cs_if_exist:NTF #1 { \dim_zero:N #1 } { \dim_new:N #1 } } +\cs_new_protected:Npn \dim_gzero_new:N #1 + { \cs_if_exist:NTF #1 { \dim_gzero:N #1 } { \dim_new:N #1 } } +\cs_generate_variant:Nn \dim_zero_new:N { c } +\cs_generate_variant:Nn \dim_gzero_new:N { c } \cs_new_protected:Npn \dim_set:Nn #1#2 { #1 ~ \dim_eval:w #2 \dim_eval_end: } \cs_new_protected:Npn \dim_gset:Nn { \tex_global:D \dim_set:Nn } @@ -244,6 +250,12 @@ \cs_new_protected:Npn \skip_gzero:N { \tex_global:D \skip_zero:N } \cs_generate_variant:Nn \skip_zero:N { c } \cs_generate_variant:Nn \skip_gzero:N { c } +\cs_new_protected:Npn \skip_zero_new:N #1 + { \cs_if_exist:NTF #1 { \skip_zero:N #1 } { \skip_new:N #1 } } +\cs_new_protected:Npn \skip_gzero_new:N #1 + { \cs_if_exist:NTF #1 { \skip_gzero:N #1 } { \skip_new:N #1 } } +\cs_generate_variant:Nn \skip_zero_new:N { c } +\cs_generate_variant:Nn \skip_gzero_new:N { c } \cs_new_protected:Npn \skip_set:Nn #1#2 { #1 ~ \etex_glueexpr:D #2 \scan_stop: } \cs_new_protected:Npn \skip_gset:Nn { \tex_global:D \skip_set:Nn } @@ -319,6 +331,12 @@ \cs_new_protected:Npn \muskip_gzero:N { \tex_global:D \muskip_zero:N } \cs_generate_variant:Nn \muskip_zero:N { c } \cs_generate_variant:Nn \muskip_gzero:N { c } +\cs_new_protected:Npn \muskip_zero_new:N #1 + { \cs_if_exist:NTF #1 { \muskip_zero:N #1 } { \muskip_new:N #1 } } +\cs_new_protected:Npn \muskip_gzero_new:N #1 + { \cs_if_exist:NTF #1 { \muskip_gzero:N #1 } { \muskip_new:N #1 } } +\cs_generate_variant:Nn \muskip_zero_new:N { c } +\cs_generate_variant:Nn \muskip_gzero_new:N { c } \cs_new_protected:Npn \muskip_set:Nn #1#2 { #1 ~ \etex_muexpr:D #2 \scan_stop: } \cs_new_protected:Npn \muskip_gset:Nn { \tex_global:D \muskip_set:Nn } diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3tl.sty b/Master/texmf-dist/tex/latex/l3kernel/l3tl.sty index 413c68fd926..4dc5ec2b65a 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3tl.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3tl.sty @@ -13,7 +13,7 @@ %% %% Do not distribute a modified version of this file. %% -%% File: l3tl.dtx Copyright (C) 1990-2011 The LaTeX3 Project +%% File: l3tl.dtx Copyright (C) 1990-2012 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 @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3tl.dtx 3091 2011-12-25 16:22:59Z bruno $ +\GetIdInfo$Id: l3tl.dtx 3158 2012-01-09 00:47:42Z bruno $ {L3 Experimental token lists} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} @@ -202,7 +202,6 @@ \cs_generate_variant:Nn \tl_gset_rescan:Nnn { c , cno } \cs_new_eq:NN \tl_to_lowercase:n \tex_lowercase:D \cs_new_eq:NN \tl_to_uppercase:n \tex_uppercase:D -\tl_new:N \l_tl_replace_tl \cs_new_protected_nopar:Npn \tl_replace_once:Nnn { \tl_replace_aux:NNNnn \tl_replace_once_aux: \tl_set:Nx } \cs_new_protected_nopar:Npn \tl_greplace_once:Nnn @@ -325,9 +324,9 @@ \prg_new_protected_conditional:Npnn \tl_if_eq:nn #1#2 { T , F , TF } { \group_begin: - \tl_set:Nn \l_tl_tmpa_tl {#1} - \tl_set:Nn \l_tl_tmpb_tl {#2} - \if_meaning:w \l_tl_tmpa_tl \l_tl_tmpb_tl + \tl_set:Nn \l_tl_internal_a_tl {#1} + \tl_set:Nn \l_tl_internal_b_tl {#2} + \if_meaning:w \l_tl_internal_a_tl \l_tl_internal_b_tl \group_end: \prg_return_true: \else: @@ -335,8 +334,8 @@ \prg_return_false: \fi: } -\tl_new:N \l_tl_tmpa_tl -\tl_new:N \l_tl_tmpb_tl +\tl_new:N \l_tl_internal_a_tl +\tl_new:N \l_tl_internal_b_tl \cs_new_protected_nopar:Npn \tl_if_in:NnT { \exp_args:No \tl_if_in:nnT } \cs_new_protected_nopar:Npn \tl_if_in:NnF { \exp_args:No \tl_if_in:nnF } \cs_new_protected_nopar:Npn \tl_if_in:NnTF { \exp_args:No \tl_if_in:nnTF } @@ -433,7 +432,8 @@ \q_mark \tl_reverse_items_aux:wn \q_stop { {#1} #5 } } -\cs_new:Npn \tl_reverse_items_aux:wn #1 \q_stop #2 { \use_none:nn #2 } +\cs_new:Npn \tl_reverse_items_aux:wn #1 \q_stop #2 + { \exp_not:o { \use_none:nn #2 } } \cs_set:Npn \tl_tmp:w #1 { \cs_new:Npn \tl_trim_spaces:n ##1 @@ -482,10 +482,10 @@ \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 - { \tl_head:w #1 { } \q_stop } + { \etex_unexpanded:D \exp_after:wN { \tl_head:w #1 { } \q_stop } } \cs_new:Npn \tl_tail:n #1 - { \tl_tail_aux:w #1 \q_mark { } \q_mark \q_stop } -\cs_new:Npn \tl_tail_aux:w #1 #2 \q_mark #3 \q_stop { #2 } + { \etex_unexpanded:D \tl_tail_aux:w #1 \q_mark { } \q_mark \q_stop } +\cs_new:Npn \tl_tail_aux:w #1 #2 \q_mark #3 \q_stop { {#2} } \cs_generate_variant:Nn \tl_head:n { V , v , f } \cs_generate_variant:Nn \tl_tail:n { V , v , f } \cs_new:Npn \str_head:n #1 @@ -683,14 +683,18 @@ \exp_args:Nf #1 { \exp_after:wN \exp_after:wN \exp_after:wN { #2 {#3} } } } -\cs_new:Npn \tl_reverse_tokens:n +\cs_new:Npn \tl_reverse_tokens:n #1 { - \tex_romannumeral:D - \tl_act_aux:NNNnn - \tl_act_reverse_normal:nN - \tl_act_reverse_group:nn - \tl_act_reverse_space:n - { } + \etex_unexpanded:D \exp_after:wN + { + \tex_romannumeral:D + \tl_act_aux:NNNnn + \tl_act_reverse_normal:nN + \tl_act_reverse_group:nn + \tl_act_reverse_space:n + { } + {#1} + } } \cs_new:Npn \tl_act_reverse_space:n #1 { \tl_act_reverse_output:n {~} } @@ -702,22 +706,26 @@ \tl_act_reverse_output:n { \tl_reverse_tokens:n } } -\cs_new:Npn \tl_reverse:n +\cs_new:Npn \tl_reverse:n #1 { - \tex_romannumeral:D - \tl_act_aux:NNNnn - \tl_act_reverse_normal:nN - \tl_act_reverse_group_preserve:nn - \tl_act_reverse_space:n - { } + \etex_unexpanded:D \exp_after:wN + { + \tex_romannumeral:D + \tl_act_aux:NNNnn + \tl_act_reverse_normal:nN + \tl_act_reverse_group_preserve:nn + \tl_act_reverse_space:n + { } + {#1} + } } \cs_new:Npn \tl_act_reverse_group_preserve:nn #1 #2 { \tl_act_reverse_output:n { {#2} } } \cs_generate_variant:Nn \tl_reverse:n { o , V } \cs_new_protected:Npn \tl_reverse:N #1 - { \tl_set:Nf #1 { \tl_reverse:o { #1 \exp_stop_f: } } } + { \tl_set:Nx #1 { \exp_args:No \tl_reverse:n { #1 } } } \cs_new_protected:Npn \tl_greverse:N #1 - { \tl_gset:Nf #1 { \tl_reverse:o { #1 \exp_stop_f: } } } + { \tl_gset:Nx #1 { \exp_args:No \tl_reverse:n { #1 } } } \cs_generate_variant:Nn \tl_reverse:N { c } \cs_generate_variant:Nn \tl_greverse:N { c } \cs_new:Npn \tl_length_tokens:n #1 @@ -746,10 +754,22 @@ Aa Bb Cc Dd Ee Ff Gg Hh Ii Jj Kk Ll Mm Nn Oo Pp Qq Rr Ss Tt Uu Vv Ww Xx Yy Zz } -\cs_new:Npn \tl_expandable_uppercase:n - { \tex_romannumeral:D \tl_act_case_aux:nn { \c_tl_act_uppercase_tl } } -\cs_new:Npn \tl_expandable_lowercase:n - { \tex_romannumeral:D \tl_act_case_aux:nn { \c_tl_act_lowercase_tl } } +\cs_new:Npn \tl_expandable_uppercase:n #1 + { + \etex_unexpanded:D \exp_after:wN + { + \tex_romannumeral:D + \tl_act_case_aux:nn { \c_tl_act_uppercase_tl } {#1} + } + } +\cs_new:Npn \tl_expandable_lowercase:n #1 + { + \etex_unexpanded:D \exp_after:wN + { + \tex_romannumeral:D + \tl_act_case_aux:nn { \c_tl_act_lowercase_tl } {#1} + } + } \cs_new:Npn \tl_act_case_aux:nn { \tl_act_aux:NNNnn @@ -790,7 +810,7 @@ { \quark_if_recursion_tail_break:n {#2} \int_compare:nNnTF {#1} = \c_zero - { \tl_map_break:n {#2} } + { \tl_map_break:n { \exp_not:n {#2} } } { \exp_args:Nf \tl_item_aux:nn { \int_eval:n { #1 - 1 } } } } \cs_new_nopar:Npn \tl_item:Nn { \exp_args:No \tl_item:nn } diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3token.sty b/Master/texmf-dist/tex/latex/l3kernel/l3token.sty index 1a744a15610..e634c9d27c8 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3token.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3token.sty @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3token.dtx 3099 2011-12-27 21:41:02Z joseph $ +\GetIdInfo$Id: l3token.dtx 3123 2011-12-31 21:51:51Z joseph $ {L3 Experimental token manipulation} %% \begin{function}[EXP,pTF]{\token_if_protected_long_macro:N} \ProvidesExplPackage |