summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2012-12-21 23:31:35 +0000
committerKarl Berry <karl@freefriends.org>2012-12-21 23:31:35 +0000
commit8bcf0c7ef3cd19666c206271cea9280846b5c7e6 (patch)
treeee538c7e2a14ad105a169fdd2e745356147577cc /Master/texmf-dist/tex
parentef0453041a9700a2d974c3c76e3398e40c4e4aeb (diff)
l3 (21dec12)
git-svn-id: svn://tug.org/texlive/trunk@28608 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex')
-rw-r--r--Master/texmf-dist/tex/latex/l3experimental/l3sort/l3sort.sty26
-rw-r--r--Master/texmf-dist/tex/latex/l3experimental/l3str/l3regex-trace.sty28
-rw-r--r--Master/texmf-dist/tex/latex/l3experimental/l3str/l3regex.sty28
-rw-r--r--Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-format.sty52
-rw-r--r--Master/texmf-dist/tex/latex/l3experimental/l3str/l3str.sty64
-rw-r--r--Master/texmf-dist/tex/latex/l3experimental/l3str/l3tl-analysis.sty110
-rw-r--r--Master/texmf-dist/tex/latex/l3experimental/xgalley/l3galley.sty509
-rw-r--r--Master/texmf-dist/tex/latex/l3experimental/xgalley/xgalley.sty34
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/expl3.sty9
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/l3basics.sty10
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/l3box.sty4
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/l3candidates.sty63
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/l3clist.sty10
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/l3file.sty7
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/l3fp.sty132
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/l3names.sty12
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/l3prg.sty18
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/l3seq.sty12
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/l3tl.sty36
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/l3token.sty60
-rw-r--r--Master/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty13
-rw-r--r--Master/texmf-dist/tex/latex/l3packages/xparse/xparse.sty60
-rw-r--r--Master/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.sty33
23 files changed, 750 insertions, 580 deletions
diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3sort/l3sort.sty b/Master/texmf-dist/tex/latex/l3experimental/l3sort/l3sort.sty
index a719b42e7a4..21c29315228 100644
--- a/Master/texmf-dist/tex/latex/l3experimental/l3sort/l3sort.sty
+++ b/Master/texmf-dist/tex/latex/l3experimental/l3sort/l3sort.sty
@@ -47,7 +47,7 @@
%% -----------------------------------------------------------------------
%%
\RequirePackage{expl3}
-\GetIdInfo$Id: l3sort.dtx 3991 2012-07-16 19:00:35Z joseph $
+\GetIdInfo$Id: l3sort.dtx 4339 2012-11-24 19:16:43Z joseph $
{L3 Experimental sorting functions}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
@@ -60,32 +60,32 @@
\int_new:N \l__sort_A_int
\int_new:N \l__sort_B_int
\int_new:N \l__sort_C_int
-\cs_new:Npn \tl_sort:nN #1#2 { \__sort_quick_i:nNn {#1} #2 { } }
-\cs_new:Npn \__sort_quick_i:nNn #1#2
+\cs_new:Npn \tl_sort:nN #1#2 { \__sort_quick:nNn {#1} #2 { } }
+\cs_new:Npn \__sort_quick:nNn #1#2
{
- \exp_after:wN \__sort_quick_ii:wn
+ \exp_after:wN \__sort_quick:wn
\use_none:n #1 \__prg_break_point:
- \__sort_quick_iii:nnNnn { } { } #2
+ \__sort_quick:nnNnn { } { } #2
#1
{ \__prg_break_point: }
\__prg_break_point:
}
-\cs_new:Npn \__sort_quick_ii:wn #1 \__prg_break_point: #2 {#2}
-\cs_new:Npn \__sort_quick_iii:nnNnn #1#2#3#4#5
+\cs_new:Npn \__sort_quick:wn #1 \__prg_break_point: #2 {#2}
+\cs_new:Npn \__sort_quick:nnNnn #1#2#3#4#5
{
\__prg_break: #5
- \__sort_quick_iv:nnNnwn {#1} {#2}
+ \__sort_quick:nnNnwn {#1} {#2}
\__prg_break_point:
#3 {#4} {#5}
- { \__sort_quick_iii:nnNnn {#1} { #2 {#5} } }
- { \__sort_quick_iii:nnNnn { #1 {#5} } {#2} }
+ { \__sort_quick:nnNnn {#1} { #2 {#5} } }
+ { \__sort_quick:nnNnn { #1 {#5} } {#2} }
#3 {#4}
}
-\cs_new:Npn \__sort_quick_iv:nnNnwn
+\cs_new:Npn \__sort_quick:nnNnwn
#1#2 \__prg_break_point: #3#4 #5 \__prg_break_point: #6
{
- \__sort_quick_i:nNn {#2} #3
- { \__sort_quick_i:nNn {#1} #3 {#6} {#4} }
+ \__sort_quick:nNn {#2} #3
+ { \__sort_quick:nNn {#1} #3 {#6} {#4} }
}
\cs_new_protected:Npn \__sort_main:NNNnNn #1#2#3#4#5#6
{
diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3regex-trace.sty b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3regex-trace.sty
index 156d2c1393f..ccb695c0f0e 100644
--- a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3regex-trace.sty
+++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3regex-trace.sty
@@ -46,7 +46,7 @@
%%
%% -----------------------------------------------------------------------
\RequirePackage{expl3}
-\GetIdInfo$Id: l3regex.dtx 4219 2012-09-09 13:28:51Z bruno $
+\GetIdInfo$Id: l3regex.dtx 4341 2012-11-27 08:39:42Z bruno $
{L3 Experimental regular expressions}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
@@ -366,22 +366,22 @@
\if_charcode:w \c_space_token #1
\exp_after:wN \__regex_escape_x_test:N
\else:
- \exp_after:wN \__regex_escape_x_test_ii:N
+ \exp_after:wN \__regex_escape_x_test_two:N
\exp_after:wN #1
\fi:
}
}
-\cs_new:Npn \__regex_escape_x_test_ii:N #1
+\cs_new:Npn \__regex_escape_x_test_two:N #1
{
\if_charcode:w \c_lbrace_str #1
\exp_after:wN \__regex_escape_x_loop:N
\else:
\__str_hexadecimal_use:NTF #1
- { \exp_after:wN \__regex_escape_x_ii:N }
+ { \exp_after:wN \__regex_escape_x:N }
{ ; \exp_after:wN \__regex_escape_loop:N \exp_after:wN #1 }
\fi:
}
-\cs_new:Npn \__regex_escape_x_ii:N #1
+\cs_new:Npn \__regex_escape_x:N #1
{
\str_if_eq_x:nnTF {#1} { break } { ; }
{
@@ -701,10 +701,10 @@
\cs_new_protected:cpn { __regex_compile_quantifier_ \c_lbrace_str :w }
{
\__regex_get_digits:NTFw \l__regex_internal_a_int
- { \__regex_compile_quantifier_braced_i:w }
+ { \__regex_compile_quantifier_braced_auxi:w }
{ \__regex_compile_quantifier_abort:xNN { \c_lbrace_str } }
}
-\cs_new_protected:Npn \__regex_compile_quantifier_braced_i:w #1#2
+\cs_new_protected:Npn \__regex_compile_quantifier_braced_auxi:w #1#2
{
\str_case_x:nnn { #1 #2 }
{
@@ -716,8 +716,8 @@
{ \__regex_compile_special:N , }
{
\__regex_get_digits:NTFw \l__regex_internal_b_int
- { \__regex_compile_quantifier_braced_iii:w }
- { \__regex_compile_quantifier_braced_ii:w }
+ { \__regex_compile_quantifier_braced_auxiii:w }
+ { \__regex_compile_quantifier_braced_auxii:w }
}
}
{
@@ -726,7 +726,7 @@
#1 #2
}
}
-\cs_new_protected:Npn \__regex_compile_quantifier_braced_ii:w #1#2
+\cs_new_protected:Npn \__regex_compile_quantifier_braced_auxii:w #1#2
{
\str_if_eq_x:nnTF
{ #1 #2 } { \__regex_compile_special:N \c_rbrace_str }
@@ -740,7 +740,7 @@
#1 #2
}
}
-\cs_new_protected:Npn \__regex_compile_quantifier_braced_iii:w #1#2
+\cs_new_protected:Npn \__regex_compile_quantifier_braced_auxiii:w #1#2
{
\str_if_eq_x:nnTF
{ #1 #2 } { \__regex_compile_special:N \c_rbrace_str }
@@ -957,14 +957,14 @@
\str_if_eq:nnTF { #3 #4 } { \__regex_compile_special:N ^ }
{
\__tl_build_one:n { #2 { \if_false: } \fi: }
- \__regex_compile_class_ii:NN
+ \__regex_compile_class:NN
}
{
\__tl_build_one:n { #1 { \if_false: } \fi: }
- \__regex_compile_class_ii:NN #3 #4
+ \__regex_compile_class:NN #3 #4
}
}
-\cs_new_protected:Npn \__regex_compile_class_ii:NN #1#2
+\cs_new_protected:Npn \__regex_compile_class:NN #1#2
{
\token_if_eq_charcode:NNTF #2 ]
{ \__regex_compile_raw:N #2 }
diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3regex.sty b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3regex.sty
index eba57ade74e..5273399d7be 100644
--- a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3regex.sty
+++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3regex.sty
@@ -46,7 +46,7 @@
%%
%% -----------------------------------------------------------------------
\RequirePackage{expl3}
-\GetIdInfo$Id: l3regex.dtx 4219 2012-09-09 13:28:51Z bruno $
+\GetIdInfo$Id: l3regex.dtx 4341 2012-11-27 08:39:42Z bruno $
{L3 Experimental regular expressions}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
@@ -364,22 +364,22 @@
\if_charcode:w \c_space_token #1
\exp_after:wN \__regex_escape_x_test:N
\else:
- \exp_after:wN \__regex_escape_x_test_ii:N
+ \exp_after:wN \__regex_escape_x_test_two:N
\exp_after:wN #1
\fi:
}
}
-\cs_new:Npn \__regex_escape_x_test_ii:N #1
+\cs_new:Npn \__regex_escape_x_test_two:N #1
{
\if_charcode:w \c_lbrace_str #1
\exp_after:wN \__regex_escape_x_loop:N
\else:
\__str_hexadecimal_use:NTF #1
- { \exp_after:wN \__regex_escape_x_ii:N }
+ { \exp_after:wN \__regex_escape_x:N }
{ ; \exp_after:wN \__regex_escape_loop:N \exp_after:wN #1 }
\fi:
}
-\cs_new:Npn \__regex_escape_x_ii:N #1
+\cs_new:Npn \__regex_escape_x:N #1
{
\str_if_eq_x:nnTF {#1} { break } { ; }
{
@@ -699,10 +699,10 @@
\cs_new_protected:cpn { __regex_compile_quantifier_ \c_lbrace_str :w }
{
\__regex_get_digits:NTFw \l__regex_internal_a_int
- { \__regex_compile_quantifier_braced_i:w }
+ { \__regex_compile_quantifier_braced_auxi:w }
{ \__regex_compile_quantifier_abort:xNN { \c_lbrace_str } }
}
-\cs_new_protected:Npn \__regex_compile_quantifier_braced_i:w #1#2
+\cs_new_protected:Npn \__regex_compile_quantifier_braced_auxi:w #1#2
{
\str_case_x:nnn { #1 #2 }
{
@@ -714,8 +714,8 @@
{ \__regex_compile_special:N , }
{
\__regex_get_digits:NTFw \l__regex_internal_b_int
- { \__regex_compile_quantifier_braced_iii:w }
- { \__regex_compile_quantifier_braced_ii:w }
+ { \__regex_compile_quantifier_braced_auxiii:w }
+ { \__regex_compile_quantifier_braced_auxii:w }
}
}
{
@@ -724,7 +724,7 @@
#1 #2
}
}
-\cs_new_protected:Npn \__regex_compile_quantifier_braced_ii:w #1#2
+\cs_new_protected:Npn \__regex_compile_quantifier_braced_auxii:w #1#2
{
\str_if_eq_x:nnTF
{ #1 #2 } { \__regex_compile_special:N \c_rbrace_str }
@@ -738,7 +738,7 @@
#1 #2
}
}
-\cs_new_protected:Npn \__regex_compile_quantifier_braced_iii:w #1#2
+\cs_new_protected:Npn \__regex_compile_quantifier_braced_auxiii:w #1#2
{
\str_if_eq_x:nnTF
{ #1 #2 } { \__regex_compile_special:N \c_rbrace_str }
@@ -955,14 +955,14 @@
\str_if_eq:nnTF { #3 #4 } { \__regex_compile_special:N ^ }
{
\__tl_build_one:n { #2 { \if_false: } \fi: }
- \__regex_compile_class_ii:NN
+ \__regex_compile_class:NN
}
{
\__tl_build_one:n { #1 { \if_false: } \fi: }
- \__regex_compile_class_ii:NN #3 #4
+ \__regex_compile_class:NN #3 #4
}
}
-\cs_new_protected:Npn \__regex_compile_class_ii:NN #1#2
+\cs_new_protected:Npn \__regex_compile_class:NN #1#2
{
\token_if_eq_charcode:NNTF #2 ]
{ \__regex_compile_raw:N #2 }
diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-format.sty b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-format.sty
index 902d147cd3f..57e71f04988 100644
--- a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-format.sty
+++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-format.sty
@@ -63,51 +63,51 @@
\cs_generate_variant:Nn \__str_format_put:nw { o , f }
\cs_new:Npn \__str_format_parse:n #1
{
- \exp_last_unbraced:Nf \__str_format_parse_i:NN
+ \exp_last_unbraced:Nf \__str_format_parse_auxi:NN
\__str_to_other:n {#1} \s__stop \s__stop {#1}
}
-\cs_new:Npx \__str_format_parse_i:NN #1#2
+\cs_new:Npx \__str_format_parse_auxi:NN #1#2
{
\exp_not:N \__str_if_contains_char:nNTF { < > = ^ } #2
- { \exp_not:N \__str_format_parse_iii:nN { #1 #2 } }
+ { \exp_not:N \__str_format_parse_auxiii:nN { #1 #2 } }
{
- \exp_not:N \__str_format_parse_ii:nN
+ \exp_not:N \__str_format_parse_auxii:nN
{ \c_catcode_other_space_tl } #1 #2
}
}
-\cs_new:Npn \__str_format_parse_ii:nN #1#2
+\cs_new:Npn \__str_format_parse_auxii:nN #1#2
{
\__str_if_contains_char:nNTF { < > = ^ } #2
- { \__str_format_parse_iii:nN { #1 #2 } }
- { \__str_format_parse_iii:nN { #1 ? } #2 }
+ { \__str_format_parse_auxiii:nN { #1 #2 } }
+ { \__str_format_parse_auxiii:nN { #1 ? } #2 }
}
-\cs_new:Npx \__str_format_parse_iii:nN #1#2
+\cs_new:Npx \__str_format_parse_auxiii:nN #1#2
{
\exp_not:N \__str_if_contains_char:nNTF
{ + - \c_catcode_other_space_tl }
#2
- { \exp_not:N \__str_format_parse_iv:nwN { #1 #2 } ; }
- { \exp_not:N \__str_format_parse_iv:nwN { #1 ? } ; #2 }
+ { \exp_not:N \__str_format_parse_auxiv:nwN { #1 #2 } ; }
+ { \exp_not:N \__str_format_parse_auxiv:nwN { #1 ? } ; #2 }
}
-\cs_new:Npn \__str_format_parse_iv:nwN #1#2; #3
+\cs_new:Npn \__str_format_parse_auxiv:nwN #1#2; #3
{
\__str_format_if_digit:NTF #3
- { \__str_format_parse_iv:nwN {#1} #2 #3 ; }
- { \__str_format_parse_v:nN { #1 {#2} } #3 }
+ { \__str_format_parse_auxiv:nwN {#1} #2 #3 ; }
+ { \__str_format_parse_auxv:nN { #1 {#2} } #3 }
}
-\cs_new:Npn \__str_format_parse_v:nN #1#2
+\cs_new:Npn \__str_format_parse_auxv:nN #1#2
{
\token_if_eq_charcode:NNTF . #2
- { \__str_format_parse_vi:nwN {#1} 0 ; }
- { \__str_format_parse_vii:nN { #1 { } } #2 }
+ { \__str_format_parse_auxvi:nwN {#1} 0 ; }
+ { \__str_format_parse_auxvii:nN { #1 { } } #2 }
}
-\cs_new:Npn \__str_format_parse_vi:nwN #1#2; #3
+\cs_new:Npn \__str_format_parse_auxvi:nwN #1#2; #3
{
\__str_format_if_digit:NTF #3
- { \__str_format_parse_vi:nwN {#1} #2 #3 ; }
- { \__str_format_parse_vii:nN { #1 {#2} } #3 }
+ { \__str_format_parse_auxvi:nwN {#1} #2 #3 ; }
+ { \__str_format_parse_auxvii:nN { #1 {#2} } #3 }
}
-\cs_new:Npn \__str_format_parse_vii:nN #1#2
+\cs_new:Npn \__str_format_parse_auxvii:nN #1#2
{
\token_if_eq_meaning:NNTF \s__stop #2
{ \__str_format_parse_end:nwn { #1 ? } #2 }
@@ -367,12 +367,12 @@
{3} { nan }
}
{
- \exp_last_unbraced:Nf \__str_format_fp_e_ii:wn
+ \exp_last_unbraced:Nf \__str_format_fp_e_aux:wn
\__str_format_fp_round:wn \s__fp \__fp_chk:w #1#2#3 ; { #4 + 1 }
{#4}
}
}
- \cs_new:Npn \__str_format_fp_e_ii:wn
+ \cs_new:Npn \__str_format_fp_e_aux:wn
\s__fp \__fp_chk:w #1#2 #3 #4#5#6#7 ; #8
{
\__str_format_put:fw { \int_eval:n { #3 - 1 } }
@@ -399,14 +399,14 @@
{3} { nan }
}
{
- \exp_last_unbraced:Nf \__str_format_fp_f_ii:wwwn
+ \exp_last_unbraced:Nf \__str_format_fp_f_aux:wwwn
\fp_to_decimal:n
{ abs ( round ( \s__fp \__fp_chk:w #1#2#3 ; , #4 ) ) }
. . ;
{#4}
}
}
-\cs_new:Npn \__str_format_fp_f_ii:wwwn #1 . #2 . #3 ; #4
+\cs_new:Npn \__str_format_fp_f_aux:wwwn #1 . #2 . #3 ; #4
{
\use:nf
{ #1 . #2 }
@@ -421,13 +421,13 @@
{3} { nan }
}
{
- \exp_last_unbraced:Nf \__str_format_fp_g_ii:wn
+ \exp_last_unbraced:Nf \__str_format_fp_g_aux:wn
\__str_format_fp_round:wn \s__fp \__fp_chk:w #1#2 ;
{ \int_max:nn {1} {#3} }
{ \int_max:nn {1} {#3} }
}
}
-\cs_new:Npn \__str_format_fp_g_ii:wn #1; #2
+\cs_new:Npn \__str_format_fp_g_aux:wn #1; #2
{
\int_compare:nNnTF { \__fp_exponent:w #1; } < { -3 }
{ \fp_to_scientific:n }
diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str.sty b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str.sty
index 05cd375a84d..8fb7f22b337 100644
--- a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str.sty
+++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str.sty
@@ -46,7 +46,7 @@
%%
%% -----------------------------------------------------------------------
\RequirePackage{expl3}
-\GetIdInfo$Id: l3str.dtx 4119 2012-08-16 22:35:59Z bruno $
+\GetIdInfo$Id: l3str.dtx 4339 2012-11-24 19:16:43Z joseph $
{L3 Experimental strings}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
@@ -231,17 +231,17 @@
\cs_new_nopar:Npn \str_tail:N { \exp_args:No \str_tail:n }
\cs_set:Npn \str_tail:n #1
{
- \exp_after:wN \__str_tail:w
+ \exp_after:wN \__str_tail_auxi:w
\reverse_if:N \if_charcode:w
\scan_stop: \tl_to_str:n {#1} X X \q_stop
}
-\cs_set:Npn \__str_tail:w #1 X #2 \q_stop { \fi: #1 }
+\cs_set:Npn \__str_tail_auxi:w #1 X #2 \q_stop { \fi: #1 }
\cs_new:Npn \str_tail_ignore_spaces:n #1
{
- \exp_after:wN \__str_tail_ii:w
+ \exp_after:wN \__str_tail_auxii:w
\tl_to_str:n {#1} X X \q_stop
}
-\cs_new:Npn \__str_tail_ii:w #1 #2 X #3 \q_stop { #2 }
+\cs_new:Npn \__str_tail_auxii:w #1 #2 X #3 \q_stop { #2 }
\cs_new:Npn \__str_skip_c_zero:w #1;
{
\if_int_compare:w \__int_eval:w #1 > \c_eight
@@ -256,11 +256,11 @@
{ \exp_after:wN \__str_skip_c_zero:w \int_use:N \__int_eval:w #1 - \c_eight ; }
\cs_new:Npn \__str_skip_end:w #1 ;
{
- \exp_after:wN \__str_skip_end_ii:NNNNNNNN
+ \exp_after:wN \__str_skip_end:NNNNNNNN
\if_case:w \if_int_compare:w #1 > \c_zero #1 \else: 0 \fi: \exp_stop_f:
\or: \or: \or: \or: \or: \or: \or: \or:
}
-\cs_new:Npn \__str_skip_end_ii:NNNNNNNN #1#2#3#4#5#6#7#8 { \fi: \c_zero }
+\cs_new:Npn \__str_skip_end:NNNNNNNN #1#2#3#4#5#6#7#8 { \fi: \c_zero }
\cs_new:Npn \__str_collect_delimit_by_q_stop:w #1;
{
\exp_after:wN \__str_collect_loop:wn
@@ -270,13 +270,13 @@
\cs_new:Npn \__str_collect_loop:wn #1 ;
{
\if_int_compare:w #1 > \c_seven
- \exp_after:wN \__str_collect_loop_ii:wnNNNNNNN
+ \exp_after:wN \__str_collect_loop:wnNNNNNNN
\else:
\exp_after:wN \__str_collect_end:wn
\fi:
#1 ;
}
-\cs_new:Npn \__str_collect_loop_ii:wnNNNNNNN #1; #2 #3#4#5#6#7#8#9
+\cs_new:Npn \__str_collect_loop:wnNNNNNNN #1; #2 #3#4#5#6#7#8#9
{
\exp_after:wN \__str_collect_loop:wn
\int_use:N \__int_eval:w #1 - \c_seven ;
@@ -284,11 +284,11 @@
}
\cs_new:Npn \__str_collect_end:wn #1 ;
{
- \exp_after:wN \__str_collect_end_ii:nnnnnnnnw
+ \exp_after:wN \__str_collect_end:nnnnnnnnw
\if_case:w \if_int_compare:w #1 > \c_zero #1 \else: 0 \fi: \exp_stop_f:
\or: \or: \or: \or: \or: \or: \fi:
}
-\cs_new:Npn \__str_collect_end_ii:nnnnnnnnw #1#2#3#4#5#6#7#8 #9 \q_stop
+\cs_new:Npn \__str_collect_end:nnnnnnnnw #1#2#3#4#5#6#7#8 #9 \q_stop
{ #1#2#3#4#5#6#7#8 }
\cs_new_nopar:Npn \str_item:Nn { \exp_args:No \str_item:nn }
\cs_new:Npn \str_item:nn #1#2
@@ -342,23 +342,23 @@
{ \exp_args:No \__str_substr_unsafe:nnn { \tl_to_str:n {#1} } }
\cs_new:Npn \__str_substr_unsafe:nnn #1#2#3
{
- \exp_after:wN \__str_substr_ii:www
+ \exp_after:wN \__str_substr:www
\__int_value:w \__str_count_unsafe:n {#1} \exp_after:wN ;
\int_use:N \__int_eval:w #2 + \c_zero \exp_after:wN ;
\int_use:N \__int_eval:w
- \exp_args:Nf \__str_substr_i:nN {#3} \c_max_int ;
+ \exp_args:Nf \__str_substr:nN {#3} \c_max_int ;
{ } #1
\q_stop
}
-\cs_new:Npn \__str_substr_i:nN #1 #2
+\cs_new:Npn \__str_substr:nN #1 #2
{ \tl_if_empty:nTF {#1} {#2} {#1} }
-\cs_new:Npn \__str_substr_ii:www #1; #2; #3;
+\cs_new:Npn \__str_substr:www #1; #2; #3;
{
- \exp_args:Nf \__str_substr_iii:nnw
+ \exp_args:Nf \__str_substr:nnw
{ \__str_substr_normalize_range:nn {#2} {#1} }
{ \__str_substr_normalize_range:nn {#3} {#1} }
}
-\cs_new:Npn \__str_substr_iii:nnw #1#2
+\cs_new:Npn \__str_substr:nnw #1#2
{
\exp_after:wN \__str_collect_delimit_by_q_stop:w
\int_use:N \__int_eval:w #2 + \c_one - #1 \exp_after:wN ;
@@ -539,14 +539,14 @@
\cs_new_protected:Npn \__str_if_flag_times:nT #1#2
{ \flag_if_raised:nT {#1} { #2~(x \flag_height:n {#1} ) } }
\cs_new_protected_nopar:Npn \str_set_convert:Nnnn
- { \__str_convert_i:nNNnnn { } \tl_set_eq:NN }
+ { \__str_convert:nNNnnn { } \tl_set_eq:NN }
\cs_new_protected_nopar:Npn \str_gset_convert:Nnnn
- { \__str_convert_i:nNNnnn { } \tl_gset_eq:NN }
+ { \__str_convert:nNNnnn { } \tl_gset_eq:NN }
\prg_new_protected_conditional:Npnn
\str_set_convert:Nnnn #1#2#3#4 { T , F , TF }
{
\bool_gset_false:N \g__str_error_bool
- \__str_convert_i:nNNnnn
+ \__str_convert:nNNnnn
{ \cs_set_eq:NN \__str_if_flag_error:nnx \__str_if_flag_no_error:nnx }
\tl_set_eq:NN #1 {#2} {#3} {#4}
\bool_if:NTF \g__str_error_bool \prg_return_false: \prg_return_true:
@@ -555,22 +555,22 @@
\str_gset_convert:Nnnn #1#2#3#4 { T , F , TF }
{
\bool_gset_false:N \g__str_error_bool
- \__str_convert_i:nNNnnn
+ \__str_convert:nNNnnn
{ \cs_set_eq:NN \__str_if_flag_error:nnx \__str_if_flag_no_error:nnx }
\tl_gset_eq:NN #1 {#2} {#3} {#4}
\bool_if:NTF \g__str_error_bool \prg_return_false: \prg_return_true:
}
-\cs_new_protected:Npn \__str_convert_i:nNNnnn #1#2#3#4#5#6
+\cs_new_protected:Npn \__str_convert:nNNnnn #1#2#3#4#5#6
{
\group_begin:
#1
\__str_gset_other:Nn \g__str_result_tl {#4}
- \exp_after:wN \__str_convert_ii:wwwnn
+ \exp_after:wN \__str_convert:wwwnn
\tl_to_str:n {#5} /// \q_stop
{ decode } { unescape }
\prg_do_nothing:
\__str_convert_decode_:
- \exp_after:wN \__str_convert_ii:wwwnn
+ \exp_after:wN \__str_convert:wwwnn
\tl_to_str:n {#6} /// \q_stop
{ encode } { escape }
\use_ii_i:nn
@@ -578,15 +578,15 @@
\group_end:
#2 #3 \g__str_result_tl
}
-\cs_new_protected:Npn \__str_convert_ii:wwwnn
+\cs_new_protected:Npn \__str_convert:wwwnn
#1 / #2 // #3 \q_stop #4#5
{
- \__str_convert_iv:nnn {enc} {#4} {#1}
- \__str_convert_iv:nnn {esc} {#5} {#2}
- \exp_args:Ncc \__str_convert_iii:NNnNN
+ \__str_convert:nnn {enc} {#4} {#1}
+ \__str_convert:nnn {esc} {#5} {#2}
+ \exp_args:Ncc \__str_convert:NNnNN
{ __str_convert_#4_#1: } { __str_convert_#5_#2: } {#2}
}
-\cs_new_protected:Npn \__str_convert_iii:NNnNN #1#2#3#4#5
+\cs_new_protected:Npn \__str_convert:NNnNN #1#2#3#4#5
{
\if_meaning:w #1 #5
\tl_if_empty:nF {#3}
@@ -596,16 +596,16 @@
#4 #2 #1
\fi:
}
-\cs_new_protected:Npn \__str_convert_iv:nnn #1#2#3
+\cs_new_protected:Npn \__str_convert:nnn #1#2#3
{
\cs_if_exist:cF { __str_convert_#2_#3: }
{
- \exp_args:Nx \__str_convert_v:nnnn
+ \exp_args:Nx \__str_convert:nnnn
{ \__str_convert_lowercase_alphanum:n {#3} }
{#1} {#2} {#3}
}
}
-\cs_new_protected:Npn \__str_convert_v:nnnn #1#2#3#4
+\cs_new_protected:Npn \__str_convert:nnnn #1#2#3#4
{
\cs_if_exist:cF { __str_convert_#3_#1: }
{
diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3tl-analysis.sty b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3tl-analysis.sty
index eb4a612e028..134eeed9815 100644
--- a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3tl-analysis.sty
+++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3tl-analysis.sty
@@ -87,8 +87,8 @@
\group_begin:
\group_align_safe_begin:
\__tl_analysis_setup:n {#1}
- \__tl_analysis_i:n {#1}
- \__tl_analysis_ii:n {#1}
+ \__tl_analysis_a:n {#1}
+ \__tl_analysis_b:n {#1}
\group_align_safe_end:
\group_end:
}
@@ -108,18 +108,18 @@
\__tl_analysis_disable_loop:N
}
\group_end:
-\cs_new_protected:Npn \__tl_analysis_i:n #1
+\cs_new_protected:Npn \__tl_analysis_a:n #1
{
\int_set:Nn \tex_escapechar:D { 92 }
\int_zero:N \l__tl_analysis_normal_int
\int_zero:N \l__tl_analysis_index_int
\int_zero:N \l__tl_analysis_nesting_int
- \if_false: { \fi: \__tl_analysis_i_loop:w #1 }
+ \if_false: { \fi: \__tl_analysis_a_loop:w #1 }
\int_decr:N \l__tl_analysis_index_int
}
-\cs_new_protected_nopar:Npn \__tl_analysis_i_loop:w
- { \tex_futurelet:D \l__tl_analysis_token \__tl_analysis_i_type:w }
-\cs_new_protected_nopar:Npn \__tl_analysis_i_type:w
+\cs_new_protected_nopar:Npn \__tl_analysis_a_loop:w
+ { \tex_futurelet:D \l__tl_analysis_token \__tl_analysis_a_type:w }
+\cs_new_protected_nopar:Npn \__tl_analysis_a_type:w
{
\l__tl_analysis_type_int =
\if_meaning:w \l__tl_analysis_token \c_space_token
@@ -136,61 +136,61 @@
\fi:
\fi:
\if_case:w \l__tl_analysis_type_int
- \exp_after:wN \__tl_analysis_i_space:w
- \or: \exp_after:wN \__tl_analysis_i_bgroup:w
- \or: \exp_after:wN \__tl_analysis_i_safe:N
- \else: \exp_after:wN \__tl_analysis_i_egroup:w
+ \exp_after:wN \__tl_analysis_a_space:w
+ \or: \exp_after:wN \__tl_analysis_a_bgroup:w
+ \or: \exp_after:wN \__tl_analysis_a_safe:N
+ \else: \exp_after:wN \__tl_analysis_a_egroup:w
\fi:
}
-\cs_new_protected_nopar:Npn \__tl_analysis_i_space:w
+\cs_new_protected_nopar:Npn \__tl_analysis_a_space:w
{
- \tex_afterassignment:D \__tl_analysis_i_space_test:w
+ \tex_afterassignment:D \__tl_analysis_a_space_test:w
\exp_after:wN \cs_set_eq:NN
\exp_after:wN \l__tl_analysis_char_token
\token_to_str:N
}
-\cs_new_protected_nopar:Npn \__tl_analysis_i_space_test:w
+\cs_new_protected_nopar:Npn \__tl_analysis_a_space_test:w
{
\if_meaning:w \l__tl_analysis_char_token \c_space_token
\tex_toks:D \l__tl_analysis_index_int { \exp_not:n { ~ } }
- \__tl_analysis_i_store:
+ \__tl_analysis_a_store:
\else:
\int_incr:N \l__tl_analysis_normal_int
\fi:
- \__tl_analysis_i_loop:w
+ \__tl_analysis_a_loop:w
}
\group_begin:
\char_set_catcode_group_begin:N \^^@
\char_set_catcode_group_end:N \^^E
- \cs_new_protected_nopar:Npn \__tl_analysis_i_bgroup:w
- { \__tl_analysis_i_group:nw { \exp_after:wN ^^@ \if_false: ^^E \fi: } }
+ \cs_new_protected_nopar:Npn \__tl_analysis_a_bgroup:w
+ { \__tl_analysis_a_group:nw { \exp_after:wN ^^@ \if_false: ^^E \fi: } }
\char_set_catcode_group_begin:N \^^B
\char_set_catcode_group_end:N \^^@
- \cs_new_protected_nopar:Npn \__tl_analysis_i_egroup:w
- { \__tl_analysis_i_group:nw { \if_false: ^^B \fi: ^^@ } }
+ \cs_new_protected_nopar:Npn \__tl_analysis_a_egroup:w
+ { \__tl_analysis_a_group:nw { \if_false: ^^B \fi: ^^@ } }
\group_end:
-\cs_new_protected:Npn \__tl_analysis_i_group:nw #1
+\cs_new_protected:Npn \__tl_analysis_a_group:nw #1
{
\tex_lccode:D \c_zero = \__tl_analysis_extract_charcode: \scan_stop:
\tl_to_lowercase:n { \tex_toks:D \l__tl_analysis_index_int {#1} }
\if_int_compare:w \tex_lccode:D \c_zero = \tex_escapechar:D
\int_set:Nn \tex_escapechar:D { 139 - \tex_escapechar:D }
\fi:
- \tex_afterassignment:D \__tl_analysis_i_group_test:w
+ \tex_afterassignment:D \__tl_analysis_a_group_test:w
\exp_after:wN \cs_set_eq:NN
\exp_after:wN \l__tl_analysis_char_token
\token_to_str:N
}
-\cs_new_protected_nopar:Npn \__tl_analysis_i_group_test:w
+\cs_new_protected_nopar:Npn \__tl_analysis_a_group_test:w
{
\if_charcode:w \l__tl_analysis_token \l__tl_analysis_char_token
- \__tl_analysis_i_store:
+ \__tl_analysis_a_store:
\else:
\int_incr:N \l__tl_analysis_normal_int
\fi:
- \__tl_analysis_i_loop:w
+ \__tl_analysis_a_loop:w
}
-\cs_new_protected_nopar:Npn \__tl_analysis_i_store:
+\cs_new_protected_nopar:Npn \__tl_analysis_a_store:
{
\tex_advance:D \l__tl_analysis_nesting_int \l__tl_analysis_type_int
\if_int_compare:w \tex_lccode:D \c_zero = \c_thirty_two
@@ -201,10 +201,10 @@
\int_incr:N \l__tl_analysis_index_int
\int_zero:N \l__tl_analysis_normal_int
\if_int_compare:w \l__tl_analysis_nesting_int = \c_minus_one
- \cs_set_eq:NN \__tl_analysis_i_loop:w \scan_stop:
+ \cs_set_eq:NN \__tl_analysis_a_loop:w \scan_stop:
\fi:
}
-\cs_new_protected:Npn \__tl_analysis_i_safe:N #1
+\cs_new_protected:Npn \__tl_analysis_a_safe:N #1
{
\if_charcode:w
\scan_stop:
@@ -212,11 +212,11 @@
\scan_stop:
\int_incr:N \l__tl_analysis_normal_int
\else:
- \__tl_analysis_cs_space_count:NN \__tl_analysis_i_cs:ww #1
+ \__tl_analysis_cs_space_count:NN \__tl_analysis_a_cs:ww #1
\fi:
- \__tl_analysis_i_loop:w
+ \__tl_analysis_a_loop:w
}
-\cs_new_protected:Npn \__tl_analysis_i_cs:ww #1; #2;
+\cs_new_protected:Npn \__tl_analysis_a_cs:ww #1; #2;
{
\if_int_compare:w #1 > \c_zero
\tex_skip:D \l__tl_analysis_index_int
@@ -227,36 +227,36 @@
\tex_advance:D \l__tl_analysis_normal_int #2 \exp_stop_f:
\fi:
}
-\cs_new_protected:Npn \__tl_analysis_ii:n #1
+\cs_new_protected:Npn \__tl_analysis_b:n #1
{
\tl_gset:Nx \g__tl_analysis_result_tl
{
- \__tl_analysis_ii_loop:w 0; #1
+ \__tl_analysis_b_loop:w 0; #1
\__prg_break_point:
}
}
-\cs_new:Npn \__tl_analysis_ii_loop:w #1;
+\cs_new:Npn \__tl_analysis_b_loop:w #1;
{
- \exp_after:wN \__tl_analysis_ii_normals:ww
+ \exp_after:wN \__tl_analysis_b_normals:ww
\__int_value:w \tex_skip:D #1 ; #1 ;
}
-\cs_new:Npn \__tl_analysis_ii_normals:ww #1;
+\cs_new:Npn \__tl_analysis_b_normals:ww #1;
{
\if_int_compare:w #1 = \c_zero
- \__tl_analysis_ii_special:w
+ \__tl_analysis_b_special:w
\fi:
- \__tl_analysis_ii_normal:wwN #1;
+ \__tl_analysis_b_normal:wwN #1;
}
-\cs_new:Npn \__tl_analysis_ii_normal:wwN #1; #2; #3
+\cs_new:Npn \__tl_analysis_b_normal:wwN #1; #2; #3
{
\exp_not:n { \exp_not:n { #3 } } \s__tl
\if_charcode:w
\scan_stop:
\exp_after:wN \use_none:n \token_to_str:N #3 \prg_do_nothing:
\scan_stop:
- \exp_after:wN \__tl_analysis_ii_char:Nww
+ \exp_after:wN \__tl_analysis_b_char:Nww
\else:
- \exp_after:wN \__tl_analysis_ii_cs:Nww
+ \exp_after:wN \__tl_analysis_b_cs:Nww
\fi:
#3 #1; #2;
}
@@ -267,7 +267,7 @@
\char_set_uccode:nn { `? } { `D }
\tl_to_uppercase:n
{
- \cs_new:Npn \__tl_analysis_ii_char:Nww #1
+ \cs_new:Npn \__tl_analysis_b_char:Nww #1
{
\if_meaning:w #1 \c_undefined:D ? \else:
\if_catcode:w #1 \c_catcode_other_token C \else:
@@ -280,19 +280,19 @@
6
\fi: \fi: \fi: \fi: \fi: \fi: \fi: \fi:
\__int_value:w `#1 \s__tl
- \exp_after:wN \__tl_analysis_ii_normals:ww
+ \exp_after:wN \__tl_analysis_b_normals:ww
\int_use:N \__int_eval:w \c_minus_one +
}
}
\group_end:
-\cs_new:Npn \__tl_analysis_ii_cs:Nww #1
+\cs_new:Npn \__tl_analysis_b_cs:Nww #1
{
0 -1 \s__tl
- \__tl_analysis_cs_space_count:NN \__tl_analysis_ii_cs_test:ww #1
+ \__tl_analysis_cs_space_count:NN \__tl_analysis_b_cs_test:ww #1
}
-\cs_new:Npn \__tl_analysis_ii_cs_test:ww #1 ; #2 ; #3 ; #4 ;
+\cs_new:Npn \__tl_analysis_b_cs_test:ww #1 ; #2 ; #3 ; #4 ;
{
- \exp_after:wN \__tl_analysis_ii_normals:ww
+ \exp_after:wN \__tl_analysis_b_normals:ww
\int_use:N \__int_eval:w
\if_int_compare:w #1 = \c_zero
#3
@@ -305,8 +305,8 @@
}
\group_begin:
\char_set_catcode_other:N A
- \cs_new:Npn \__tl_analysis_ii_special:w
- \fi: \__tl_analysis_ii_normal:wwN 0 ; #1 ;
+ \cs_new:Npn \__tl_analysis_b_special:w
+ \fi: \__tl_analysis_b_normal:wwN 0 ; #1 ;
{
\fi:
\if_int_compare:w #1 = \l__tl_analysis_index_int
@@ -320,23 +320,23 @@
\else: 2
\fi:
\if_int_odd:w \etex_gluestretch:D \tex_skip:D #1 \exp_stop_f:
- \exp_after:wN \__tl_analysis_ii_special_char:wN \int_use:N
+ \exp_after:wN \__tl_analysis_b_special_char:wN \int_use:N
\else:
- \exp_after:wN \__tl_analysis_ii_special_space:w \int_use:N
+ \exp_after:wN \__tl_analysis_b_special_space:w \int_use:N
\fi:
\__int_eval:w \c_one + #1 \exp_after:wN ;
\token_to_str:N
}
\group_end:
-\cs_new:Npn \__tl_analysis_ii_special_char:wN #1 ; #2
+\cs_new:Npn \__tl_analysis_b_special_char:wN #1 ; #2
{
\__int_value:w `#2 \s__tl
- \__tl_analysis_ii_loop:w #1 ;
+ \__tl_analysis_b_loop:w #1 ;
}
-\cs_new:Npn \__tl_analysis_ii_special_space:w #1 ; ~
+\cs_new:Npn \__tl_analysis_b_special_space:w #1 ; ~
{
32 \s__tl
- \__tl_analysis_ii_loop:w #1 ;
+ \__tl_analysis_b_loop:w #1 ;
}
\cs_new_protected:Npn \__tl_analysis_map_inline:nn #1
{
diff --git a/Master/texmf-dist/tex/latex/l3experimental/xgalley/l3galley.sty b/Master/texmf-dist/tex/latex/l3experimental/xgalley/l3galley.sty
index 30c72196f57..a16079a1428 100644
--- a/Master/texmf-dist/tex/latex/l3experimental/xgalley/l3galley.sty
+++ b/Master/texmf-dist/tex/latex/l3experimental/xgalley/l3galley.sty
@@ -48,16 +48,18 @@
%% -----------------------------------------------------------------------
%%
\RequirePackage{xparse}
-\GetIdInfo$Id: l3galley.dtx 4155 2012-08-29 10:29:58Z joseph $
+\GetIdInfo$Id: l3galley.dtx 4388 2012-12-20 22:15:35Z joseph $
{L3 Experimental galley code}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
-\clist_new:N \l__galley_parshape_left_indent_clist
-\clist_new:N \l__galley_parshape_right_indent_clist
+\cs_generate_variant:Nn \seq_map_function:NN { Nc }
+\int_new:N \l__galley_tmp_int
+\seq_new:N \l__galley_tmpa_seq
+\seq_new:N \l__galley_tmpb_seq
+\tl_new:N \l__galley_tmp_tl
\bool_new:N \l__galley_parshape_multipar_bool
-\bool_new:N \l__galley_parshape_resume_std_bool
-\bool_new:N \l__galley_parshape_fixed_lines_bool
-\int_new:N \l_galley_parshape_std_lines_int
+\seq_new:N \l__galley_parshape_left_indent_seq
+\seq_new:N \l__galley_parshape_right_indent_seq
\cs_new_eq:NN \l_galley_text_width_dim \linewidth
\cs_new_eq:NN \l_galley_total_left_margin_dim \@totalleftmargin
\dim_new:N \l_galley_total_right_margin_dim
@@ -66,20 +68,24 @@
\cs_new_eq:NN \l_galley_width_dim \tex_hsize:D
\bool_new:N \g__galley_begin_level_bool
\bool_new:N \l__galley_begin_level_bool
+\seq_new:N \g__galley_cutout_left_seq
+\seq_new:N \l__galley_cutout_left_seq
+\seq_new:N \g__galley_cutout_right_seq
+\seq_new:N \l__galley_cutout_right_seq
\bool_new:N \g_galley_omit_next_indent_bool
\bool_new:N \l__galley_omit_next_indent_bool
-\bool_new:N \g__galley_parshape_set_bool
-\bool_new:N \l__galley_parshape_set_bool
\bool_new:N \g_galley_no_break_next_bool
\bool_new:N \l__galley_no_break_next_bool
\tl_new:N \g_galley_par_begin_hook_tl
-\tl_new:N \l__galley_galley_par_begin_hook_tl
+\tl_new:N \l__galley_par_begin_hook_tl
\tl_new:N \g_galley_par_end_hook_tl
-\tl_new:N \l__galley_galley_par_end_hook_tl
-\tl_new:N \g_galley_par_after_hook_tl
-\tl_new:N \l__galley_par_after_hook_tl
+\tl_new:N \l__galley_par_end_hook_tl
+\tl_new:N \g_galley_par_reset_hook_tl
+\tl_new:N \l__galley_par_reset_hook_tl
\int_new:N \g_galley_previous_par_lines_int
\int_new:N \l__galley_previous_par_lines_int
+\int_new:N \g__galley_current_par_lines_int
+\int_new:N \l__galley_current_par_lines_int
\tl_new:N \g_galley_restore_running_tl
\tl_new:N \l__galley_restore_running_tl
\tl_new:N \g_galley_whatsit_next_tl
@@ -93,14 +99,16 @@
\cs_new_protected_nopar:Npn \__galley_initialise_variables:
{
\bool_gset_true:N \g__galley_begin_level_bool
+ \seq_gclear:N \g__galley_cutout_left_seq
+ \seq_gclear:N \g__galley_cutout_right_seq
\tl_gclear:N \g__galley_interpar_penalty_user_tl
\tl_gclear:N \g__galley_interpar_vspace_user_tl
\bool_gset_true:N \g_galley_omit_next_indent_bool
\bool_gset_false:N \g_galley_no_break_next_bool
\tl_gclear:N \g_galley_par_begin_hook_tl
\tl_gclear:N \g_galley_par_end_hook_tl
- \tl_gclear:N \g_galley_par_after_hook_tl
- \bool_gset_false:N \g__galley_parshape_set_bool
+ \tl_gclear:N \g_galley_par_reset_hook_tl
+ \int_gzero:N \g__galley_current_par_lines_int
\int_gzero:N \g_galley_previous_par_lines_int
\tl_gclear:N \g_galley_restore_running_tl
\tl_gclear:N \g_galley_whatsit_previous_tl
@@ -117,6 +125,10 @@
{
\bool_set_eq:NN \l__galley_begin_level_bool
\g__galley_begin_level_bool
+ \seq_set_eq:NN \l__galley_cutout_left_seq
+ \g__galley_cutout_left_seq
+ \seq_set_eq:NN \l__galley_cutout_right_seq
+ \g__galley_cutout_right_seq
\tl_set_eq:NN \l__galley_interpar_penalty_user_tl
\g__galley_interpar_penalty_user_tl
\tl_set_eq:NN \l__galley_interpar_vspace_user_tl
@@ -125,14 +137,14 @@
\g_galley_omit_next_indent_bool
\bool_set_eq:NN \l__galley_no_break_next_bool
\g_galley_no_break_next_bool
- \tl_set_eq:NN \l__galley_galley_par_begin_hook_tl
+ \tl_set_eq:NN \l__galley_par_begin_hook_tl
\g_galley_par_begin_hook_tl
- \tl_set_eq:NN \l__galley_galley_par_end_hook_tl
+ \tl_set_eq:NN \l__galley_par_end_hook_tl
\g_galley_par_end_hook_tl
- \tl_set_eq:NN \l__galley_par_after_hook_tl
- \g_galley_par_after_hook_tl
- \bool_set_eq:NN \l__galley_parshape_set_bool
- \g__galley_parshape_set_bool
+ \tl_set_eq:NN \l__galley_par_reset_hook_tl
+ \g_galley_par_reset_hook_tl
+ \int_set_eq:NN \l__galley_current_par_lines_int
+ \g__galley_current_par_lines_int
\int_set_eq:NN \l__galley_previous_par_lines_int
\g_galley_previous_par_lines_int
\tl_set_eq:NN \l__galley_restore_running_tl
@@ -146,6 +158,10 @@
{
\bool_gset_eq:NN \g__galley_begin_level_bool
\l__galley_begin_level_bool
+ \seq_gset_eq:NN \g__galley_cutout_left_seq
+ \l__galley_cutout_left_seq
+ \seq_gset_eq:NN \g__galley_cutout_right_seq
+ \l__galley_cutout_right_seq
\tl_gset_eq:NN \g__galley_interpar_penalty_user_tl
\l__galley_interpar_penalty_user_tl
\tl_gset_eq:NN \g__galley_interpar_vspace_user_tl
@@ -155,13 +171,13 @@
\bool_gset_eq:NN \g_galley_no_break_next_bool
\l__galley_no_break_next_bool
\tl_gset_eq:NN \g_galley_par_begin_hook_tl
- \l__galley_galley_par_begin_hook_tl
+ \l__galley_par_begin_hook_tl
\tl_gset_eq:NN \g_galley_par_end_hook_tl
- \l__galley_galley_par_end_hook_tl
- \tl_gset_eq:NN \g_galley_par_after_hook_tl
- \l__galley_par_after_hook_tl
- \bool_gset_eq:NN \g__galley_parshape_set_bool
- \l__galley_parshape_set_bool
+ \l__galley_par_end_hook_tl
+ \tl_gset_eq:NN \g_galley_par_reset_hook_tl
+ \l__galley_par_reset_hook_tl
+ \int_gset_eq:NN \g__galley_current_par_lines_int
+ \l__galley_current_par_lines_int
\int_gset_eq:NN \g_galley_previous_par_lines_int
\l__galley_previous_par_lines_int
\tl_gset_eq:NN \g_galley_restore_running_tl
@@ -186,52 +202,58 @@
\group_end:
}
\__scan_new:N \s__par_omit
-\cs_new_protected_nopar:Npn \__galley_std_par:
+\cs_new_protected_nopar:Npn \galley_par:
{
\s__par_omit
- \exp_after:wN \__galley_std_par_aux_i: \tex_romannumeral:D - `0
+ \exp_after:wN \__galley_par_auxi: \tex_romannumeral:D - `0
}
-\cs_new_protected:Npn \__galley_std_par_aux_i:
+\cs_new_protected:Npn \__galley_par_auxi:
{
\peek_meaning:NTF \s__par_omit
- { \__galley_std_par_aux:N }
- { \__galley_std_par_aux_ii: }
+ { \__galley_par_aux:N }
+ { \__galley_par_auxii: }
}
-\cs_new_protected:Npn \__galley_std_par_aux:N #1
+\cs_new_protected:Npn \__galley_par_aux:N #1
{
\str_if_eq_x:nnF {#1} { \s__par_omit }
{
- \__galley_std_par_aux_ii:
+ \__galley_par_auxii:
#1
}
}
-\cs_new_protected_nopar:Npn \__galley_std_par_aux_ii:
+\cs_new_protected_nopar:Npn \__galley_par_auxii:
{
\mode_if_vertical:TF
- { \tex_par:D }
+ {
+ \group_begin:
+ \tex_par:D
+ \group_end:
+ }
{
\g_galley_par_end_hook_tl
- \__galley_set_measure_and_parshape:
\group_begin:
\tex_par:D
\group_end:
- \int_gadd:Nn \g_galley_previous_par_lines_int \tex_prevgraf:D
+ \int_gset:Nn \g_galley_previous_par_lines_int
+ { \tex_prevgraf:D + \g__galley_current_par_lines_int }
+ \__galley_parshape_reset:
+ \int_gzero:N \g__galley_current_par_lines_int
}
- \g_galley_par_after_hook_tl
- \tl_gclear:N \g_galley_par_after_hook_tl
+ \g_galley_par_reset_hook_tl
+ \tl_gclear:N \g_galley_par_reset_hook_tl
\tex_penalty:D \c_ten_thousand
}
-\cs_new_protected:Npn \__galley_end_par:n #1
+\cs_new_protected:Npn \galley_par:n #1
{
\s__par_omit
\bool_if:nF \g__galley_begin_level_bool
{
#1
- \__galley_std_par:
+ \galley_par:
}
}
-\cs_set_protected_nopar:Npn \par { \__galley_std_par: }
-\tl_set:Nn \@par { \__galley_std_par: }
+\cs_set_protected_nopar:Npn \par { \galley_par: }
+\tl_set:Nn \@par { \galley_par: }
\cs_new_protected_nopar:Npn \galley_display_begin:
{
\group_begin:
@@ -285,7 +307,7 @@
}
\cs_new_protected_nopar:Npn \__galley_display_par:
{
- \cs_set_eq:NN \par \__galley_std_par:
+ \cs_set_eq:NN \par \galley_par:
\mode_if_vertical:TF
{
\par
@@ -294,11 +316,10 @@
\__galley_display_vspace:N \l_galley_display_end_par_vspace_tl
}
{
- \__galley_set_measure_and_parshape:
\group_begin:
\tex_par:D
\group_end:
- \int_gadd:Nn \g_galley_previous_par_lines_int \tex_prevgraf:D
+ \int_gadd:Nn \g__galley_current_par_lines_int \tex_prevgraf:D
\__galley_display_penalty:N \l_galley_display_end_penalty_tl
\__galley_display_vspace:N \l_galley_display_end_vspace_tl
}
@@ -325,7 +346,6 @@
\tex_everypar:D { }
\tex_noindent:D
\group_end:
- \int_gzero:N \g_galley_previous_par_lines_int
\__galley_insert_horizontal_items:
\__galley_restore_running_parameters:
}
@@ -391,8 +411,11 @@
\g_galley_restore_running_tl
\tl_gclear:N \g_galley_restore_running_tl
}
+\dim_new:N \l__galley_total_left_margin_dim
+\dim_new:N \l__galley_total_right_margin_dim
\cs_new_protected:Npn \galley_margins_set_absolute:nn #1#2
{
+ \__galley_save_margins:
\dim_set:Nn \l_galley_total_left_margin_dim {#1}
\dim_set:Nn \l_galley_total_right_margin_dim {#2}
\dim_set:Nn \l_galley_text_width_dim
@@ -401,9 +424,11 @@
- \l_galley_total_left_margin_dim
- \l_galley_total_right_margin_dim
}
+ \__galley_set_measure:
}
\cs_new_protected:Npn \galley_margins_set_relative:nn #1#2
{
+ \__galley_save_margins:
\dim_add:Nn \l_galley_total_left_margin_dim {#1}
\dim_add:Nn \l_galley_total_right_margin_dim {#2}
\dim_set:Nn \l_galley_text_width_dim
@@ -412,144 +437,241 @@
- \l_galley_total_left_margin_dim
- \l_galley_total_right_margin_dim
}
+ \__galley_set_measure:
}
-\cs_new_protected:Npn \galley_parshape_fixed_lines:nnn #1#2#3
+\cs_new_protected_nopar:Npn \__galley_save_margins:
{
- \bool_gset_true:N \g__galley_parshape_set_bool
- \bool_set_true:N \l__galley_parshape_fixed_lines_bool
- \int_set:Nn \l_galley_parshape_std_lines_int {#1}
- \clist_set:Nn \l__galley_parshape_left_indent_clist {#2}
- \clist_set:Nn \l__galley_parshape_right_indent_clist {#3}
- \bool_set_true:N \l__galley_parshape_resume_std_bool
+ \dim_set_eq:NN \l__galley_total_left_margin_dim
+ \l_galley_total_left_margin_dim
+ \dim_set_eq:NN \l__galley_total_right_margin_dim
+ \l_galley_total_right_margin_dim
}
-\cs_new_protected:Npn \galley_parshape_multi_par:nnnN #1#2#3#4
+\cs_new_protected_nopar:Npn \__galley_set_measure:
{
- \bool_gset_true:N \g__galley_parshape_set_bool
- \bool_set_true:N \l__galley_parshape_multipar_bool
- \bool_set_false:N \l__galley_parshape_fixed_lines_bool
- \int_set:Nn \l_galley_parshape_std_lines_int {#1}
- \clist_set:Nn \l__galley_parshape_left_indent_clist {#2}
- \clist_set:Nn \l__galley_parshape_right_indent_clist {#3}
- \bool_set_eq:NN \l__galley_parshape_resume_std_bool #4
+ \int_compare:nNnTF \tex_parshape:D = \c_zero
+ { \__galley_parshape_measure: }
+ {
+ \dim_sub:Nn \l__galley_total_left_margin_dim
+ \l_galley_total_left_margin_dim
+ \dim_sub:Nn \l__galley_total_right_margin_dim
+ \l_galley_total_right_margin_dim
+ \tex_parshape:D
+ \tex_parshape:D
+ \int_step_function:nnnN
+ \c_one \c_one \tex_parshape:D
+ \__galley_set_measure_aux:n
+ }
}
-\cs_new_protected:Npn \galley_parshape_single_par:nnnN #1#2#3#4
+\cs_new:Npn \__galley_set_measure_aux:n #1
{
- \bool_gset_true:N \g__galley_parshape_set_bool
- \bool_set_false:N \l__galley_parshape_multipar_bool
- \bool_set_false:N \l__galley_parshape_fixed_lines_bool
- \int_set:Nn \l_galley_parshape_std_lines_int {#1}
- \clist_set:Nn \l__galley_parshape_left_indent_clist {#2}
- \clist_set:Nn \l__galley_parshape_right_indent_clist {#3}
- \bool_set_eq:NN \l__galley_parshape_resume_std_bool #4
+ \__dim_eval:w
+ \etex_parshapeindent:D #1 - \l__galley_total_left_margin_dim
+ \__dim_eval_end:
+ \__dim_eval:w
+ \etex_parshapelength:D #1
+ + \l__galley_total_left_margin_dim + \l__galley_total_right_margin_dim
+ \__dim_eval_end:
}
-\cs_generate_variant:Nn \galley_parshape_fixed_lines:nnn { nVV }
-\cs_generate_variant:Nn \galley_parshape_multi_par:nnnN { nVV }
-\cs_generate_variant:Nn \galley_parshape_single_par:nnnN { nVV }
-\cs_new_protected_nopar:Npn \__galley_set_measure_and_parshape:
+\cs_new_protected_nopar:Npn \__galley_parshape_reset:
{
- \bool_if:NTF \g__galley_parshape_set_bool
+ \int_compare:nNnF \tex_parshape:D = \c_zero
{
- \bool_if:NTF \l__galley_parshape_fixed_lines_bool
+ \bool_if:nTF
+ {
+ \seq_if_empty_p:N \g__galley_cutout_left_seq
+ && \seq_if_empty_p:N \g__galley_cutout_right_seq
+ }
{
- \int_compare:nNnTF \g_galley_previous_par_lines_int > \c_zero
- { \__galley_generate_parshape_lines: }
- { \__galley_generate_parshape: }
+ \bool_if:NF \l__galley_parshape_multipar_bool
+ { \__galley_parshape_measure: }
}
{
- \bool_gset_eq:NN \g__galley_parshape_set_bool
- \l__galley_parshape_multipar_bool
- \__galley_generate_parshape:
+ \prg_replicate:nn \g__galley_previous_par_lines_int
+ {
+ \seq_gpop:NN \g__galley_cutout_left_seq \l__galley_tmp_tl
+ \seq_gpop:NN \g__galley_cutout_right_seq \l__galley_tmp_tl
+ }
+ \bool_if:NTF \l__galley_parshape_multipar_bool
+ { \__galley_parshape_set: }
+ { \__galley_parshape_measure: }
+ \__galley_cutout_set:Nn \g__galley_cutout_left_seq { left }
+ \__galley_cutout_set:Nn \g__galley_cutout_right_seq { right }
}
}
+ }
+\cs_new_protected_nopar:Npn \__galley_parshape_measure:
+ {
+ \tex_parshape:D
+ \c_one
+ \l_galley_total_left_margin_dim
+ \l_galley_text_width_dim
+ }
+\cs_new_protected_nopar:Npn \galley_parshape_set_multi:nnnN
+ {
+ \bool_set_true:N \l__galley_parshape_multipar_bool
+ \__galley_parshape_set:nnnN
+ }
+\cs_new_protected_nopar:Npn \galley_parshape_set_single:nnnN
+ {
+ \bool_set_false:N \l__galley_parshape_multipar_bool
+ \__galley_parshape_set:nnnN
+ }
+\cs_generate_variant:Nn \galley_parshape_set_multi:nnnN { nVV }
+\cs_generate_variant:Nn \galley_parshape_set_single:nnnN { nVV }
+\cs_new_protected:Npn \__galley_parshape_set:nnnN #1#2#3#4
+ {
+ \seq_set_from_clist:Nn \l__galley_parshape_left_indent_seq {#2}
+ \seq_set_from_clist:Nn \l__galley_parshape_right_indent_seq {#3}
+ \prg_replicate:nn {#1}
+ {
+ \seq_put_left:Nn \l__galley_parshape_left_indent_seq { 0 pt }
+ \seq_put_left:Nn \l__galley_parshape_right_indent_seq { 0 pt }
+ }
+ \bool_if:NT #4
{
- \tex_global:D \tex_parshape:D
- \c_one
- \dim_use:N \l_galley_total_left_margin_dim
- \c_space_tl
- \dim_use:N \l_galley_text_width_dim
+ \seq_put_right:Nn \l__galley_parshape_left_indent_seq { 0 pt }
+ \seq_put_right:Nn \l__galley_parshape_right_indent_seq { 0 pt }
}
+ \__galley_parshape_set:
}
-\cs_new_protected_nopar:Npn \__galley_generate_parshape:
+\cs_new_protected_nopar:Npn \__galley_parshape_set:
{
- \tex_global:D \tex_parshape:D
+ \tex_parshape:D
\__int_eval:w
- \l_galley_parshape_std_lines_int +
- \int_min:nn
- { \clist_count:N \l__galley_parshape_left_indent_clist }
- { \clist_count:N \l__galley_parshape_right_indent_clist }
- \bool_if:NT \l__galley_parshape_resume_std_bool { + 1 }
+ \int_min:nn
+ { \seq_count:N \l__galley_parshape_left_indent_seq }
+ { \seq_count:N \l__galley_parshape_right_indent_seq }
\__int_eval_end:
- \prg_replicate:nn \l_galley_parshape_std_lines_int
- {
- \dim_use:N \l_galley_total_left_margin_dim
- \c_space_tl
- \dim_use:N \l_galley_text_width_dim
- \c_space_tl
- }
- \__galley_set_parshape_map:oo
- \l__galley_parshape_left_indent_clist
- \l__galley_parshape_right_indent_clist
- \bool_if:NT \l__galley_parshape_resume_std_bool
- {
- \c_space_tl
- \dim_use:N \l_galley_total_left_margin_dim
- \c_space_tl
- \dim_use:N \l_galley_text_width_dim
- }
+ \seq_mapthread_function:NNN
+ \l__galley_parshape_left_indent_seq
+ \l__galley_parshape_right_indent_seq
+ \__galley_parshape_set:nn
+ }
+\cs_new:Npn \__galley_parshape_set:nn #1#2
+ {
+ \__dim_eval:w \l_galley_total_left_margin_dim + ( #1 ) \__dim_eval_end:
+ \__dim_eval:w
+ \l_galley_text_width_dim - ( ( #1 ) + ( #2 ) )
+ \__dim_eval_end:
+ }
+\cs_new_protected_nopar:Npn \galley_cutout_left:nn
+ { \__galley_cutout:nnn { left } }
+\cs_new_protected_nopar:Npn \galley_cutout_right:nn
+ { \__galley_cutout:nnn { right } }
+\cs_new_protected:Npn \__galley_cutout:nnn #1#2#3
+ {
+ \seq_set_from_clist:Nn \l__galley_tmpa_seq {#3}
+ \prg_replicate:nn {#2}
+ { \seq_put_left:Nn \l__galley_tmpa_seq { 0 pt } }
+ \__galley_cutout_set:Nn \l__galley_tmpa_seq {#1}
+ \seq_clear:N \l__galley_tmpb_seq
+ \int_compare:nNnTF
+ { \seq_count:N \l__galley_tmpa_seq } >
+ { \seq_count:c { g__galley_cutout_ #1 _ seq } }
+ {
+ \seq_map_inline:Nn \l__galley_tmpa_seq
+ {
+ \__galley_cutout_store:nn
+ { \seq_gpop:cNF { g__galley_cutout_ #1 _ seq } }
+ {##1}
+ }
+ }
+ {
+ \seq_map_inline:cn { g__galley_cutout_ #1 _ seq }
+ {
+ \__galley_cutout_store:nn
+ { \seq_pop:NNF \l__galley_tmpa_seq }
+ {##1}
+ }
+ }
+ \seq_gset_eq:cN { g__galley_cutout_ #1 _ seq } \l__galley_tmpb_seq
+ }
+\cs_new_protected:Npn \__galley_cutout_store:nn #1#2
+ {
+ #1 \l__galley_tmp_tl
+ { \tl_set:Nn \l__galley_tmp_tl { 0 pt } }
+ \seq_put_right:Nx \l__galley_tmpb_seq
+ { \dim_eval:n { \l__galley_tmp_tl + #2 } }
}
-\cs_new:Npn \__galley_set_parshape_map:nn #1#2
- { \__galley_set_parshape_map_aux:nw { } #1 , \q_mark #2 , \q_stop }
-\cs_generate_variant:Nn \__galley_set_parshape_map:nn { oo }
-\cs_new:Npn \__galley_set_parshape_map_aux:nw #1#2 , #3 \q_mark #4 , #5 \q_stop
+\cs_new_protected:Npn \__galley_cutout_set:Nn #1#2
{
- \bool_if:nTF { \tl_if_empty_p:n {#3} || \tl_if_empty_p:n {#5} }
+ \int_zero:N \l__galley_tmp_int
+ \tl_clear:N \l__galley_tmp_tl
+ \seq_map_function:Nc #1 { __galley_cutout_ #2 :n }
+ \int_compare:nNnTF \tex_parshape:D > \l__galley_tmp_int
{
- #1
- \dim_eval:n { \l_galley_total_left_margin_dim + ( #2 ) }
- \c_space_tl
- \dim_eval:n { \l_galley_text_width_dim - ( ( #2 ) + ( #4 ) ) }
+ \int_step_function:nnnN
+ { \l__galley_tmp_int + \c_one }
+ \c_one
+ \tex_parshape:D
+ \__galley_cutout_end:n
}
{
- \__galley_set_parshape_map_aux:nw
+ \int_incr:N \l__galley_tmp_int
+ \int_compare:nNnTF \tex_parshape:D = \c_zero
{
- #1
- \dim_eval:n { \l_galley_total_left_margin_dim + ( #2 ) }
- \c_space_tl
- \dim_eval:n { \l_galley_text_width_dim - ( ( #2 ) + ( #4 ) ) }
- \c_space_tl
+ \tl_put_right:Nn \l__galley_tmp_tl
+ { \l__galley_total_left_margin_dim \l__galley_text_width_dim }
+ }
+ {
+ \tl_put_right:Nx \l__galley_tmp_tl
+ {
+ \dim_eval:n { \etex_parshapeindent:D \tex_parshape:D }
+ \c_space_tl
+ \dim_eval:n { \etex_parshapelength:D \tex_parshape:D }
+ \c_space_tl
+ }
}
- #3 \q_mark #5 \q_stop
}
+ \tex_parshape:D
+ \l__galley_tmp_int
+ \l__galley_tmp_tl
}
-\cs_new_protected_nopar:Npn \__galley_generate_parshape_lines:
+\cs_new_protected:Npn \__galley_cutout_left:n #1
{
- \int_compare:nNnTF \tex_parshape:D > \g_galley_previous_par_lines_int
+ \int_incr:N \l__galley_tmp_int
+ \tl_put_right:Nx \l__galley_tmp_tl
{
- \tex_global:D \tex_parshape:D
- \__int_eval:w \tex_parshape:D - \g_galley_previous_par_lines_int
- \__int_eval_end:
- \int_step_function:nnnN
- { \g_galley_previous_par_lines_int + \c_one }
- \c_one \tex_parshape:D \__galley_generate_parshape_lines:n
+ \int_compare:nNnTF \l__galley_tmp_int > \tex_parshape:D
+ {
+ \dim_eval:n { \l__galley_total_left_margin_dim + ( #1 ) }
+ \c_space_tl
+ \dim_eval:n { \l__galley_text_width_dim - ( #1 ) }
+ \c_space_tl
+ }
+ {
+ \dim_eval:n { \etex_parshapeindent:D \l__galley_tmp_int + ( #1 ) }
+ \c_space_tl
+ \dim_eval:n { \etex_parshapelength:D \l__galley_tmp_int - ( #1 ) }
+ \c_space_tl
+ }
}
+ }
+\cs_new_protected:Npn \__galley_cutout_right:n #1
+ {
+ \int_incr:N \l__galley_tmp_int
+ \tl_put_right:Nx \l__galley_tmp_tl
{
- \bool_gset_false:N \g__galley_parshape_set_bool
- \tex_global:D \tex_parshape:D
- \c_one
- \dim_use:N \l_galley_total_left_margin_dim
- \c_space_tl
- \dim_use:N \l_galley_text_width_dim
+ \dim_eval:n { \etex_parshapeindent:D \l__galley_tmp_int }
+ \c_space_tl
+ \dim_eval:n { \etex_parshapelength:D \l__galley_tmp_int - ( #1 ) }
+ \c_space_tl
}
}
-\cs_new:Npn \__galley_generate_parshape_lines:n #1
+\cs_new_protected:Npn \__galley_cutout_end:n #1
{
- \etex_parshapeindent:D #1
- ~
- \etex_parshapelength:D #1
+ \int_incr:N \l__galley_tmp_int
+ \tl_put_right:Nx \l__galley_tmp_tl
+ {
+ \dim_eval:n { \etex_parshapeindent:D #1 }
+ \c_space_tl
+ \dim_eval:n { \etex_parshapelength:D #1 }
+ \c_space_tl
+ }
}
-\cs_new_protected:Npn \galley_set_user_penalty:n #1
+\cs_new_protected:Npn \galley_penalty_set_single:n #1
{ \tl_gset:Nx \g__galley_interpar_penalty_user_tl { \int_eval:n {#1} } }
-\cs_new_protected:Npn \galley_set_user_vspace:n #1
+\cs_new_protected:Npn \galley_vspace_set_single:n #1
{ \tl_gset:Nx \g__galley_interpar_vspace_user_tl { \skip_eval:n {#1} } }
\dim_set:Nn \parskip \c_zero_dim
\cs_undefine:N \parskip
@@ -560,7 +682,7 @@
\cs_new_eq:NN \l_galley_par_end_skip \tex_parfillskip:D
\cs_new_eq:NN \l_galley_par_indent_dim \tex_parindent:D
\cs_new_eq:NN \l_galley_last_line_fit_int \etex_lastlinefit:D
-\cs_new_protected:Npn \galley_set_interword_spacing:N #1
+\cs_new_protected:Npn \galley_interword_spacing_set:N #1
{
\bool_if:NTF #1
{ % TODO Hook for font changes required!
@@ -607,45 +729,45 @@
\cs_new_eq:NN \l_galley_pre_display_penalty_int \tex_predisplaypenalty:D
\clist_new:N \l_galley_club_penalties_clist
\clist_new:N \l_galley_line_penalties_clist
-\cs_new_protected:Npn \galley_set_display_widow_penalties:n #1
+\cs_new_protected:Npn \galley_display_widow_penalties_set:n #1
{
\etex_displaywidowpenalties:D
\__int_eval:w \clist_count:n {#1} + \c_one \__int_eval_end:
- \clist_map_function:nN {#1} \galley_set_aux:n
+ \clist_map_function:nN {#1} \__galley_set_aux:n
\c_zero
}
-\cs_generate_variant:Nn \galley_set_display_widow_penalties:n { V , v }
-\cs_new_protected:Npn \galley_set_widow_penalties:n #1
+\cs_generate_variant:Nn \galley_display_widow_penalties_set:n { V , v }
+\cs_new_protected:Npn \galley_widow_penalties_set:n #1
{
\etex_widowpenalties:D
\__int_eval:w \clist_count:n {#1} + \c_one \__int_eval_end:
- \clist_map_function:nN {#1} \galley_set_aux:n
+ \clist_map_function:nN {#1} \__galley_set_aux:n
\c_zero
}
-\cs_generate_variant:Nn \galley_set_widow_penalties:n { V , v }
-\cs_new:Npn \galley_set_aux:n #1 { #1 ~ }
-\cs_new_protected:Npn \galley_set_club_penalties:n #1
+\cs_generate_variant:Nn \galley_widow_penalties_set:n { V , v }
+\cs_new:Npn \__galley_set_aux:n #1 { \int_eval:n {#1} ~ }
+\cs_new_protected:Npn \galley_club_penalties_set:n #1
{
\clist_set:Nn \l_galley_club_penalties_clist {#1}
\__galley_calc_interline_penalties:
}
-\cs_generate_variant:Nn \galley_set_club_penalties:n { V , v }
-\cs_new_protected:Npn \galley_set_interline_penalties:n #1
+\cs_generate_variant:Nn \galley_club_penalties_set:n { V , v }
+\cs_new_protected:Npn \galley_interline_penalties_set:n #1
{
\clist_set:Nn \l_galley_line_penalties_clist {#1}
\__galley_calc_interline_penalties:
}
-\cs_generate_variant:Nn \galley_set_interline_penalties:n { V , v }
-\cs_new_protected:Npn \galley_set_display_club_penalties:n #1
+\cs_generate_variant:Nn \galley_interline_penalties_set:n { V , v }
+\cs_new_protected:Npn \galley_display_club_penalties_set:n #1
{
\etex_clubpenalties:D
\__int_eval:w \clist_count:n {#1} + \c_one \__int_eval_end:
- \clist_map_function:nN {#1} \galley_set_aux:n
+ \clist_map_function:nN {#1} \__galley_set_aux:n
\c_zero
\__galley_calc_interline_penalties:
}
-\cs_generate_variant:Nn \galley_set_display_club_penalties:n { V , v }
-\cs_new_protected:Npn \galley_set_interline_penalty:n #1
+\cs_generate_variant:Nn \galley_display_club_penalties_set:n { V , v }
+\cs_new_protected:Npn \galley_interline_penalty_set:n #1
{
\int_compare:nNnTF { \etex_interlinepenalties:D \c_zero } = \c_zero
{
@@ -653,7 +775,7 @@
\__galley_calc_interline_penalties:
}
{
- \cs_set:Npn \__galley_set_interline_penalty_ii:n ##1
+ \cs_set:Npn \__galley_set_interline_penalty_auxii:n ##1
{
\__int_eval:w
\etex_interlinepenalties:D ##1
@@ -670,34 +792,31 @@
\etex_interlinepenalties:D
\etex_interlinepenalties:D \c_zero
\int_step_function:nnnN \c_one \c_one {#1}
- \__galley_set_interline_penalty_i:n
+ \__galley_set_interline_penalty_auxi:n
\int_step_function:nnnN { #1 + \c_one } \c_one
{ \etex_interlinepenalties:D \c_zero - \c_one }
- \__galley_set_interline_penalty_ii:n
+ \__galley_set_interline_penalty_auxii:n
\__int_eval:w #2 \__int_eval_end:
}
-\cs_new:Npn \__galley_set_interline_penalty_i:n #1
+\cs_new:Npn \__galley_set_interline_penalty_auxi:n #1
{ \etex_interlinepenalties:D \__int_eval:w #1 \__int_eval_end: }
-\cs_new:Npn \__galley_set_interline_penalty_ii:n #1 { }
+\cs_new:Npn \__galley_set_interline_penalty_auxii:n #1 { }
\cs_new_protected_nopar:Npn \__galley_calc_interline_penalties:
{
\exp_args:Nff \__galley_calc_interline_penalties:nn
{
- \int_eval:n
+ \int_max:nn
+ {
+ \clist_count:N \l_galley_club_penalties_clist
+ + \c_one
+ }
{
\int_max:nn
{
- \clist_count:N \l_galley_club_penalties_clist
+ \clist_count:N \l_galley_line_penalties_clist
+ \c_one
}
- {
- \int_max:nn
- {
- \clist_count:N \l_galley_line_penalties_clist
- + \c_one
- }
- { \etex_clubpenalties:D \c_zero }
- }
+ { \etex_clubpenalties:D \c_zero }
}
}
{ \clist_count:N \l_galley_line_penalties_clist }
@@ -706,12 +825,12 @@
{
\etex_interlinepenalties:D #1 ~
\int_step_function:nnnN \c_one \c_one {#2}
- \__galley_calc_interline_penalties_i:n
+ \__galley_calc_interline_penalties_auxi:n
\int_step_function:nnnN { #2 + \c_one } \c_one { #1 - \c_one }
- \__galley_calc_interline_penalties_ii:n
+ \__galley_calc_interline_penalties_auxii:n
\etex_interlinepenalties:D \etex_interlinepenalties:D \c_zero
}
-\cs_new:Npn \__galley_calc_interline_penalties_i:n #1
+\cs_new:Npn \__galley_calc_interline_penalties_auxi:n #1
{
\__int_eval:w
\clist_item:Nn \l_galley_line_penalties_clist {#1}
@@ -719,7 +838,7 @@
- \etex_clubpenalties:D #1 ~
\__int_eval_end:
}
-\cs_new:Npn \__galley_calc_interline_penalties_ii:n #1
+\cs_new:Npn \__galley_calc_interline_penalties_auxii:n #1
{
\__int_eval:w
\etex_interlinepenalties:D \etex_interlinepenalties:D \c_zero
@@ -737,21 +856,21 @@
{
\int_step_function:nnnN \c_one \c_one
{ \etex_clubpenalties:D \c_zero - \c_one }
- \galley_save_display_club_penalties:_aux:n
+ \__galley_save_display_club_penalties:n
}
}
-\cs_new:Npn \galley_save_display_club_penalties:_aux:n #1
- { \int_use:N \etex_clubpenaltes:D \__int_eval:w #1 \__int_eval_end: , }
+\cs_new:Npn \__galley_save_display_club_penalties:n #1
+ { \int_use:N \etex_clubpenalties:D \__int_eval:w #1 \__int_eval_end: , }
\cs_new_protected:Npn \galley_save_display_widow_penalties:N #1
{
\clist_set:Nx #1
{
\int_step_function:nnnN \c_one \c_one
{ \etex_displaywidowpenalties:D \c_zero - \c_one }
- \galley_save_display_widow_penalties:_aux:n
+ \__galley_save_display_widow_penalties:n
}
}
-\cs_new:Npn \galley_save_display_widow_penalties:_aux:n #1
+\cs_new:Npn \__galley_save_display_widow_penalties:n #1
{ \int_use:N \etex_displaywidowpenalties:D \__int_eval:w #1 \__int_eval_end: , }
\cs_new_protected:Npn \galley_save_widow_penalties:N #1
{
@@ -759,10 +878,10 @@
{
\int_step_function:nnnN \c_one \c_one
{ \etex_widowpenalties:D \c_zero - \c_one }
- \galley_save_widow_penalties:_aux:n
+ \__galley_save_widow_penalties:n
}
}
-\cs_new:Npn \galley_save_widow_penalties:_aux:n #1
+\cs_new:Npn \__galley_save_widow_penalties:n #1
{ \int_use:N \etex_widowpenalties:D \__int_eval:w #1 \__int_eval_end: , }
\cs_new_protected_nopar:Npn \galley_interline_penalty:
{ \int_use:N \etex_interlinepenalties:D \etex_interlinepenalties:D \c_zero }
@@ -782,7 +901,7 @@
\tl_gput_right:Nn \g_galley_whatsit_next_tl
{ \iow_shipout:Nx \c_minus_one { } }
\tex_vbox:D { }
- \galley_set_user_penalty:n { -\@Mi }
+ \galley_penalty_set_single:n { -\@Mi }
}
\RenewDocumentCommand \nobreak { }
{ \bool_gset_true:N \g_galley_no_break_next_bool }
@@ -794,20 +913,20 @@
\RenewDocumentCommand \vspace { s m }
{
\IfBooleanTF #1
- { \galley_set_user_vspace:n {#2} }
- { \galley_set_user_vspace:n {#2} }
+ { \galley_vspace_set_single:n {#2} }
+ { \galley_vspace_set_single:n {#2} }
}
\RenewDocumentCommand \\ { s O { 0 pt } }
{ \galley_break_line:Nn #1 {#2} }
\RenewDocumentCommand \newline { }
{ \galley_break_line:Nn \c_true_bool { 0 pt } }
-\cs_set_eq:NN \__galleypar \__galley_std_par:
+\cs_set_eq:cN { @ @ par } \galley_par:
\cs_set_protected_nopar:Npn \@afterheading
{
\bool_gset_true:N \g_galley_no_break_next_bool
\if@afterindent
\else
- \bool_gset_true:N \galley_omit_next_indent_bool
+ \bool_gset_true:N \g_galley_omit_next_indent_bool
\fi
}
\cs_set_protected:Npn \@hangfrom #1
@@ -815,7 +934,7 @@
\bool_gset_true:N \g_galley_omit_next_indent_bool
\leavevmode
\setbox \@tempboxa = \hbox { {#1} }
- \galley_parshape_single_par:nnnN
+ \galley_parshape_set_single:nnnN
\c_one
{ \box_wd:N \@tempboxa }
\c_zero_dim
diff --git a/Master/texmf-dist/tex/latex/l3experimental/xgalley/xgalley.sty b/Master/texmf-dist/tex/latex/l3experimental/xgalley/xgalley.sty
index f8552f3f8e4..f736e2b74a6 100644
--- a/Master/texmf-dist/tex/latex/l3experimental/xgalley/xgalley.sty
+++ b/Master/texmf-dist/tex/latex/l3experimental/xgalley/xgalley.sty
@@ -48,7 +48,7 @@
%% -----------------------------------------------------------------------
%%
\RequirePackage{expl3}
-\GetIdInfo$Id: xgalley.dtx 4253 2012-11-01 21:01:54Z joseph $
+\GetIdInfo$Id: xgalley.dtx 4373 2012-12-17 16:41:59Z joseph $
{L3 Experimental galley}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
@@ -111,14 +111,14 @@
\AssignTemplateKeys
\bool_if:NTF \l__galley_parshape_on_left_bool
{
- \galley_parshape_single_par:nVVN
+ \galley_parshape_set_single:nVVN
\l__galley_parshape_lines_int
\l__galley_parshape_indent_dim
\c_zero_dim
\c_false_bool
}
{
- \galley_parshape_single_par:nVVN
+ \galley_parshape_set_single:nVVN
\l__galley_parshape_lines_int
\c_zero_dim
\l__galley_parshape_indent_dim
@@ -144,14 +144,14 @@
}
\bool_if:NTF \l__galley_parshape_on_left_bool
{
- \galley_parshape_single_par:nVVN
+ \galley_parshape_set_single:nVVN
\c_zero
\l__galley_tmpa_clist
\l__galley_tmpb_clist
\c_true_bool
}
{
- \galley_parshape_single_par:nVVN
+ \galley_parshape_set_single:nVVN
\c_zero
\l__galley_tmpb_clist
\l__galley_tmpa_clist
@@ -242,7 +242,7 @@
{
\AssignTemplateKeys
\tl_clear:N \l__galley_justification_other_tl
- \galley_set_interword_spacing:N \l_galley_fixed_spacing_bool
+ \galley_interword_spacing_set:N \l_galley_fixed_spacing_bool
\bool_if:NTF \l_galley_par_stretch_last_bool
{ \int_set_eq:NN \l_galley_last_line_fit_int \c_one_thousand }
{ \int_zero:N \l_galley_last_line_fit_int }
@@ -266,7 +266,7 @@
\bool_if:NTF \l_galley_fixed_spacing_bool
{ \bool_set_true:N \exp_not:N \l_galley_fixed_spacing_bool }
{ \bool_set_false:N \exp_not:N \l_galley_fixed_spacing_bool }
- \galley_set_interword_spacing:N
+ \galley_interword_spacing_set:N
\exp_not:N \l_galley_fixed_spacing_bool
\dim_set:Nn \exp_not:N \l_galley_par_indent_dim
{ \dim_use:N \l_galley_par_indent_dim }
@@ -284,7 +284,7 @@
\tl_gput_right:Nn \g_galley_restore_running_tl
{ \l__galley_justification_other_tl }
\AssignTemplateKeys
- \galley_set_interword_spacing:N \l_galley_fixed_spacing_bool
+ \galley_interword_spacing_set:N \l_galley_fixed_spacing_bool
\bool_if:NTF \l_galley_par_stretch_last_bool
{ \int_set_eq:NN \l_galley_last_line_fit_int \c_one_thousand }
{ \int_zero:N \l_galley_last_line_fit_int }
@@ -401,11 +401,11 @@
}
{
\AssignTemplateKeys
- \galley_set_club_penalties:V \l__galley_club_penalty_int
- \galley_set_display_club_penalties:V \l__galley_display_club_penalty_int
- \galley_set_display_widow_penalties:V \l__galley_display_widow_penalty_int
- \galley_set_interline_penalty:n \l__galley_interline_penalty_int
- \galley_set_widow_penalties:V \l__galley_widow_penalty_int
+ \galley_club_penalties_set:V \l__galley_club_penalty_int
+ \galley_display_club_penalties_set:V \l__galley_display_club_penalty_int
+ \galley_display_widow_penalties_set:V \l__galley_display_widow_penalty_int
+ \galley_interline_penalty_set:n \l__galley_interline_penalty_int
+ \galley_widow_penalties_set:V \l__galley_widow_penalty_int
}
\DeclareInstance { paragraph-breaking } { std } { std } { }
\UseInstance { paragraph-breaking } { std }
@@ -451,7 +451,7 @@
\AssignTemplateKeys
\tl_if_empty:NF \l__galley_interline_penalty_tl
{
- \tl_gput_right:Nx \g_galley_par_after_hook_tl
+ \tl_gput_right:Nx \g_galley_par_reset_hook_tl
{
\int_set:Nn \exp_not:N \l__galley_interline_penalty_int
{ \galley_interline_penalty: }
@@ -461,7 +461,7 @@
}
\tl_if_empty:NF \l__galley_parbreak_fuzz_tl
{
- \tl_gput_right:Nx \g_galley_par_after_hook_tl
+ \tl_gput_right:Nx \g_galley_par_reset_hook_tl
{
\dim_set:Nn \exp_not:N \l_galley_parbreak_fuzz_dim
{ \dim_use:N \l_galley_parbreak_fuzz_dim }
@@ -472,7 +472,7 @@
{
\tl_if_empty:cF { l_galley_ ##1 _tl }
{
- \tl_gput_right:Nx \g_galley_par_after_hook_tl
+ \tl_gput_right:Nx \g_galley_par_reset_hook_tl
{
\int_set:Nn \exp_not:c { l_galley_ ##1 _int }
{ \int_use:c { l_galley_ ##1 _int } }
@@ -486,7 +486,7 @@
\tl_if_empty:cF { l_galley_ ##1 _tl }
{
\use:c { galley_save_ ##1 :N } \l__galley_tmpa_clist
- \tl_gput_right:Nx \g_galley_par_after_hook_tl
+ \tl_gput_right:Nx \g_galley_par_reset_hook_tl
{
\exp_not:c { galley_set_ ##1 :n }
{ \exp_not:o \l__galley_tmpa_clist }
diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
index 268d2cd285d..653499b0ca4 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
+++ b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
@@ -45,8 +45,8 @@
%% prior consultation with the LaTeX3 Project.
%%
%% -----------------------------------------------------------------------
-\RequirePackage{l3names}[2012/07/15]
-\@ifpackagelater{l3names}{2012/07/15}
+\RequirePackage{l3names}[2012/12/07]
+\@ifpackagelater{l3names}{2012/12/07}
{}
{%
\PackageError{expl3}{Mismatched LaTeX3 packages detected.}
@@ -60,9 +60,10 @@
}
\def\ExplFileName{expl3}
\def\ExplFileDescription{L3 Experimental code bundle wrapper}
-\def\ExplFileDate{2012/11/21}
-\def\ExplFileVersion{4332}
+\def\ExplFileDate{2012/12/21}
+\def\ExplFileVersion{4390}
\RequirePackage{etex}
+\relax
\reserveinserts{32}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3basics.sty b/Master/texmf-dist/tex/latex/l3kernel/l3basics.sty
index 318c7d9bcb2..bc53602f68f 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/l3basics.sty
+++ b/Master/texmf-dist/tex/latex/l3kernel/l3basics.sty
@@ -46,7 +46,7 @@
%%
%% -----------------------------------------------------------------------
\RequirePackage{l3bootstrap}
-\GetIdInfo$Id: l3basics.dtx 4306 2012-11-10 12:57:20Z joseph $
+\GetIdInfo$Id: l3basics.dtx 4339 2012-11-24 19:16:43Z joseph $
{L3 Basic definitions}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
@@ -364,14 +364,14 @@
\cs_set:Npn \__cs_split_function:NN #1
{
\exp_after:wN \exp_after:wN
- \exp_after:wN \__cs_split_function_i:w
+ \exp_after:wN \__cs_split_function_auxi:w
\cs_to_str:N #1 \q_mark \c_true_bool
@ \q_mark \c_false_bool
\q_stop
}
- \cs_set:Npn \__cs_split_function_i:w #1 @ #2 \q_mark #3#4 \q_stop #5
- { \__cs_split_function_ii:w #5 #1 \q_mark \q_stop {#2} #3 }
- \cs_set:Npn \__cs_split_function_ii:w #1#2 \q_mark #3 \q_stop
+ \cs_set:Npn \__cs_split_function_auxi:w #1 @ #2 \q_mark #3#4 \q_stop #5
+ { \__cs_split_function_auxii:w #5 #1 \q_mark \q_stop {#2} #3 }
+ \cs_set:Npn \__cs_split_function_auxii:w #1#2 \q_mark #3 \q_stop
{ #1 {#2} }
}
\cs_set:Npn \__cs_get_function_name:N #1
diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3box.sty b/Master/texmf-dist/tex/latex/l3kernel/l3box.sty
index a9e84331634..56016c45566 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/l3box.sty
+++ b/Master/texmf-dist/tex/latex/l3kernel/l3box.sty
@@ -46,7 +46,7 @@
%%
%% -----------------------------------------------------------------------
\RequirePackage{l3bootstrap}
-\GetIdInfo$Id: l3box.dtx 4259 2012-11-04 17:15:11Z joseph $
+\GetIdInfo$Id: l3box.dtx 4347 2012-12-08 09:11:29Z joseph $
{L3 Experimental boxes}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
@@ -210,7 +210,7 @@
\cs_new_eq:NN \hbox_gset_inline_end: \hbox_gset_end:
\cs_new_protected:Npn \hbox_to_wd:nn #1#2
{ \tex_hbox:D to \__dim_eval:w #1 \__dim_eval_end: {#2} }
-\cs_new_protected:Npn \hbox_to_zero:n #1 { \tex_hbox:D to \c_zero_skip {#1} }
+\cs_new_protected:Npn \hbox_to_zero:n #1 { \tex_hbox:D to \c_zero_dim {#1} }
\cs_new_protected:Npn \hbox_overlap_left:n #1
{ \hbox_to_zero:n { \tex_hss:D #1 } }
\cs_new_protected:Npn \hbox_overlap_right:n #1
diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3candidates.sty b/Master/texmf-dist/tex/latex/l3kernel/l3candidates.sty
index cee29baf26e..65919abf3ec 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/l3candidates.sty
+++ b/Master/texmf-dist/tex/latex/l3kernel/l3candidates.sty
@@ -47,7 +47,7 @@
%% -----------------------------------------------------------------------
%%
\RequirePackage{l3bootstrap}
-\GetIdInfo$Id: l3candidates.dtx 4298 2012-11-09 13:34:43Z joseph $
+\GetIdInfo$Id: l3candidates.dtx 4383 2012-12-20 15:10:48Z bruno $
{L3 Experimental additions to l3kernel}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
@@ -502,20 +502,20 @@
{ 2 } { \exp_after:wN \__clist_use:wwn #1 , {#2} }
}
{
- \exp_after:wN \__clist_use_ii:nwwwwnwn
+ \exp_after:wN \__clist_use:nwwwwnwn
\exp_after:wN { \exp_after:wN } #1 ,
- \q_mark , { \__clist_use_ii:nwwwwnwn {#3} }
- \q_mark , { \__clist_use_iii:nwwn {#4} }
+ \q_mark , { \__clist_use:nwwwwnwn {#3} }
+ \q_mark , { \__clist_use:nwwn {#4} }
\q_stop { }
}
}
{ \__msg_kernel_expandable_error:nnn { kernel } { bad-variable } {#1} }
}
\cs_new:Npn \__clist_use:wwn #1 , #2 , #3 { \exp_not:n { #1 #3 #2 } }
-\cs_new:Npn \__clist_use_ii:nwwwwnwn
+\cs_new:Npn \__clist_use:nwwwwnwn
#1#2 , #3 , #4 , #5 \q_mark , #6#7 \q_stop #8
{ #6 {#3} , {#4} , #5 \q_mark , {#6} #7 \q_stop { #8 #1 #2 } }
-\cs_new:Npn \__clist_use_iii:nwwn #1#2 , #3 \q_stop #4
+\cs_new:Npn \__clist_use:nwwn #1#2 , #3 \q_stop #4
{ \exp_not:n { #4 #1 #2 } }
\fp_new:N \l__coffin_sin_fp
\fp_new:N \l__coffin_cos_fp
@@ -935,10 +935,10 @@
{ 2 } { \exp_after:wN \__seq_use:NnNnn #1 {#2} }
}
{
- \exp_after:wN \__seq_use_ii:nwwwwnwn
+ \exp_after:wN \__seq_use:nwwwwnwn
\exp_after:wN { \exp_after:wN } #1 \__seq_item:n
- \q_mark { \__seq_use_ii:nwwwwnwn {#3} }
- \q_mark { \__seq_use_iii:nwwn {#4} }
+ \q_mark { \__seq_use:nwwwwnwn {#3} }
+ \q_mark { \__seq_use:nwwn {#4} }
\q_stop { }
}
}
@@ -946,14 +946,14 @@
}
\cs_new:Npn \__seq_use:NnNnn \__seq_item:n #1 \__seq_item:n #2#3
{ \exp_not:n { #1 #3 #2 } }
-\cs_new:Npn \__seq_use_ii:nwwwwnwn
+\cs_new:Npn \__seq_use:nwwwwnwn
#1 \__seq_item:n #2 \__seq_item:n #3 \__seq_item:n #4#5
\q_mark #6#7 \q_stop #8
{
#6 \__seq_item:n {#3} \__seq_item:n {#4} #5
\q_mark {#6} #7 \q_stop { #8 #1 #2 }
}
-\cs_new:Npn \__seq_use_iii:nwwn #1 \__seq_item:n #2 #3 \q_stop #4
+\cs_new:Npn \__seq_use:nwwn #1 \__seq_item:n #2 #3 \q_stop #4
{ \exp_not:n { #4 #1 #2 } }
\cs_new:Npn \skip_split_finite_else_action:nnNN #1#2#3#4
{
@@ -1104,16 +1104,41 @@
\char_tmp:NN \char_set_active_eq:NN \cs_set_eq:NN
\char_tmp:NN \char_gset_active_eq:NN \cs_gset_eq:NN
\group_end:
-\cs_new_protected_nopar:Npn \__peek_execute_branches_N_type:
+\group_begin:
+ \char_set_catcode_other:N \O
+ \char_set_catcode_other:N \U
+ \char_set_catcode_other:N \T
+ \char_set_catcode_other:N \E
+ \char_set_catcode_other:N \R
+ \tl_to_lowercase:n
+ {
+ \cs_new_protected_nopar:Npn \__peek_execute_branches_N_type:
+ {
+ \if_int_odd:w
+ \if_catcode:w \exp_not:N \l_peek_token { \c_two \fi:
+ \if_catcode:w \exp_not:N \l_peek_token } \c_two \fi:
+ \if_meaning:w \l_peek_token \c_space_token \c_two \fi:
+ \c_one
+ \exp_after:wN \__peek_N_type:w
+ \token_to_meaning:N \l_peek_token
+ \q_mark \__peek_N_type_aux:nnw
+ OUTER \q_mark \use_none_delimit_by_q_stop:w
+ \q_stop
+ \exp_after:wN \__peek_true:w
+ \else:
+ \exp_after:wN \__peek_false:w
+ \fi:
+ }
+ \cs_new_protected_nopar:Npn \__peek_N_type:w #1 OUTER #2 \q_mark #3
+ { #3 {#1} {#2} }
+ }
+\group_end:
+\cs_new_protected_nopar:Npn \__peek_N_type_aux:nnw #1 #2 #3 \fi:
{
- \bool_if:nTF
- {
- \token_if_eq_catcode_p:NN \l_peek_token \c_group_begin_token ||
- \token_if_eq_catcode_p:NN \l_peek_token \c_group_end_token ||
- \token_if_eq_meaning_p:NN \l_peek_token \c_space_token
- }
- { \__peek_false:w }
+ \fi:
+ \tl_if_in:noTF {#1} { \tl_to_str:n {ma} }
{ \__peek_true:w }
+ { \tl_if_empty:nTF {#2} { \__peek_true:w } { \__peek_false:w } }
}
\cs_new_protected_nopar:Npn \peek_N_type:TF
{ \__peek_token_generic:NNTF \__peek_execute_branches_N_type: \scan_stop: }
diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3clist.sty b/Master/texmf-dist/tex/latex/l3kernel/l3clist.sty
index 284830694db..6edd2295361 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/l3clist.sty
+++ b/Master/texmf-dist/tex/latex/l3kernel/l3clist.sty
@@ -48,7 +48,7 @@
%%
%% -----------------------------------------------------------------------
\RequirePackage{l3bootstrap}
-\GetIdInfo$Id: l3clist.dtx 4212 2012-09-09 12:24:04Z bruno $
+\GetIdInfo$Id: l3clist.dtx 4339 2012-11-24 19:16:43Z joseph $
{L3 Comma separated lists}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
@@ -106,22 +106,22 @@
\cs_new:Npn \__clist_trim_spaces:n #1
{
\__clist_trim_spaces_generic:nw
- { \__clist_trim_spaces_ii:nn { } }
+ { \__clist_trim_spaces:nn { } }
\q_mark #1 ,
\q_recursion_tail, \q_recursion_stop
}
-\cs_new:Npn \__clist_trim_spaces_ii:nn #1 #2
+\cs_new:Npn \__clist_trim_spaces:nn #1 #2
{
\quark_if_recursion_tail_stop:n {#2}
\tl_if_empty:nTF {#2}
{
\__clist_trim_spaces_generic:nw
- { \__clist_trim_spaces_ii:nn {#1} } \q_mark
+ { \__clist_trim_spaces:nn {#1} } \q_mark
}
{
#1 \exp_not:n {#2}
\__clist_trim_spaces_generic:nw
- { \__clist_trim_spaces_ii:nn { , } } \q_mark
+ { \__clist_trim_spaces:nn { , } } \q_mark
}
}
\cs_new_protected:Npn \clist_set:Nn #1#2
diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3file.sty b/Master/texmf-dist/tex/latex/l3kernel/l3file.sty
index b3c04f68873..b1a119b7fd3 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/l3file.sty
+++ b/Master/texmf-dist/tex/latex/l3kernel/l3file.sty
@@ -46,7 +46,7 @@
%%
%% -----------------------------------------------------------------------
\RequirePackage{l3bootstrap}
-\GetIdInfo$Id: l3file.dtx 4212 2012-09-09 12:24:04Z bruno $
+\GetIdInfo$Id: l3file.dtx 4377 2012-12-20 11:13:29Z bruno $
{L3 File and I/O operations}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
@@ -131,12 +131,11 @@
}
\cs_new_protected:Npn \__file_input:n #1
{
- \quark_if_nil:oTF { \__file_input_aux:w #1 . \q_nil . \q_stop }
- { \__file_input_aux:o { \tl_to_str:n { #1 .tex } } }
+ \tl_if_in:nnTF {#1} { . }
{ \__file_input_aux:n {#1} }
+ { \__file_input_aux:o { \tl_to_str:n { #1 . tex } } }
}
\cs_generate_variant:Nn \__file_input:n { V }
-\cs_new:Npn \__file_input_aux:w #1 . #2 . #3 \q_stop { #2 }
\cs_new_protected:Npn \__file_input_aux:n #1
{
\clist_if_exist:NTF \@filelist
diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3fp.sty b/Master/texmf-dist/tex/latex/l3kernel/l3fp.sty
index 4754b592c0c..ec67d73f5d5 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/l3fp.sty
+++ b/Master/texmf-dist/tex/latex/l3kernel/l3fp.sty
@@ -286,8 +286,8 @@
\__fp_tmp:w {xv} {\use_none:n #2#3+#4#5} { 000{0000}0000{0000}#2 #3 #4 #5 }
\__fp_tmp:w {xvi} { #2#3+#4#5} {{0000}0000{0000}0000 #2 #3 #4 #5 }
\cs_new:Npn \__fp_decimate_pack:nnnnnnnnnnw #1#2#3#4#5
- { \__fp_decimate_pack_ii:nnnnnnw { #1#2#3#4#5 } }
-\cs_new:Npn \__fp_decimate_pack_ii:nnnnnnw #1 #2#3#4#5#6
+ { \__fp_decimate_pack:nnnnnnw { #1#2#3#4#5 } }
+\cs_new:Npn \__fp_decimate_pack:nnnnnnw #1 #2#3#4#5#6
{ {#1} {#2#3#4#5#6} }
\cs_new:Npn \__fp_case_use:nw #1#2 \fi: #3 \s__fp { \fi: #1 \s__fp }
\cs_new:Npn \__fp_case_return:nw #1#2 \fi: #3 ; { \fi: #1 }
@@ -715,11 +715,11 @@
\cs_new:Npn \__fp_round_normal:NwNNnw #1#2 \s__fp \__fp_chk:w 1#3#4#5;
{
\__fp_decimate:nNnnnn { \c_sixteen - #4 - #2 }
- \__fp_round_normal_ii:NnnwNNnn #5 #1 #3 {#4} {#2}
+ \__fp_round_normal:NnnwNNnn #5 #1 #3 {#4} {#2}
}
-\cs_new:Npn \__fp_round_normal_ii:NnnwNNnn #1#2#3#4; #5#6
+\cs_new:Npn \__fp_round_normal:NnnwNNnn #1#2#3#4; #5#6
{
- \exp_after:wN \__fp_round_normal_iii:NNwNnn
+ \exp_after:wN \__fp_round_normal:NNwNnn
\int_use:N \__int_eval:w
\if_int_compare:w #2 > \c_zero
1 \__int_value:w #2
@@ -739,7 +739,7 @@
}
\cs_new:Npn \__fp_round_pack:Nw #1
{ \if_meaning:w 2 #1 + \c_one \fi: \__int_eval_end: }
-\cs_new:Npn \__fp_round_normal_iii:NNwNnn #1 #2
+\cs_new:Npn \__fp_round_normal:NNwNnn #1 #2
{
\if_meaning:w 0 #2
\exp_after:wN \__fp_round_special:NwwNnn
@@ -1174,14 +1174,14 @@
\cs_new:Npn \__fp_parse_exponent:N #1
{
\if:w e #1
- \exp_after:wN \__fp_parse_exponent_ii:N
+ \exp_after:wN \__fp_parse_exponent_aux:N
\tex_romannumeral:D
\else:
0 \__fp_parse_return_semicolon:w #1
\fi:
\__fp_parse_expand:w
}
-\cs_new:Npn \__fp_parse_exponent_ii:N #1
+\cs_new:Npn \__fp_parse_exponent_aux:N #1
{
\if_int_compare:w \if_catcode:w \tex_relax:D #1
\c_zero \else: `#1 \fi: > `9 \exp_stop_f:
@@ -1321,7 +1321,7 @@
\cs_new:Npn \__fp_parse_large_round_after:wNN #1 ; #2 #3
{
\if:w . #3
- \exp_after:wN \__fp_parse_large_round_after_ii:wN
+ \exp_after:wN \__fp_parse_large_round_after_aux:wN
\int_use:N \__int_eval:w #1 +
\c_zero * \__int_eval:w \c_zero
\exp_after:wN \__fp_cfs_round_loop:N
@@ -1334,7 +1334,7 @@
\exp_after:wN #3
\fi:
}
-\cs_new:Npn \__fp_parse_large_round_after_ii:wN #1 ; #2
+\cs_new:Npn \__fp_parse_large_round_after_aux:wN #1 ; #2
{
+ #2
\exp_after:wN ;
@@ -1809,7 +1809,7 @@
\__msg_kernel_expandable_error:nnnn
{ kernel } { fp-missing } { ? } { ~for~?: }
\exp_after:wN @
- \exp_after:wN \__fp_ternary_ii:NwwN
+ \exp_after:wN \__fp_ternary_auxii:NwwN
\tex_romannumeral:D
\__fp_parse_until:Nw \c_two
\exp_after:wN \__fp_parse_expand:w
@@ -2079,9 +2079,9 @@
{
\if_meaning:w 3 #4
\if_meaning:w 3 #2
- \__fp_minmax_i:ww
+ \__fp_minmax_auxi:ww
\else:
- \__fp_minmax_ii:ww
+ \__fp_minmax_auxii:ww
\fi:
\else:
\if_int_compare:w
@@ -2089,18 +2089,18 @@
\s__fp \__fp_chk:w #4#5;
\s__fp \__fp_chk:w #2#3;
= #1
- \__fp_minmax_ii:ww
+ \__fp_minmax_auxii:ww
\else:
- \__fp_minmax_i:ww
+ \__fp_minmax_auxi:ww
\fi:
\fi:
\__fp_minmax_loop:Nww #1
\s__fp \__fp_chk:w #2#3;
\s__fp \__fp_chk:w #4#5;
}
-\cs_new:Npn \__fp_minmax_i:ww #1 \fi: \fi: #2 \s__fp #3 ; \s__fp #4;
+\cs_new:Npn \__fp_minmax_auxi:ww #1 \fi: \fi: #2 \s__fp #3 ; \s__fp #4;
{ \fi: \fi: #2 \s__fp #3 ; }
-\cs_new:Npn \__fp_minmax_ii:ww #1 \fi: \fi: #2 \s__fp #3 ;
+\cs_new:Npn \__fp_minmax_auxii:ww #1 \fi: \fi: #2 \s__fp #3 ;
{ \fi: \fi: #2 }
\cs_new:Npn \__fp_minmax_break_o:w #1 \fi: \fi: #2 \s__fp #3; #4;
{ \fi: \__fp_exp_after_o:w \s__fp #3; }
@@ -2131,7 +2131,7 @@
\__fp_ternary_loop:Nw
#2
\s__fp \__fp_chk:w { \__fp_ternary_loop_break:w } ;
- \__fp_ternary_break_point:n { \exp_after:wN \__fp_ternary_i:NwwN }
+ \__fp_ternary_break_point:n { \exp_after:wN \__fp_ternary_auxi:NwwN }
\exp_after:wN #1
\tex_romannumeral:D -`0
\__fp_exp_after_array_f:w #3 \s__fp_stop
@@ -2153,7 +2153,7 @@
\cs_new:Npn \__fp_ternary_loop_break:w #1 \fi: #2 \__fp_ternary_break_point:n #3
{
\c_zero = \c_zero \fi:
- \exp_after:wN \__fp_ternary_ii:NwwN
+ \exp_after:wN \__fp_ternary_auxii:NwwN
}
\cs_new:Npn \__fp_ternary_loop:Nw \s__fp \__fp_chk:w #1#2;
{
@@ -2163,7 +2163,7 @@
\__fp_ternary_loop:Nw
}
\cs_new:Npn \__fp_ternary_map_break: #1 \__fp_ternary_break_point:n #2 {#2}
-\cs_new:Npn \__fp_ternary_i:NwwN #1#2@#3@#4
+\cs_new:Npn \__fp_ternary_auxi:NwwN #1#2@#3@#4
{
\exp_after:wN \__fp_parse_until_test:NwN
\exp_after:wN #1
@@ -2171,7 +2171,7 @@
\__fp_exp_after_array_f:w #2 \s__fp_stop
#4 #1
}
-\cs_new:Npn \__fp_ternary_ii:NwwN #1#2@#3@#4
+\cs_new:Npn \__fp_ternary_auxii:NwwN #1#2@#3@#4
{
\exp_after:wN \__fp_parse_until_test:NwN
\exp_after:wN #1
@@ -2850,43 +2850,43 @@
\exp_after:wN \__fp_fixed_div_int_after:Nw
\exp_after:wN #8
\int_use:N \__int_eval:w \c_minus_one
- \__fp_fixed_div_int_i:wnN
- #1; {#7} \__fp_fixed_div_int_ii:wnn
- #2; {#7} \__fp_fixed_div_int_ii:wnn
- #3; {#7} \__fp_fixed_div_int_ii:wnn
- #4; {#7} \__fp_fixed_div_int_ii:wnn
- #5; {#7} \__fp_fixed_div_int_ii:wnn
- #6; {#7} \__fp_fixed_div_int_iii:wnn ;
+ \__fp_fixed_div_int:wnN
+ #1; {#7} \__fp_fixed_div_int_auxi:wnn
+ #2; {#7} \__fp_fixed_div_int_auxi:wnn
+ #3; {#7} \__fp_fixed_div_int_auxi:wnn
+ #4; {#7} \__fp_fixed_div_int_auxi:wnn
+ #5; {#7} \__fp_fixed_div_int_auxi:wnn
+ #6; {#7} \__fp_fixed_div_int_auxii:wnn ;
}
-\cs_new:Npn \__fp_fixed_div_int_i:wnN #1; #2 #3
+\cs_new:Npn \__fp_fixed_div_int:wnN #1; #2 #3
{
\exp_after:wN #3
\int_use:N \__int_eval:w #1 / #2 - \c_one ;
{#2}
{#1}
}
-\cs_new:Npn \__fp_fixed_div_int_ii:wnn #1; #2 #3
+\cs_new:Npn \__fp_fixed_div_int_auxi:wnn #1; #2 #3
{
+ #1
\exp_after:wN \__fp_fixed_div_int_pack:Nw
\int_use:N \__int_eval:w 9999
- \exp_after:wN \__fp_fixed_div_int_i:wnN
+ \exp_after:wN \__fp_fixed_div_int:wnN
\int_use:N \__int_eval:w #3 - #1*#2 \__int_eval_end:
}
-\cs_new:Npn \__fp_fixed_div_int_iii:wnn #1; #2 #3 { + #1 + \c_two ; }
+\cs_new:Npn \__fp_fixed_div_int_auxii:wnn #1; #2 #3 { + #1 + \c_two ; }
\cs_new:Npn \__fp_fixed_div_int_pack:Nw #1 #2; { + #1; {#2} }
\cs_new:Npn \__fp_fixed_div_int_after:Nw #1 #2; { #1 {#2} }
-\cs_new_nopar:Npn \__fp_fixed_add:wwn { \__fp_fixed_add_i:Nnnnnwnn + }
-\cs_new_nopar:Npn \__fp_fixed_sub:wwn { \__fp_fixed_add_i:Nnnnnwnn - }
-\cs_new:Npn \__fp_fixed_add_i:Nnnnnwnn #1 #2#3#4#5 #6; #7#8
+\cs_new_nopar:Npn \__fp_fixed_add:wwn { \__fp_fixed_add:Nnnnnwnn + }
+\cs_new_nopar:Npn \__fp_fixed_sub:wwn { \__fp_fixed_add:Nnnnnwnn - }
+\cs_new:Npn \__fp_fixed_add:Nnnnnwnn #1 #2#3#4#5 #6; #7#8
{
\exp_after:wN \__fp_fixed_add_after:NNNNNwn
\int_use:N \__int_eval:w 9 9999 9998 + #2#3 #1 #7#8
\exp_after:wN \__fp_fixed_add_pack:NNNNNwn
\int_use:N \__int_eval:w 1 9999 9998 + #4#5
- \__fp_fixed_add_ii:nnNnnnwn #6 #1
+ \__fp_fixed_add:nnNnnnwn #6 #1
}
-\cs_new:Npn \__fp_fixed_add_ii:nnNnnnwn #1#2 #3 #4#5 #6#7 ; #8
+\cs_new:Npn \__fp_fixed_add:nnNnnnwn #1#2 #3 #4#5 #6#7 ; #8
{
#3 #4#5
\exp_after:wN \__fp_fixed_add_pack:NNNNNwn
@@ -2916,9 +2916,9 @@
\int_use:N \__int_eval:w \c__fp_trailing_shift_int
+ #2*#9 + #3*#8 + #4*#7
+ ( #3*#9 + #4*#8
- + \__fp_fixed_mul_i:nnnnnnnwn #5 {#6}{#7} {#1}{#2}
+ + \__fp_fixed_mul:nnnnnnnwn #5 {#6}{#7} {#1}{#2}
}
-\cs_new:Npn \__fp_fixed_mul_i:nnnnnnnwn #1#2 #3#4 #5#6 #7#8 ; #9
+\cs_new:Npn \__fp_fixed_mul:nnnnnnnwn #1#2 #3#4 #5#6 #7#8 ; #9
{
#1*#4 + #2*#3 + #5*#8 + #6*#7 ) / \c_ten_thousand
+ #1*#3 + #5*#7 ;
@@ -2930,7 +2930,7 @@
\int_use:N \__int_eval:w \c__fp_big_leading_shift_int
\exp_after:wN \__fp_pack_big:NNNNNNwn
\int_use:N \__int_eval:w \c__fp_big_middle_shift_int + #3 #4
- \__fp_fixed_mul_add_i:Nwnnnwnnn +
+ \__fp_fixed_mul_add:Nwnnnwnnn +
+ #5 #6 ; #2 ; #1 ; #2 ; +
+ #7 #8 ; {#9} ;
}
@@ -2940,7 +2940,7 @@
\int_use:N \__int_eval:w \c__fp_big_leading_shift_int
\exp_after:wN \__fp_pack_big:NNNNNNwn
\int_use:N \__int_eval:w \c__fp_big_middle_shift_int + #3 #4
- \__fp_fixed_mul_add_i:Nwnnnwnnn -
+ \__fp_fixed_mul_add:Nwnnnwnnn -
+ #5 #6 ; #2 ; #1 ; #2 ; -
+ #7 #8 ; {#9} ;
}
@@ -2950,11 +2950,11 @@
\int_use:N \__int_eval:w \c__fp_big_leading_shift_int
\exp_after:wN \__fp_pack_big:NNNNNNwn
\int_use:N \__int_eval:w \c__fp_big_middle_shift_int + 1 0000 0000
- \__fp_fixed_mul_add_i:Nwnnnwnnn -
+ \__fp_fixed_mul_add:Nwnnnwnnn -
; #2 ; #1 ; #2 ; -
; {#3} ;
}
-\cs_new:Npn \__fp_fixed_mul_add_i:Nwnnnwnnn #1 #2; #3#4#5#6; #7#8#9
+\cs_new:Npn \__fp_fixed_mul_add:Nwnnnwnnn #1 #2; #3#4#5#6; #7#8#9
{
#1 #7*#3
\exp_after:wN \__fp_pack_big:NNNNNNwn
@@ -2965,20 +2965,20 @@
#1 #7*#5 #1 #8*#4 #1 #9*#3 #2
\exp_after:wN \__fp_pack_big:NNNNNNwn
\int_use:N \__int_eval:w \c__fp_big_middle_shift_int
- #1 \__fp_fixed_mul_add_ii:nnnnwnnnn {#7}{#8}{#9}
+ #1 \__fp_fixed_mul_add:nnnnwnnnn {#7}{#8}{#9}
}
-\cs_new:Npn \__fp_fixed_mul_add_ii:nnnnwnnnn #1#2#3#4#5; #6#7#8#9
+\cs_new:Npn \__fp_fixed_mul_add:nnnnwnnnn #1#2#3#4#5; #6#7#8#9
{
( #1*#9 + #2*#8 + #3*#7 + #4*#6 )
\exp_after:wN \__fp_pack_big:NNNNNNwn
\int_use:N \__int_eval:w \c__fp_big_trailing_shift_int
- \__fp_fixed_mul_add_iii:nnnnwnnwN
+ \__fp_fixed_mul_add:nnnnwnnwN
{ #6 + #4*#7 + #3*#8 + #2*#9 + #1 }
{ #7 + #4*#8 + #3*#9 + #2 }
{#1} #5;
{#6}
}
-\cs_new:Npn \__fp_fixed_mul_add_iii:nnnnwnnwN #1#2 #3#4#5; #6#7#8; #9
+\cs_new:Npn \__fp_fixed_mul_add:nnnnwnnwN #1#2 #3#4#5; #6#7#8; #9
{
#9 (#4* #1 *#7)
#9 (#5*#6+#4* #2 *#7+#3*#8) / \c_ten_thousand
@@ -3092,32 +3092,32 @@
#2 \c_two * \c__fp_max_exponent_int
\use_i_ii:nnn
\fi:
- \__fp_fixed_dtf_zeros_ii:ww
+ \__fp_fixed_dtf_zeros_auxi:ww
#1#3 0000 0000 0000 0000 0000 0000 ;
}
-\cs_new:Npn \__fp_fixed_dtf_zeros_ii:ww
+\cs_new:Npn \__fp_fixed_dtf_zeros_auxi:ww
{
\__fp_pack_twice_four:wNNNNNNNN
\__fp_pack_twice_four:wNNNNNNNN
\__fp_pack_twice_four:wNNNNNNNN
- \__fp_fixed_dtf_zeros_iii:ww
+ \__fp_fixed_dtf_zeros_auxii:ww
;
}
-\cs_new:Npn \__fp_fixed_dtf_zeros_iii:ww #1; #2; #3 { #3 #1; }
+\cs_new:Npn \__fp_fixed_dtf_zeros_auxii:ww #1; #2; #3 { #3 #1; }
\cs_new:Npn \__fp_fixed_dtf_approx:n #1
{
- \exp_after:wN \__fp_fixed_dtf_approx_ii:wnn
+ \exp_after:wN \__fp_fixed_dtf_approx:wnn
\int_use:N \__int_eval:w 10 0000 0000 / ( #1 + \c_one ) ;
{#1}
}
-\cs_new:Npn \__fp_fixed_dtf_approx_ii:wnn #1; #2#3
+\cs_new:Npn \__fp_fixed_dtf_approx:wnn #1; #2#3
{
- \exp_after:wN \__fp_fixed_dtf_approx_iii:NNNNNw
+ \exp_after:wN \__fp_fixed_dtf_approx:NNNNNw
\int_use:N \__int_eval:w 10 0000 0000 - 1750
+ #1000 + (10 0000 0000/#2-#1) * (1000-#3/10) ;
{#2}{#3}
}
-\cs_new:Npn \__fp_fixed_dtf_approx_iii:NNNNNw 1#1#2#3#4#5#6; #7; #8;
+\cs_new:Npn \__fp_fixed_dtf_approx:NNNNNw 1#1#2#3#4#5#6; #7; #8;
{
+ \c_four % because of the line below "dtf_epsilon" here.
\__fp_fixed_mul:wwn {000#1}{#2#3#4#5}{#6}{0000}{0000}{0000} ; #7;
@@ -3128,14 +3128,14 @@
}
\cs_new:Npn \__fp_fixed_dtf_epsilon:wN #1#2#3#4#5#6;
{
- \exp_after:wN \__fp_fixed_dtf_epsilon_ii:NNNNNww
+ \exp_after:wN \__fp_fixed_dtf_epsilon:NNNNNww
\int_use:N \__int_eval:w 1 9999 9998 - #3#4 +
\exp_after:wN \__fp_fixed_dtf_epsilon_pack:NNNNNw
\int_use:N \__int_eval:w 2 0000 0000 - #5#6 ; {0000} ;
}
\cs_new:Npn \__fp_fixed_dtf_epsilon_pack:NNNNNw #1#2#3#4#5#6;
{ #1 ; {#2#3#4#5} {#6} }
-\cs_new:Npn \__fp_fixed_dtf_epsilon_ii:NNNNNww #1#2#3#4#5#6; #7;
+\cs_new:Npn \__fp_fixed_dtf_epsilon:NNNNNww #1#2#3#4#5#6; #7;
{
\__fp_fixed_mul:wwn %^^A todo: optimize to use \__fp_mul_significand.
{0000} {#2#3#4#5} {#6} #7 ;
@@ -4020,19 +4020,19 @@
\prg_replicate:nn { - #1 } { 0 } #2#3#4#5 0000 0000 ;
}
\cs_new:Npn \__fp_trig_large:ww #1; #2#3;
- { \__fp_trig_large_i:www #2; #3 ; #1; }
-\cs_new:Npn \__fp_trig_large_i:www #1; #2; #3;
+ { \__fp_trig_large:www #2; #3 ; #1; }
+\cs_new:Npn \__fp_trig_large:www #1; #2; #3;
{
\if_meaning:w 0 #3 \__fp_trig_large_break:w \fi:
- \exp_after:wN \__fp_trig_large_ii_o:wnnnn
+ \exp_after:wN \__fp_trig_large_o:wnnnn
\int_use:N \__int_eval:w ( #1 - 3141 ) / 6283 ;
{#1} #2
\exp_after:wN ;
\int_use:N \__int_eval:w \c_minus_one + #3;
}
-\cs_new:Npn \__fp_trig_large_ii_o:wnnnn #1; #2#3#4#5
+\cs_new:Npn \__fp_trig_large_o:wnnnn #1; #2#3#4#5
{
- \exp_after:wN \__fp_trig_large_i:www
+ \exp_after:wN \__fp_trig_large:www
\int_use:N \__int_eval:w \c__fp_leading_shift_int + #20 - #1*62831
\exp_after:wN \__fp_pack:NNNNNw
\int_use:N \__int_eval:w \c__fp_middle_shift_int + #30 - #1*8530
@@ -4403,12 +4403,12 @@
}
\cs_new:Npn \__fp_from_dim:Nw #1 #2;
{
- \__fp_pack_twice_four:wNNNNNNNN \__fp_from_dim_ii:wNNnnnnnn ;
+ \__fp_pack_twice_four:wNNNNNNNN \__fp_from_dim:wNNnnnnnn ;
#2 000 0000 00 {10}987654321; #1
}
-\cs_new:Npn \__fp_from_dim_ii:wNNnnnnnn #1; #2#3#4#5#6#7#8#9
- { \__fp_from_dim_iii:wnnnnwN #1 {#2#300} {0000} ; }
-\cs_new:Npn \__fp_from_dim_iii:wnnnnwN #1; #2#3#4#5#6; #7
+\cs_new:Npn \__fp_from_dim:wNNnnnnnn #1; #2#3#4#5#6#7#8#9
+ { \__fp_from_dim:wnnnnwN #1 {#2#300} {0000} ; }
+\cs_new:Npn \__fp_from_dim:wnnnnwN #1; #2#3#4#5#6; #7
{
\__fp_mul_npos_o:Nww #7
\s__fp \__fp_chk:w 1 #7 {#5} #1 ;
diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3names.sty b/Master/texmf-dist/tex/latex/l3kernel/l3names.sty
index 7c12c601af2..a1cc3246ef6 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/l3names.sty
+++ b/Master/texmf-dist/tex/latex/l3kernel/l3names.sty
@@ -46,7 +46,7 @@
%%
%% -----------------------------------------------------------------------
\RequirePackage{l3bootstrap}[2012/07/15]
-\GetIdInfo$Id: l3names.dtx 4230 2012-09-24 21:44:28Z joseph $
+\GetIdInfo$Id: l3names.dtx 4346 2012-12-07 13:46:13Z joseph $
{L3 Namespace for primitives}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
@@ -475,6 +475,11 @@
\__expl_primitive:NN \latelua \luatex_latelua:D
\__expl_primitive:NN \luatexversion \luatex_luatexversion:D
\__expl_primitive:NN \savecatcodetable \luatex_savecatcodetable:D
+ \__expl_primitive:NN \bodydir \luatex_bodydir:D
+ \__expl_primitive:NN \mathdir \luatex_mathdir:D
+ \__expl_primitive:NN \pagedir \luatex_pagedir:D
+ \__expl_primitive:NN \pardir \luatex_pardir:D
+ \__expl_primitive:NN \textdir \luatex_textdir:D
\tex_endgroup:D
\tex_let:D \tex_end:D \@@end
\tex_let:D \tex_everydisplay:D \frozen@everydisplay
@@ -487,6 +492,11 @@
\tex_let:D \luatex_initcatcodetable:D \luatexinitcatcodetable
\tex_let:D \luatex_latelua:D \luatexlatelua
\tex_let:D \luatex_savecatcodetable:D \luatexsavecatcodetable
+\tex_let:D \luatex_bodydir:D \luatexbodydir
+\tex_let:D \luatex_mathdir:D \luatexmathdir
+\tex_let:D \luatex_pagedir:D \luatexpagedir
+\tex_let:D \luatex_pardir:D \luatexpardir
+\tex_let:D \luatex_textdir:D \luatextextdir
%%
%%
%% End of file `l3names.sty'.
diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3prg.sty b/Master/texmf-dist/tex/latex/l3kernel/l3prg.sty
index 0b719688663..4a544ab6720 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/l3prg.sty
+++ b/Master/texmf-dist/tex/latex/l3kernel/l3prg.sty
@@ -46,7 +46,7 @@
%%
%% -----------------------------------------------------------------------
\RequirePackage{l3bootstrap}
-\GetIdInfo$Id: l3prg.dtx 4212 2012-09-09 12:24:04Z bruno $
+\GetIdInfo$Id: l3prg.dtx 4339 2012-11-24 19:16:43Z joseph $
{L3 Control structures}
%%
\ProvidesExplPackage
@@ -184,24 +184,24 @@
\cs_new_nopar:cpn { __bool_S_1:w } { \group_align_safe_end: \c_true_bool }
\cs_new_nopar:cpn { __bool_&_1:w } & { \__bool_get_next:NN \use_i:nn }
\cs_new_nopar:cpn { __bool_|_0:w } | { \__bool_get_next:NN \use_i:nn }
-\cs_new_nopar:cpn { __bool_&_0:w } & { \__bool_eval_skip_to_end:Nw \c_false_bool }
-\cs_new_nopar:cpn { __bool_|_1:w } | { \__bool_eval_skip_to_end:Nw \c_true_bool }
+\cs_new_nopar:cpn { __bool_&_0:w } & { \__bool_eval_skip_to_end_auxi:Nw \c_false_bool }
+\cs_new_nopar:cpn { __bool_|_1:w } | { \__bool_eval_skip_to_end_auxi:Nw \c_true_bool }
%% (
-\cs_new:Npn \__bool_eval_skip_to_end:Nw #1#2 )
+\cs_new:Npn \__bool_eval_skip_to_end_auxi:Nw #1#2 )
{
- \__bool_eval_skip_to_end_ii:Nw #1#2 ( % )
+ \__bool_eval_skip_to_end_auxii:Nw #1#2 ( % )
\q_no_value \q_stop
{#2}
}
-\cs_new:Npn \__bool_eval_skip_to_end_ii:Nw #1#2 ( #3#4 \q_stop #5 % )
+\cs_new:Npn \__bool_eval_skip_to_end_auxii:Nw #1#2 ( #3#4 \q_stop #5 % )
{
\quark_if_no_value:NTF #3
{#1}
- { \__bool_eval_skip_to_end_iii:Nw #1 #5 }
+ { \__bool_eval_skip_to_end_auxiii:Nw #1 #5 }
}
-\cs_new:Npn \__bool_eval_skip_to_end_iii:Nw #1#2 ( #3 )
+\cs_new:Npn \__bool_eval_skip_to_end_auxiii:Nw #1#2 ( #3 )
{ % (
- \__bool_eval_skip_to_end:Nw #1#3 )
+ \__bool_eval_skip_to_end_auxi:Nw #1#3 )
}
\cs_new:Npn \bool_not_p:n #1 { \bool_if_p:n { ! ( #1 ) } }
\cs_new:Npn \bool_xor_p:nn #1#2
diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3seq.sty b/Master/texmf-dist/tex/latex/l3kernel/l3seq.sty
index 1a59d7c4911..55cb5f18fb0 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/l3seq.sty
+++ b/Master/texmf-dist/tex/latex/l3kernel/l3seq.sty
@@ -46,7 +46,7 @@
%%
%% -----------------------------------------------------------------------
\RequirePackage{l3bootstrap}
-\GetIdInfo$Id: l3seq.dtx 4212 2012-09-09 12:24:04Z bruno $
+\GetIdInfo$Id: l3seq.dtx 4339 2012-11-24 19:16:43Z joseph $
{L3 Sequences and stacks}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
@@ -88,26 +88,26 @@
{
\tl_set:Nn \l__seq_internal_a_tl
{
- \__seq_set_split_i:w \prg_do_nothing:
+ \__seq_set_split_auxi:w \prg_do_nothing:
#4
\__seq_set_split_end:
}
\tl_replace_all:Nnn \l__seq_internal_a_tl { #3 }
{
\__seq_set_split_end:
- \__seq_set_split_i:w \prg_do_nothing:
+ \__seq_set_split_auxi:w \prg_do_nothing:
}
\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_i:w #1 \__seq_set_split_end:
+\cs_new:Npn \__seq_set_split_auxi:w #1 \__seq_set_split_end:
{
- \exp_not:N \__seq_set_split_ii:w
+ \exp_not:N \__seq_set_split_auxii:w
\exp_args:No \tl_trim_spaces:n {#1}
\exp_not:N \__seq_set_split_end:
}
-\cs_new:Npn \__seq_set_split_ii:w #1 \__seq_set_split_end:
+\cs_new:Npn \__seq_set_split_auxii:w #1 \__seq_set_split_end:
{ \__seq_wrap_item:n {#1} }
\cs_generate_variant:Nn \seq_set_split:Nnn { NnV }
\cs_generate_variant:Nn \seq_gset_split:Nnn { NnV }
diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3tl.sty b/Master/texmf-dist/tex/latex/l3kernel/l3tl.sty
index ef644d3dfd6..6035dfe2f07 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/l3tl.sty
+++ b/Master/texmf-dist/tex/latex/l3kernel/l3tl.sty
@@ -46,7 +46,7 @@
%%
%% -----------------------------------------------------------------------
\RequirePackage{l3bootstrap}
-\GetIdInfo$Id: l3tl.dtx 4244 2012-09-28 22:46:36Z bruno $
+\GetIdInfo$Id: l3tl.dtx 4339 2012-11-24 19:16:43Z joseph $
{L3 Token lists}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
@@ -484,37 +484,37 @@
{
\cs_new:Npn \__tl_trim_spaces:nn ##1
{
- \__tl_trim_spaces_i:w
+ \__tl_trim_spaces_auxi:w
##1
\q_nil
\q_mark #1 { }
- \q_mark \__tl_trim_spaces_ii:w
- \__tl_trim_spaces_iii:w
+ \q_mark \__tl_trim_spaces_auxii:w
+ \__tl_trim_spaces_auxiii:w
#1 \q_nil
- \__tl_trim_spaces_iv:w
+ \__tl_trim_spaces_auxiv:w
\q_stop
}
- \cs_new:Npn \__tl_trim_spaces_i:w ##1 \q_mark #1 ##2 \q_mark ##3
+ \cs_new:Npn \__tl_trim_spaces_auxi:w ##1 \q_mark #1 ##2 \q_mark ##3
{
##3
- \__tl_trim_spaces_i:w
+ \__tl_trim_spaces_auxi:w
\q_mark
##2
\q_mark #1 {##1}
}
- \cs_new:Npn \__tl_trim_spaces_ii:w
- \__tl_trim_spaces_i:w \q_mark \q_mark ##1
+ \cs_new:Npn \__tl_trim_spaces_auxii:w
+ \__tl_trim_spaces_auxi:w \q_mark \q_mark ##1
{
- \__tl_trim_spaces_iii:w
+ \__tl_trim_spaces_auxiii:w
##1
}
- \cs_new:Npn \__tl_trim_spaces_iii:w ##1 #1 \q_nil ##2
+ \cs_new:Npn \__tl_trim_spaces_auxiii:w ##1 #1 \q_nil ##2
{
##2
##1 \q_nil
- \__tl_trim_spaces_iii:w
+ \__tl_trim_spaces_auxiii:w
}
- \cs_new:Npn \__tl_trim_spaces_iv:w ##1 \q_nil ##2 \q_stop ##3
+ \cs_new:Npn \__tl_trim_spaces_auxiv:w ##1 \q_nil ##2 \q_stop ##3
{ ##3 { \use_none:n ##1 } }
}
\__tl_tmp:w { ~ }
@@ -593,11 +593,11 @@
\cs_new:Npn \tl_head:n #1
{
\etex_unexpanded:D
- \if_false: { \fi: \__tl_head_i:nw #1 { } \q_stop }
+ \if_false: { \fi: \__tl_head_auxi:nw #1 { } \q_stop }
}
-\cs_new:Npn \__tl_head_i:nw #1#2 \q_stop
- { \exp_after:wN \__tl_head_ii:nw \exp_after:wN { \if_false: } \fi: {#1} }
-\cs_new:Npn \__tl_head_ii:nw #1
+\cs_new:Npn \__tl_head_auxi:nw #1#2 \q_stop
+ { \exp_after:wN \__tl_head_auxii:nw \exp_after:wN { \if_false: } \fi: {#1} }
+\cs_new:Npn \__tl_head_auxii:nw #1
{
\exp_after:wN \if_meaning:w \exp_after:wN \q_nil
\tl_to_str:n \exp_after:wN { \use_none:n #1 } \q_nil
@@ -606,7 +606,7 @@
\exp_after:wN \use_ii:nn
\fi:
{#1}
- { \if_false: { \fi: \__tl_head_i:nw #1 } }
+ { \if_false: { \fi: \__tl_head_auxi:nw #1 } }
}
\cs_generate_variant:Nn \tl_head:n { V , v , f }
\cs_new:Npn \tl_head:w #1#2 \q_stop {#1}
diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3token.sty b/Master/texmf-dist/tex/latex/l3kernel/l3token.sty
index a95678f3d6c..c4b3a28e6a5 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/l3token.sty
+++ b/Master/texmf-dist/tex/latex/l3kernel/l3token.sty
@@ -46,7 +46,7 @@
%%
%% -----------------------------------------------------------------------
\RequirePackage{l3bootstrap}
-\GetIdInfo$Id: l3token.dtx 4251 2012-11-01 16:30:06Z joseph $
+\GetIdInfo$Id: l3token.dtx 4384 2012-12-20 15:47:56Z bruno $
{L3 Experimental token manipulation}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
@@ -573,54 +573,56 @@
{ \__peek_token_remove_generic:NNTF #1 #2 {#3} { } }
\cs_new_protected:Npn \__peek_token_remove_generic:NNF #1#2#3
{ \__peek_token_remove_generic:NNTF #1 #2 { } {#3} }
-\cs_new_nopar:Npn \__peek_execute_branches_catcode:
+\cs_new_nopar:Npn \__peek_execute_branches_meaning:
{
- \if_catcode:w
- \exp_not:N \l_peek_token \exp_not:N \l__peek_search_token
+ \if_meaning:w \l_peek_token \l__peek_search_token
\exp_after:wN \__peek_true:w
\else:
\exp_after:wN \__peek_false:w
\fi:
}
-\cs_new_nopar:Npn \__peek_execute_branches_meaning:
+\cs_new_nopar:Npn \__peek_execute_branches_catcode:
+ { \if_catcode:w \__peek_execute_branches_catcode_aux: }
+\cs_new_nopar:Npn \__peek_execute_branches_charcode:
+ { \if_charcode:w \__peek_execute_branches_catcode_aux: }
+\cs_new_nopar:Npn \__peek_execute_branches_catcode_aux:
{
- \if_meaning:w \l_peek_token \l__peek_search_token
+ \if_catcode:w \exp_not:N \l_peek_token \scan_stop:
+ \exp_after:wN \exp_after:wN
+ \exp_after:wN \__peek_execute_branches_catcode_auxii:N
+ \exp_after:wN \exp_not:N
+ \else:
+ \exp_after:wN \__peek_execute_branches_catcode_auxiii:
+ \fi:
+ }
+\cs_new:Npn \__peek_execute_branches_catcode_auxii:N #1
+ {
+ \exp_not:N #1
+ \exp_after:wN \exp_not:N \l__peek_search_tl
\exp_after:wN \__peek_true:w
\else:
\exp_after:wN \__peek_false:w
\fi:
+ #1
}
-\cs_new_nopar:Npn \__peek_execute_branches_charcode:
+\cs_new_nopar:Npn \__peek_execute_branches_catcode_auxiii:
{
- \bool_if:nTF
- {
- \token_if_eq_catcode_p:NN \l_peek_token \c_group_begin_token
- || \token_if_eq_catcode_p:NN \l_peek_token \c_group_end_token
- || \token_if_eq_meaning_p:NN \l_peek_token \c_space_token
- }
- { \__peek_false:w }
- {
- \exp_after:wN \__peek_execute_branches_charcode_aux:NN
- \l__peek_search_tl
- }
- }
-\cs_new:Npn \__peek_execute_branches_charcode_aux:NN #1#2
- {
- \if:w \exp_not:N #1 \exp_not:N #2
+ \exp_not:N \l_peek_token
+ \exp_after:wN \exp_not:N \l__peek_search_tl
\exp_after:wN \__peek_true:w
\else:
\exp_after:wN \__peek_false:w
\fi:
- #2
}
\cs_new_protected_nopar:Npn \__peek_ignore_spaces_execute_branches:
{
- \token_if_eq_meaning:NNTF \l_peek_token \c_space_token
- {
- \tex_afterassignment:D \__peek_ignore_spaces_execute_branches_aux:
- \cs_set_eq:NN \__peek_tmp:w
- }
- { \__peek_execute_branches: }
+ \if_meaning:w \l_peek_token \c_space_token
+ \tex_afterassignment:D \__peek_ignore_spaces_execute_branches_aux:
+ \exp_after:wN \cs_set_eq:NN
+ \exp_after:wN \__peek_tmp:w
+ \else:
+ \exp_after:wN \__peek_execute_branches:
+ \fi:
}
\cs_new_protected_nopar:Npn \__peek_ignore_spaces_execute_branches_aux:
{ \peek_after:Nw \__peek_ignore_spaces_execute_branches: }
diff --git a/Master/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty b/Master/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty
index 365837076f4..7411941082b 100644
--- a/Master/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty
+++ b/Master/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty
@@ -46,19 +46,20 @@
%%
%% -----------------------------------------------------------------------
%%
-\RequirePackage{expl3}[2012/11/21]
-\@ifpackagelater{expl3}{2012/11/21}
+\RequirePackage{expl3}[2012/12/21]
+\@ifpackagelater{expl3}{2012/12/21}
{}
{%
- \PackageError{l3keys2e}{Support package l3kernel too old.}
+ \PackageError{l3keys2e}{Support package l3kernel too old}
{%
- Please install an up to date version of l3kernel
- using your TeX package manager or from CTAN.\\ \\
+ Please install an up to date version of l3kernel\MessageBreak
+ using your TeX package manager or from CTAN.\MessageBreak
+ \MessageBreak
Loading l3keys2e will abort!%
}%
\endinput
}
-\GetIdInfo$Id: l3keys2e.dtx 4332 2012-11-21 21:40:31Z joseph $
+\GetIdInfo$Id: l3keys2e.dtx 4390 2012-12-21 06:59:20Z joseph $
{LaTeX2e option processing using LaTeX3 keys}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
diff --git a/Master/texmf-dist/tex/latex/l3packages/xparse/xparse.sty b/Master/texmf-dist/tex/latex/l3packages/xparse/xparse.sty
index f1a144b2e16..16f16a26a13 100644
--- a/Master/texmf-dist/tex/latex/l3packages/xparse/xparse.sty
+++ b/Master/texmf-dist/tex/latex/l3packages/xparse/xparse.sty
@@ -50,19 +50,20 @@
%%
%% -----------------------------------------------------------------------
%%
-\RequirePackage{expl3}[2012/11/21]
-\@ifpackagelater{expl3}{2012/11/21}
+\RequirePackage{expl3}[2012/12/21]
+\@ifpackagelater{expl3}{2012/12/21}
{}
{%
- \PackageError{xparse}{Support package l3kernel too old.}
+ \PackageError{xparse}{Support package l3kernel too old}
{%
- Please install an up to date version of l3kernel
- using your TeX package manager or from CTAN.\\ \\
+ Please install an up to date version of l3kernel\MessageBreak
+ using your TeX package manager or from CTAN.\MessageBreak
+ \MessageBreak
Loading xparse will abort!%
}%
\endinput
}
-\GetIdInfo$Id: xparse.dtx 4332 2012-11-21 21:40:31Z joseph $
+\GetIdInfo$Id: xparse.dtx 4390 2012-12-21 06:59:20Z joseph $
{L3 Experimental document command parser}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
@@ -206,6 +207,7 @@
{#1} { \tl_to_str:n {#2} }
}
\prop_put:Nnn \l__xparse_environment_arg_specs_prop {#1} {#2}
+ \bool_set_false:N \l__xparse_expandable_bool
\bool_set_true:N \l__xparse_environment_bool
\__xparse_declare_env_internal:nnnn {#1} {#2}
}
@@ -629,8 +631,8 @@
{ \__msg_kernel_error:nn { xparse } { inconsistent-long } }
}
\cs_new_protected:Npn \__xparse_grab_arg:w { }
-\cs_new_protected:Npn \__xparse_grab_arg_aux_i:w { }
-\cs_new_protected:Npn \__xparse_grab_arg_aux_ii:w { }
+\cs_new_protected:Npn \__xparse_grab_arg_auxi:w { }
+\cs_new_protected:Npn \__xparse_grab_arg_auxii:w { }
\cs_new_protected:Npn \__xparse_grab_D:w #1#2#3#4 \l__xparse_args_tl
{
\__xparse_grab_D_aux:NNnnNn #1 #2 {#3} {#4} \cs_set_protected_nopar:Npn
@@ -972,10 +974,10 @@
\cs_new_protected:Npn \__xparse_grab_v_aux_loop:N #1
{
\peek_N_type:TF
- { \__xparse_grab_v_aux_loop_ii:NN #1 }
+ { \__xparse_grab_v_aux_loop:NN #1 }
{ \__xparse_grab_v_aux_abort: }
}
-\cs_new_protected:Npn \__xparse_grab_v_aux_loop_ii:NN #1 #2
+\cs_new_protected:Npn \__xparse_grab_v_aux_loop:NN #1 #2
{
\__xparse_grab_v_token_if_char:NTF #2
{
@@ -1005,10 +1007,10 @@
\cs_new_protected:Npn \__xparse_grab_v_bgroup_loop:
{
\peek_N_type:TF
- { \__xparse_grab_v_bgroup_loop_ii:N }
+ { \__xparse_grab_v_bgroup_loop:N }
{ \__xparse_grab_v_aux_abort: }
}
-\cs_new_protected:Npn \__xparse_grab_v_bgroup_loop_ii:N #1
+\cs_new_protected:Npn \__xparse_grab_v_bgroup_loop:N #1
{
\__xparse_grab_v_token_if_char:NTF #1
{
@@ -1044,9 +1046,9 @@
{
\__xparse_grab_v_group_end:
\__xparse_add_arg:o \c__xparse_no_value_tl
- \exp_after:wN \__xparse_grab_v_aux_abort_ii:w \l__xparse_args_tl \q_stop
+ \exp_after:wN \__xparse_grab_v_aux_abort:w \l__xparse_args_tl \q_stop
}
-\cs_new_protected:Npn \__xparse_grab_v_aux_abort_ii:w #1 #2 \q_stop
+\cs_new_protected:Npn \__xparse_grab_v_aux_abort:w #1 #2 \q_stop
{
\group_begin:
\char_set_lccode:nn { `\# } { \tex_endlinechar:D }
@@ -1103,28 +1105,28 @@
}
\cs_generate_variant:Nn \__xparse_add_arg_aux:n { V }
\cs_new:Npn \__xparse_expandable_grab_D:w #1 \q__xparse #2
- { #2 { \__xparse_expandable_grab_D_i:NNNnwNn #1 \q__xparse #2 } }
-\cs_new:Npn \__xparse_expandable_grab_D_i:NNNnwNn #1#2#3#4#5 \q__xparse #6#7
+ { #2 { \__xparse_expandable_grab_D:NNNnwNn #1 \q__xparse #2 } }
+\cs_new:Npn \__xparse_expandable_grab_D:NNNnwNn #1#2#3#4#5 \q__xparse #6#7
{
\str_if_eq:onTF
{ #1 { } { } #7 #2 \q__xparse #3 }
{ { } { #2 } { } }
{
#1
- { \__xparse_expandable_grab_D_ii:NNNwNnnn #1#2#3#5 \q__xparse #6 }
+ { \__xparse_expandable_grab_D:NNNwNnnn #1#2#3#5 \q__xparse #6 }
\q_nil { } #2 \ERROR \q__xparse \ERROR
}
{ #5 {#4} \q__xparse #6 {#7} }
}
-\cs_new:Npn \__xparse_expandable_grab_D_ii:NNNwNnnn #1#2#3#4 \q__xparse #5#6#7#8
+\cs_new:Npn \__xparse_expandable_grab_D:NNNwNnnn #1#2#3#4 \q__xparse #5#6#7#8
{
- \exp_args:Nof \__xparse_expandable_grab_D_iv:nnNNNwN
+ \exp_args:Nof \__xparse_expandable_grab_D:nnNNNwN
{ \use_ii:nn #6 #2 }
- { \__xparse_expandable_grab_D_iii:Nw #3 \exp_stop_f: #7 #8 }
+ { \__xparse_expandable_grab_D:Nw #3 \exp_stop_f: #7 #8 }
#1#2#3 #4 \q__xparse #5
}
-\cs_new:Npn \__xparse_expandable_grab_D_iii:Nw #1#2 \ERROR \ERROR { #2 #1 }
-\cs_new:Npn \__xparse_expandable_grab_D_iv:nnNNNwN #1#2#3#4#5#6 \q__xparse #7
+\cs_new:Npn \__xparse_expandable_grab_D:Nw #1#2 \ERROR \ERROR { #2 #1 }
+\cs_new:Npn \__xparse_expandable_grab_D:nnNNNwN #1#2#3#4#5#6 \q__xparse #7
{
\exp_args:No \tl_if_empty:oTF
{ #3 { \use_none:nnn } #2 \q__xparse #5 #4 \q__xparse #5 }
@@ -1134,25 +1136,25 @@
}
{
#3
- { \__xparse_expandable_grab_D_ii:NNNwNnnn #3#4#5#6 \q__xparse #7 }
+ { \__xparse_expandable_grab_D:NNNwNnnn #3#4#5#6 \q__xparse #7 }
\q_nil {#1} #2 \ERROR \q__xparse \ERROR
}
}
\cs_new:Npn \__xparse_expandable_grab_D_alt:w #1 \q__xparse #2
- { #2 { \__xparse_expandable_grab_D_alt_i:NNnwNn #1 \q__xparse #2 } }
-\cs_new:Npn \__xparse_expandable_grab_D_alt_i:NNnwNn #1#2#3#4 \q__xparse #5#6
+ { #2 { \__xparse_expandable_grab_D_alt:NNnwNn #1 \q__xparse #2 } }
+\cs_new:Npn \__xparse_expandable_grab_D_alt:NNnwNn #1#2#3#4 \q__xparse #5#6
{
\str_if_eq:onTF
{ #1 { } #6 #2 #2 }
{ { } #2 }
{
#1
- { \__xparse_expandable_grab_D_alt_ii:Nwn #5 #4 \q__xparse }
+ { \__xparse_expandable_grab_D_alt:Nwn #5 #4 \q__xparse }
#6 \ERROR
}
{ #4 {#3} \q__xparse #5 {#6} }
}
-\cs_new:Npn \__xparse_expandable_grab_D_alt_ii:Nwn #1#2 \q__xparse #3
+\cs_new:Npn \__xparse_expandable_grab_D_alt:Nwn #1#2 \q__xparse #3
{ \__xparse_put_arg_expandable:ow { \use_none:n #3 } #2 \q__xparse #1 }
\cs_new:Npn \__xparse_expandable_grab_m:w #1 \q__xparse #2
{ #2 { \__xparse_expandable_grab_m_aux:wNn #1 \q__xparse #2 } }
@@ -1167,7 +1169,7 @@
{ { } { #2 } { } }
{
#1
- { \__xparse_expandable_grab_D_ii:NNNwNnnn #1#2#3#5 \q__xparse #6 }
+ { \__xparse_expandable_grab_D:NNNwNnnn #1#2#3#5 \q__xparse #6 }
\q_nil { } #2 \ERROR \q__xparse \ERROR
}
{
@@ -1185,7 +1187,7 @@
{ { } #2 }
{
#1
- { \__xparse_expandable_grab_D_alt_ii:Nwn #5 #4 \q__xparse }
+ { \__xparse_expandable_grab_D_alt:Nwn #5 #4 \q__xparse }
#6 \ERROR
}
{
diff --git a/Master/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.sty b/Master/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.sty
index c2fa5195eba..7c33f8c0803 100644
--- a/Master/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.sty
+++ b/Master/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.sty
@@ -50,19 +50,20 @@
%%
%% -----------------------------------------------------------------------
%%
-\RequirePackage{expl3}[2012/11/21]
-\@ifpackagelater{expl3}{2012/11/21}
+\RequirePackage{expl3}[2012/12/21]
+\@ifpackagelater{expl3}{2012/12/21}
{}
{%
- \PackageError{xtemplate}{Support package l3kernel too old.}
+ \PackageError{xtemplate}{Support package l3kernel too old}
{%
- Please install an up to date version of l3kernel
- using your TeX package manager or from CTAN.\\ \\
+ Please install an up to date version of l3kernel\MessageBreak
+ using your TeX package manager or from CTAN.\MessageBreak
+ \MessageBreak
Loading xtemplate will abort!%
}%
\endinput
}
-\GetIdInfo$Id: xtemplate.dtx 4332 2012-11-21 21:40:31Z joseph $
+\GetIdInfo$Id: xtemplate.dtx 4390 2012-12-21 06:59:20Z joseph $
{L3 Experimental prototype document functions}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
@@ -843,12 +844,22 @@
}
\cs_new_protected_nopar:Npn \__xtemplate_assign_boolean_aux:n #1
{
- \__xtemplate_if_key_value:oT \l__xtemplate_value_tl
- { \__xtemplate_key_to_value: }
- \tl_put_right:Nx \l__xtemplate_assignments_tl
+ \__xtemplate_if_key_value:oTF \l__xtemplate_value_tl
{
- \exp_not:c { #1 _ \l__xtemplate_value_tl :N }
- \exp_not:o \l__xtemplate_var_tl
+ \__xtemplate_key_to_value:
+ \tl_put_right:Nx \l__xtemplate_assignments_tl
+ {
+ \exp_not:c { #1 _eq:NN }
+ \exp_not:o \l__xtemplate_var_tl
+ \exp_not:o \l__xtemplate_value_tl
+ }
+ }
+ {
+ \tl_put_right:Nx \l__xtemplate_assignments_tl
+ {
+ \exp_not:c { #1 _ \l__xtemplate_value_tl :N }
+ \exp_not:o \l__xtemplate_var_tl
+ }
}
}
\cs_new_protected_nopar:Npn \__xtemplate_assign_choice: