diff options
author | Karl Berry <karl@freefriends.org> | 2011-09-07 23:33:27 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2011-09-07 23:33:27 +0000 |
commit | f1cddb2ae051713a3d0b9efa1251d8f85d8131fc (patch) | |
tree | 47b6a38de15329b2ffd3a196e7d85e7ad1e93032 /Master/texmf-dist/tex/latex/l3kernel | |
parent | ea06cd2704b8ed1c5278b20798ab9e3811e0ca4e (diff) |
l3kernel 2729 (5sep11)
git-svn-id: svn://tug.org/texlive/trunk@23865 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/l3kernel')
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/expl3.sty | 12 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/l3basics.sty | 2 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/l3bootstrap.sty | 2 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/l3box.sty | 324 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/l3clist.sty | 133 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/l3coffins.sty | 119 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/l3color.sty | 64 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/l3doc.cls | 51 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/l3io.sty | 16 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/l3keys.sty | 2 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/l3msg.sty | 2 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/l3prg.sty | 2 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/l3prop.sty | 15 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/l3seq.sty | 6 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/l3tl.sty | 2 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/l3token.sty | 2 |
16 files changed, 659 insertions, 95 deletions
diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty index 610d2b169ca..dd8e487b69e 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty @@ -48,11 +48,12 @@ \RequirePackage{l3names} \def\ExplFileName{expl3} \def\ExplFileDescription{L3 Experimental code bundle wrapper} -\def\ExplFileDate{2011/08/28} -\def\ExplFileVersion{2678} +\def\ExplFileDate{2011/09/05} +\def\ExplFileVersion{2729} \RequirePackage{etex} \reserveinserts{32} \RequirePackage{calc} +\RequirePackage{color,graphics} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} \newcommand* \@l@expl@check@declarations@bool { 0 } @@ -117,11 +118,12 @@ l3io, l3file, l3skip, - l3box, l3keys, l3fp, - l3luatex, - l3coffins + l3box, + l3coffins, + l3color, + l3luatex } \RequirePackage{l3toks} \bool_if:nT { \@l@expl@check@declarations@bool } diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3basics.sty b/Master/texmf-dist/tex/latex/l3kernel/l3basics.sty index 4d82350bb19..8034a2ff274 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3basics.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3basics.sty @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3basics.dtx 2665 2011-08-25 22:15:27Z joseph $ +\GetIdInfo$Id: l3basics.dtx 2689 2011-08-29 19:50:38Z joseph $ {L3 Experimental basic definitions} \ProvidesExplPackage diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3bootstrap.sty b/Master/texmf-dist/tex/latex/l3kernel/l3bootstrap.sty index 4c575fdc144..ee4c4decd6f 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 2558 2011-08-13 06:32:00Z joseph $ +\GetIdInfo$Id: l3bootstrap.dtx 2687 2011-08-29 19:48:45Z 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 57415ec278d..cb83228019a 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3box.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3box.sty @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3box.dtx 2665 2011-08-25 22:15:27Z joseph $ +\GetIdInfo$Id: l3box.dtx 2711 2011-09-02 12:15:53Z joseph $ {L3 Experimental boxes} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} @@ -214,6 +214,328 @@ \cs_generate_variant:Nn \vbox_unpack_clear:N { c } \cs_new_protected_nopar:Npn \vbox_set_split_to_ht:NNn #1#2#3 { \tex_setbox:D #1 \tex_vsplit:D #2 to \dim_eval:w #3 \dim_eval_end: } +\fp_new:N \l_box_angle_fp +\fp_new:N \l_box_cos_fp +\fp_new:N \l_box_sin_fp +\dim_new:N \l_box_top_dim +\dim_new:N \l_box_bottom_dim +\dim_new:N \l_box_left_dim +\dim_new:N \l_box_right_dim +\dim_new:N \l_box_top_new_dim +\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 +\fp_new:N \l_box_x_fp +\fp_new:N \l_box_y_fp +\fp_new:N \l_box_x_new_fp +\fp_new:N \l_box_y_new_fp +\cs_new_protected_nopar:Npn \box_rotate:Nn #1#2 + { + \hbox_set:Nn #1 + { + \group_begin: + \fp_set:Nn \l_box_angle_fp {#2} + \box_rotate_set_sin_cos: + \fp_compare:NNNTF \l_box_sin_fp = \c_zero_fp + { + \fp_compare:NNNTF \l_box_cos_fp = \c_one_fp + { \box_use:N #1 } + { \box_rotate_aux:N #1 } + } + { \box_rotate_aux:N #1 } + \group_end: + } + } +\cs_new_protected_nopar:Npn \box_rotate_aux:N #1 + { + \dim_set:Nn \l_box_top_dim { \box_ht:N #1 } + \dim_set:Nn \l_box_bottom_dim { -\box_dp:N #1 } + \dim_set:Nn \l_box_right_dim { \box_wd:N #1 } + \dim_zero:N \l_box_left_dim + \fp_compare:NNNTF \l_box_sin_fp > \c_zero_fp + { + \fp_compare:NNNTF \l_box_cos_fp > \c_zero_fp + { \box_rotate_quadrant_one: } + { \box_rotate_quadrant_two: } + } + { + \fp_compare:NNNTF \l_box_cos_fp < \c_zero_fp + { \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 + { + \tex_kern:D -\l_box_left_new_dim + \hbox:n + { + \driver_box_rotate_begin: + \box_use:N \l_box_tmp_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 + { \l_box_right_new_dim - \l_box_left_new_dim } + \box_use:N \l_box_tmp_box + } +\cs_set_protected_nopar:Npn \box_rotate:Nn #1#2 + { \hbox_set:Nn #1 { \rotatebox {#2} { \box_use:N #1 } } } +\cs_new_protected_nopar: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 } + } +\cs_new_protected_nopar: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_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 } + \dim_set:Nn #3 { \fp_to_dim:N \l_box_x_new_fp } + } +\cs_new_protected_nopar:Npn \box_rotate_y: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_y_new_fp \l_box_y_fp + \fp_set_eq:NN \l_box_tmp_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 } + \dim_set:Nn #3 { \fp_to_dim:N \l_box_y_new_fp } +} +\cs_new_protected_nopar:Npn \box_rotate_quadrant_one: + { + \box_rotate_y:nnN \l_box_right_dim \l_box_top_dim + \l_box_top_new_dim + \box_rotate_y:nnN \l_box_left_dim \l_box_bottom_dim + \l_box_bottom_new_dim + \box_rotate_x:nnN \l_box_left_dim \l_box_top_dim + \l_box_left_new_dim + \box_rotate_x:nnN \l_box_right_dim \l_box_bottom_dim + \l_box_right_new_dim + } +\cs_new_protected_nopar:Npn \box_rotate_quadrant_two: + { + \box_rotate_y:nnN \l_box_right_dim \l_box_bottom_dim + \l_box_top_new_dim + \box_rotate_y:nnN \l_box_left_dim \l_box_top_dim + \l_box_bottom_new_dim + \box_rotate_x:nnN \l_box_right_dim \l_box_top_dim + \l_box_left_new_dim + \box_rotate_x:nnN \l_box_left_dim \l_box_bottom_dim + \l_box_right_new_dim + } +\cs_new_protected_nopar:Npn \box_rotate_quadrant_three: + { + \box_rotate_y:nnN \l_box_left_dim \l_box_bottom_dim + \l_box_top_new_dim + \box_rotate_y:nnN \l_box_right_dim \l_box_top_dim + \l_box_bottom_new_dim + \box_rotate_x:nnN \l_box_right_dim \l_box_bottom_dim + \l_box_left_new_dim + \box_rotate_x:nnN \l_box_left_dim \l_box_top_dim + \l_box_right_new_dim + } +\cs_new_protected_nopar:Npn \box_rotate_quadrant_four: + { + \box_rotate_y:nnN \l_box_left_dim \l_box_top_dim + \l_box_top_new_dim + \box_rotate_y:nnN \l_box_right_dim \l_box_bottom_dim + \l_box_bottom_new_dim + \box_rotate_x:nnN \l_box_left_dim \l_box_bottom_dim + \l_box_left_new_dim + \box_rotate_x:nnN \l_box_right_dim \l_box_top_dim + \l_box_right_new_dim + } +\fp_new:N \l_box_scale_x_fp +\fp_new:N \l_box_scale_y_fp +\cs_new_protected:Npn \box_resize:Nnn #1#2#3 + { + \hbox_set:Nn #1 + { + \group_begin: + \dim_set:Nn \l_box_top_dim { \box_ht:N #1 } + \dim_set:Nn \l_box_bottom_dim { -\box_dp:N #1 } + \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_scale_y_fp {#3} + \fp_set_from_dim:Nn \l_box_tmp_fp + { \l_box_top_dim - \l_box_bottom_dim } + \fp_div:Nn \l_box_scale_y_fp { \l_box_tmp_fp } + \fp_compare:NNNTF \l_box_scale_x_fp = \c_one_fp + { + \fp_compare:NNNTF \l_box_scale_y_fp = \c_one_fp + { \box_use:N #1 } + { \box_resize_aux:Nnn #1 {#2} {#3} } + } + { \box_resize_aux:Nnn #1 {#2} {#3} } + \group_end: + } + } +\cs_generate_variant:Nn \box_resize:Nnn { c } +\cs_new_protected:Npn \box_resize_aux:Nnn #1#2#3 + { + \dim_compare:nNnTF {#2} > \c_zero_dim + { \dim_set:Nn \l_box_right_new_dim {#2} } + { \dim_set:Nn \l_box_right_new_dim { \c_zero_dim - ( #2 ) } } + \dim_compare:nNnTF {#3} > \c_zero_dim + { + \dim_set:Nn \l_box_top_new_dim + { \fp_use:N \l_box_scale_y_fp \l_box_top_dim } + \dim_set:Nn \l_box_bottom_new_dim + { \fp_use:N \l_box_scale_y_fp \l_box_bottom_dim } + } + { + \dim_set:Nn \l_box_top_new_dim + { - \fp_use:N \l_box_scale_y_fp \l_box_top_dim } + \dim_set:Nn \l_box_bottom_new_dim + { - \fp_use:N \l_box_scale_y_fp \l_box_bottom_dim } + } + \box_resize_common:N #1 + } +\cs_set_protected_nopar:Npn \box_resize:Nnn #1#2#3 + { + \hbox_set:Nn #1 + { + \resizebox * + { \etex_dimexpr:D #2 \scan_stop: } + { \etex_dimexpr:D #3 \scan_stop: } + { \box_use:N #1 } + } + } +\cs_new_protected_nopar:Npn \box_resize_to_ht_plus_dp:Nn #1#2 + { + \hbox_set:Nn #1 + { + \group_begin: + \dim_set:Nn \l_box_top_dim { \box_ht:N #1 } + \dim_set:Nn \l_box_bottom_dim { -\box_dp:N #1 } + \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 + { \l_box_top_dim - \l_box_bottom_dim } + \fp_div:Nn \l_box_scale_y_fp { \l_box_tmp_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 } + { \box_resize_aux:Nnn #1 {#2} {#2} } + \group_end: + } + } +\cs_generate_variant:Nn \box_resize_to_ht_plus_dp:Nn { c } +\cs_new_protected_nopar:Npn \box_resize_to_wd:Nn #1#2 + { + \hbox_set:Nn #1 + { + \group_begin: + \dim_set:Nn \l_box_top_dim { \box_ht:N #1 } + \dim_set:Nn \l_box_bottom_dim { -\box_dp:N #1 } + \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_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 } + { \box_resize_aux:Nnn #1 {#2} {#2} } + \group_end: + } + } +\cs_generate_variant:Nn \box_resize_to_wd:Nn { c } +\cs_set_protected_nopar:Npn \box_resize_to_ht_plus_dp:Nn #1#2 + { + \hbox_set:Nn #1 + { + \resizebox * { ! } { \etex_dimexpr:D #2 \scan_stop: } { \box_use:N #1 } + } + } +\cs_set_protected_nopar:Npn \box_resize_to_wd:Nn #1#2 + { + \hbox_set:Nn #1 + { + \resizebox * { \etex_dimexpr:D #2 \scan_stop: } { ! } { \box_use:N #1 } + } + } +\cs_new_protected_nopar:Npn \box_scale:Nnn #1#2#3 + { + \hbox_set:Nn #1 + { + \group_begin: + \fp_set:Nn \l_box_scale_x_fp {#2} + \fp_set:Nn \l_box_scale_y_fp {#3} + \dim_set:Nn \l_box_top_dim { \box_ht:N #1 } + \dim_set:Nn \l_box_bottom_dim { -\box_dp:N #1 } + \dim_set:Nn \l_box_right_dim { \box_wd:N #1 } + \dim_zero:N \l_box_left_dim + \fp_compare:NNNTF \l_box_scale_x_fp = \c_one_fp + { + \fp_compare:NNNTF \l_box_scale_y_fp = \c_one_fp + { \box_use:N #1 } + { \box_scale_aux:Nnn #1 {#2} {#3} } + } + { \box_scale_aux:Nnn #1 {#2} {#3} } + \group_end: + } + } +\cs_generate_variant:Nn \box_scale:Nnn { c } +\cs_new_protected_nopar:Npn \box_scale_aux:Nnn #1#2#3 + { + \fp_compare:NNNTF \l_box_scale_y_fp > \c_zero_fp + { + \dim_set:Nn \l_box_top_new_dim { #3 \l_box_top_dim } + \dim_set:Nn \l_box_bottom_new_dim { #3 \l_box_bottom_dim } + } + { + \dim_set:Nn \l_box_top_new_dim { -#3 \l_box_bottom_dim } + \dim_set:Nn \l_box_bottom_new_dim { -#3 \l_box_top_dim } + } + \fp_compare:NNNTF \l_box_scale_x_fp > \c_zero_fp + { \l_box_right_new_dim #2 \l_box_right_dim } + { \l_box_right_new_dim -#2 \l_box_right_dim } + \box_resize_common:N #1 + } +\cs_set_protected_nopar:Npn \box_scale:Nnn #1#2#3 + { \hbox_set:Nn #1 { \scalebox {#2} [#3] { \box_use:N #1 } } } +\cs_new_protected_nopar:Npn \box_resize_common:N #1 + { + \hbox_set:Nn \l_box_tmp_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 } + \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 + \tex_hss:D + } + } + { + \box_set_wd:Nn \l_box_tmp_box { \l_box_right_new_dim } + \box_use:N \l_box_tmp_box + } + } %% %% %% End of file `l3box.sty'. diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3clist.sty b/Master/texmf-dist/tex/latex/l3kernel/l3clist.sty index 1f19e3490e0..fa86133edb0 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3clist.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3clist.sty @@ -47,7 +47,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3clist.dtx 2666 2011-08-26 06:10:09Z joseph $ +\GetIdInfo$Id: l3clist.dtx 2725 2011-09-05 18:53:03Z bruno $ {L3 Experimental comma separated lists} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} @@ -94,24 +94,71 @@ } \cs_generate_variant:Nn \clist_concat:NNN { ccc } \cs_generate_variant:Nn \clist_gconcat:NNN { ccc } +\cs_new_protected:Npn \clist_tmp:w { } +\cs_set:Npn \clist_tmp:w #1 + { + \cs_new:Npn \clist_trim_spaces_generic:nw ##1 ##2 , + { + \tl_trim_spaces_aux_i:w + ##2 + \q_nil + \q_mark #1 { } + \q_mark \tl_trim_spaces_aux_ii:w + \tl_trim_spaces_aux_iii:w + #1 \q_nil + \clist_trim_spaces_generic_aux:w + \q_stop + {##1} + } + } +\clist_tmp:w {~} +\cs_new:Npn \clist_trim_spaces_generic_aux:w #1 \q_nil #2 \q_stop + { \exp_args:No \clist_trim_spaces_generic_aux_ii:nn { \use_none:n #1 } } +\cs_new:Npn \clist_trim_spaces_generic_aux_ii:nn #1 #2 { #2 {#1} } +\cs_new:Npn \clist_trim_spaces:n #1 + { + \clist_trim_spaces_aux:n { } \q_mark #1 , + \q_recursion_tail, \q_recursion_stop + } +\cs_new:Npn \clist_trim_spaces_aux:n #1 + { + \clist_trim_spaces_generic:nw + { \clist_trim_spaces_aux_ii:nn {#1} } + } +\cs_new:Npn \clist_trim_spaces_aux_ii:nn #1 #2 + { + \quark_if_recursion_tail_stop:n {#2} + \tl_if_empty:nTF {#2} + { + \clist_trim_spaces_aux:n {#1} \q_mark + } + { + #1 \exp_not:n {#2} + \clist_trim_spaces_aux:n { , } \q_mark + } + } \cs_new_protected_nopar:Npn \clist_put_left:Nn - { \clist_put_aux:NNnnNn \tl_set:Nn \tl_put_left:Nn { } , } + { \clist_put_aux:NNnnNn \tl_set_eq:NN \tl_put_left:Nx { } , } \cs_new_protected_nopar:Npn \clist_gput_left:Nn - { \clist_put_aux:NNnnNn \tl_gset:Nn \tl_gput_left:Nn { } , } + { \clist_put_aux:NNnnNn \tl_gset_eq:NN \tl_gput_left:Nx { } , } \cs_new_protected:Npn \clist_put_aux:NNnnNn #1#2#3#4#5#6 { + \tl_set:Nx \l_clist_tmpa_tl { \clist_trim_spaces:n {#6} } \clist_if_empty:NTF #5 - { #1 #5 {#6} } - { \tl_if_empty:nF {#6} { #2 #5 { #3 #6 #4 } } } + { #1 #5 \l_clist_tmpa_tl } + { + \tl_if_empty:NF \l_clist_tmpa_tl + { #2 #5 { #3 \exp_not:o \l_clist_tmpa_tl #4 } } + } } \cs_generate_variant:Nn \clist_put_left:Nn { NV , No , Nx } \cs_generate_variant:Nn \clist_put_left:Nn { c , cV , co , cx } \cs_generate_variant:Nn \clist_gput_left:Nn { NV , No , Nx } \cs_generate_variant:Nn \clist_gput_left:Nn { c , cV , co , cx } \cs_new_protected:Npn \clist_put_right:Nn - { \clist_put_aux:NNnnNn \tl_set:Nn \tl_put_right:Nn , { } } + { \clist_put_aux:NNnnNn \tl_set_eq:NN \tl_put_right:Nx , { } } \cs_new_protected_nopar:Npn \clist_gput_right:Nn - { \clist_put_aux:NNnnNn \tl_gset:Nn \tl_gput_right:Nn , { } } + { \clist_put_aux:NNnnNn \tl_gset_eq:NN \tl_gput_right:Nx , { } } \cs_generate_variant:Nn \clist_put_right:Nn { NV , No , Nx } \cs_generate_variant:Nn \clist_put_right:Nn { c , cV , co , cx } \cs_generate_variant:Nn \clist_gput_right:Nn { NV , No , Nx } @@ -201,21 +248,6 @@ \cs_new_protected:Npn \clist_remove_all_aux:w { } \cs_generate_variant:Nn \clist_remove_all:Nn { c } \cs_generate_variant:Nn \clist_gremove_all:Nn { c } -\cs_new:Npn \clist_trim_spaces:n #1 - { - \exp_args:Nf \clist_trim_spaces_aux_i:n - { \clist_map_function:nN {#1} \clist_trim_spaces_aux_ii:n } - } -\cs_new:Npn \clist_trim_spaces_aux_i:n #1 { \use_ii:nn #1 } -\cs_new:Npn \clist_trim_spaces_aux_ii:n #1 - { , \tl_trim_spaces:n {#1} } -\cs_new_protected:Npn \clist_trim_spaces:N #1 - { \tl_set:Nf #1 { \exp_args:No \clist_trim_spaces:n #1 } } -\cs_new_protected:Npn \clist_gtrim_spaces:N #1 - { \tl_gset:Nf #1 { \exp_args:No \clist_trim_spaces:n #1 } } -\cs_generate_variant:Nn \clist_trim_spaces:N { c } -\cs_generate_variant:Nn \clist_gtrim_spaces:N { c } -\cs_new_protected:Npn \clist_tmp:w { } \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 } @@ -265,14 +297,6 @@ , \q_recursion_tail , \q_recursion_stop } } -\cs_new:Npn \clist_map_function:nN #1#2 - { - \tl_if_empty:nF {#1} - { - \clist_map_function_aux:Nw #2 #1 - , \q_recursion_tail , \q_recursion_stop - } - } \cs_new:Npn \clist_map_function_aux:Nw #1#2 , { \quark_if_recursion_tail_stop:n {#2} @@ -304,34 +328,53 @@ \cs_generate_variant:Nn \clist_map_inline:Nn { c } \cs_new_protected:Npn \clist_map_variable:NNn #1#2#3 { - \clist_map_inline:Nn #1 + \clist_if_empty:NF #1 { - \tl_set:Nn #2 {##1} - #3 + \exp_args:Nno \use:nn + { \clist_map_variable_aux:Nnw #2 {#3} } + #1 + , \q_recursion_tail , \q_recursion_stop } } -\cs_new_protected:Npn \clist_map_variable:nNn #1#2#3 +\cs_new_protected:Npn \clist_map_variable_aux:Nnw #1#2#3 , { - \clist_map_inline:nn {#1} - { - \tl_set:Nn #2 {##1} - #3 - } + \quark_if_recursion_tail_stop:n {#3} + \tl_set:Nn #1 {#3} + #2 + \clist_map_variable_aux:Nnw #1 {#2} + } +\cs_new_protected:Npn \clist_map_variable:nNn #1 + { + \tl_set:Nx \l_clist_tmpa_tl { \clist_trim_spaces:n {#1} } + \clist_map_variable:NNn \l_clist_tmpa_tl } \cs_generate_variant:Nn \clist_map_variable:NNn { c } +\cs_new:Npn \clist_map_aux_unbrace:Nw #1 #2, { #1 {#2} } +\cs_new:Npn \clist_map_function:nN #1#2 + { + \clist_trim_spaces_generic:nw { \clist_map_function_n_aux:Nn #2 } + \q_mark #1, \q_recursion_tail, \q_recursion_stop + } +\cs_new:Npn \clist_map_function_n_aux:Nn #1 #2 + { + \quark_if_recursion_tail_stop:n {#2} + \tl_if_empty:nF {#2} { \clist_map_aux_unbrace:Nw #1 #2, } + \clist_trim_spaces_generic:nw { \clist_map_function_n_aux:Nn #1 } + \q_mark + } \cs_new_eq:NN \clist_map_break: \use_none_delimit_by_q_recursion_stop:w \cs_new_eq:NN \clist_map_break:n \use_i_delimit_by_q_recursion_stop:nw \cs_new_protected_nopar:Npn \clist_show:N #1 { \clist_if_empty:NTF #1 { - \iow_term:x { Comma~list~\token_to_str:N #1 \c_space_tl is~empty } + \iow_term:x { Comma~list~\token_to_str:N #1~is~empty } \tl_show:n { } } { \iow_term:x { - Comma~list~\token_to_str:N #1 \c_space_tl + Comma~list~\token_to_str:N #1~ contains~the~items~(without~outer~braces): } \tl_set:Nx \l_clist_show_tl @@ -405,7 +448,7 @@ \seq_if_empty:NTF #2 { \clist_gclear:N #1 } { - \seq_push_item_def:n { , \exp_not:n {##1} } + \seq_push_item_def:n { , \exp_not:n {{##1}} } \tl_gset:Nx #1 { \exp_after:wN \use_none:n \tex_romannumeral:D -`\0 #2 } \seq_pop_item_def: @@ -421,6 +464,12 @@ \cs_new_eq:NN \clist_gremove_element:Nn \clist_gremove_all:Nn \cs_new_eq:NN \clist_display:N \clist_show:N \cs_new_eq:NN \clist_display:c \clist_show:c +\cs_new_protected:Npn \clist_trim_spaces:N #1 + { \tl_set:Nx #1 { \exp_args:No \clist_trim_spaces:n #1 } } +\cs_new_protected:Npn \clist_gtrim_spaces:N #1 + { \tl_gset:Nx #1 { \exp_args:No \clist_trim_spaces:n #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 6e4116ee770..02c53d2a03c 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3coffins.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3coffins.sty @@ -46,8 +46,8 @@ %% %% ----------------------------------------------------------------------- %% -\RequirePackage{l3names,graphicx,color} -\GetIdInfo$Id: l3coffins.dtx 2624 2011-08-18 19:02:45Z joseph $ +\RequirePackage{l3names} +\GetIdInfo$Id: l3coffins.dtx 2717 2011-09-03 13:40:31Z joseph $ {L3 Experimental coffin code layer} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} @@ -108,12 +108,12 @@ \cs_if_exist:cTF { l_coffin_poles_ \int_value:w #1 _prop } { #2 } { - \msg_kernel_error:nnx { coffin } { unknown-coffin } + \msg_kernel_error:nnx { coffins } { unknown-coffin } { \token_to_str:N #1 } } } { - \msg_kernel_error:nnx { coffin } { unknown-coffin } + \msg_kernel_error:nnx { coffins } { unknown-coffin } { \token_to_str:N #1 } } } @@ -143,10 +143,10 @@ { \hbox_set:Nn #1 { - \group_begin: - \set@color + \color_group_begin: + \color_ensure_current: #2 - \group_end: + \color_group_end: } \coffin_reset_structure:N #1 \coffin_update_poles:N #1 @@ -161,10 +161,10 @@ \vbox_set:Nn #1 { \dim_set:Nn \tex_hsize:D {#2} - \group_begin: - \set@color + \color_group_begin: + \color_ensure_current: #3 - \group_end: + \color_group_end: } \coffin_reset_structure:N #1 \coffin_update_poles:N #1 @@ -199,7 +199,7 @@ \prop_get:cnNF { l_coffin_poles_ \int_value:w #1 _prop } {#2} #3 { - \msg_kernel_error:nnxx { coffin } { unknown-coffin-pole } + \msg_kernel_error:nnxx { coffins } { unknown-coffin-pole } {#2} { \token_to_str:N #1 } \tl_set:Nn #3 { { 0 pt } { 0 pt } { 0 pt } { 0 pt } } } @@ -326,7 +326,7 @@ \l_coffin_pole_a_tl \l_coffin_pole_b_tl \bool_if:NT \l_coffin_error_bool { - \msg_kernel_error:nn { coffin } { no-pole-intersection } + \msg_kernel_error:nn { coffins } { no-pole-intersection } \dim_zero:N \l_coffin_x_dim \dim_zero:N \l_coffin_y_dim } @@ -624,7 +624,7 @@ { \coffin_rotate_bounding:nnn {##1} ##2 } \coffin_find_corner_maxima:N #1 \coffin_find_bounding_shift: - \hbox_set:Nn #1 { \rotatebox {#2} { \box_use:N #1 } } + \box_rotate:Nn #1 {#2} \hbox_set:Nn #1 { \tex_kern:D \l_coffin_bounding_shift_dim @@ -737,6 +737,93 @@ {#5} {#6} } } +\fp_new:N \l_coffin_scale_x_fp +\fp_new:N \l_coffin_scale_y_fp +\dim_new:N \l_coffin_scaled_total_height_dim +\dim_new:N \l_coffin_scaled_width_dim +\cs_new_protected_nopar:Npn \coffin_resize:Nnn #1#2#3 + { + \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_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 } + \coffin_resize_common:Nnn #1 {#2} {#3} + } +\cs_generate_variant:Nn \coffin_resize:Nnn { c } +\cs_new_protected_nopar:Npn \coffin_resize_common:Nnn #1#2#3 + { + \prop_map_inline:cn { l_coffin_corners_ \int_value:w #1 _prop } + { \coffin_scale_corner:Nnnn #1 {##1} ##2 } + \prop_map_inline:cn { l_coffin_poles_ \int_value:w #1 _prop } + { \coffin_scale_pole:Nnnnnn #1 {##1} ##2 } + \fp_compare:NNNT \l_coffin_scale_x_fp < \c_zero_fp + { + \prop_map_inline:cn { l_coffin_corners_ \int_value:w #1 _prop } + { \coffin_x_shift_corner:Nnnn #1 {##1} ##2 } + \prop_map_inline:cn { l_coffin_poles_ \int_value:w #1 _prop } + { \coffin_x_shift_pole:Nnnnnn #1 {##1} ##2 } + } + \coffin_end_user_dimensions: + } +\cs_new_protected_nopar:Npn \coffin_scale:Nnn #1#2#3 + { + \box_scale:Nnn #1 {#2} {#3} + \coffin_set_user_dimensions:N #1 + \fp_set:Nn \l_coffin_scale_x_fp {#2} + \fp_set:Nn \l_coffin_scale_y_fp {#3} + \fp_compare:NNNTF \l_coffin_scale_y_fp > \c_zero_fp + { \l_coffin_scaled_total_height_dim #3 \TotalHeight } + { \l_coffin_scaled_total_height_dim -#3 \TotalHeight } + \fp_compare:NNNTF \l_coffin_scale_x_fp > \c_zero_fp + { \l_coffin_scaled_width_dim -#2 \Width } + { \l_coffin_scaled_width_dim #2 \Width } + \coffin_resize_common:Nnn #1 + { \l_coffin_scaled_width_dim } { \l_coffin_scaled_total_height_dim } + } +\cs_generate_variant:Nn \coffin_scale:Nnn { c } +\cs_new_protected_nopar: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 } + } +\cs_new_protected_nopar:Npn \coffin_scale_corner:Nnnn #1#2#3#4 + { + \coffin_scale_vector:nnNN {#3} {#4} \l_coffin_x_dim \l_coffin_y_dim + \prop_put:cnx { l_coffin_corners_ \int_value:w #1 _prop } {#2} + { { \dim_use:N \l_coffin_x_dim } { \dim_use:N \l_coffin_y_dim } } + } +\cs_new_protected_nopar:Npn \coffin_scale_pole:Nnnnnn #1#2#3#4#5#6 + { + \coffin_scale_vector:nnNN {#3} {#4} \l_coffin_x_dim \l_coffin_y_dim + \coffin_set_pole:Nnx #1 {#2} + { + { \dim_use:N \l_coffin_x_dim } { \dim_use:N \l_coffin_y_dim } + {#5} {#6} + } + } +\cs_new_protected_nopar:Npn \coffin_x_shift_corner:Nnnn #1#2#3#4 + { + \prop_put:cnx { l_coffin_corners_ \int_value:w #1 _prop } {#2} + { + { \dim_eval:n { #3 + \box_wd:N #1 } } {#4} + } + } +\cs_new_protected_nopar:Npn \coffin_x_shift_pole:Nnnnnn #1#2#3#4#5#6 + { + \prop_put:cnx { l_coffin_poles_ \int_value:w #1 _prop } {#2} + { + { \dim_eval:n #3 + \box_wd:N #1 } {#4} + {#5} {#6} + } + } \coffin_new:N \l_coffin_display_coffin \coffin_new:N \l_coffin_display_coord_coffin \coffin_new:N \l_coffin_display_pole_coffin @@ -965,7 +1052,7 @@ } \cs_new_nopar:Npn \coffin_show_aux:w #1 > ~ { } \cs_generate_variant:Nn \coffin_show_structure:N { c } -\msg_kernel_new:nnnn { coffin } { no-pole-intersection } +\msg_kernel_new:nnnn { coffins } { no-pole-intersection } { No~intersection~between~coffin~poles. } { \c_msg_coding_error_text_tl @@ -973,10 +1060,10 @@ but~they~do~not~have~a~unique~meeting~point:~ the~value~(0~pt,~0~pt)~will~be~used. } -\msg_kernel_new:nnnn { coffin } { unknown-coffin } +\msg_kernel_new:nnnn { coffins } { unknown-coffin } { Unknown~coffin~'#1'. } { The~coffin~'#1'~was~never~defined. } -\msg_kernel_new:nnnn { coffin } { unknown-coffin-pole } +\msg_kernel_new:nnnn { coffins } { unknown-coffin-pole } { Pole~'#1'~unknown~for~coffin~'#2'. } { \c_msg_coding_error_text_tl diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3color.sty b/Master/texmf-dist/tex/latex/l3kernel/l3color.sty new file mode 100644 index 00000000000..20de4534b8b --- /dev/null +++ b/Master/texmf-dist/tex/latex/l3kernel/l3color.sty @@ -0,0 +1,64 @@ +%% +%% This is file `l3color.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% l3color.dtx (with options: `package') +%% +%% EXPERIMENTAL CODE +%% +%% Do not distribute this file without also distributing the +%% source files specified above. +%% +%% Do not distribute a modified version of this file. +%% +%% File: l3color.dtx Copyright(C) 2011 The LaTeX3 Project +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This file is part of the "l3kernel bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% The released version of this bundle is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the bundle can be found at +%% +%% http://www.latex-project.org/svnroot/experimental/trunk/ +%% +%% for those people who are interested. +%% +%%%%%%%%%%% +%% NOTE: %% +%%%%%%%%%%% +%% +%% Snapshots taken from the repository represent work in progress and may +%% not work or may contain conflicting material! We therefore ask +%% people _not_ to put them into distributions, archives, etc. without +%% prior consultation with the LaTeX Project Team. +%% +%% ----------------------------------------------------------------------- +%% +\RequirePackage{l3names} +\GetIdInfo$Id: l3color.dtx 2717 2011-09-03 13:40:31Z joseph $ + {L3 Experimental colour support} +\ProvidesExplPackage + {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} +\package_check_loaded_expl: +\cs_new_eq:NN \color_group_begin: \group_begin: +\cs_new_protected_nopar:Npn \color_group_end: + { + \tex_par:D + \group_end: + } +\cs_new_protected_nopar:Npn \color_ensure_current: { \set@color } +%% +%% +%% End of file `l3color.sty'. diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3doc.cls b/Master/texmf-dist/tex/latex/l3kernel/l3doc.cls index e7c0b14659e..bc296c6ccde 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3doc.cls +++ b/Master/texmf-dist/tex/latex/l3kernel/l3doc.cls @@ -52,7 +52,7 @@ \let \filedateOld \ExplFileDate \let \fileversionOld \ExplFileVersion \let \filedescriptionOld \ExplFileDescription -\GetIdInfo$Id: l3doc.dtx 2674 2011-08-27 19:43:44Z mittelba $ +\GetIdInfo$Id: l3doc.dtx 2719 2011-09-04 13:40:25Z will $ {L3 Experimental documentation class} \ProvidesExplClass {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} @@ -92,10 +92,14 @@ \ProcessOptions \LoadClass{article} \RequirePackage{doc} -\RequirePackage{array,alphalph,booktabs,color,fixltx2e,enumitem,textcomp,trace,underscore,csquotes} +\RequirePackage{array,alphalph,booktabs,color,fixltx2e,enumitem,pifont,textcomp,trace,underscore,csquotes} \bool_if:NT \g_doc_lmodern_bool { \RequirePackage[T1]{fontenc} \RequirePackage{lmodern} + \begingroup + \ttfamily + \DeclareFontShape{T1}{lmtt}{m}{it}{<->ec-lmtto10}{} + \endgroup } \RequirePackage{hypdoc} \let\doc@verbatim\verbatim @@ -234,6 +238,7 @@ \bool_gset_false:N \l_doc_meta_TF_bool \bool_gset_false:N \l_doc_meta_pTF_bool \bool_gset_false:N \l_doc_meta_EXP_bool + \bool_gset_false:N \l_doc_meta_rEXP_bool \cs_set_nopar:Npn \KV_key_no_value_elt:n ##1 { \use:c {doc_meta_opt_##1:} } \keyval_parse:NNn \KV_key_no_value_elt:n \use_none:nn {#1} @@ -258,6 +263,11 @@ } \cs_set:Nn \doc_meta_opt_EXP: { \bool_gset_true:N \l_doc_meta_EXP_bool + \bool_gset_false:N \l_doc_meta_rEXP_bool +} +\cs_set:Nn \doc_meta_opt_rEXP: { + \bool_gset_false:N \l_doc_meta_EXP_bool + \bool_gset_true:N \l_doc_meta_rEXP_bool } \cs_set:Nn \doc_meta_opt_pTF: { \bool_gset_true:N \l_doc_meta_pTF_bool @@ -292,6 +302,7 @@ \bool_new:N \l_doc_meta_TF_bool \bool_new:N \l_doc_meta_pTF_bool \bool_new:N \l_doc_meta_EXP_bool +\bool_new:N \l_doc_meta_rEXP_bool \cs_new_nopar:Npn \doc_showmacro_aux:w #1 / #2 \q_stop { \tl_if_in:nnT {#2} { (TF) } { @@ -301,6 +312,9 @@ \tl_if_in:nnT {#2} { (EXP) } { \bool_gset_true:N \l_doc_meta_EXP_bool } + \tl_if_in:nnT {#2} { (rEXP) } { + \bool_gset_true:N \l_doc_meta_rEXP_bool + } \tl_if_in:nnT {#2} { (pTF) } { \bool_gset_true:N \l_doc_meta_TF_bool @@ -330,7 +344,9 @@ \bool_gset_true:N \l_doc_meta_TF_bool \doc_showmacro_aux_ii:w #1::\q_stop }{ - \doc_showmacro_aux_ii:w #1::\q_stop + \exp_args:Nf \tl_if_head_eq_charcode:nNTF { \use_none:n #1 } {:} + { \doc_showmacro_aux_iii:n {#1} } + { \doc_showmacro_aux_ii:w #1::\q_stop } } } \cs_set_nopar:Npn \doc_showmacro_aux_ii:w #1:#2:#3 \q_stop { @@ -348,7 +364,11 @@ & \bool_if:NT \l_doc_meta_EXP_bool { \hspace{\tabcolsep} - $\star$ + \hyperlink{expstar}{$\star$} + } + \bool_if:NT \l_doc_meta_rEXP_bool { + \hspace{\tabcolsep} + \hyperlink{rexpstar}{\ding{73}}% hollow star } \tl_set:Nx \g_doc_macro_tl { \tl_to_str:N \g_doc_macro_tl } \exp_args:NNf \tl_replace_all:Nnn \g_doc_macro_tl {\token_to_str:N _} {/} @@ -357,11 +377,21 @@ \exp_args:Nf\label{doc/function/\g_doc_macro_tl#3#2} } } +\cs_set_nopar:Nn \doc_showmacro_aux_iii:n { + \nextnewline + \tl_gset:Nx \g_doc_macro_tl {#1} + #1 & + \tl_set:Nx \g_doc_macro_tl { \tl_to_str:N \g_doc_macro_tl } + \exp_args:NNf \tl_replace_all:Nnn \g_doc_macro_tl {\token_to_str:N _} {/} + \exp_args:NNf \tl_replace_all:Nnn \g_doc_macro_tl {\@backslashchar} {} + \bool_if:NT \g_doc_full_bool { + \exp_args:Nf\label{doc/function/\g_doc_macro_tl} + } +} \dim_new:N \g_doc_syntax_dim \dim_set:Nn \g_doc_syntax_dim {0.7\textwidth} \newenvironment{syntax}{ \minipage[b]{\g_doc_syntax_dim} - \cs_set_nopar:Npn \meta@font@select{\rmfamily\itshape} % (Will: I HATE italic cmtt!) \small\ttfamily\raggedright \obeyspaces\obeylines }{ @@ -541,10 +571,13 @@ \fontfamily{lmtt}\fontseries{lc}\small } \cs_set_nopar:Npn \doc_typeset_TF: { - \itshape TF% - \makebox[0pt][r]{% - \color[gray]{0.5} - \underline { \phantom{\itshape TF} \kern-0.1em } + \hyperlink{explTF}{% + \color{black}% + \itshape TF% + \makebox[0pt][r]{% + \color{red} + \underline { \phantom{\itshape TF} \kern-0.1em } + } } } \cs_set_nopar:Npn \doc_typeset_aux:n #1 { diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3io.sty b/Master/texmf-dist/tex/latex/l3kernel/l3io.sty index c46f6d3deee..348ad546d9f 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3io.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3io.sty @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3io.dtx 2665 2011-08-25 22:15:27Z joseph $ +\GetIdInfo$Id: l3io.dtx 2724 2011-09-05 18:51:51Z bruno $ {L3 Experimental input-output operations} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} @@ -236,9 +236,7 @@ \cs_new:Npn \ior_show_aux:nn #1#2 { \iow_newline: > \c_space_tl \c_space_tl - #1 \iow_char:N - \c_space_tl \c_space_tl => \c_space_tl \c_space_tl - \exp_not:n {#2} + #1 \c_space_tl \c_space_tl => \c_space_tl \c_space_tl \exp_not:n {#2} } \cs_new_protected_nopar:Npn \iow_list_streams: { @@ -297,6 +295,11 @@ \tl_new:N \l_iow_wrapped_tl \quark_new:N \q_iow_stop \bool_new:N \l_iow_line_start_bool +\group_begin: + \char_set_catcode_other:N \* + \char_set_lccode:nn {`\*} {`\ } + \tl_to_lowercase:n { \tl_const:Nn \c_catcode_other_space_tl { * } } +\group_end: \cs_new_protected:Npn \iow_wrap:xnnnN #1#2#3#4#5 { \group_begin: @@ -305,8 +308,9 @@ \tl_clear:N \l_iow_current_line_tl \tl_clear:N \l_iow_wrap_tl \bool_set_true:N \l_iow_line_start_bool - \cs_set:Npx \\ { \c_space_tl \iow_newline: \c_space_tl } - \cs_set_eq:NN \ \c_space_tl + \cs_set:Npx \\ + { \c_catcode_other_space_tl \iow_newline: \c_catcode_other_space_tl } + \cs_set_eq:NN \ \c_catcode_other_space_tl #4 \protected@edef \l_iow_wrap_tl {#1} \cs_set:Npn \\ { \iow_newline: #2 } diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3keys.sty b/Master/texmf-dist/tex/latex/l3kernel/l3keys.sty index 434ba050077..8a34a4c8331 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3keys.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3keys.sty @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3keys.dtx 2677 2011-08-28 06:54:22Z joseph $ +\GetIdInfo$Id: l3keys.dtx 2722 2011-09-05 08:49:40Z joseph $ {L3 Experimental key-value interfaces} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3msg.sty b/Master/texmf-dist/tex/latex/l3kernel/l3msg.sty index c98aad9f7c2..eca399c5b79 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3msg.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3msg.sty @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3msg.dtx 2601 2011-08-16 23:20:27Z bruno $ +\GetIdInfo$Id: l3msg.dtx 2728 2011-09-05 19:13:18Z joseph $ {L3 Experimental messages} \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 2aeb1f516e6..67ee78ebee3 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 2665 2011-08-25 22:15:27Z joseph $ +\GetIdInfo$Id: l3prg.dtx 2720 2011-09-05 08:12:39Z bruno $ {L3 Experimental control structures} %% \ProvidesExplPackage diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3prop.sty b/Master/texmf-dist/tex/latex/l3kernel/l3prop.sty index 222170544df..5bda2318bec 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3prop.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3prop.sty @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3prop.dtx 2665 2011-08-25 22:15:27Z joseph $ +\GetIdInfo$Id: l3prop.dtx 2725 2011-09-05 18:53:03Z bruno $ {L3 Experimental property lists} %% \ProvidesExplPackage @@ -220,9 +220,12 @@ \tl_set:Nn #1 {#3} \prg_return_true: } -\cs_generate_variant:Nn \prop_get:NnNT { c } -\cs_generate_variant:Nn \prop_get:NnNF { c } -\cs_generate_variant:Nn \prop_get:NnNTF { c } +\cs_generate_variant:Nn \prop_get:NnNT { NV , No } +\cs_generate_variant:Nn \prop_get:NnNF { NV , No } +\cs_generate_variant:Nn \prop_get:NnNTF { NV , No } +\cs_generate_variant:Nn \prop_get:NnNT { c , cV , co } +\cs_generate_variant:Nn \prop_get:NnNF { c , cV , co } +\cs_generate_variant:Nn \prop_get:NnNTF { c , cV , co } \cs_new_nopar:Npn \prop_map_function:NN #1#2 { \exp_last_unbraced:NNo \prop_map_function_aux:Nwn #2 @@ -256,13 +259,13 @@ { \prop_if_empty:NTF #1 { - \iow_term:x { Property~list~\token_to_str:N #1 \c_space_tl is~empty } + \iow_term:x { Property~list~\token_to_str:N #1~is~empty } \tl_show:n { } } { \iow_term:x { - Property~list~\token_to_str:N #1 \c_space_tl + Property~list~\token_to_str:N #1~ contains~the~pairs~(without~outer~braces): } \tl_set:Nx \l_prop_show_tl diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3seq.sty b/Master/texmf-dist/tex/latex/l3kernel/l3seq.sty index 9db270f6006..7bfc1f31ae2 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3seq.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3seq.sty @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3seq.dtx 2665 2011-08-25 22:15:27Z joseph $ +\GetIdInfo$Id: l3seq.dtx 2725 2011-09-05 18:53:03Z bruno $ {L3 Experimental sequences and stacks} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} @@ -343,13 +343,13 @@ { \seq_if_empty:NTF #1 { - \iow_term:x { Sequence~\token_to_str:N #1 \c_space_tl is~empty } + \iow_term:x { Sequence~\token_to_str:N #1~is~empty } \tl_show:n { } } { \iow_term:x { - Sequence~\token_to_str:N #1 \c_space_tl + Sequence~\token_to_str:N #1~ contains~the~items~(without~outer~braces): } \tl_set:Nx \l_seq_show_tl diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3tl.sty b/Master/texmf-dist/tex/latex/l3kernel/l3tl.sty index f304c84c084..f77fb545024 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3tl.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3tl.sty @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3tl.dtx 2665 2011-08-25 22:15:27Z joseph $ +\GetIdInfo$Id: l3tl.dtx 2686 2011-08-29 19:41:06Z joseph $ {L3 Experimental token lists} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3token.sty b/Master/texmf-dist/tex/latex/l3kernel/l3token.sty index 4ffd05760ff..274bbdd2bd9 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 2665 2011-08-25 22:15:27Z joseph $ +\GetIdInfo$Id: l3token.dtx 2691 2011-08-29 20:08:46Z joseph $ {L3 Experimental token manipulation} %% \begin{function}[EXP,pTF]{\token_if_protected_long_macro:N} \ProvidesExplPackage |