summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/l3kernel
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2015-06-19 22:34:54 +0000
committerKarl Berry <karl@freefriends.org>2015-06-19 22:34:54 +0000
commit8ec6f52457309f1e1152d881c29acc8f8c775442 (patch)
tree3b3247c79f170cc40a286743fb4e1265255cbb06 /Master/texmf-dist/tex/latex/l3kernel
parent487de9cd41f430fd78e869079c420f36a8ff051a (diff)
l3 (19jun15)
git-svn-id: svn://tug.org/texlive/trunk@37621 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/l3kernel')
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex242
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex4
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/expl3.sty4
3 files changed, 145 insertions, 105 deletions
diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex b/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex
index dffedf539df..ba0cfff670a 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex
+++ b/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex
@@ -80,8 +80,8 @@
%% -----------------------------------------------------------------------
\def\ExplFileName{expl3}
\def\ExplFileDescription{L3 programming layer}
-\def\ExplFileDate{2015/03/01}
-\def\ExplFileVersion{5547}
+\def\ExplFileDate{2015/06/15}
+\def\ExplFileVersion{5630}
\begingroup
\def\next{\endgroup}
\expandafter\ifx\csname PackageError\endcsname\relax
@@ -240,7 +240,7 @@
}
}
\endgroup
-\GetIdInfo$Id: l3bootstrap.dtx 5542 2015-02-28 22:47:53Z joseph $
+\GetIdInfo$Id: l3bootstrap.dtx 5608 2015-05-20 15:29:10Z joseph $
{L3 Bootstrap code}
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname pdfstrcmp\endcsname\relax
@@ -284,7 +284,7 @@
\fi
\endgroup
\begingroup
- \def\next{\endgroup}
+ \def\next{\endgroup}%
\def\ShortText{Required primitives not found}%
\def\LongText%
{%
@@ -297,29 +297,30 @@
or later.\LineBreak
\LineBreak
}%
- \expandafter\ifx\csname pdfstrcmp\endcsname\relax
+ \ifnum0%
+ \expandafter\ifx\csname pdfstrcmp\endcsname\relax\else 1\fi
\expandafter\ifx\csname directlua\endcsname\relax
\else
- \ifnum\luatexversion<36 %
- \newlinechar`\^^J\relax
- \def\LineBreak{\noexpand\MessageBreak}%
- \expandafter\ifx\csname PackageError\endcsname\relax
- \def\LineBreak{^^J}%
- \def\PackageError#1#2#3%
- {%
- \errhelp{#3}%
- \errmessage{#1 Error: #2!}
- }%
- \fi
- \edef\next
+ \ifnum\luatexversion<36 \else 1\fi
+ \fi
+ =0 %
+ \newlinechar`\^^J %
+ \def\LineBreak{\noexpand\MessageBreak}%
+ \expandafter\ifx\csname PackageError\endcsname\relax
+ \def\LineBreak{^^J}%
+ \def\PackageError#1#2#3%
{%
- \noexpand\PackageError{expl3}{\ShortText}
- {\LongText Loading of expl3 will abort!}%
- \endgroup
- \noexpand\endinput
+ \errhelp{#3}%
+ \errmessage{#1 Error: #2}
}%
\fi
- \fi
+ \edef\next
+ {%
+ \noexpand\PackageError{expl3}{\ShortText}
+ {\LongText Loading of expl3 will abort!}%
+ \endgroup
+ \noexpand\endinput
+ }%
\fi
\next
\begingroup
@@ -4770,7 +4771,7 @@
{ \__quark_if_recursion_tail_break:NN #1 \prg_break: }
\cs_new:Npn \quark_if_recursion_tail_break:n #1
{ \__quark_if_recursion_tail_break:nN {#1} \prg_break: }
-%% File: l3prg.dtx Copyright (C) 2005-2014 The LaTeX3 Project
+%% File: l3prg.dtx Copyright (C) 2005-2015 The LaTeX3 Project
%%
%% It may be distributed and/or modified under the conditions of the
%% LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -4802,7 +4803,7 @@
%% prior consultation with the LaTeX3 Project.
%%
%% -----------------------------------------------------------------------
-\GetIdInfo$Id: l3prg.dtx 5354 2014-08-23 01:35:39Z bruno $
+\GetIdInfo$Id: l3prg.dtx 5566 2015-04-13 08:24:56Z joseph $
{L3 Control structures}
%%
\tex_let:D \if_bool:N \tex_ifodd:D
@@ -7508,7 +7509,7 @@
\\ > \ \ \tl_to_str:n {#1}
\ \ => \ \ \tl_to_str:n {#2}
}
-%% File: l3file.dtx Copyright (C) 1990-2014 The LaTeX3 Project
+%% File: l3file.dtx Copyright (C) 1990-2015 The LaTeX3 Project
%%
%% It may be distributed and/or modified under the conditions of the
%% LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -7540,7 +7541,7 @@
%% prior consultation with the LaTeX3 Project.
%%
%% -----------------------------------------------------------------------
-\GetIdInfo$Id: l3file.dtx 5369 2014-08-24 22:41:47Z bruno $
+\GetIdInfo$Id: l3file.dtx 5627 2015-06-07 09:26:26Z bruno $
{L3 File and I/O operations}
\tl_new:N \g_file_current_name_tl
\tl_gset_eq:NN \g_file_current_name_tl \@currname
@@ -7712,7 +7713,10 @@
{
\cs_if_exist:NTF \normalend
{ \tex_count:D 38 \scan_stop: }
- { \tex_count:D 16 \scan_stop: - \c_one }
+ {
+ \tex_count:D 16 \scan_stop:
+ \cs_if_exist:NT \loccount { - \c_one }
+ }
}
{
\prop_gput:Nnn \g__ior_streams_prop {#1} { Reserved~by~format }
@@ -7824,7 +7828,10 @@
{
\cs_if_exist:NTF \normalend
{ \tex_count:D 39 \scan_stop: }
- { \tex_count:D 17 \scan_stop: - \c_one }
+ {
+ \tex_count:D 17 \scan_stop:
+ \cs_if_exist:NT \loccount { - \c_one }
+ }
}
{
\prop_gput:Nnn \g__iow_streams_prop {#1} { Reserved~by~format }
@@ -7931,13 +7938,18 @@
\c_catcode_other_space_tl
}
}
-\cs_new_protected:Npn \iow_indent:n #1 { }
\cs_new:Npx \__iow_indent:n #1
{
\c__iow_wrap_indent_marker_tl
#1
\c__iow_wrap_unindent_marker_tl
}
+\cs_new:Npn \__iow_indent_error:n #1
+ {
+ \__msg_kernel_expandable_error:nn { kernel } { indent-outside-wrapping-code }
+ #1
+ }
+\cs_new_protected_nopar:Npn \iow_indent:n { \__iow_indent_error:n }
\cs_new_protected:Npn \iow_wrap:nnnN #1#2#3#4
{
\group_begin:
@@ -7953,6 +7965,7 @@
\cs_set_eq:NN \iow_indent:n \__iow_indent:n
#3
\__iow_wrap_set:Nx \l__iow_wrap_tl {#1}
+ \cs_set_eq:NN \iow_indent:n \__iow_indent_error:n
\tl_set:Nx \l__iow_newline_tl { \iow_newline: #2 }
\tl_set:Nx \l__iow_newline_tl { \tl_to_str:N \l__iow_newline_tl }
\tl_replace_all:Nnn \l__iow_newline_tl { ~ } { \c_space_tl }
@@ -7961,12 +7974,13 @@
\int_zero:N \l__iow_current_indentation_int
\tl_clear:N \l__iow_current_indentation_tl
\int_zero:N \l__iow_current_line_int
- \tl_clear:N \l__iow_current_line_tl
+ \tl_set:Nn \l__iow_current_line_tl { \use_none:n }
\bool_set_true:N \l__iow_line_start_bool
\use:x
{
\exp_not:n { \tl_clear:N \l__iow_wrap_tl }
\__iow_wrap_loop:w
+ \tl_to_str:N \c__iow_wrap_newline_marker_tl
\tl_to_str:N \l__iow_wrap_tl
\tl_to_str:N \c__iow_wrap_end_marker_tl
\c_space_tl \c_space_tl
@@ -8098,6 +8112,8 @@
{
File~names~must~contain~balanced~numbers~of~quotes~(").
}
+\__msg_kernel_new:nnn { kernel } { indent-outside-wrapping-code }
+ { Only~\iow_wrap:nnnN~(arg~1)~allows~\iow_indent:n }
%% File: l3skip.dtx Copyright (C) 2004-2011 Frank Mittelbach, The LaTeX3 Project
%% (C) 2012-2014 The LaTeX3 Project
%%
@@ -8131,7 +8147,7 @@
%% prior consultation with the LaTeX3 Project.
%%
%% -----------------------------------------------------------------------
-\GetIdInfo$Id: l3skip.dtx 5354 2014-08-23 01:35:39Z bruno $
+\GetIdInfo$Id: l3skip.dtx 5607 2015-05-18 12:25:06Z joseph $
{L3 Dimensions and skips}
\cs_new_eq:NN \if_dim:w \tex_ifdim:D
\cs_new_eq:NN \__dim_eval:w \etex_dimexpr:D
@@ -8365,6 +8381,8 @@
}
\cs_new:Npn \dim_to_decimal_in_bp:n #1
{ \dim_to_decimal:n { ( #1 ) * 800 / 803 } }
+\cs_new:Npn \dim_to_decimal_in_sp:n #1
+ { \int_eval:n { \__dim_eval:w #1 \__dim_eval_end: } }
\cs_new:Npn \dim_to_decimal_in_unit:nn #1#2
{
\dim_to_decimal:n
@@ -8570,7 +8588,7 @@
%% prior consultation with the LaTeX3 Project.
%%
%% -----------------------------------------------------------------------
-\GetIdInfo$Id: l3keys.dtx 5500 2015-01-27 14:37:04Z joseph $
+\GetIdInfo$Id: l3keys.dtx 5629 2015-06-14 08:38:04Z joseph $
{L3 Key-value interfaces}
\int_new:N \g__keyval_level_int
\tl_new:N \l__keyval_key_tl
@@ -8839,7 +8857,7 @@
\clist_map_inline:nn {#2}
{
\int_incr:N \l_keys_choice_int
- \__keys_cmd_set:nx { \l_keys_path_tl / ##1 }
+ \__keys_cmd_set:nx { \l_keys_path_tl / \tl_to_str:n {##1} }
{
\tl_set:Nn \exp_not:N \l_keys_choice_tl {##1}
\int_set:Nn \exp_not:N \l_keys_choice_int
@@ -9234,14 +9252,14 @@
{ \clist_map_function:nN {#1} \__keys_choice_find:n }
\prg_new_conditional:Npnn \keys_if_exist:nn #1#2 { p , T , F , TF }
{
- \cs_if_exist:cTF { \c__keys_code_root_tl #1 / #2 }
+ \cs_if_exist:cTF { \c__keys_code_root_tl \tl_to_str:n { #1 / #2 } }
{ \prg_return_true: }
{ \prg_return_false: }
}
\prg_new_conditional:Npnn \keys_if_choice_exist:nnn #1#2#3
{ p , T , F , TF }
{
- \cs_if_exist:cTF { \c__keys_code_root_tl #1 / #2 / #3 }
+ \cs_if_exist:cTF { \c__keys_code_root_tl \tl_to_str:n { #1 / #2 / #3 } }
{ \prg_return_true: }
{ \prg_return_false: }
}
@@ -15999,7 +16017,7 @@
%%
%% -----------------------------------------------------------------------
%%
-\GetIdInfo$Id: l3candidates.dtx 5544 2015-03-01 18:30:00Z joseph $
+\GetIdInfo$Id: l3candidates.dtx 5613 2015-05-21 11:59:04Z joseph $
{L3 Experimental additions to l3kernel}
\group_begin:
\tex_lccode:D `? = `: \scan_stop:
@@ -17292,21 +17310,29 @@
\__tl_change_case_output:nwn { #1 {#3} }
#2
}
-\cs_new:Npn \__tl_change_case_cs_expand:Nnw #1#2
+\cs_new:Npn \__tl_change_case_if_expandable:NTF #1
{
- \bool_if:nTF
+ \token_if_expandable:NTF #1
{
- \token_if_expandable_p:N #1
- && ! \token_if_protected_macro_p:N #1
- && ! \token_if_protected_long_macro_p:N #1
+ \bool_if:nTF
+ {
+ \token_if_protected_macro_p:N #1
+ || \token_if_protected_long_macro_p:N #1
+ || \token_if_eq_meaning_p:NN \q_recursion_tail #1
+ }
+ { \use_ii:nn }
+ { \use_i:nn }
}
+ { \use_ii:nn }
+ }
+\cs_new:Npn \__tl_change_case_cs_expand:Nnw #1#2
+ {
+ \__tl_change_case_if_expandable:NTF #1
{ \__tl_change_case_cs_expand:NN #1 }
{ #2 }
}
\cs_new:Npn \__tl_change_case_cs_expand:NN #1#2
{ \exp_after:wN #2 #1 }
-\cs_new:Npn \__tl_change_case_cs_expand:NNnw #1#2#3
- { \__tl_change_case_cs_expand:Nnw #2 {#3} #1 }
\cs_new:Npn \__tl_change_case_lower_sigma:Nnw #1#2#3#4 \q_recursion_stop
{
\int_compare:nNnTF { `#1 } = { "03A3 }
@@ -17319,27 +17345,22 @@
}
\cs_new:Npn \__tl_change_case_lower_sigma:w #1 \q_recursion_stop
{
- \tl_if_head_is_N_type:nTF {#1}
- { \__tl_change_case_lower_sigma:Nw #1 \q_recursion_stop }
- { \c__unicode_final_sigma_tl }
+ \tl_if_head_is_N_type:nTF {#1}
+ { \__tl_change_case_lower_sigma:Nw #1 \q_recursion_stop }
+ { \c__unicode_final_sigma_tl }
}
\cs_new:Npn \__tl_change_case_lower_sigma:Nw #1#2 \q_recursion_stop
{
- \token_if_cs:NTF #1
- { \c__unicode_final_sigma_tl }
+ \__tl_change_case_if_expandable:NTF #1
{
- \exp_after:wN \__tl_change_case_lower_sigma_loop:NN
- \exp_after:wN #1 \l_tl_case_change_after_final_sigma_tl
- \q_recursion_tail \q_recursion_stop
+ \exp_after:wN \__tl_change_case_lower_sigma:w #1
+ #2 \q_recursion_stop
+ }
+ {
+ \token_if_letter:NTF #1
+ { \c__unicode_std_sigma_tl }
+ { \c__unicode_final_sigma_tl }
}
- }
-\cs_new:Npn \__tl_change_case_lower_sigma_loop:NN #1#2
- {
- \quark_if_recursion_tail_stop_do:Nn #2
- { \c__unicode_std_sigma_tl }
- \int_compare:nNnT { `#1 } = { `#2 }
- { \use_i_delimit_by_q_recursion_stop:nw { \c__unicode_final_sigma_tl } }
- \__tl_change_case_lower_sigma_loop:NN #1
}
\cs_new_eq:NN \__tl_change_case_upper_sigma:Nnw \use_ii:nn
\cs_new:Npn \__tl_change_case_lower_tr:Nnw #1#2
@@ -17361,15 +17382,22 @@
}
\cs_new:Npn \__tl_change_case_lower_tr_auxii:Nw #1#2 \q_recursion_stop
{
- \bool_if:nTF
+ \__tl_change_case_if_expandable:NTF #1
{
- \token_if_cs_p:N #1
- || ! ( \int_compare_p:nNn { `#1 } = { "0307 } )
+ \exp_after:wN \__tl_change_case_lower_tr_auxi:Nw #1
+ #2 \q_recursion_stop
}
- { \__tl_change_case_output:Vwn \c__unicode_dotless_i_tl }
{
- \__tl_change_case_output:nwn { i }
- \use_i:nn
+ \bool_if:nTF
+ {
+ \token_if_cs_p:N #1
+ || ! ( \int_compare_p:nNn { `#1 } = { "0307 } )
+ }
+ { \__tl_change_case_output:Vwn \c__unicode_dotless_i_tl }
+ {
+ \__tl_change_case_output:nwn { i }
+ \use_i:nn
+ }
}
}
\cs_new:Npn \__tl_change_case_upper_tr:Nnw #1#2
@@ -17423,18 +17451,25 @@
}
\cs_new:Npn \__tl_change_case_lower_lt:NNw #1#2#3 \q_recursion_stop
{
- \bool_if:nT
+ \__tl_change_case_if_expandable:NTF #2
{
- ! \token_if_cs_p:N #2
- &&
- (
- \int_compare_p:nNn { `#2 } = { "0300 }
- || \int_compare_p:nNn { `#2 } = { "0301 }
- || \int_compare_p:nNn { `#2 } = { "0303 }
- )
+ \exp_after:wN \__tl_change_case_lower_lt:Nw \exp_after:wN #1 #2
+ #3 \q_recursion_stop
+ }
+ {
+ \bool_if:nT
+ {
+ ! \token_if_cs_p:N #2
+ &&
+ (
+ \int_compare_p:nNn { `#2 } = { "0300 }
+ || \int_compare_p:nNn { `#2 } = { "0301 }
+ || \int_compare_p:nNn { `#2 } = { "0303 }
+ )
+ }
+ { \__tl_change_case_output:Vwn \c__unicode_dot_above_tl }
+ #1 #2#3 \q_recursion_stop
}
- { \__tl_change_case_output:Vwn \c__unicode_dot_above_tl }
- #1 #2#3 \q_recursion_stop
}
\cs_new:Npn \__tl_change_case_upper_lt:Nnw #1
{
@@ -17466,14 +17501,21 @@
}
\cs_new:Npn \__tl_change_case_upper_lt:NNw #1#2#3 \q_recursion_stop
{
- \bool_if:nTF
+ \__tl_change_case_if_expandable:NTF #2
+ {
+ \exp_after:wN \__tl_change_case_upper_lt:Nw \exp_after:wN #1 #2
+ #3 \q_recursion_stop
+ }
{
- ! \token_if_cs_p:N #2
- && \int_compare_p:nNn { `#2 } = { "0307 }
+ \bool_if:nTF
+ {
+ ! \token_if_cs_p:N #2
+ && \int_compare_p:nNn { `#2 } = { "0307 }
+ }
+ { #1 }
+ { #1 #2 }
+ #3 \q_recursion_stop
}
- { #1 }
- { #1 #2 }
- #3 \q_recursion_stop
}
\cs_new:Npn \__tl_mixed_case:nn #1#2
{
@@ -17623,21 +17665,28 @@
}
\cs_new:Npn \__tl_change_case_mixed_nl:NNw #1#2#3 \q_recursion_stop
{
- \bool_if:nTF
+ \__tl_change_case_if_expandable:NTF #2
{
- ! ( \token_if_cs_p:N #2 )
- &&
- (
- \int_compare_p:nNn { `#2 } = { `j }
- || \int_compare_p:nNn { `#2 } = { `J }
- )
+ \exp_after:wN \__tl_change_case_mixed_nl:Nw \exp_after:wN #1 #2
+ #3 \q_recursion_stop
}
{
- \__tl_change_case_output:nwn { J }
- #1
+ \bool_if:nTF
+ {
+ ! ( \token_if_cs_p:N #2 )
+ &&
+ (
+ \int_compare_p:nNn { `#2 } = { `j }
+ || \int_compare_p:nNn { `#2 } = { `J }
+ )
+ }
+ {
+ \__tl_change_case_output:nwn { J }
+ #1
+ }
+ { #1 #2 }
+ #3 \q_recursion_stop
}
- { #1 #2 }
- #3 \q_recursion_stop
}
\tl_new:N \l_tl_case_change_math_tl
\tl_set:Nn \l_tl_case_change_math_tl
@@ -17645,15 +17694,6 @@
\tl_new:N \l_tl_case_change_exclude_tl
\tl_set:Nn \l_tl_case_change_exclude_tl
{ \cite \ensuremath \label \ref }
-\tl_new:N \l_tl_case_change_after_final_sigma_tl
-\tl_set:Nx \l_tl_case_change_after_final_sigma_tl
- { % (
- ) % [
- ] % \{
- \cs_to_str:N \}
- . : ; ,
- ! ? ' "
- }
\tl_new:N \l_tl_mixed_case_ignore_tl
\tl_set:Nx \l_tl_mixed_case_ignore_tl
{
diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex b/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex
index 1e8738ee241..800066f06ec 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex
+++ b/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex
@@ -47,8 +47,8 @@
%% -----------------------------------------------------------------------
\def\ExplFileName{expl3}
\def\ExplFileDescription{L3 programming layer}
-\def\ExplFileDate{2015/03/01}
-\def\ExplFileVersion{5547}
+\def\ExplFileDate{2015/06/15}
+\def\ExplFileVersion{5630}
\let\ExplLoaderFileVersion\ExplFileVersion
\begingroup
\def\tempa{LaTeX2e}
diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
index a9718fe6985..ce5dc6c34dc 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
+++ b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
@@ -47,8 +47,8 @@
%% -----------------------------------------------------------------------
\def\ExplFileName{expl3}
\def\ExplFileDescription{L3 programming layer}
-\def\ExplFileDate{2015/03/01}
-\def\ExplFileVersion{5547}
+\def\ExplFileDate{2015/06/15}
+\def\ExplFileVersion{5630}
\let\ExplLoaderFileVersion\ExplFileVersion
\ProvidesPackage{\ExplFileName}
[%