diff options
author | Karl Berry <karl@freefriends.org> | 2014-01-01 22:56:28 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2014-01-01 22:56:28 +0000 |
commit | 999dd6fa37bd291385b20ccf85f980eccfd2e683 (patch) | |
tree | 0556279ecc60a91218fc66f799180d9b30c6bf4a /Master/texmf-dist/tex | |
parent | 612e0aeaa3a96eceef8eb6e8de16fac2d6b4d8f0 (diff) |
l3 (1jan14)
git-svn-id: svn://tug.org/texlive/trunk@32537 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex')
45 files changed, 3726 insertions, 784 deletions
diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3sort/l3sort.sty b/Master/texmf-dist/tex/latex/l3experimental/l3sort/l3sort.sty index e1129ef82da..cffbfc4bcc1 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 4566 2013-07-24 19:34:45Z bruno $ +\GetIdInfo$Id: l3sort.dtx 4623 2013-12-14 13:53:40Z bruno $ {L3 Experimental sorting functions} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} @@ -85,13 +85,13 @@ { \__sort_main:NNNnNn \tl_set:Nn \seq_map_inline:Nn \seq_map_break: - { \s__seq \__sort_toks:NNw \exp_not:N \__seq_item:n 0 ; \s_obj_end } + { \s__seq \__sort_toks:NNw \exp_not:N \__seq_item:n 0 ; } } \cs_new_protected_nopar:Npn \seq_gsort:Nn { \__sort_main:NNNnNn \tl_gset:Nn \seq_map_inline:Nn \seq_map_break: - { \s__seq \__sort_toks:NNw \exp_not:N \__seq_item:n 0 ; \s_obj_end } + { \s__seq \__sort_toks:NNw \exp_not:N \__seq_item:n 0 ; } } \cs_new_protected_nopar:Npn \tl_sort:Nn { 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 16337136351..3d1224dfd80 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 4576 2013-07-24 21:40:24Z joseph $ +\GetIdInfo$Id: l3regex.dtx 4623 2013-12-14 13:53:40Z bruno $ {L3 Experimental regular expressions} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} @@ -2439,7 +2439,6 @@ \c_one { \l__regex_submatch_int - \c_one } \__regex_extract_seq_aux:n - \s_obj_end } \int_compare:nNnF { \flag_height:n { __regex_begin } + \flag_height:n { __regex_end } } diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3regex.sty b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3regex.sty index a04fee919c5..12774db5615 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 4576 2013-07-24 21:40:24Z joseph $ +\GetIdInfo$Id: l3regex.dtx 4623 2013-12-14 13:53:40Z bruno $ {L3 Experimental regular expressions} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} @@ -2412,7 +2412,6 @@ \c_one { \l__regex_submatch_int - \c_one } \__regex_extract_seq_aux:n - \s_obj_end } \int_compare:nNnF { \flag_height:n { __regex_begin } + \flag_height:n { __regex_end } } diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-convert.sty b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-convert.sty index 122f0341a8e..aeb2ecc59fa 100644 --- a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-convert.sty +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-convert.sty @@ -257,7 +257,7 @@ } \cs_new_protected:Npn \__str_if_flag_no_error:nnx #1#2#3 { \flag_if_raised:nT {#1} { \bool_gset_true:N \g__str_error_bool } } -\cs_new_protected:Npn \__str_if_flag_times:nT #1#2 +\cs_new: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:nNNnnn { } \tl_set_eq:NN } diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88591.def b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88591.def new file mode 100644 index 00000000000..151bd7ac53f --- /dev/null +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88591.def @@ -0,0 +1,55 @@ +%% +%% This is file `l3str-enc-iso88591.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% l3str-convert.dtx (with options: `iso88591') +%% +%% EXPERIMENTAL CODE +%% +%% Do not distribute this file without also distributing the +%% source files specified above. +%% +%% Do not distribute a modified version of this file. +%% +%% File: l3str-convert.dtx Copyright (C) 2013 The LaTeX3 Project +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This file is part of the "l3experimental bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% The released version of this bundle is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the bundle can be found at +%% +%% http://www.latex-project.org/svnroot/experimental/trunk/ +%% +%% for those people who are interested. +%% +%%%%%%%%%%% +%% NOTE: %% +%%%%%%%%%%% +%% +%% Snapshots taken from the repository represent work in progress and may +%% not work or may contain conflicting material! We therefore ask +%% people _not_ to put them into distributions, archives, etc. without +%% prior consultation with the LaTeX3 Project. +%% +%% ----------------------------------------------------------------------- +\__str_declare_eight_bit_encoding:nnn { iso88591 } + { + } + { + } +%% +%% +%% End of file `l3str-enc-iso88591.def'. diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso885910.def b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso885910.def new file mode 100644 index 00000000000..a7fb0bb145a --- /dev/null +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso885910.def @@ -0,0 +1,101 @@ +%% +%% This is file `l3str-enc-iso885910.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% l3str-convert.dtx (with options: `iso885910') +%% +%% EXPERIMENTAL CODE +%% +%% Do not distribute this file without also distributing the +%% source files specified above. +%% +%% Do not distribute a modified version of this file. +%% +%% File: l3str-convert.dtx Copyright (C) 2013 The LaTeX3 Project +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This file is part of the "l3experimental bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% The released version of this bundle is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the bundle can be found at +%% +%% http://www.latex-project.org/svnroot/experimental/trunk/ +%% +%% for those people who are interested. +%% +%%%%%%%%%%% +%% NOTE: %% +%%%%%%%%%%% +%% +%% Snapshots taken from the repository represent work in progress and may +%% not work or may contain conflicting material! We therefore ask +%% people _not_ to put them into distributions, archives, etc. without +%% prior consultation with the LaTeX3 Project. +%% +%% ----------------------------------------------------------------------- +\__str_declare_eight_bit_encoding:nnn { iso885910 } + { + { A1 } { 0104 } + { A2 } { 0112 } + { A3 } { 0122 } + { A4 } { 012A } + { A5 } { 0128 } + { A6 } { 0136 } + { A8 } { 013B } + { A9 } { 0110 } + { AA } { 0160 } + { AB } { 0166 } + { AC } { 017D } + { AE } { 016A } + { AF } { 014A } + { B1 } { 0105 } + { B2 } { 0113 } + { B3 } { 0123 } + { B4 } { 012B } + { B5 } { 0129 } + { B6 } { 0137 } + { B8 } { 013C } + { B9 } { 0111 } + { BA } { 0161 } + { BB } { 0167 } + { BC } { 017E } + { BD } { 2015 } + { BE } { 016B } + { BF } { 014B } + { C0 } { 0100 } + { C7 } { 012E } + { C8 } { 010C } + { CA } { 0118 } + { CC } { 0116 } + { D1 } { 0145 } + { D2 } { 014C } + { D7 } { 0168 } + { D9 } { 0172 } + { E0 } { 0101 } + { E7 } { 012F } + { E8 } { 010D } + { EA } { 0119 } + { EC } { 0117 } + { F1 } { 0146 } + { F2 } { 014D } + { F7 } { 0169 } + { F9 } { 0173 } + { FF } { 0138 } + } + { + } +%% +%% +%% End of file `l3str-enc-iso885910.def'. diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso885911.def b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso885911.def new file mode 100644 index 00000000000..a1e616cd9c4 --- /dev/null +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso885911.def @@ -0,0 +1,146 @@ +%% +%% This is file `l3str-enc-iso885911.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% l3str-convert.dtx (with options: `iso885911') +%% +%% EXPERIMENTAL CODE +%% +%% Do not distribute this file without also distributing the +%% source files specified above. +%% +%% Do not distribute a modified version of this file. +%% +%% File: l3str-convert.dtx Copyright (C) 2013 The LaTeX3 Project +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This file is part of the "l3experimental bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% The released version of this bundle is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the bundle can be found at +%% +%% http://www.latex-project.org/svnroot/experimental/trunk/ +%% +%% for those people who are interested. +%% +%%%%%%%%%%% +%% NOTE: %% +%%%%%%%%%%% +%% +%% Snapshots taken from the repository represent work in progress and may +%% not work or may contain conflicting material! We therefore ask +%% people _not_ to put them into distributions, archives, etc. without +%% prior consultation with the LaTeX3 Project. +%% +%% ----------------------------------------------------------------------- +\__str_declare_eight_bit_encoding:nnn { iso885911 } + { + { A1 } { 0E01 } + { A2 } { 0E02 } + { A3 } { 0E03 } + { A4 } { 0E04 } + { A5 } { 0E05 } + { A6 } { 0E06 } + { A7 } { 0E07 } + { A8 } { 0E08 } + { A9 } { 0E09 } + { AA } { 0E0A } + { AB } { 0E0B } + { AC } { 0E0C } + { AD } { 0E0D } + { AE } { 0E0E } + { AF } { 0E0F } + { B0 } { 0E10 } + { B1 } { 0E11 } + { B2 } { 0E12 } + { B3 } { 0E13 } + { B4 } { 0E14 } + { B5 } { 0E15 } + { B6 } { 0E16 } + { B7 } { 0E17 } + { B8 } { 0E18 } + { B9 } { 0E19 } + { BA } { 0E1A } + { BB } { 0E1B } + { BC } { 0E1C } + { BD } { 0E1D } + { BE } { 0E1E } + { BF } { 0E1F } + { C0 } { 0E20 } + { C1 } { 0E21 } + { C2 } { 0E22 } + { C3 } { 0E23 } + { C4 } { 0E24 } + { C5 } { 0E25 } + { C6 } { 0E26 } + { C7 } { 0E27 } + { C8 } { 0E28 } + { C9 } { 0E29 } + { CA } { 0E2A } + { CB } { 0E2B } + { CC } { 0E2C } + { CD } { 0E2D } + { CE } { 0E2E } + { CF } { 0E2F } + { D0 } { 0E30 } + { D1 } { 0E31 } + { D2 } { 0E32 } + { D3 } { 0E33 } + { D4 } { 0E34 } + { D5 } { 0E35 } + { D6 } { 0E36 } + { D7 } { 0E37 } + { D8 } { 0E38 } + { D9 } { 0E39 } + { DA } { 0E3A } + { DF } { 0E3F } + { E0 } { 0E40 } + { E1 } { 0E41 } + { E2 } { 0E42 } + { E3 } { 0E43 } + { E4 } { 0E44 } + { E5 } { 0E45 } + { E6 } { 0E46 } + { E7 } { 0E47 } + { E8 } { 0E48 } + { E9 } { 0E49 } + { EA } { 0E4A } + { EB } { 0E4B } + { EC } { 0E4C } + { ED } { 0E4D } + { EE } { 0E4E } + { EF } { 0E4F } + { F0 } { 0E50 } + { F1 } { 0E51 } + { F2 } { 0E52 } + { F3 } { 0E53 } + { F4 } { 0E54 } + { F5 } { 0E55 } + { F6 } { 0E56 } + { F7 } { 0E57 } + { F8 } { 0E58 } + { F9 } { 0E59 } + { FA } { 0E5A } + { FB } { 0E5B } + } + { + { DB } + { DC } + { DD } + { DE } + } +%% +%% +%% End of file `l3str-enc-iso885911.def'. diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso885913.def b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso885913.def new file mode 100644 index 00000000000..96fb972d529 --- /dev/null +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso885913.def @@ -0,0 +1,111 @@ +%% +%% This is file `l3str-enc-iso885913.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% l3str-convert.dtx (with options: `iso885913') +%% +%% EXPERIMENTAL CODE +%% +%% Do not distribute this file without also distributing the +%% source files specified above. +%% +%% Do not distribute a modified version of this file. +%% +%% File: l3str-convert.dtx Copyright (C) 2013 The LaTeX3 Project +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This file is part of the "l3experimental bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% The released version of this bundle is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the bundle can be found at +%% +%% http://www.latex-project.org/svnroot/experimental/trunk/ +%% +%% for those people who are interested. +%% +%%%%%%%%%%% +%% NOTE: %% +%%%%%%%%%%% +%% +%% Snapshots taken from the repository represent work in progress and may +%% not work or may contain conflicting material! We therefore ask +%% people _not_ to put them into distributions, archives, etc. without +%% prior consultation with the LaTeX3 Project. +%% +%% ----------------------------------------------------------------------- +\__str_declare_eight_bit_encoding:nnn { iso885913 } + { + { A1 } { 201D } + { A5 } { 201E } + { A8 } { 00D8 } + { AA } { 0156 } + { AF } { 00C6 } + { B4 } { 201C } + { B8 } { 00F8 } + { BA } { 0157 } + { BF } { 00E6 } + { C0 } { 0104 } + { C1 } { 012E } + { C2 } { 0100 } + { C3 } { 0106 } + { C6 } { 0118 } + { C7 } { 0112 } + { C8 } { 010C } + { CA } { 0179 } + { CB } { 0116 } + { CC } { 0122 } + { CD } { 0136 } + { CE } { 012A } + { CF } { 013B } + { D0 } { 0160 } + { D1 } { 0143 } + { D2 } { 0145 } + { D4 } { 014C } + { D8 } { 0172 } + { D9 } { 0141 } + { DA } { 015A } + { DB } { 016A } + { DD } { 017B } + { DE } { 017D } + { E0 } { 0105 } + { E1 } { 012F } + { E2 } { 0101 } + { E3 } { 0107 } + { E6 } { 0119 } + { E7 } { 0113 } + { E8 } { 010D } + { EA } { 017A } + { EB } { 0117 } + { EC } { 0123 } + { ED } { 0137 } + { EE } { 012B } + { EF } { 013C } + { F0 } { 0161 } + { F1 } { 0144 } + { F2 } { 0146 } + { F4 } { 014D } + { F8 } { 0173 } + { F9 } { 0142 } + { FA } { 015B } + { FB } { 016B } + { FD } { 017C } + { FE } { 017E } + { FF } { 2019 } + } + { + } +%% +%% +%% End of file `l3str-enc-iso885913.def'. diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso885914.def b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso885914.def new file mode 100644 index 00000000000..0e77b57e633 --- /dev/null +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso885914.def @@ -0,0 +1,86 @@ +%% +%% This is file `l3str-enc-iso885914.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% l3str-convert.dtx (with options: `iso885914') +%% +%% EXPERIMENTAL CODE +%% +%% Do not distribute this file without also distributing the +%% source files specified above. +%% +%% Do not distribute a modified version of this file. +%% +%% File: l3str-convert.dtx Copyright (C) 2013 The LaTeX3 Project +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This file is part of the "l3experimental bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% The released version of this bundle is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the bundle can be found at +%% +%% http://www.latex-project.org/svnroot/experimental/trunk/ +%% +%% for those people who are interested. +%% +%%%%%%%%%%% +%% NOTE: %% +%%%%%%%%%%% +%% +%% Snapshots taken from the repository represent work in progress and may +%% not work or may contain conflicting material! We therefore ask +%% people _not_ to put them into distributions, archives, etc. without +%% prior consultation with the LaTeX3 Project. +%% +%% ----------------------------------------------------------------------- +\__str_declare_eight_bit_encoding:nnn { iso885914 } + { + { A1 } { 1E02 } + { A2 } { 1E03 } + { A4 } { 010A } + { A5 } { 010B } + { A6 } { 1E0A } + { A8 } { 1E80 } + { AA } { 1E82 } + { AB } { 1E0B } + { AC } { 1EF2 } + { AF } { 0178 } + { B0 } { 1E1E } + { B1 } { 1E1F } + { B2 } { 0120 } + { B3 } { 0121 } + { B4 } { 1E40 } + { B5 } { 1E41 } + { B7 } { 1E56 } + { B8 } { 1E81 } + { B9 } { 1E57 } + { BA } { 1E83 } + { BB } { 1E60 } + { BC } { 1EF3 } + { BD } { 1E84 } + { BE } { 1E85 } + { BF } { 1E61 } + { D0 } { 0174 } + { D7 } { 1E6A } + { DE } { 0176 } + { F0 } { 0175 } + { F7 } { 1E6B } + { FE } { 0177 } + } + { + } +%% +%% +%% End of file `l3str-enc-iso885914.def'. diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso885915.def b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso885915.def new file mode 100644 index 00000000000..7b3d1deed9f --- /dev/null +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso885915.def @@ -0,0 +1,63 @@ +%% +%% This is file `l3str-enc-iso885915.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% l3str-convert.dtx (with options: `iso885915') +%% +%% EXPERIMENTAL CODE +%% +%% Do not distribute this file without also distributing the +%% source files specified above. +%% +%% Do not distribute a modified version of this file. +%% +%% File: l3str-convert.dtx Copyright (C) 2013 The LaTeX3 Project +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This file is part of the "l3experimental bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% The released version of this bundle is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the bundle can be found at +%% +%% http://www.latex-project.org/svnroot/experimental/trunk/ +%% +%% for those people who are interested. +%% +%%%%%%%%%%% +%% NOTE: %% +%%%%%%%%%%% +%% +%% Snapshots taken from the repository represent work in progress and may +%% not work or may contain conflicting material! We therefore ask +%% people _not_ to put them into distributions, archives, etc. without +%% prior consultation with the LaTeX3 Project. +%% +%% ----------------------------------------------------------------------- +\__str_declare_eight_bit_encoding:nnn { iso885915 } + { + { A4 } { 20AC } + { A6 } { 0160 } + { A8 } { 0161 } + { B4 } { 017D } + { B8 } { 017E } + { BC } { 0152 } + { BD } { 0153 } + { BE } { 0178 } + } + { + } +%% +%% +%% End of file `l3str-enc-iso885915.def'. diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso885916.def b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso885916.def new file mode 100644 index 00000000000..8b8bd74ae8d --- /dev/null +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso885916.def @@ -0,0 +1,95 @@ +%% +%% This is file `l3str-enc-iso885916.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% l3str-convert.dtx (with options: `iso885916') +%% +%% EXPERIMENTAL CODE +%% +%% Do not distribute this file without also distributing the +%% source files specified above. +%% +%% Do not distribute a modified version of this file. +%% +%% File: l3str-convert.dtx Copyright (C) 2013 The LaTeX3 Project +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This file is part of the "l3experimental bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% The released version of this bundle is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the bundle can be found at +%% +%% http://www.latex-project.org/svnroot/experimental/trunk/ +%% +%% for those people who are interested. +%% +%%%%%%%%%%% +%% NOTE: %% +%%%%%%%%%%% +%% +%% Snapshots taken from the repository represent work in progress and may +%% not work or may contain conflicting material! We therefore ask +%% people _not_ to put them into distributions, archives, etc. without +%% prior consultation with the LaTeX3 Project. +%% +%% ----------------------------------------------------------------------- +\__str_declare_eight_bit_encoding:nnn { iso885916 } + { + { A1 } { 0104 } + { A2 } { 0105 } + { A3 } { 0141 } + { A4 } { 20AC } + { A5 } { 201E } + { A6 } { 0160 } + { A8 } { 0161 } + { AA } { 0218 } + { AC } { 0179 } + { AE } { 017A } + { AF } { 017B } + { B2 } { 010C } + { B3 } { 0142 } + { B4 } { 017D } + { B5 } { 201D } + { B8 } { 017E } + { B9 } { 010D } + { BA } { 0219 } + { BC } { 0152 } + { BD } { 0153 } + { BE } { 0178 } + { BF } { 017C } + { C3 } { 0102 } + { C5 } { 0106 } + { D0 } { 0110 } + { D1 } { 0143 } + { D5 } { 0150 } + { D7 } { 015A } + { D8 } { 0170 } + { DD } { 0118 } + { DE } { 021A } + { E3 } { 0103 } + { E5 } { 0107 } + { F0 } { 0111 } + { F1 } { 0144 } + { F5 } { 0151 } + { F7 } { 015B } + { F8 } { 0171 } + { FD } { 0119 } + { FE } { 021B } + } + { + } +%% +%% +%% End of file `l3str-enc-iso885916.def'. diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88592.def b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88592.def new file mode 100644 index 00000000000..8fffeac5146 --- /dev/null +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88592.def @@ -0,0 +1,112 @@ +%% +%% This is file `l3str-enc-iso88592.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% l3str-convert.dtx (with options: `iso88592') +%% +%% EXPERIMENTAL CODE +%% +%% Do not distribute this file without also distributing the +%% source files specified above. +%% +%% Do not distribute a modified version of this file. +%% +%% File: l3str-convert.dtx Copyright (C) 2013 The LaTeX3 Project +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This file is part of the "l3experimental bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% The released version of this bundle is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the bundle can be found at +%% +%% http://www.latex-project.org/svnroot/experimental/trunk/ +%% +%% for those people who are interested. +%% +%%%%%%%%%%% +%% NOTE: %% +%%%%%%%%%%% +%% +%% Snapshots taken from the repository represent work in progress and may +%% not work or may contain conflicting material! We therefore ask +%% people _not_ to put them into distributions, archives, etc. without +%% prior consultation with the LaTeX3 Project. +%% +%% ----------------------------------------------------------------------- +\__str_declare_eight_bit_encoding:nnn { iso88592 } + { + { A1 } { 0104 } + { A2 } { 02D8 } + { A3 } { 0141 } + { A5 } { 013D } + { A6 } { 015A } + { A9 } { 0160 } + { AA } { 015E } + { AB } { 0164 } + { AC } { 0179 } + { AE } { 017D } + { AF } { 017B } + { B1 } { 0105 } + { B2 } { 02DB } + { B3 } { 0142 } + { B5 } { 013E } + { B6 } { 015B } + { B7 } { 02C7 } + { B9 } { 0161 } + { BA } { 015F } + { BB } { 0165 } + { BC } { 017A } + { BD } { 02DD } + { BE } { 017E } + { BF } { 017C } + { C0 } { 0154 } + { C3 } { 0102 } + { C5 } { 0139 } + { C6 } { 0106 } + { C8 } { 010C } + { CA } { 0118 } + { CC } { 011A } + { CF } { 010E } + { D0 } { 0110 } + { D1 } { 0143 } + { D2 } { 0147 } + { D5 } { 0150 } + { D8 } { 0158 } + { D9 } { 016E } + { DB } { 0170 } + { DE } { 0162 } + { E0 } { 0155 } + { E3 } { 0103 } + { E5 } { 013A } + { E6 } { 0107 } + { E8 } { 010D } + { EA } { 0119 } + { EC } { 011B } + { EF } { 010F } + { F0 } { 0111 } + { F1 } { 0144 } + { F2 } { 0148 } + { F5 } { 0151 } + { F8 } { 0159 } + { F9 } { 016F } + { FB } { 0171 } + { FE } { 0163 } + { FF } { 02D9 } + } + { + } +%% +%% +%% End of file `l3str-enc-iso88592.def'. diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88593.def b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88593.def new file mode 100644 index 00000000000..eede36a00cd --- /dev/null +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88593.def @@ -0,0 +1,90 @@ +%% +%% This is file `l3str-enc-iso88593.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% l3str-convert.dtx (with options: `iso88593') +%% +%% EXPERIMENTAL CODE +%% +%% Do not distribute this file without also distributing the +%% source files specified above. +%% +%% Do not distribute a modified version of this file. +%% +%% File: l3str-convert.dtx Copyright (C) 2013 The LaTeX3 Project +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This file is part of the "l3experimental bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% The released version of this bundle is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the bundle can be found at +%% +%% http://www.latex-project.org/svnroot/experimental/trunk/ +%% +%% for those people who are interested. +%% +%%%%%%%%%%% +%% NOTE: %% +%%%%%%%%%%% +%% +%% Snapshots taken from the repository represent work in progress and may +%% not work or may contain conflicting material! We therefore ask +%% people _not_ to put them into distributions, archives, etc. without +%% prior consultation with the LaTeX3 Project. +%% +%% ----------------------------------------------------------------------- +\__str_declare_eight_bit_encoding:nnn { iso88593 } + { + { A1 } { 0126 } + { A2 } { 02D8 } + { A6 } { 0124 } + { A9 } { 0130 } + { AA } { 015E } + { AB } { 011E } + { AC } { 0134 } + { AF } { 017B } + { B1 } { 0127 } + { B6 } { 0125 } + { B9 } { 0131 } + { BA } { 015F } + { BB } { 011F } + { BC } { 0135 } + { BF } { 017C } + { C5 } { 010A } + { C6 } { 0108 } + { D5 } { 0120 } + { D8 } { 011C } + { DD } { 016C } + { DE } { 015C } + { E5 } { 010B } + { E6 } { 0109 } + { F5 } { 0121 } + { F8 } { 011D } + { FD } { 016D } + { FE } { 015D } + { FF } { 02D9 } + } + { + { A5 } + { AE } + { BE } + { C3 } + { D0 } + { E3 } + { F0 } + } +%% +%% +%% End of file `l3str-enc-iso88593.def'. diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88594.def b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88594.def new file mode 100644 index 00000000000..d1c825dfa7c --- /dev/null +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88594.def @@ -0,0 +1,105 @@ +%% +%% This is file `l3str-enc-iso88594.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% l3str-convert.dtx (with options: `iso88594') +%% +%% EXPERIMENTAL CODE +%% +%% Do not distribute this file without also distributing the +%% source files specified above. +%% +%% Do not distribute a modified version of this file. +%% +%% File: l3str-convert.dtx Copyright (C) 2013 The LaTeX3 Project +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This file is part of the "l3experimental bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% The released version of this bundle is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the bundle can be found at +%% +%% http://www.latex-project.org/svnroot/experimental/trunk/ +%% +%% for those people who are interested. +%% +%%%%%%%%%%% +%% NOTE: %% +%%%%%%%%%%% +%% +%% Snapshots taken from the repository represent work in progress and may +%% not work or may contain conflicting material! We therefore ask +%% people _not_ to put them into distributions, archives, etc. without +%% prior consultation with the LaTeX3 Project. +%% +%% ----------------------------------------------------------------------- +\__str_declare_eight_bit_encoding:nnn { iso88594 } + { + { A1 } { 0104 } + { A2 } { 0138 } + { A3 } { 0156 } + { A5 } { 0128 } + { A6 } { 013B } + { A9 } { 0160 } + { AA } { 0112 } + { AB } { 0122 } + { AC } { 0166 } + { AE } { 017D } + { B1 } { 0105 } + { B2 } { 02DB } + { B3 } { 0157 } + { B5 } { 0129 } + { B6 } { 013C } + { B7 } { 02C7 } + { B9 } { 0161 } + { BA } { 0113 } + { BB } { 0123 } + { BC } { 0167 } + { BD } { 014A } + { BE } { 017E } + { BF } { 014B } + { C0 } { 0100 } + { C7 } { 012E } + { C8 } { 010C } + { CA } { 0118 } + { CC } { 0116 } + { CF } { 012A } + { D0 } { 0110 } + { D1 } { 0145 } + { D2 } { 014C } + { D3 } { 0136 } + { D9 } { 0172 } + { DD } { 0168 } + { DE } { 016A } + { E0 } { 0101 } + { E7 } { 012F } + { E8 } { 010D } + { EA } { 0119 } + { EC } { 0117 } + { EF } { 012B } + { F0 } { 0111 } + { F1 } { 0146 } + { F2 } { 014D } + { F3 } { 0137 } + { F9 } { 0173 } + { FD } { 0169 } + { FE } { 016B } + { FF } { 02D9 } + } + { + } +%% +%% +%% End of file `l3str-enc-iso88594.def'. diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88595.def b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88595.def new file mode 100644 index 00000000000..6f82eaf2f03 --- /dev/null +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88595.def @@ -0,0 +1,149 @@ +%% +%% This is file `l3str-enc-iso88595.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% l3str-convert.dtx (with options: `iso88595') +%% +%% EXPERIMENTAL CODE +%% +%% Do not distribute this file without also distributing the +%% source files specified above. +%% +%% Do not distribute a modified version of this file. +%% +%% File: l3str-convert.dtx Copyright (C) 2013 The LaTeX3 Project +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This file is part of the "l3experimental bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% The released version of this bundle is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the bundle can be found at +%% +%% http://www.latex-project.org/svnroot/experimental/trunk/ +%% +%% for those people who are interested. +%% +%%%%%%%%%%% +%% NOTE: %% +%%%%%%%%%%% +%% +%% Snapshots taken from the repository represent work in progress and may +%% not work or may contain conflicting material! We therefore ask +%% people _not_ to put them into distributions, archives, etc. without +%% prior consultation with the LaTeX3 Project. +%% +%% ----------------------------------------------------------------------- +\__str_declare_eight_bit_encoding:nnn { iso88595 } + { + { A1 } { 0401 } + { A2 } { 0402 } + { A3 } { 0403 } + { A4 } { 0404 } + { A5 } { 0405 } + { A6 } { 0406 } + { A7 } { 0407 } + { A8 } { 0408 } + { A9 } { 0409 } + { AA } { 040A } + { AB } { 040B } + { AC } { 040C } + { AE } { 040E } + { AF } { 040F } + { B0 } { 0410 } + { B1 } { 0411 } + { B2 } { 0412 } + { B3 } { 0413 } + { B4 } { 0414 } + { B5 } { 0415 } + { B6 } { 0416 } + { B7 } { 0417 } + { B8 } { 0418 } + { B9 } { 0419 } + { BA } { 041A } + { BB } { 041B } + { BC } { 041C } + { BD } { 041D } + { BE } { 041E } + { BF } { 041F } + { C0 } { 0420 } + { C1 } { 0421 } + { C2 } { 0422 } + { C3 } { 0423 } + { C4 } { 0424 } + { C5 } { 0425 } + { C6 } { 0426 } + { C7 } { 0427 } + { C8 } { 0428 } + { C9 } { 0429 } + { CA } { 042A } + { CB } { 042B } + { CC } { 042C } + { CD } { 042D } + { CE } { 042E } + { CF } { 042F } + { D0 } { 0430 } + { D1 } { 0431 } + { D2 } { 0432 } + { D3 } { 0433 } + { D4 } { 0434 } + { D5 } { 0435 } + { D6 } { 0436 } + { D7 } { 0437 } + { D8 } { 0438 } + { D9 } { 0439 } + { DA } { 043A } + { DB } { 043B } + { DC } { 043C } + { DD } { 043D } + { DE } { 043E } + { DF } { 043F } + { E0 } { 0440 } + { E1 } { 0441 } + { E2 } { 0442 } + { E3 } { 0443 } + { E4 } { 0444 } + { E5 } { 0445 } + { E6 } { 0446 } + { E7 } { 0447 } + { E8 } { 0448 } + { E9 } { 0449 } + { EA } { 044A } + { EB } { 044B } + { EC } { 044C } + { ED } { 044D } + { EE } { 044E } + { EF } { 044F } + { F0 } { 2116 } + { F1 } { 0451 } + { F2 } { 0452 } + { F3 } { 0453 } + { F4 } { 0454 } + { F5 } { 0455 } + { F6 } { 0456 } + { F7 } { 0457 } + { F8 } { 0458 } + { F9 } { 0459 } + { FA } { 045A } + { FB } { 045B } + { FC } { 045C } + { FD } { 00A7 } + { FE } { 045E } + { FF } { 045F } + } + { + } +%% +%% +%% End of file `l3str-enc-iso88595.def'. diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88596.def b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88596.def new file mode 100644 index 00000000000..5988e27f241 --- /dev/null +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88596.def @@ -0,0 +1,135 @@ +%% +%% This is file `l3str-enc-iso88596.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% l3str-convert.dtx (with options: `iso88596') +%% +%% EXPERIMENTAL CODE +%% +%% Do not distribute this file without also distributing the +%% source files specified above. +%% +%% Do not distribute a modified version of this file. +%% +%% File: l3str-convert.dtx Copyright (C) 2013 The LaTeX3 Project +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This file is part of the "l3experimental bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% The released version of this bundle is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the bundle can be found at +%% +%% http://www.latex-project.org/svnroot/experimental/trunk/ +%% +%% for those people who are interested. +%% +%%%%%%%%%%% +%% NOTE: %% +%%%%%%%%%%% +%% +%% Snapshots taken from the repository represent work in progress and may +%% not work or may contain conflicting material! We therefore ask +%% people _not_ to put them into distributions, archives, etc. without +%% prior consultation with the LaTeX3 Project. +%% +%% ----------------------------------------------------------------------- +\__str_declare_eight_bit_encoding:nnn { iso88596 } + { + { AC } { 060C } + { BB } { 061B } + { BF } { 061F } + { C1 } { 0621 } + { C2 } { 0622 } + { C3 } { 0623 } + { C4 } { 0624 } + { C5 } { 0625 } + { C6 } { 0626 } + { C7 } { 0627 } + { C8 } { 0628 } + { C9 } { 0629 } + { CA } { 062A } + { CB } { 062B } + { CC } { 062C } + { CD } { 062D } + { CE } { 062E } + { CF } { 062F } + { D0 } { 0630 } + { D1 } { 0631 } + { D2 } { 0632 } + { D3 } { 0633 } + { D4 } { 0634 } + { D5 } { 0635 } + { D6 } { 0636 } + { D7 } { 0637 } + { D8 } { 0638 } + { D9 } { 0639 } + { DA } { 063A } + { E0 } { 0640 } + { E1 } { 0641 } + { E2 } { 0642 } + { E3 } { 0643 } + { E4 } { 0644 } + { E5 } { 0645 } + { E6 } { 0646 } + { E7 } { 0647 } + { E8 } { 0648 } + { E9 } { 0649 } + { EA } { 064A } + { EB } { 064B } + { EC } { 064C } + { ED } { 064D } + { EE } { 064E } + { EF } { 064F } + { F0 } { 0650 } + { F1 } { 0651 } + { F2 } { 0652 } + } + { + { A1 } + { A2 } + { A3 } + { A5 } + { A6 } + { A7 } + { A8 } + { A9 } + { AA } + { AB } + { AE } + { AF } + { B0 } + { B1 } + { B2 } + { B3 } + { B4 } + { B5 } + { B6 } + { B7 } + { B8 } + { B9 } + { BA } + { BC } + { BD } + { BE } + { C0 } + { DB } + { DC } + { DD } + { DE } + { DF } + } +%% +%% +%% End of file `l3str-enc-iso88596.def'. diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88597.def b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88597.def new file mode 100644 index 00000000000..bae593ca37b --- /dev/null +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88597.def @@ -0,0 +1,134 @@ +%% +%% This is file `l3str-enc-iso88597.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% l3str-convert.dtx (with options: `iso88597') +%% +%% EXPERIMENTAL CODE +%% +%% Do not distribute this file without also distributing the +%% source files specified above. +%% +%% Do not distribute a modified version of this file. +%% +%% File: l3str-convert.dtx Copyright (C) 2013 The LaTeX3 Project +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This file is part of the "l3experimental bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% The released version of this bundle is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the bundle can be found at +%% +%% http://www.latex-project.org/svnroot/experimental/trunk/ +%% +%% for those people who are interested. +%% +%%%%%%%%%%% +%% NOTE: %% +%%%%%%%%%%% +%% +%% Snapshots taken from the repository represent work in progress and may +%% not work or may contain conflicting material! We therefore ask +%% people _not_ to put them into distributions, archives, etc. without +%% prior consultation with the LaTeX3 Project. +%% +%% ----------------------------------------------------------------------- +\__str_declare_eight_bit_encoding:nnn { iso88597 } + { + { A1 } { 2018 } + { A2 } { 2019 } + { A4 } { 20AC } + { A5 } { 20AF } + { AA } { 037A } + { AF } { 2015 } + { B4 } { 0384 } + { B5 } { 0385 } + { B6 } { 0386 } + { B8 } { 0388 } + { B9 } { 0389 } + { BA } { 038A } + { BC } { 038C } + { BE } { 038E } + { BF } { 038F } + { C0 } { 0390 } + { C1 } { 0391 } + { C2 } { 0392 } + { C3 } { 0393 } + { C4 } { 0394 } + { C5 } { 0395 } + { C6 } { 0396 } + { C7 } { 0397 } + { C8 } { 0398 } + { C9 } { 0399 } + { CA } { 039A } + { CB } { 039B } + { CC } { 039C } + { CD } { 039D } + { CE } { 039E } + { CF } { 039F } + { D0 } { 03A0 } + { D1 } { 03A1 } + { D3 } { 03A3 } + { D4 } { 03A4 } + { D5 } { 03A5 } + { D6 } { 03A6 } + { D7 } { 03A7 } + { D8 } { 03A8 } + { D9 } { 03A9 } + { DA } { 03AA } + { DB } { 03AB } + { DC } { 03AC } + { DD } { 03AD } + { DE } { 03AE } + { DF } { 03AF } + { E0 } { 03B0 } + { E1 } { 03B1 } + { E2 } { 03B2 } + { E3 } { 03B3 } + { E4 } { 03B4 } + { E5 } { 03B5 } + { E6 } { 03B6 } + { E7 } { 03B7 } + { E8 } { 03B8 } + { E9 } { 03B9 } + { EA } { 03BA } + { EB } { 03BB } + { EC } { 03BC } + { ED } { 03BD } + { EE } { 03BE } + { EF } { 03BF } + { F0 } { 03C0 } + { F1 } { 03C1 } + { F2 } { 03C2 } + { F3 } { 03C3 } + { F4 } { 03C4 } + { F5 } { 03C5 } + { F6 } { 03C6 } + { F7 } { 03C7 } + { F8 } { 03C8 } + { F9 } { 03C9 } + { FA } { 03CA } + { FB } { 03CB } + { FC } { 03CC } + { FD } { 03CD } + { FE } { 03CE } + } + { + { AE } + { D2 } + } +%% +%% +%% End of file `l3str-enc-iso88597.def'. diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88598.def b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88598.def new file mode 100644 index 00000000000..09f7aad125f --- /dev/null +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88598.def @@ -0,0 +1,122 @@ +%% +%% This is file `l3str-enc-iso88598.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% l3str-convert.dtx (with options: `iso88598') +%% +%% EXPERIMENTAL CODE +%% +%% Do not distribute this file without also distributing the +%% source files specified above. +%% +%% Do not distribute a modified version of this file. +%% +%% File: l3str-convert.dtx Copyright (C) 2013 The LaTeX3 Project +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This file is part of the "l3experimental bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% The released version of this bundle is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the bundle can be found at +%% +%% http://www.latex-project.org/svnroot/experimental/trunk/ +%% +%% for those people who are interested. +%% +%%%%%%%%%%% +%% NOTE: %% +%%%%%%%%%%% +%% +%% Snapshots taken from the repository represent work in progress and may +%% not work or may contain conflicting material! We therefore ask +%% people _not_ to put them into distributions, archives, etc. without +%% prior consultation with the LaTeX3 Project. +%% +%% ----------------------------------------------------------------------- +\__str_declare_eight_bit_encoding:nnn { iso88598 } + { + { AA } { 00D7 } + { BA } { 00F7 } + { DF } { 2017 } + { E0 } { 05D0 } + { E1 } { 05D1 } + { E2 } { 05D2 } + { E3 } { 05D3 } + { E4 } { 05D4 } + { E5 } { 05D5 } + { E6 } { 05D6 } + { E7 } { 05D7 } + { E8 } { 05D8 } + { E9 } { 05D9 } + { EA } { 05DA } + { EB } { 05DB } + { EC } { 05DC } + { ED } { 05DD } + { EE } { 05DE } + { EF } { 05DF } + { F0 } { 05E0 } + { F1 } { 05E1 } + { F2 } { 05E2 } + { F3 } { 05E3 } + { F4 } { 05E4 } + { F5 } { 05E5 } + { F6 } { 05E6 } + { F7 } { 05E7 } + { F8 } { 05E8 } + { F9 } { 05E9 } + { FA } { 05EA } + { FD } { 200E } + { FE } { 200F } + } + { + { A1 } + { BF } + { C0 } + { C1 } + { C2 } + { C3 } + { C4 } + { C5 } + { C6 } + { C7 } + { C8 } + { C9 } + { CA } + { CB } + { CC } + { CD } + { CE } + { CF } + { D0 } + { D1 } + { D2 } + { D3 } + { D4 } + { D5 } + { D6 } + { D7 } + { D8 } + { D9 } + { DA } + { DB } + { DC } + { DD } + { DE } + { FB } + { FC } + } +%% +%% +%% End of file `l3str-enc-iso88598.def'. diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88599.def b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88599.def new file mode 100644 index 00000000000..f7aad4489f7 --- /dev/null +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-iso88599.def @@ -0,0 +1,61 @@ +%% +%% This is file `l3str-enc-iso88599.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% l3str-convert.dtx (with options: `iso88599') +%% +%% EXPERIMENTAL CODE +%% +%% Do not distribute this file without also distributing the +%% source files specified above. +%% +%% Do not distribute a modified version of this file. +%% +%% File: l3str-convert.dtx Copyright (C) 2013 The LaTeX3 Project +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This file is part of the "l3experimental bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% The released version of this bundle is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the bundle can be found at +%% +%% http://www.latex-project.org/svnroot/experimental/trunk/ +%% +%% for those people who are interested. +%% +%%%%%%%%%%% +%% NOTE: %% +%%%%%%%%%%% +%% +%% Snapshots taken from the repository represent work in progress and may +%% not work or may contain conflicting material! We therefore ask +%% people _not_ to put them into distributions, archives, etc. without +%% prior consultation with the LaTeX3 Project. +%% +%% ----------------------------------------------------------------------- +\__str_declare_eight_bit_encoding:nnn { iso88599 } + { + { D0 } { 011E } + { DD } { 0130 } + { DE } { 015E } + { F0 } { 011F } + { FD } { 0131 } + { FE } { 015F } + } + { + } +%% +%% +%% End of file `l3str-enc-iso88599.def'. diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-utf16.def b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-utf16.def new file mode 100644 index 00000000000..83d52ad734a --- /dev/null +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-utf16.def @@ -0,0 +1,228 @@ +%% +%% This is file `l3str-enc-utf16.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% l3str-convert.dtx (with options: `utf16') +%% +%% EXPERIMENTAL CODE +%% +%% Do not distribute this file without also distributing the +%% source files specified above. +%% +%% Do not distribute a modified version of this file. +%% +%% File: l3str-convert.dtx Copyright (C) 2013 The LaTeX3 Project +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This file is part of the "l3experimental bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% The released version of this bundle is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the bundle can be found at +%% +%% http://www.latex-project.org/svnroot/experimental/trunk/ +%% +%% for those people who are interested. +%% +%%%%%%%%%%% +%% NOTE: %% +%%%%%%%%%%% +%% +%% Snapshots taken from the repository represent work in progress and may +%% not work or may contain conflicting material! We therefore ask +%% people _not_ to put them into distributions, archives, etc. without +%% prior consultation with the LaTeX3 Project. +%% +%% ----------------------------------------------------------------------- +\group_begin: + \char_set_catcode_other:N \^^fe + \char_set_catcode_other:N \^^ff + \cs_new_protected_nopar:cpn { __str_convert_encode_utf16: } + { + \__str_encode_utf_xvi_aux:N \__str_output_byte_pair_be:n + \tl_gput_left:Nx \g__str_result_tl { ^^fe ^^ff } + } + \cs_new_protected_nopar:cpn { __str_convert_encode_utf16be: } + { \__str_encode_utf_xvi_aux:N \__str_output_byte_pair_be:n } + \cs_new_protected_nopar:cpn { __str_convert_encode_utf16le: } + { \__str_encode_utf_xvi_aux:N \__str_output_byte_pair_le:n } + \cs_new_protected:Npn \__str_encode_utf_xvi_aux:N #1 + { + \flag_clear:n { str_error } + \cs_set_eq:NN \__str_tmp:w #1 + \__str_convert_gmap_internal:N \__str_encode_utf_xvi_char:n + \__str_if_flag_error:nnx { str_error } { utf16-encode } { } + } + \cs_new:Npn \__str_encode_utf_xvi_char:n #1 + { + \if_int_compare:w #1 < "D800 \exp_stop_f: + \__str_tmp:w {#1} + \else: + \if_int_compare:w #1 < "10000 \exp_stop_f: + \if_int_compare:w #1 < "E000 \exp_stop_f: + \flag_raise:n { str_error } + \__str_tmp:w { \c__str_replacement_char_int } + \else: + \__str_tmp:w {#1} + \fi: + \else: + \exp_args:Nf \__str_tmp:w { \int_div_truncate:nn {#1} {"400} + "D7C0 } + \exp_args:Nf \__str_tmp:w { \int_mod:nn {#1} {"400} + "DC00 } + \fi: + \fi: + } + \flag_clear_new:n { str_missing } + \flag_clear_new:n { str_extra } + \flag_clear_new:n { str_end } + \__msg_kernel_new:nnnn { str } { utf16-encode } + { Unicode~string~cannot~be~expressed~in~UTF-16:~surrogate. } + { + Surrogate~code~points~(in~the~range~[U+D800,~U+DFFF])~ + can~be~expressed~in~the~UTF-8~and~UTF-32~encodings,~ + but~not~in~the~UTF-16~encoding. + } + \__msg_kernel_new:nnnn { str } { utf16-decode } + { + Invalid~UTF-16~string: \exp_last_unbraced:Nf \use_none:n + \__str_if_flag_times:nT { str_missing } { ,~missing~trail~surrogate } + \__str_if_flag_times:nT { str_extra } { ,~extra~trail~surrogate } + \__str_if_flag_times:nT { str_end } { ,~odd~number~of~bytes } + . + } + { + In~the~UTF-16~encoding,~each~Unicode~character~is~encoded~as~ + 2~or~4~bytes: \\ + \iow_indent:n + { + Code~point~in~[U+0000,~U+D7FF]:~two~bytes \\ + Code~point~in~[U+D800,~U+DFFF]:~illegal \\ + Code~point~in~[U+E000,~U+FFFF]:~two~bytes \\ + Code~point~in~[U+10000,~U+10FFFF]:~ + a~lead~surrogate~and~a~trail~surrogate \\ + } + Lead~surrogates~are~pairs~of~bytes~in~the~range~[0xD800,~0xDBFF],~ + and~trail~surrogates~are~in~the~range~[0xDC00,~0xDFFF]. + \flag_if_raised:nT { str_missing } + { + \\\\ + A~lead~surrogate~was~not~followed~by~a~trail~surrogate. + } + \flag_if_raised:nT { str_extra } + { + \\\\ + LaTeX~came~across~a~trail~surrogate~when~it~was~not~expected. + } + \flag_if_raised:nT { str_end } + { + \\\\ + The~string~contained~an~odd~number~of~bytes.~This~is~invalid:~ + the~basic~code~unit~for~UTF-16~is~16~bits~(2~bytes). + } + } + \cs_new_protected_nopar:cpn { __str_convert_decode_utf16be: } + { \__str_decode_utf_xvi:Nw 1 \g__str_result_tl \s__stop } + \cs_new_protected_nopar:cpn { __str_convert_decode_utf16le: } + { \__str_decode_utf_xvi:Nw 2 \g__str_result_tl \s__stop } + \cs_new_protected_nopar:cpn { __str_convert_decode_utf16: } + { + \exp_after:wN \__str_decode_utf_xvi_bom:NN + \g__str_result_tl \s__stop \s__stop \s__stop + } + \cs_new_protected:Npn \__str_decode_utf_xvi_bom:NN #1#2 + { + \str_if_eq_x:nnTF { #1#2 } { ^^ff ^^fe } + { \__str_decode_utf_xvi:Nw 2 } + { + \str_if_eq_x:nnTF { #1#2 } { ^^fe ^^ff } + { \__str_decode_utf_xvi:Nw 1 } + { \__str_decode_utf_xvi:Nw 1 #1#2 } + } + } + \cs_new_protected:Npn \__str_decode_utf_xvi:Nw #1#2 \s__stop + { + \flag_clear:n { str_error } + \flag_clear:n { str_missing } + \flag_clear:n { str_extra } + \flag_clear:n { str_end } + \cs_set:Npn \__str_tmp:w ##1 ##2 { ` ## #1 } + \tl_gset:Nx \g__str_result_tl + { + \exp_after:wN \__str_decode_utf_xvi_pair:NN + #2 \q_nil \q_nil + \__prg_break_point: + } + \__str_if_flag_error:nnx { str_error } { utf16-decode } { } + } + \cs_new:Npn \__str_decode_utf_xvi_pair:NN #1#2 + { + \if_meaning:w \q_nil #2 + \__str_decode_utf_xvi_pair_end:Nw #1 + \fi: + \if_case:w + \__int_eval:w ( \__str_tmp:w #1#2 - "D6 ) / \c_four \__int_eval_end: + \or: \exp_after:wN \__str_decode_utf_xvi_quad:NNwNN + \or: \exp_after:wN \__str_decode_utf_xvi_extra:NNw + \fi: + #1#2 \s__tl + \int_eval:n { "100 * \__str_tmp:w #1#2 + \__str_tmp:w #2#1 } \s__tl + \__str_decode_utf_xvi_pair:NN + } + \cs_new:Npn \__str_decode_utf_xvi_quad:NNwNN + #1#2 #3 \__str_decode_utf_xvi_pair:NN #4#5 + { + \if_meaning:w \q_nil #5 + \__str_decode_utf_xvi_error:nNN { missing } #1#2 + \__str_decode_utf_xvi_pair_end:Nw #4 + \fi: + \if_int_compare:w + \if_int_compare:w \__str_tmp:w #4#5 < "DC \exp_stop_f: + \c_zero = \c_one + \else: + \__str_tmp:w #4#5 < "E0 \exp_stop_f: + \fi: + #1 #2 #4 #5 \s__tl + \int_eval:n + { + ( "100 * \__str_tmp:w #1#2 + \__str_tmp:w #2#1 - "D7F7 ) * "400 + + "100 * \__str_tmp:w #4#5 + \__str_tmp:w #5#4 + } + \s__tl + \exp_after:wN \use_i:nnn + \else: + \__str_decode_utf_xvi_error:nNN { missing } #1#2 + \fi: + \__str_decode_utf_xvi_pair:NN #4#5 + } + \cs_new:Npn \__str_decode_utf_xvi_pair_end:Nw #1 \fi: + { + \fi: + \if_meaning:w \q_nil #1 + \else: + \__str_decode_utf_xvi_error:nNN { end } #1 \prg_do_nothing: + \fi: + \__prg_break: + } + \cs_new:Npn \__str_decode_utf_xvi_extra:NNw #1#2 \s__tl #3 \s__tl + { \__str_decode_utf_xvi_error:nNN { extra } #1#2 } + \cs_new:Npn \__str_decode_utf_xvi_error:nNN #1#2#3 + { + \flag_raise:n { str_error } + \flag_raise:n { str_#1 } + #2 #3 \s__tl + \int_use:N \c__str_replacement_char_int \s__tl + } +\group_end: +%% +%% +%% End of file `l3str-enc-utf16.def'. diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-utf32.def b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-utf32.def new file mode 100644 index 00000000000..a75b05875c6 --- /dev/null +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-utf32.def @@ -0,0 +1,179 @@ +%% +%% This is file `l3str-enc-utf32.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% l3str-convert.dtx (with options: `utf32') +%% +%% EXPERIMENTAL CODE +%% +%% Do not distribute this file without also distributing the +%% source files specified above. +%% +%% Do not distribute a modified version of this file. +%% +%% File: l3str-convert.dtx Copyright (C) 2013 The LaTeX3 Project +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This file is part of the "l3experimental bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% The released version of this bundle is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the bundle can be found at +%% +%% http://www.latex-project.org/svnroot/experimental/trunk/ +%% +%% for those people who are interested. +%% +%%%%%%%%%%% +%% NOTE: %% +%%%%%%%%%%% +%% +%% Snapshots taken from the repository represent work in progress and may +%% not work or may contain conflicting material! We therefore ask +%% people _not_ to put them into distributions, archives, etc. without +%% prior consultation with the LaTeX3 Project. +%% +%% ----------------------------------------------------------------------- +\group_begin: + \char_set_catcode_other:N \^^00 + \char_set_catcode_other:N \^^fe + \char_set_catcode_other:N \^^ff + \cs_new_protected_nopar:cpn { __str_convert_encode_utf32: } + { + \__str_convert_gmap_internal:N \__str_encode_utf_xxxii_be:n + \tl_gput_left:Nx \g__str_result_tl { ^^00 ^^00 ^^fe ^^ff } + } + \cs_new_protected_nopar:cpn { __str_convert_encode_utf32be: } + { \__str_convert_gmap_internal:N \__str_encode_utf_xxxii_be:n } + \cs_new_protected_nopar:cpn { __str_convert_encode_utf32le: } + { \__str_convert_gmap_internal:N \__str_encode_utf_xxxii_le:n } + \cs_new:Npn \__str_encode_utf_xxxii_be:n #1 + { + \exp_args:Nf \__str_encode_utf_xxxii_be_aux:nn + { \int_div_truncate:nn {#1} { "100 } } {#1} + } + \cs_new:Npn \__str_encode_utf_xxxii_be_aux:nn #1#2 + { + ^^00 + \__str_output_byte_pair_be:n {#1} + \__str_output_byte:n { #2 - #1 * "100 } + } + \cs_new:Npn \__str_encode_utf_xxxii_le:n #1 + { + \exp_args:Nf \__str_encode_utf_xxxii_le_aux:nn + { \int_div_truncate:nn {#1} { "100 } } {#1} + } + \cs_new:Npn \__str_encode_utf_xxxii_le_aux:nn #1#2 + { + \__str_output_byte:n { #2 - #1 * "100 } + \__str_output_byte_pair_le:n {#1} + ^^00 + } + \flag_clear_new:n { str_overflow } + \flag_clear_new:n { str_end } + \__msg_kernel_new:nnnn { str } { utf32-decode } + { + Invalid~UTF-32~string: \exp_last_unbraced:Nf \use_none:n + \__str_if_flag_times:nT { str_overflow } { ,~code~point~too~large } + \__str_if_flag_times:nT { str_end } { ,~truncated~string } + . + } + { + In~the~UTF-32~encoding,~every~Unicode~character~ + (in~the~range~[U+0000,~U+10FFFF])~is~encoded~as~4~bytes. + \flag_if_raised:nT { str_overflow } + { + \\\\ + LaTeX~came~across~a~code~point~larger~than~1114111,~ + the~maximum~code~point~defined~by~Unicode.~ + Perhaps~the~string~was~not~encoded~in~the~UTF-32~encoding? + } + \flag_if_raised:nT { str_end } + { + \\\\ + The~length~of~the~string~is~not~a~multiple~of~4.~ + Perhaps~the~string~was~truncated? + } + } + \cs_new_protected_nopar:cpn { __str_convert_decode_utf32be: } + { \__str_decode_utf_xxxii:Nw 1 \g__str_result_tl \s__stop } + \cs_new_protected_nopar:cpn { __str_convert_decode_utf32le: } + { \__str_decode_utf_xxxii:Nw 2 \g__str_result_tl \s__stop } + \cs_new_protected_nopar:cpn { __str_convert_decode_utf32: } + { + \exp_after:wN \__str_decode_utf_xxxii_bom:NNNN \g__str_result_tl + \s__stop \s__stop \s__stop \s__stop \s__stop + } + \cs_new_protected:Npn \__str_decode_utf_xxxii_bom:NNNN #1#2#3#4 + { + \str_if_eq_x:nnTF { #1#2#3#4 } { ^^ff ^^fe ^^00 ^^00 } + { \__str_decode_utf_xxxii:Nw 2 } + { + \str_if_eq_x:nnTF { #1#2#3#4 } { ^^00 ^^00 ^^fe ^^ff } + { \__str_decode_utf_xxxii:Nw 1 } + { \__str_decode_utf_xxxii:Nw 1 #1#2#3#4 } + } + } + \cs_new_protected:Npn \__str_decode_utf_xxxii:Nw #1#2 \s__stop + { + \flag_clear:n { str_overflow } + \flag_clear:n { str_end } + \flag_clear:n { str_error } + \cs_set:Npn \__str_tmp:w ##1 ##2 { ` ## #1 } + \tl_gset:Nx \g__str_result_tl + { + \exp_after:wN \__str_decode_utf_xxxii_loop:NNNN + #2 \s__stop \s__stop \s__stop \s__stop + \__prg_break_point: + } + \__str_if_flag_error:nnx { str_error } { utf32-decode } { } + } + \cs_new:Npn \__str_decode_utf_xxxii_loop:NNNN #1#2#3#4 + { + \if_meaning:w \s__stop #4 + \exp_after:wN \__str_decode_utf_xxxii_end:w + \fi: + #1#2#3#4 \s__tl + \if_int_compare:w \__str_tmp:w #1#4 > \c_zero + \flag_raise:n { str_overflow } + \flag_raise:n { str_error } + \int_use:N \c__str_replacement_char_int + \else: + \if_int_compare:w \__str_tmp:w #2#3 > \c_sixteen + \flag_raise:n { str_overflow } + \flag_raise:n { str_error } + \int_use:N \c__str_replacement_char_int + \else: + \int_eval:n + { \__str_tmp:w #2#3*"10000 + \__str_tmp:w #3#2*"100 + \__str_tmp:w #4#1 } + \fi: + \fi: + \s__tl + \__str_decode_utf_xxxii_loop:NNNN + } + \cs_new:Npn \__str_decode_utf_xxxii_end:w #1 \s__stop + { + \tl_if_empty:nF {#1} + { + \flag_raise:n { str_end } + \flag_raise:n { str_error } + #1 \s__tl + \int_use:N \c__str_replacement_char_int \s__tl + } + \__prg_break: + } +\group_end: +%% +%% +%% End of file `l3str-enc-utf32.def'. diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-utf8.def b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-utf8.def new file mode 100644 index 00000000000..ffe148d13e2 --- /dev/null +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-enc-utf8.def @@ -0,0 +1,215 @@ +%% +%% This is file `l3str-enc-utf8.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% l3str-convert.dtx (with options: `utf8') +%% +%% EXPERIMENTAL CODE +%% +%% Do not distribute this file without also distributing the +%% source files specified above. +%% +%% Do not distribute a modified version of this file. +%% +%% File: l3str-convert.dtx Copyright (C) 2013 The LaTeX3 Project +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This file is part of the "l3experimental bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% The released version of this bundle is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the bundle can be found at +%% +%% http://www.latex-project.org/svnroot/experimental/trunk/ +%% +%% for those people who are interested. +%% +%%%%%%%%%%% +%% NOTE: %% +%%%%%%%%%%% +%% +%% Snapshots taken from the repository represent work in progress and may +%% not work or may contain conflicting material! We therefore ask +%% people _not_ to put them into distributions, archives, etc. without +%% prior consultation with the LaTeX3 Project. +%% +%% ----------------------------------------------------------------------- +\cs_new_protected_nopar:cpn { __str_convert_encode_utf8: } + { \__str_convert_gmap_internal:N \__str_encode_utf_viii_char:n } +\cs_new:Npn \__str_encode_utf_viii_char:n #1 + { + \__str_encode_utf_viii_loop:wwnnw #1 ; \c_minus_one + \c_zero * ; + { 128 } { \c_zero } + { 32 } { 192 } + { 16 } { 224 } + { 8 } { 240 } + \q_stop + } +\cs_new:Npn \__str_encode_utf_viii_loop:wwnnw #1; #2; #3#4 #5 \q_stop + { + \if_int_compare:w #1 < #3 \exp_stop_f: + \__str_output_byte:n { #1 + #4 } + \exp_after:wN \use_none_delimit_by_q_stop:w + \fi: + \exp_after:wN \__str_encode_utf_viii_loop:wwnnw + \__int_value:w \int_div_truncate:nn {#1} {64} ; #1 ; + #5 \q_stop + \__str_output_byte:n { #2 - 64 * ( #1 - \c_two ) } + } +\flag_clear_new:n { str_missing } +\flag_clear_new:n { str_extra } +\flag_clear_new:n { str_overlong } +\flag_clear_new:n { str_overflow } +\__msg_kernel_new:nnnn { str } { utf8-decode } + { + Invalid~UTF-8~string: \exp_last_unbraced:Nf \use_none:n + \__str_if_flag_times:nT { str_missing } { ,~missing~continuation~byte } + \__str_if_flag_times:nT { str_extra } { ,~extra~continuation~byte } + \__str_if_flag_times:nT { str_overlong } { ,~overlong~form } + \__str_if_flag_times:nT { str_overflow } { ,~code~point~too~large } + . + } + { + In~the~UTF-8~encoding,~each~Unicode~character~consists~in~ + 1~to~4~bytes,~with~the~following~bit~pattern: \\ + \iow_indent:n + { + Code~point~\ \ \ \ <~128:~0xxxxxxx \\ + Code~point~\ \ \ <~2048:~110xxxxx~10xxxxxx \\ + Code~point~\ \ <~65536:~1110xxxx~10xxxxxx~10xxxxxx \\ + Code~point~ <~1114112:~11110xxx~10xxxxxx~10xxxxxx~10xxxxxx \\ + } + Bytes~of~the~form~10xxxxxx~are~called~continuation~bytes. + \flag_if_raised:nT { str_missing } + { + \\\\ + A~leading~byte~(in~the~range~[192,255])~was~not~followed~by~ + the~appropriate~number~of~continuation~bytes. + } + \flag_if_raised:nT { str_extra } + { + \\\\ + LaTeX~came~across~a~continuation~byte~when~it~was~not~expected. + } + \flag_if_raised:nT { str_overlong } + { + \\\\ + Every~Unicode~code~point~must~be~expressed~in~the~shortest~ + possible~form.~For~instance,~'0xC0'~'0x83'~is~not~a~valid~ + representation~for~the~code~point~3. + } + \flag_if_raised:nT { str_overflow } + { + \\\\ + Unicode~limits~code~points~to~the~range~[0,1114111]. + } + } +\cs_new_protected_nopar:cpn { __str_convert_decode_utf8: } + { + \flag_clear:n { str_error } + \flag_clear:n { str_missing } + \flag_clear:n { str_extra } + \flag_clear:n { str_overlong } + \flag_clear:n { str_overflow } + \tl_gset:Nx \g__str_result_tl + { + \exp_after:wN \__str_decode_utf_viii_start:N \g__str_result_tl + { \__prg_break: \__str_decode_utf_viii_end: } + \__prg_break_point: + } + \__str_if_flag_error:nnx { str_error } { utf8-decode } { } + } +\cs_new:Npn \__str_decode_utf_viii_start:N #1 + { + #1 + \if_int_compare:w `#1 < "C0 \exp_stop_f: + \s__tl + \if_int_compare:w `#1 < "80 \exp_stop_f: + \__int_value:w `#1 + \else: + \flag_raise:n { str_extra } + \flag_raise:n { str_error } + \int_use:N \c__str_replacement_char_int + \fi: + \else: + \exp_after:wN \__str_decode_utf_viii_continuation:wwN + \int_use:N \__int_eval:w `#1 - "C0 \exp_after:wN \__int_eval_end: + \fi: + \s__tl + \use_none_delimit_by_q_stop:w {"80} {"800} {"10000} {"110000} \q_stop + \__str_decode_utf_viii_start:N + } +\cs_new:Npn \__str_decode_utf_viii_continuation:wwN + #1 \s__tl #2 \__str_decode_utf_viii_start:N #3 + { + \use_none:n #3 + \if_int_compare:w `#3 < + \if_int_compare:w `#3 < "80 \exp_stop_f: - \fi: + "C0 \exp_stop_f: + #3 + \exp_after:wN \__str_decode_utf_viii_aux:wNnnwN + \int_use:N \__int_eval:w + #1 * "40 + `#3 - "80 + \exp_after:wN \__int_eval_end: + \else: + \s__tl + \flag_raise:n { str_missing } + \flag_raise:n { str_error } + \int_use:N \c__str_replacement_char_int + \fi: + \s__tl + #2 + \__str_decode_utf_viii_start:N #3 + } +\cs_new:Npn \__str_decode_utf_viii_aux:wNnnwN + #1 \s__tl #2#3#4 #5 \__str_decode_utf_viii_start:N #6 + { + \if_int_compare:w #1 < #4 \exp_stop_f: + \s__tl + \if_int_compare:w #1 < #3 \exp_stop_f: + \flag_raise:n { str_overlong } + \flag_raise:n { str_error } + \int_use:N \c__str_replacement_char_int + \else: + #1 + \fi: + \else: + \if_meaning:w \q_stop #5 + \__str_decode_utf_viii_overflow:w #1 + \fi: + \exp_after:wN \__str_decode_utf_viii_continuation:wwN + \int_use:N \__int_eval:w #1 - #4 \exp_after:wN \__int_eval_end: + \fi: + \s__tl + #2 {#4} #5 + \__str_decode_utf_viii_start:N + } +\cs_new:Npn \__str_decode_utf_viii_overflow:w #1 \fi: #2 \fi: + { + \fi: \fi: + \flag_raise:n { str_overflow } + \flag_raise:n { str_error } + \int_use:N \c__str_replacement_char_int + } +\cs_new_nopar:Npn \__str_decode_utf_viii_end: + { + \s__tl + \flag_raise:n { str_missing } + \flag_raise:n { str_error } + \int_use:N \c__str_replacement_char_int \s__tl + \__prg_break: + } +%% +%% +%% End of file `l3str-enc-utf8.def'. diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-esc-hex.def b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-esc-hex.def new file mode 100644 index 00000000000..6059b76076c --- /dev/null +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-esc-hex.def @@ -0,0 +1,100 @@ +%% +%% This is file `l3str-esc-hex.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% l3str-convert.dtx (with options: `hex') +%% +%% EXPERIMENTAL CODE +%% +%% Do not distribute this file without also distributing the +%% source files specified above. +%% +%% Do not distribute a modified version of this file. +%% +%% File: l3str-convert.dtx Copyright (C) 2013 The LaTeX3 Project +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This file is part of the "l3experimental bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% The released version of this bundle is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the bundle can be found at +%% +%% http://www.latex-project.org/svnroot/experimental/trunk/ +%% +%% for those people who are interested. +%% +%%%%%%%%%%% +%% NOTE: %% +%%%%%%%%%%% +%% +%% Snapshots taken from the repository represent work in progress and may +%% not work or may contain conflicting material! We therefore ask +%% people _not_ to put them into distributions, archives, etc. without +%% prior consultation with the LaTeX3 Project. +%% +%% ----------------------------------------------------------------------- +\cs_new_protected_nopar:Npn \__str_convert_unescape_hex: + { + \group_begin: + \flag_clear:n { str_error } + \int_set:Nn \tex_escapechar:D { 92 } + \tl_gset:Nx \g__str_result_tl + { + \__str_output_byte:w " + \exp_last_unbraced:Nf \__str_unescape_hex_auxi:N + { \tl_to_str:N \g__str_result_tl } + 0 { ? 0 - \c_one \__prg_break: } + \__prg_break_point: + \__str_output_end: + } + \__str_if_flag_error:nnx { str_error } { unescape-hex } { } + \group_end: + } +\cs_new:Npn \__str_unescape_hex_auxi:N #1 + { + \use_none:n #1 + \__str_hexadecimal_use:NTF #1 + { \__str_unescape_hex_auxii:N } + { + \flag_raise:n { str_error } + \__str_unescape_hex_auxi:N + } + } +\cs_new:Npn \__str_unescape_hex_auxii:N #1 + { + \use_none:n #1 + \__str_hexadecimal_use:NTF #1 + { + \__str_output_end: + \__str_output_byte:w " \__str_unescape_hex_auxi:N + } + { + \flag_raise:n { str_error } + \__str_unescape_hex_auxii:N + } + } +\__msg_kernel_new:nnnn { str } { unescape-hex } + { String~invalid~in~escaping~'hex':~only~hexadecimal~digits~allowed. } + { + Some~characters~in~the~string~you~asked~to~convert~are~not~ + hexadecimal~digits~(0-9,~A-F,~a-f)~nor~spaces. + } +\cs_new_protected_nopar:Npn \__str_convert_escape_hex: + { \__str_convert_gmap:N \__str_escape_hex_char:N } +\cs_new:Npn \__str_escape_hex_char:N #1 + { \__str_output_hexadecimal:n { `#1 } } +%% +%% +%% End of file `l3str-esc-hex.def'. diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-esc-name.def b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-esc-name.def new file mode 100644 index 00000000000..fb5b4d8263a --- /dev/null +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-esc-name.def @@ -0,0 +1,121 @@ +%% +%% This is file `l3str-esc-name.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% l3str-convert.dtx (with options: `name') +%% +%% EXPERIMENTAL CODE +%% +%% Do not distribute this file without also distributing the +%% source files specified above. +%% +%% Do not distribute a modified version of this file. +%% +%% File: l3str-convert.dtx Copyright (C) 2013 The LaTeX3 Project +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This file is part of the "l3experimental bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% The released version of this bundle is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the bundle can be found at +%% +%% http://www.latex-project.org/svnroot/experimental/trunk/ +%% +%% for those people who are interested. +%% +%%%%%%%%%%% +%% NOTE: %% +%%%%%%%%%%% +%% +%% Snapshots taken from the repository represent work in progress and may +%% not work or may contain conflicting material! We therefore ask +%% people _not_ to put them into distributions, archives, etc. without +%% prior consultation with the LaTeX3 Project. +%% +%% ----------------------------------------------------------------------- +\cs_set_protected:Npn \__str_tmp:w #1#2#3 + { + \cs_new_protected:cpn { __str_convert_unescape_#2: } + { + \group_begin: + \flag_clear:n { str_byte } + \flag_clear:n { str_error } + \int_set:Nn \tex_escapechar:D { 92 } + \tl_gset:Nx \g__str_result_tl + { + \exp_after:wN #3 \g__str_result_tl + #1 ? { ? \__prg_break: } + \__prg_break_point: + } + \__str_if_flag_error:nnx { str_byte } { non-byte } { #2 } + \__str_if_flag_error:nnx { str_error } { unescape-#2 } { } + \group_end: + } + \cs_new:Npn #3 ##1#1##2##3 + { + \__str_filter_bytes:n {##1} + \use_none:n ##3 + \__str_output_byte:w " + \__str_hexadecimal_use:NTF ##2 + { + \__str_hexadecimal_use:NTF ##3 + { } + { + \flag_raise:n { str_error } + * \c_zero + `#1 \use_i:nn + } + } + { + \flag_raise:n { str_error } + 0 + `#1 \use_i:nn + } + \__str_output_end: + \use_i:nnn #3 ##2##3 + } + \__msg_kernel_new:nnnn { str } { unescape-#2 } + { String~invalid~in~escaping~'#2'. } + { + LaTeX~came~across~the~escape~character~'#1'~not~followed~by~ + two~hexadecimal~digits.~This~is~invalid~in~the~escaping~'#2'. + } + } +\exp_after:wN \__str_tmp:w \c_hash_str { name } + \__str_unescape_name_loop:wNN +\str_const:Nn \c__str_escape_name_not_str { ! " $ & ' } %$ +\str_const:Nn \c__str_escape_name_str { {}/<>[] } +\cs_new_protected_nopar:Npn \__str_convert_escape_name: + { \__str_convert_gmap:N \__str_escape_name_char:N } +\cs_new:Npn \__str_escape_name_char:N #1 + { + \__str_if_escape_name:NTF #1 {#1} + { \c_hash_str \__str_output_hexadecimal:n {`#1} } + } +\prg_new_conditional:Npnn \__str_if_escape_name:N #1 { TF } + { + \if_int_compare:w `#1 < "2A \exp_stop_f: + \__str_if_contains_char:NNTF \c__str_escape_name_not_str #1 + \prg_return_true: \prg_return_false: + \else: + \if_int_compare:w `#1 > "7E \exp_stop_f: + \prg_return_false: + \else: + \__str_if_contains_char:NNTF \c__str_escape_name_str #1 + \prg_return_false: \prg_return_true: + \fi: + \fi: + } +%% +%% +%% End of file `l3str-esc-name.def'. diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-esc-string.def b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-esc-string.def new file mode 100644 index 00000000000..b7e5411f1ae --- /dev/null +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-esc-string.def @@ -0,0 +1,169 @@ +%% +%% This is file `l3str-esc-string.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% l3str-convert.dtx (with options: `string') +%% +%% EXPERIMENTAL CODE +%% +%% Do not distribute this file without also distributing the +%% source files specified above. +%% +%% Do not distribute a modified version of this file. +%% +%% File: l3str-convert.dtx Copyright (C) 2013 The LaTeX3 Project +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This file is part of the "l3experimental bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% The released version of this bundle is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the bundle can be found at +%% +%% http://www.latex-project.org/svnroot/experimental/trunk/ +%% +%% for those people who are interested. +%% +%%%%%%%%%%% +%% NOTE: %% +%%%%%%%%%%% +%% +%% Snapshots taken from the repository represent work in progress and may +%% not work or may contain conflicting material! We therefore ask +%% people _not_ to put them into distributions, archives, etc. without +%% prior consultation with the LaTeX3 Project. +%% +%% ----------------------------------------------------------------------- +\group_begin: + \char_set_lccode:nn {`\*} {`\\} + \char_set_catcode_other:N \^^J + \char_set_catcode_other:N \^^M + \tl_to_lowercase:n + { + \cs_new_protected_nopar:Npn \__str_convert_unescape_string: + { + \group_begin: + \flag_clear:n { str_byte } + \flag_clear:n { str_error } + \int_set:Nn \tex_escapechar:D { 92 } + \tl_gset:Nx \g__str_result_tl + { + \exp_after:wN \__str_unescape_string_newlines:wN + \g__str_result_tl \__prg_break: ^^M ? + \__prg_break_point: + } + \tl_gset:Nx \g__str_result_tl + { + \exp_after:wN \__str_unescape_string_loop:wNNN + \g__str_result_tl * ?? { ? \__prg_break: } + \__prg_break_point: + } + \__str_if_flag_error:nnx { str_byte } { non-byte } { string } + \__str_if_flag_error:nnx { str_error } { unescape-string } { } + \group_end: + } + \cs_new:Npn \__str_unescape_string_loop:wNNN #1 *#2#3#4 + } + { + \__str_filter_bytes:n {#1} + \use_none:n #4 + \__str_output_byte:w ' + \__str_octal_use:NTF #2 + { + \__str_octal_use:NTF #3 + { + \__str_octal_use:NTF #4 + { + \if_int_compare:w #2 > \c_three + - 256 + \fi: + \__str_unescape_string_repeat:NNNNNN + } + { \__str_unescape_string_repeat:NNNNNN ? } + } + { \__str_unescape_string_repeat:NNNNNN ?? } + } + { + \str_case_x:nnn {#2} + { + { \c_backslash_str } { 134 } + { ( } { 50 } + { ) } { 51 } + { r } { 15 } + { f } { 14 } + { n } { 12 } + { t } { 11 } + { b } { 10 } + { ^^J } { 0 - \c_one } + } + { + \flag_raise:n { str_error } + 0 - \c_one \use_i:nn + } + } + \__str_output_end: + \use_i:nn \__str_unescape_string_loop:wNNN #2#3#4 + } + \cs_new:Npn \__str_unescape_string_repeat:NNNNNN #1#2#3#4#5#6 + { \__str_output_end: \__str_unescape_string_loop:wNNN } + \cs_new:Npn \__str_unescape_string_newlines:wN #1 ^^M #2 + { + #1 + \if_charcode:w ^^J #2 \else: ^^J \fi: + \__str_unescape_string_newlines:wN #2 + } + \__msg_kernel_new:nnnn { str } { unescape-string } + { String~invalid~in~escaping~'string'. } + { + LaTeX~came~across~an~escape~character~'\c_backslash_str'~ + not~followed~by~any~of:~'n',~'r',~'t',~'b',~'f',~'(',~')',~ + '\c_backslash_str',~one~to~three~octal~digits,~or~the~end~ + of~a~line. + } +\group_end: +\str_const:Nx \c__str_escape_string_str + { \c_backslash_str ( ) } +\cs_new_protected_nopar:Npn \__str_convert_escape_string: + { \__str_convert_gmap:N \__str_escape_string_char:N } +\cs_new:Npn \__str_escape_string_char:N #1 + { + \__str_if_escape_string:NTF #1 + { + \__str_if_contains_char:NNT + \c__str_escape_string_str #1 + { \c_backslash_str } + #1 + } + { + \c_backslash_str + \int_div_truncate:nn {`#1} {64} + \int_mod:nn { \int_div_truncate:nn {`#1} \c_eight } \c_eight + \int_mod:nn {`#1} \c_eight + } + } +\prg_new_conditional:Npnn \__str_if_escape_string:N #1 { TF } + { + \if_int_compare:w `#1 < "21 \exp_stop_f: + \prg_return_false: + \else: + \if_int_compare:w `#1 > "7E \exp_stop_f: + \prg_return_false: + \else: + \prg_return_true: + \fi: + \fi: + } +%% +%% +%% End of file `l3str-esc-string.def'. diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-esc-url.def b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-esc-url.def new file mode 100644 index 00000000000..5324f7a0124 --- /dev/null +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-esc-url.def @@ -0,0 +1,119 @@ +%% +%% This is file `l3str-esc-url.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% l3str-convert.dtx (with options: `url') +%% +%% EXPERIMENTAL CODE +%% +%% Do not distribute this file without also distributing the +%% source files specified above. +%% +%% Do not distribute a modified version of this file. +%% +%% File: l3str-convert.dtx Copyright (C) 2013 The LaTeX3 Project +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This file is part of the "l3experimental bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% The released version of this bundle is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the bundle can be found at +%% +%% http://www.latex-project.org/svnroot/experimental/trunk/ +%% +%% for those people who are interested. +%% +%%%%%%%%%%% +%% NOTE: %% +%%%%%%%%%%% +%% +%% Snapshots taken from the repository represent work in progress and may +%% not work or may contain conflicting material! We therefore ask +%% people _not_ to put them into distributions, archives, etc. without +%% prior consultation with the LaTeX3 Project. +%% +%% ----------------------------------------------------------------------- +\cs_set_protected:Npn \__str_tmp:w #1#2#3 + { + \cs_new_protected:cpn { __str_convert_unescape_#2: } + { + \group_begin: + \flag_clear:n { str_byte } + \flag_clear:n { str_error } + \int_set:Nn \tex_escapechar:D { 92 } + \tl_gset:Nx \g__str_result_tl + { + \exp_after:wN #3 \g__str_result_tl + #1 ? { ? \__prg_break: } + \__prg_break_point: + } + \__str_if_flag_error:nnx { str_byte } { non-byte } { #2 } + \__str_if_flag_error:nnx { str_error } { unescape-#2 } { } + \group_end: + } + \cs_new:Npn #3 ##1#1##2##3 + { + \__str_filter_bytes:n {##1} + \use_none:n ##3 + \__str_output_byte:w " + \__str_hexadecimal_use:NTF ##2 + { + \__str_hexadecimal_use:NTF ##3 + { } + { + \flag_raise:n { str_error } + * \c_zero + `#1 \use_i:nn + } + } + { + \flag_raise:n { str_error } + 0 + `#1 \use_i:nn + } + \__str_output_end: + \use_i:nnn #3 ##2##3 + } + \__msg_kernel_new:nnnn { str } { unescape-#2 } + { String~invalid~in~escaping~'#2'. } + { + LaTeX~came~across~the~escape~character~'#1'~not~followed~by~ + two~hexadecimal~digits.~This~is~invalid~in~the~escaping~'#2'. + } + } +\exp_after:wN \__str_tmp:w \c_percent_str { url } + \__str_unescape_url_loop:wNN +\cs_new_protected_nopar:Npn \__str_convert_escape_url: + { \__str_convert_gmap:N \__str_escape_url_char:N } +\cs_new:Npn \__str_escape_url_char:N #1 + { + \__str_if_escape_url:NTF #1 {#1} + { \c_percent_str \__str_output_hexadecimal:n { `#1 } } + } +\prg_new_conditional:Npnn \__str_if_escape_url:N #1 { TF } + { + \if_int_compare:w `#1 < "41 \exp_stop_f: + \__str_if_contains_char:nNTF { "-.<> } #1 + \prg_return_true: \prg_return_false: + \else: + \if_int_compare:w `#1 > "7E \exp_stop_f: + \prg_return_false: + \else: + \__str_if_contains_char:nNTF { [ ] } #1 + \prg_return_false: \prg_return_true: + \fi: + \fi: + } +%% +%% +%% End of file `l3str-esc-url.def'. 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 868fef6ab5f..87eed61c5e8 100644 --- a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-format.sty +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-format.sty @@ -238,12 +238,12 @@ { \tl_to_str:f { - \__str_format_seq:ff { \exp_after:wN \__str_format_seq_extract:w #1 } + \__str_format_seq:ff + { \exp_after:wN \use_i:nn \exp_after:wN \exp_stop_f: #1 } { \__str_format_parse:n {#2} } } } \cs_generate_variant:Nn \seq_format:Nn { c } -\cs_new:Npn \__str_format_seq_extract:w \s__seq #1 \s_obj_end { \exp_stop_f: #1 } \cs_new:Npn \__str_format_seq:nn #1#2 { \__str_format_seq_loop:nnNn { } {#2} diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty index 3ac782837f7..37b1f86053f 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty @@ -60,8 +60,8 @@ } \def\ExplFileName{expl3} \def\ExplFileDescription{L3 Experimental code bundle wrapper} -\def\ExplFileDate{2013/11/19} -\def\ExplFileVersion{4610} +\def\ExplFileDate{2013/12/31} +\def\ExplFileVersion{4634} \RequirePackage{etex} \relax \reserveinserts{32} diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3bootstrap.sty b/Master/texmf-dist/tex/latex/l3kernel/l3bootstrap.sty index 9cd140d7174..e8217993546 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3bootstrap.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3bootstrap.sty @@ -102,7 +102,7 @@ {% \def\ExplFileDate{#1/#2/#3}% } -\GetIdInfo$Id: l3bootstrap.dtx 4581 2013-07-28 08:38:50Z joseph $ +\GetIdInfo$Id: l3bootstrap.dtx 4629 2013-12-29 20:59:49Z joseph $ {L3 Bootstrap code} \ProvidesPackage{l3bootstrap} [% @@ -156,7 +156,7 @@ \chardef\csname\detokenize{l__kernel_expl_bool}\endcsname = 0 \relax } \protected\edef\ExplSyntaxOn - { + {% \catcode 9 = 9 \relax \catcode 32 = 9 \relax \catcode 34 = 12 \relax diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3candidates.sty b/Master/texmf-dist/tex/latex/l3kernel/l3candidates.sty index fce554e38d6..868dfd992ee 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 4602 2013-11-18 23:19:01Z bruno $ +\GetIdInfo$Id: l3candidates.dtx 4633 2013-12-31 17:28:46Z joseph $ {L3 Experimental additions to l3kernel} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} @@ -784,8 +784,9 @@ { \__prop_get_Nn:nwwn {#1} } } \cs_generate_variant:Nn \prop_get:Nn { c } -\cs_new:Npn \seq_item:Nn #1 { \exp_after:wN \__seq_item:wNn #1 #1 } -\cs_new:Npn \__seq_item:wNn \s__seq #1 \s_obj_end #2#3 +\cs_new:Npn \seq_item:Nn #1 + { \exp_after:wN \__seq_item:wNn #1 \q_stop #1 } +\cs_new:Npn \__seq_item:wNn \s__seq #1 \q_stop #2#3 { \exp_args:Nf \__seq_item:nnn { @@ -809,17 +810,18 @@ } \cs_generate_variant:Nn \seq_item:Nn { c } \cs_new:Npn \seq_mapthread_function:NNN #1#2#3 - { \exp_after:wN \__seq_mapthread_function:wNN #2 #1 #3 } -\cs_new:Npn \__seq_mapthread_function:wNN \s__seq #1 \s_obj_end #2#3 { - \exp_after:wN \__seq_mapthread_function:wNw #2 #3 - #1 { ? \__prg_break: } { } + \exp_after:wN \__seq_mapthread_function:NNw + \exp_after:wN #3 + \exp_after:wN #1 + #2 { ? \__prg_break: } { } \__prg_break_point: } -\cs_new:Npn \__seq_mapthread_function:wNw \s__seq #1 \s_obj_end #2 +\cs_new:Npn \__seq_mapthread_function:NNw #1#2 { - \__seq_mapthread_function:Nnnwnn #2 - #1 { ? \__prg_break: } { } + \exp_after:wN \__seq_mapthread_function:Nnnwnn + \exp_after:wN #1 + #2 { ? \__prg_break: } { } \q_stop } \cs_new:Npn \__seq_mapthread_function:Nnnwnn #1#2#3#4 \q_stop #5#6 @@ -834,22 +836,22 @@ \cs_new_protected:Npn \seq_set_from_clist:NN #1#2 { \tl_set:Nx #1 - { \s__seq \clist_map_function:NN #2 \__seq_wrap_item:n \s_obj_end } + { \s__seq \clist_map_function:NN #2 \__seq_wrap_item:n } } \cs_new_protected:Npn \seq_set_from_clist:Nn #1#2 { \tl_set:Nx #1 - { \s__seq \clist_map_function:nN {#2} \__seq_wrap_item:n \s_obj_end } + { \s__seq \clist_map_function:nN {#2} \__seq_wrap_item:n } } \cs_new_protected:Npn \seq_gset_from_clist:NN #1#2 { \tl_gset:Nx #1 - { \s__seq \clist_map_function:NN #2 \__seq_wrap_item:n \s_obj_end } + { \s__seq \clist_map_function:NN #2 \__seq_wrap_item:n } } \cs_new_protected:Npn \seq_gset_from_clist:Nn #1#2 { \tl_gset:Nx #1 - { \s__seq \clist_map_function:nN {#2} \__seq_wrap_item:n \s_obj_end } + { \s__seq \clist_map_function:nN {#2} \__seq_wrap_item:n } } \cs_generate_variant:Nn \seq_set_from_clist:NN { Nc } \cs_generate_variant:Nn \seq_set_from_clist:NN { c , cc } @@ -857,7 +859,6 @@ \cs_generate_variant:Nn \seq_gset_from_clist:NN { Nc } \cs_generate_variant:Nn \seq_gset_from_clist:NN { c , cc } \cs_generate_variant:Nn \seq_gset_from_clist:Nn { c } -\cs_new_protected_nopar:Npn \__seq_tmp:w { } \cs_new_protected_nopar:Npn \seq_reverse:N { \__seq_reverse:NN \tl_set:Nx } \cs_new_protected_nopar:Npn \seq_greverse:N @@ -866,11 +867,9 @@ { \cs_set_eq:NN \__seq_tmp:w \__seq_item:n \cs_set_eq:NN \__seq_item:n \__seq_reverse_item:nwn - #1 #2 { \exp_after:wN \__seq_reverse_setup:w #2 } + #1 #2 { #2 \exp_not:n { } } \cs_set_eq:NN \__seq_item:n \__seq_tmp:w } -\cs_new:Npn \__seq_reverse_setup:w #1 \s_obj_end - { #1 \exp_not:n { } \s_obj_end } \cs_new:Npn \__seq_reverse_item:nwn #1 #2 \exp_not:n #3 { #2 diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3coffins.sty b/Master/texmf-dist/tex/latex/l3kernel/l3coffins.sty index a3743a477ad..e19b0b20e62 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3coffins.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3coffins.sty @@ -47,7 +47,7 @@ %% ----------------------------------------------------------------------- %% \RequirePackage{l3bootstrap} -\GetIdInfo$Id: l3coffins.dtx 4212 2012-09-09 12:24:04Z bruno $ +\GetIdInfo$Id: l3coffins.dtx 4624 2013-12-14 13:58:48Z bruno $ {L3 Coffin code layer} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} @@ -401,7 +401,7 @@ { \dim_compare:nNnTF {#8} = \c_zero_dim { - \dim_set:Nn \l__coffin_x_dim {#6} + \dim_set:Nn \l__coffin_y_dim {#6} \__coffin_calculate_intersection_aux:nnnnnN {#6} {#2} {#1} {#4} {#3} \l__coffin_x_dim } diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def b/Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def index 7fae4b147c9..154d3c8d659 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def +++ b/Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def @@ -47,48 +47,49 @@ %% ----------------------------------------------------------------------- %% \RequirePackage{l3bootstrap} -\GetIdInfo$Id: l3drivers.dtx 4602 2013-11-18 23:19:01Z bruno $ +\GetIdInfo$Id: l3drivers.dtx 4632 2013-12-31 17:09:37Z joseph $ {L3 Experimental drivers} \ProvidesExplFile {l3dvidpfmx.def}{\ExplFileDate}{\ExplFileVersion} {L3 Experimental driver: dvipdfmx} \__expl_package_check: -\cs_new_protected_nopar:Npn \__driver_graphic_state_save: - { \tex_special:D { pdf:content~q } } -\cs_new_protected_nopar:Npn \__driver_graphic_state_restore: - { \tex_special:D { pdf:content~Q } } -\cs_new_protected:Npn \__driver_pdf_literal:n #1 - { \tex_special:D { pdf:content~ #1 } } -\cs_new_protected:Npn \__driver_pdf_literal_direct:n #1 - { \tex_special:D { pdf:literal~direct~ #1 } } +\cs_new_protected_nopar:Npn \__driver_state_save: + { \tex_special:D { pdf:bcontent } } +\cs_new_protected_nopar:Npn \__driver_state_restore: + { \tex_special:D { pdf:econtent } } +\cs_new_protected:Npn \__driver_literal:n #1 + { \tex_special:D { pdf:literal~ #1 } } +\cs_new_protected:Npn \__driver_matrix:n #1 + { \__driver_literal:n { direct~ #1 \c_space_tl 0~0~cm } } \cs_new_protected:Npn \__driver_box_use_clip:N #1 { - \__driver_graphic_state_save: - \__driver_pdf_literal_direct:n + \__driver_literal:n { q } + \__driver_literal:n { - 0 ~ + direct~ + 0~ \__dim_strip_bp:n { - \box_dp:N #1 } ~ \__dim_strip_bp:n { \box_wd:N #1 } ~ \__dim_strip_bp:n { \box_ht:N #1 + \box_dp:N #1 } ~ re~W~n } - \__driver_pdf_matrix:n { -1~0~0~-1 } - \__driver_graphic_state_save: - \__driver_pdf_matrix:n { -1~0~0~-1 } + \__driver_matrix:n { -1~0~0~-1 } + \__driver_literal:n { q } + \__driver_matrix:n { -1~0~0~-1 } \hbox_overlap_right:n { \box_use:N #1 } - \__driver_graphic_state_restore: - \__driver_graphic_state_restore: + \__driver_literal:n { Q } + \__driver_literal:n { Q } \skip_horizontal:n { \box_wd:N #1 } } \cs_new_protected_nopar:Npn \__driver_box_rotate_begin: { - \__driver_graphic_state_save: + \__driver_state_save: \box_set_wd:Nn \l__box_internal_box \c_zero_dim \fp_set:Nn \l__box_cos_fp { round ( \l__box_cos_fp , 5 ) } \fp_compare:nNnT \l__box_cos_fp = \c_zero_fp { \fp_zero:N \l__box_cos_fp } \fp_set:Nn \l__box_sin_fp { round ( \l__box_sin_fp , 5 ) } - \__driver_pdf_matrix:n + \__driver_matrix:n { \fp_use:N \l__box_cos_fp \c_space_tl \fp_compare:nNnTF \l__box_sin_fp = \c_zero_fp @@ -102,24 +103,23 @@ \fp_use:N \l__box_cos_fp } } -\cs_new_eq:NN \__driver_box_rotate_end: \__driver_graphic_state_restore: +\cs_new_eq:NN \__driver_box_rotate_end: \__driver_state_restore: \cs_new_protected_nopar:Npn \__driver_box_scale_begin: { + \__driver_state_save: \fp_set:Nn \l__box_scale_x_fp { round ( \l__box_scale_x_fp , 5 ) } \fp_set:Nn \l__box_scale_y_fp { round ( \l__box_scale_y_fp , 5 ) } - \__driver_graphic_state_save: - \__driver_pdf_matrix:n + \__driver_matrix:n { \fp_use:N \l__box_scale_x_fp \c_space_tl 0~0~ \fp_use:N \l__box_scale_y_fp } } -\cs_new_eq:NN \__driver_box_scale_end: \__driver_graphic_state_restore: -\cs_new_protected:Npn \__driver_pdf_matrix:n #1 - { \__driver_pdf_literal_direct:n { #1 \c_space_tl 0~0~cm } } +\cs_new_eq:NN \__driver_box_scale_end: \__driver_state_restore: \tl_new:N \l__driver_current_color_tl \tl_set:Nn \l__driver_current_color_tl { gray~0 } +%% \end{macrocode} \cs_new_protected_nopar:Npn \__driver_color_ensure_current: { \tex_special:D { color~push~\l__driver_current_color_tl } diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3dvips.def b/Master/texmf-dist/tex/latex/l3kernel/l3dvips.def index 991fe9b59c4..5c22f8648e9 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3dvips.def +++ b/Master/texmf-dist/tex/latex/l3kernel/l3dvips.def @@ -47,28 +47,28 @@ %% ----------------------------------------------------------------------- %% \RequirePackage{l3bootstrap} -\GetIdInfo$Id: l3drivers.dtx 4602 2013-11-18 23:19:01Z bruno $ +\GetIdInfo$Id: l3drivers.dtx 4632 2013-12-31 17:09:37Z joseph $ {L3 Experimental drivers} \ProvidesExplFile {l3dvips.def}{\ExplFileDate}{\ExplFileVersion} {L3 Experimental driver: dvips} \__expl_package_check: -\cs_new_protected_nopar:Npn \__driver_graphic_state_save: +\cs_new_protected_nopar:Npn \__driver_state_save: { \tex_special:D { ps:gsave } } -\cs_new_protected_nopar:Npn \__driver_graphic_state_restore: +\cs_new_protected_nopar:Npn \__driver_state_restore: { \tex_special:D { ps:grestore } } -\cs_new_protected:Npn \__driver_ps_literal:n #1 +\cs_new_protected:Npn \__driver_literal:n #1 { \tex_special:D { ps: #1 } } \cs_new_protected:Npn \__driver_box_use_clip:N #1 { - \__driver_graphic_state_save: - \__driver_ps_literal:n + \__driver_state_save: + \__driver_literal:n { /savedmatrix~matrix~currentmatrix~def~ currentpoint~translate~ Resolution~72~div~VResolution~72~div~scale } - \__driver_ps_literal:n + \__driver_literal:n { 0~ \__dim_strip_bp:n { \box_dp:N #1 } ~ @@ -76,16 +76,16 @@ \__dim_strip_bp:n { - \box_ht:N #1 - \box_dp:N #1 } ~ rectclip } - \__driver_ps_literal:n { savedmatrix~setmatrix } + \__driver_literal:n { savedmatrix~setmatrix } \hbox_overlap_right:n { \box_use:N #1 } - \__driver_graphic_state_restore: + \__driver_state_restore: \skip_horizontal:n { \box_wd:N #1 } } \cs_new_protected_nopar:Npn \__driver_box_rotate_begin: { - \__driver_graphic_state_save: + \__driver_state_save: \fp_set:Nn \l__box_angle_fp { round ( \l__box_angle_fp , 5 ) } - \__driver_ps_literal:n + \__driver_literal:n { currentpoint~ currentpoint~translate~ @@ -96,13 +96,13 @@ neg~exch~neg~exch~translate } } -\cs_new_eq:NN \__driver_box_rotate_end: \__driver_graphic_state_restore: +\cs_new_eq:NN \__driver_box_rotate_end: \__driver_state_restore: \cs_new_protected_nopar:Npn \__driver_box_scale_begin: { + \__driver_state_save: \fp_set:Nn \l__box_scale_x_fp { round ( \l__box_scale_x_fp , 5 ) } \fp_set:Nn \l__box_scale_y_fp { round ( \l__box_scale_y_fp , 5 ) } - \__driver_graphic_state_save: - \__driver_ps_literal:n + \__driver_literal:n { currentpoint~ currentpoint~translate~ @@ -111,9 +111,10 @@ neg~exch~neg~exch~translate } } -\cs_new_eq:NN \__driver_box_scale_end: \__driver_graphic_state_restore: +\cs_new_eq:NN \__driver_box_scale_end: \__driver_state_restore: \tl_new:N \l__driver_current_color_tl \tl_set:Nn \l__driver_current_color_tl { Black } +%% \end{macrocode} \cs_new_protected_nopar:Npn \__driver_color_ensure_current: { \tex_special:D { color~push~\l__driver_current_color_tl } diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3fp.sty b/Master/texmf-dist/tex/latex/l3kernel/l3fp.sty index 679f97c2519..b304cbda2d0 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3fp.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3fp.sty @@ -59,7 +59,7 @@ %% ----------------------------------------------------------------------- %% \RequirePackage{l3bootstrap} -\GetIdInfo$Id: l3fp.dtx 4601 2013-11-18 23:13:28Z bruno $ +\GetIdInfo$Id: l3fp.dtx 4633 2013-12-31 17:28:46Z joseph $ {L3 Floating points} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} @@ -99,7 +99,6 @@ %% \cs_new:Npn \__fp_use_none_stop_f:n #1 { \exp_stop_f: } \cs_new:Npn \__fp_use_s:n #1 { #1; } -\cs_new:Npn \__fp_use_braced_s:n #1 { {#1} ; } \cs_new:Npn \__fp_use_s:nn #1#2 { #1#2; } \cs_new:Npn \__fp_use_none_until_s:w #1; { } \cs_new:Npn \__fp_use_i_until_s:nw #1#2; {#1} @@ -107,6 +106,7 @@ \cs_new:Npn \__fp_reverse_args:Nww #1 #2; #3; { #1 #3; #2; } \cs_new:Npn \__fp_rrot:www #1; #2; #3; { #2; #3; #1; } \cs_new:Npn \__fp_use_i:ww #1; #2; { #1; } +\cs_new:Npn \__fp_use_i:www #1; #2; #3; { #1; } \__scan_new:N \s__fp \cs_new_protected:Npn \__fp_chk:w #1 ; { @@ -228,15 +228,11 @@ \int_const:Nn \c__fp_middle_shift_int { 5 0000 * 9999 } \int_const:Nn \c__fp_trailing_shift_int { 5 0000 * 10000 } \cs_new:Npn \__fp_pack:NNNNNw #1 #2#3#4#5 #6; { + #1#2#3#4#5 ; {#6} } -\cs_new:Npn \__fp_pack:NNNNNwn #1 #2#3#4#5 #6; #7 - { + #1#2#3#4#5 ; {#7} {#6} } \int_const:Nn \c__fp_big_leading_shift_int { - 15 2374 } \int_const:Nn \c__fp_big_middle_shift_int { 15 2374 * 9999 } \int_const:Nn \c__fp_big_trailing_shift_int { 15 2374 * 10000 } \cs_new:Npn \__fp_pack_big:NNNNNNw #1#2 #3#4#5#6 #7; { + #1#2#3#4#5#6 ; {#7} } -\cs_new:Npn \__fp_pack_big:NNNNNNwn #1#2 #3#4#5#6 #7; #8 - { + #1#2#3#4#5#6 ; {#8} {#7} } \int_const:Nn \c__fp_Bigg_leading_shift_int { - 20 0000 } \int_const:Nn \c__fp_Bigg_middle_shift_int { 20 0000 * 9999 } \int_const:Nn \c__fp_Bigg_trailing_shift_int { 20 0000 * 10000 } @@ -304,38 +300,45 @@ { \fi: \__fp_exp_after_o:w \s__fp #3 ; } \cs_new:Npn \__fp_case_return_ii_o:ww #1 \fi: #2 \s__fp #3 ; { \fi: \__fp_exp_after_o:w } -\cs_new:Npn \__fp_small_int:wTF \s__fp \__fp_chk:w #1 +\cs_new:Npn \__fp_small_int:wTF \s__fp \__fp_chk:w #1#2 { \if_case:w #1 \exp_stop_f: \__fp_case_return:nw { \__fp_small_int_true:wTF 0 ; } \or: \exp_after:wN \__fp_small_int_normal:NnwTF + \or: + \__fp_case_return:nw + { + \exp_after:wN \__fp_small_int_true:wTF \__int_value:w + \if_meaning:w 2 #2 - \fi: 1 0000 0000 ; + } \else: \__fp_case_return:nw \use_ii:nn \fi: + #2 } \cs_new:Npn \__fp_small_int_true:wTF #1; #2#3 { #2 {#1} } \cs_new:Npn \__fp_small_int_normal:NnwTF #1#2#3; { \if_int_compare:w #2 > \c_zero - \if_int_compare:w #2 > \c_eight - \exp_after:wN \exp_after:wN - \exp_after:wN \use_iii:nnn - \else: - \__fp_decimate:nNnnnn { \c_sixteen - #2 } - \__fp_small_int_test:NnnwNTF - #3 #1 - \fi: + \__fp_decimate:nNnnnn { \c_sixteen - #2 } + \__fp_small_int_test:NnnwNnw + #3 #1 {#2} \else: \exp_after:wN \use_iii:nnn \fi: ; } -\cs_new:Npn \__fp_small_int_test:NnnwNTF #1#2#3#4; #5 +\cs_new:Npn \__fp_small_int_test:NnnwNnw #1#2#3#4; #5#6 { \if_meaning:w 0 #1 \exp_after:wN \__fp_small_int_true:wTF - \__int_value:w \if_meaning:w 2 #5 - \fi: #3 + \__int_value:w \if_meaning:w 2 #5 - \fi: + \if_int_compare:w #6 > \c_eight + 1 0000 0000 + \else: + #3 + \fi: \else: - \exp_after:wN \use_i:nn + \use_i:nn \fi: } \cs_new:Npn \__fp_array_count:n #1 @@ -458,10 +461,10 @@ \exp_after:wN \c_nan_fp } \exp_args:Nno \use:n - { \cs_set:Npn \__fp_invalid_operation_tl_o:nf ##1##2 } + { \cs_set:Npn \__fp_invalid_operation_tl_o:ff ##1##2 } { #1 - \__fp_error:nnfn { invalid } {##1} {##2} { } + \__fp_error:nffn { invalid } {##1} {##2} { } \fp_flag_on:n { invalid_operation } \exp_after:wN \c_nan_fp } @@ -525,7 +528,7 @@ } \cs_new:Npn \__fp_invalid_operation:nnw #1#2#3; { } \cs_new:Npn \__fp_invalid_operation_o:Nww #1#2; #3; { } -\cs_new:Npn \__fp_invalid_operation_tl_o:nf #1 #2 { } +\cs_new:Npn \__fp_invalid_operation_tl_o:ff #1 #2 { } \cs_new:Npn \__fp_division_by_zero_o:Nnw #1#2#3; { } \cs_new:Npn \__fp_division_by_zero_o:NNww #1#2#3; #4; { } \cs_new:Npn \__fp_overflow:w { } @@ -697,12 +700,37 @@ } \cs_new_eq:NN \__fp_round_to_nearest_neg:NNN \__fp_round_to_nearest:NNN \cs_new_eq:NN \__fp_round_neg:NNN \__fp_round_to_nearest_neg:NNN +\cs_new:Npn \__fp_round_o:Nw #1#2 @ + { + \if_case:w + \__int_eval:w \__fp_array_count:n {#2} - \c_one \__int_eval_end: + \__fp_round:Nwn #1 #2 {0} \tex_romannumeral:D + \or: \__fp_round:Nww #1 #2 \tex_romannumeral:D + \else: + \__fp_error:nffn { num-args } + { \__fp_round_name_from_cs:N #1 () } { 1 } { 2 } + \exp_after:wN \c_nan_fp \tex_romannumeral:D + \fi: + -`0 + } +\cs_new:Npn \__fp_round_name_from_cs:N #1 + { + \cs_if_eq:NNTF #1 \__fp_round_to_zero:NNN { trunc } + { + \cs_if_eq:NNTF #1 \__fp_round_to_ninf:NNN { floor } + { + \cs_if_eq:NNTF #1 \__fp_round_to_pinf:NNN { ceil } + { round } + } + } + } \cs_new:Npn \__fp_round:Nww #1#2 ; #3 ; { \__fp_small_int:wTF #3; { \__fp_round:Nwn #1#2; } { - \__fp_invalid_operation_tl_o:nf - { round } { \__fp_array_to_clist:n { #2; #3; } } + \__fp_invalid_operation_tl_o:ff + { \__fp_round_name_from_cs:N #1 } + { \__fp_array_to_clist:n { #2; #3; } } } } \cs_new:Npn \__fp_round:Nwn #1 \s__fp \__fp_chk:w #2#3#4; #5 @@ -1384,7 +1412,7 @@ \exp_after:wN \__fp_parse_apply_unary:NNNwN \exp_after:wN ##1 \exp_after:wN #4 - \cs:w __fp_#3_o:w \exp_after:wN \cs_end: + \exp_after:wN #3 \tex_romannumeral:D \if_int_compare:w #2 < ##1 \__fp_parse_operand:Nw ##1 @@ -1394,8 +1422,8 @@ \__fp_parse_expand:w } } -\__fp_tmp:w - \c_twelve { set_sign } 2 -\__fp_tmp:w ! \c_twelve { not } ? +\__fp_tmp:w - \c_twelve \__fp_set_sign_o:w 2 +\__fp_tmp:w ! \c_twelve \__fp_not_o:w ? \cs_new:cpn { __fp_parse_prefix_.:Nw } #1 { \exp_after:wN \__fp_parse_infix_after_operand:NwN @@ -1511,6 +1539,8 @@ { \__fp_parse_unary_function:nNN {exp} ? } \cs_new_nopar:Npn \__fp_parse_word_ln:N { \__fp_parse_unary_function:nNN {ln} ? } +\cs_new_nopar:Npn \__fp_parse_word_sqrt:N + { \__fp_parse_unary_function:nNN {sqrt} ? } \tl_map_inline:nn { {acos} {acsc} {asec} {asin} @@ -1522,6 +1552,12 @@ \cs_new_nopar:cpn { __fp_parse_word_#1d:N } { \__fp_parse_unary_function:nNN {#1} \use_ii:nn } } +\cs_new_nopar:Npn \__fp_parse_word_trunc:N + { \__fp_parse_function:NNN \__fp_round_o:Nw \__fp_round_to_zero:NNN } +\cs_new_nopar:Npn \__fp_parse_word_floor:N + { \__fp_parse_function:NNN \__fp_round_o:Nw \__fp_round_to_ninf:NNN } +\cs_new_nopar:Npn \__fp_parse_word_ceil:N + { \__fp_parse_function:NNN \__fp_round_o:Nw \__fp_round_to_pinf:NNN } \cs_new:Npn \__fp_parse_word_round:N #1#2 { \if_meaning:w + #2 @@ -1535,27 +1571,12 @@ \fi: \fi: \fi: - \exp_after:wN \__fp_parse_apply_round:NNwN - \exp_after:wN #1 - \exp_after:wN \__fp_round_to_nearest:NNN - \tex_romannumeral:D - \__fp_parse_operand:Nw \c_sixteen \__fp_parse_expand:w #2 + \__fp_parse_function:NNN + \__fp_round_o:Nw \__fp_round_to_nearest:NNN #1 + #2 } \cs_new:Npn \__fp_parse_round:Nw - #1 #2 \__fp_round_to_nearest:NNN #3 \__fp_parse_expand:w #4 - { #2 #1 #3 \__fp_parse_expand:w } -\cs_new:Npn \__fp_parse_apply_round:NNwN #1#2#3@#4 - { - \if_case:w \__int_eval:w \__fp_array_count:n {#3} - \c_one \__int_eval_end: - \__fp_round:Nwn #2 #3 {0} \tex_romannumeral:D - \or: \__fp_round:Nww #2 #3 \tex_romannumeral:D - \else: - \__msg_kernel_expandable_error:nnnnn - { kernel } { fp-num-args } { round() } { 1 } { 2 } - \exp_after:wN \c_nan_fp \tex_romannumeral:D - \fi: - -`0 #4 #1 - } + #1 #2 \__fp_round_to_nearest:NNN #3#4 { #2 #1 #3 } \cs_new:Npn \__fp_parse:n #1 { \tex_romannumeral:D @@ -1821,63 +1842,63 @@ \group_end: \cs_new:cpn { __fp_parse_infix_<:N } #1 { - \__fp_infix_compare:N #1 \c_one_fp - \c_zero_fp \c_zero_fp \c_zero_fp \c_zero_fp < + \__fp_parse_compare:NNNNNNN #1 \c_one + \c_zero \c_zero \c_zero \c_zero < } \cs_new:cpn { __fp_parse_infix_=:N } #1 { - \__fp_infix_compare:N #1 \c_one_fp - \c_zero_fp \c_zero_fp \c_zero_fp \c_zero_fp = + \__fp_parse_compare:NNNNNNN #1 \c_one + \c_zero \c_zero \c_zero \c_zero = } \cs_new:cpn { __fp_parse_infix_>:N } #1 { - \__fp_infix_compare:N #1 \c_one_fp - \c_zero_fp \c_zero_fp \c_zero_fp \c_zero_fp > + \__fp_parse_compare:NNNNNNN #1 \c_one + \c_zero \c_zero \c_zero \c_zero > } \cs_new:cpn { __fp_parse_infix_!:N } #1 { - \exp_after:wN \__fp_parse_infix_excl_aux:NN - \exp_after:wN #1 \tex_romannumeral:D \__fp_parse_expand:w - } -\cs_new:Npn \__fp_parse_infix_excl_aux:NN #1#2 - { - \__fp_infix_compare:N #1 \c_zero_fp - \c_one_fp \c_one_fp \c_one_fp \c_one_fp #2 + \exp_after:wN \__fp_parse_compare:NNNNNNN + \exp_after:wN #1 + \exp_after:wN \c_zero + \exp_after:wN \c_one + \exp_after:wN \c_one + \exp_after:wN \c_one + \exp_after:wN \c_one } -\cs_new:Npn \__fp_parse_infix_excl_error: +\cs_new:Npn \__fp_parse_excl_error: { \__msg_kernel_expandable_error:nnnn { kernel } { fp-missing } { = } { ~after~!. } } -\cs_new:Npn \__fp_infix_compare:N #1 +\cs_new:Npn \__fp_parse_compare:NNNNNNN #1 { \if_int_compare:w #1 < \c_seven - \exp_after:wN \__fp_parse_compare:NNNNNNw - \exp_after:wN \__fp_parse_infix_excl_error: + \exp_after:wN \__fp_parse_compare_auxi:NNNNNNN + \exp_after:wN \__fp_parse_excl_error: \else: \exp_after:wN @ \exp_after:wN \use_none:n - \exp_after:wN \__fp_infix_compare:N + \exp_after:wN \__fp_parse_compare:NNNNNNN \fi: } -\cs_new:Npn \__fp_parse_compare:NNNNNNw #1#2#3#4#5#6#7 +\cs_new:Npn \__fp_parse_compare_auxi:NNNNNNN #1#2#3#4#5#6#7 { \if_case:w - \if_catcode:w \scan_stop: #7 + \if_catcode:w \scan_stop: \exp_not:N #7 \c_minus_one \else: \__int_eval:w `#7 - `< \__int_eval_end: \fi: - \__fp_parse_compare_expand:NNNNNw #2#2#4#5#6 - \or: \__fp_parse_compare_expand:NNNNNw #2#3#2#5#6 - \or: \__fp_parse_compare_expand:NNNNNw #2#3#4#2#6 - \or: \__fp_parse_compare_expand:NNNNNw #2#3#4#5#2 - \else: #1 \__fp_parse_compare_end:NNNN #3#4#5#6#7 + \__fp_parse_compare_auxii:NNNNN #2#2#4#5#6 + \or: \__fp_parse_compare_auxii:NNNNN #2#3#2#5#6 + \or: \__fp_parse_compare_auxii:NNNNN #2#3#4#2#6 + \or: \__fp_parse_compare_auxii:NNNNN #2#3#4#5#2 + \else: #1 \__fp_parse_compare_end:NNNNw #3#4#5#6#7 \fi: } -\cs_new:Npn \__fp_parse_compare_expand:NNNNNw #1#2#3#4#5 +\cs_new:Npn \__fp_parse_compare_auxii:NNNNN #1#2#3#4#5 { - \exp_after:wN \__fp_parse_compare:NNNNNNw + \exp_after:wN \__fp_parse_compare_auxi:NNNNNNN \exp_after:wN \prg_do_nothing: \exp_after:wN #1 \exp_after:wN #2 @@ -1886,11 +1907,12 @@ \exp_after:wN #5 \tex_romannumeral:D \exp_after:wN \__fp_parse_expand:w } -\cs_new:Npn \__fp_parse_compare_end:NNNN #1#2#3#4#5 \fi: +\cs_new:Npn \__fp_parse_compare_end:NNNNw #1#2#3#4#5 \fi: { \fi: \exp_after:wN @ - \exp_after:wN \__fp_parse_apply_compare:NwNNNNwN + \exp_after:wN \__fp_parse_apply_compare:NwNNNNNwN + \exp_after:wN \c_one_fp \exp_after:wN #1 \exp_after:wN #2 \exp_after:wN #3 @@ -1898,22 +1920,107 @@ \tex_romannumeral:D \__fp_parse_operand:Nw \c_seven \__fp_parse_expand:w #5 } -\cs_new:Npn \__fp_parse_apply_compare:NwNNNNwN #1 #2@ #3#4#5#6 #7@ #8 +\cs_new:Npn \__fp_parse_apply_compare:NwNNNNNwN + #1 #2@ #3 #4#5#6#7 #8@ #9 { - \exp_after:wN \__fp_parse_continue:NwN - \exp_after:wN #1 - \tex_romannumeral:D -`0 - \exp_after:wN \exp_after:wN - \exp_after:wN \exp_after:wN - \exp_after:wN \exp_after:wN - \if_case:w \__fp_compare_back:ww #7 #2 \exp_stop_f: - #4 - \or: #5 - \or: #6 - \else: #3 - \fi: - \tex_romannumeral:D -`0 #8 #1 + \if_int_odd:w + \if_meaning:w \c_zero_fp #3 + \c_zero + \else: + \if_case:w \__fp_compare_back:ww #8 #2 \exp_stop_f: + #5 \or: #6 \or: #7 \else: #4 + \fi: + \fi: + \exp_after:wN \__fp_parse_apply_compare_aux:NNwN + \exp_after:wN \c_one_fp + \else: + \exp_after:wN \__fp_parse_apply_compare_aux:NNwN + \exp_after:wN \c_zero_fp + \fi: + #1 #8 #9 + } +\cs_new:Npn \__fp_parse_apply_compare_aux:NNwN #1 #2 #3; #4 + { + \if_meaning:w \__fp_parse_compare:NNNNNNN #4 + \exp_after:wN \__fp_parse_continue_compare:NNwNN + \exp_after:wN #1 + \exp_after:wN #2 + \tex_romannumeral:D -`0 + \__fp_exp_after_o:w #3; + \tex_romannumeral:D -`0 + \else: + \exp_after:wN \__fp_parse_continue:NwN + \exp_after:wN #2 + \tex_romannumeral:D -`0 + \exp_after:wN #1 + \tex_romannumeral:D -`0 + \fi: + #4 #2 + } +\cs_new:Npn \__fp_parse_continue_compare:NNwNN #1#2 #3@ #4#5 + { #4 #2 #3@ #1 } +\group_begin: + \char_set_catcode_other:N \^^@ + \cs_new:Npn \fp_function:Nw #1 { ^^@ ; { \exp_after:wN #1 } } +\group_end: +\group_begin: + \char_set_catcode_other:N \^^@ + \cs_new_protected:Npn \fp_new_function:Npn #1#2# + { + \cs_new:Npx #1 + { + ^^@ ; + { + \exp_not:N \exp_after:wN + \exp_not:N \__fp_function_args:Nwn + \exp_not:N \exp_after:wN + \exp_not:c { __fp_user_ \cs_to_str:N #1 } + \exp_not:N \__int_value:w + \int_eval:n { \tl_count:n {#2} / \c_two } + \exp_not:N \exp_after:wN ; + } + } + \cs_new:cpn { __fp_user_ \cs_to_str:N #1 } #2 + } +\group_end: +\cs_new:Npn \__fp_function_args:Nwn #1#2; #3 + { + \int_compare:nNnTF { \tl_count:n {#3} } = {#2} + { #1 #3 } + { + \__msg_kernel_expandable_error:nnnnn + { kernel } { fp-num-args } { #1() } {#2} {#2} + \c_nan_fp + } + } +\group_begin: + \char_set_catcode_other:N \^^@ + \cs_new:cpn { __fp_parse_prefix_ ^^@ :Nw } #1 ; #2 + { + \exp_after:wN \__fp_function_apply:NnwN + \exp_after:wN #1 + \exp_after:wN { #2 \exp_after:wN } + \tex_romannumeral:D + \__fp_parse_operand:Nw \c_sixteen \__fp_parse_expand:w + } +\group_end: +\cs_new:Npn \__fp_function_apply:NnwN #1#2#3@#4 + { + \exp_after:wN \__fp_exp_after_array_f:w + \tex_romannumeral:D -`0 + \__fp_function_store:wwNwnn #3 + \s__fp_mark \__fp_function_store:wwNwnn ; + \s__fp_mark \__fp_function_store_end:wnnn + \s__fp_stop { } { } {#2} + \s__fp_stop + #4 #1 } +\cs_new:Npn \__fp_function_store:wwNwnn + #1; #2 \s__fp_mark #3#4 \s__fp_stop #5#6 + { #3 #2 \s__fp_mark #3#4 \s__fp_stop { #5 #6 } { { #1; } } } +\cs_new:Npn \__fp_function_store_end:wnnn + #1 \s__fp_stop #2#3#4 + { \__fp_parse:n { #4 {#2} } } \__msg_kernel_new:nnn { kernel } { unknown-fp-word } { Unknown~fp~word~#1. } \__msg_kernel_new:nnn { kernel } { fp-missing } @@ -2250,12 +2357,7 @@ %% ----------------------------------------------------------------------- %% \cs_new:Npn \__fp_basics_pack_low:NNNNNw #1 #2#3#4#5 #6; - { - \if_meaning:w 2 #1 - + \c_one - \fi: - ; {#2#3#4#5} {#6} ; - } + { + #1 - \c_one ; {#2#3#4#5} {#6} ; } \cs_new:Npn \__fp_basics_pack_high:NNNNNw #1 #2#3#4#5 #6; { \if_meaning:w 2 #1 @@ -2824,6 +2926,193 @@ \__int_value:w \__fp_round_digit:Nw #7 #8 ; \exp_after:wN ; } +\cs_new:Npn \__fp_sqrt_o:w #1 \s__fp \__fp_chk:w #2#3#4; @ + { + \if_meaning:w 0 #2 \__fp_case_return_same_o:w \fi: + \if_meaning:w 2 #3 + \__fp_case_use:nw { \__fp_invalid_operation_o:nw { sqrt } } + \fi: + \if_meaning:w 1 #2 \else: \__fp_case_return_same_o:w \fi: + \__fp_sqrt_npos_o:w + \s__fp \__fp_chk:w #2 #3 #4; + } +\cs_new:Npn \__fp_sqrt_npos_o:w \s__fp \__fp_chk:w 1 0 #1#2#3#4#5; + { + \exp_after:wN \__fp_sanitize:Nw + \exp_after:wN 0 + \int_use:N \__int_eval:w + \if_int_odd:w #1 \exp_stop_f: + \exp_after:wN \__fp_sqrt_npos_auxi_o:wwnnN + \fi: + #1 / \c_two + \__fp_sqrt_Newton_o:wwn 56234133; 0; {#2#3} {#4#5} 0 + } +\cs_new:Npn \__fp_sqrt_npos_auxi_o:wwnnN #1 / \c_two #2; 0; #3#4#5 + { + ( #1 + \c_one ) / \c_two + \__fp_pack_eight:wNNNNNNNN + \__fp_sqrt_npos_auxii_o:wNNNNNNNN + ; + 0 #3 #4 + } +\cs_new:Npn \__fp_sqrt_npos_auxii_o:wNNNNNNNN #1; #2#3#4#5#6#7#8#9 + { \__fp_sqrt_Newton_o:wwn 17782794; 0; {#1} {#2#3#4#5#6#7#8#9} } +\cs_new:Npn \__fp_sqrt_Newton_o:wwn #1; #2; #3 + { + \if_int_compare:w #1 = #2 \exp_stop_f: + \exp_after:wN \__fp_sqrt_auxi_o:NNNNwnnN + \int_use:N \__int_eval:w 9999 9999 + + \exp_after:wN \__fp_use_none_until_s:w + \fi: + \exp_after:wN \__fp_sqrt_Newton_o:wwn + \int_use:N \__int_eval:w (#1 + #3 * 1 0000 0000 / #1) / \c_two ; + #1; {#3} + } +\cs_new:Npn \__fp_sqrt_auxi_o:NNNNwnnN 1 #1#2#3#4#5; + { + \__fp_sqrt_auxii_o:NnnnnnnnN + \__fp_sqrt_auxiii_o:wnnnnnnnn + {#1#2#3#4} {#5} {2499} {9988} {7500} + } +\cs_new:Npn \__fp_sqrt_auxii_o:NnnnnnnnN #1 #2#3#4#5#6 #7#8#9 + { + \exp_after:wN #1 + \int_use:N \__int_eval:w \c__fp_big_leading_shift_int + + #7 - #2 * #2 + \exp_after:wN \__fp_pack_big:NNNNNNw + \int_use:N \__int_eval:w \c__fp_big_middle_shift_int + - 2 * #2 * #3 + \exp_after:wN \__fp_pack_big:NNNNNNw + \int_use:N \__int_eval:w \c__fp_big_middle_shift_int + + #8 - #3 * #3 - 2 * #2 * #4 + \exp_after:wN \__fp_pack_big:NNNNNNw + \int_use:N \__int_eval:w \c__fp_big_middle_shift_int + - 2 * #3 * #4 - 2 * #2 * #5 + \exp_after:wN \__fp_pack_big:NNNNNNw + \int_use:N \__int_eval:w \c__fp_big_middle_shift_int + + #9 000 0000 - #4 * #4 - 2 * #3 * #5 - 2 * #2 * #6 + \exp_after:wN \__fp_pack_big:NNNNNNw + \int_use:N \__int_eval:w \c__fp_big_middle_shift_int + - 2 * #4 * #5 - 2 * #3 * #6 + \exp_after:wN \__fp_pack_big:NNNNNNw + \int_use:N \__int_eval:w \c__fp_big_middle_shift_int + - #5 * #5 - 2 * #4 * #6 + \exp_after:wN \__fp_pack_big:NNNNNNw + \int_use:N \__int_eval:w + \c__fp_big_middle_shift_int + - 2 * #5 * #6 + \exp_after:wN \__fp_pack_big:NNNNNNw + \int_use:N \__int_eval:w + \c__fp_big_trailing_shift_int + - #6 * #6 ; + % ( + - 257 ) * 5000 0000 / (#2#3 + 1) + 10 0000 0000 ; + {#2}{#3}{#4}{#5}{#6} {#7}{#8}#9 + } +\cs_new:Npn \__fp_sqrt_auxiii_o:wnnnnnnnn + #1; #2#3#4#5#6#7#8#9 + { + \if_int_compare:w #1 > \c_one + \exp_after:wN \__fp_sqrt_auxiv_o:NNNNNw + \int_use:N \__int_eval:w (#1#2 %) + \else: + \if_int_compare:w #1#2 > \c_one + \exp_after:wN \__fp_sqrt_auxv_o:NNNNNw + \int_use:N \__int_eval:w (#1#2#3 %) + \else: + \if_int_compare:w #1#2#3 > \c_one + \exp_after:wN \__fp_sqrt_auxvi_o:NNNNNw + \int_use:N \__int_eval:w (#1#2#3#4 %) + \else: + \exp_after:wN \__fp_sqrt_auxvii_o:NNNNNw + \int_use:N \__int_eval:w (#1#2#3#4#5 %) + \fi: + \fi: + \fi: + } +\cs_new:Npn \__fp_sqrt_auxiv_o:NNNNNw 1#1#2#3#4#5#6; + { \__fp_sqrt_auxviii_o:nnnnnnn {#1#2#3#4#5#6} {00000000} } +\cs_new:Npn \__fp_sqrt_auxv_o:NNNNNw 1#1#2#3#4#5#6; + { \__fp_sqrt_auxviii_o:nnnnnnn {000#1#2#3#4#5} {#60000} } +\cs_new:Npn \__fp_sqrt_auxvi_o:NNNNNw 1#1#2#3#4#5#6; + { \__fp_sqrt_auxviii_o:nnnnnnn {0000000#1} {#2#3#4#5#6} } +\cs_new:Npn \__fp_sqrt_auxvii_o:NNNNNw 1#1#2#3#4#5#6; + { + \if_int_compare:w #1#2 = \c_zero + \exp_after:wN \__fp_sqrt_auxx_o:Nnnnnnnn + \fi: + \__fp_sqrt_auxviii_o:nnnnnnn {00000000} {000#1#2#3#4#5} + } +\cs_new:Npn \__fp_sqrt_auxviii_o:nnnnnnn #1#2 #3#4#5#6#7 + { + \exp_after:wN \__fp_sqrt_auxix_o:wnwnw + \int_use:N \__int_eval:w #3 + \exp_after:wN \__fp_basics_pack_low:NNNNNw + \int_use:N \__int_eval:w #1 + 1#4#5 + \exp_after:wN \__fp_basics_pack_low:NNNNNw + \int_use:N \__int_eval:w #2 + 1#6#7 ; + } +\cs_new:Npn \__fp_sqrt_auxix_o:wnwnw #1; #2#3; #4#5; + { + \__fp_sqrt_auxii_o:NnnnnnnnN + \__fp_sqrt_auxiii_o:wnnnnnnnn {#1}{#2}{#3}{#4}{#5} + } +\cs_new:Npn \__fp_sqrt_auxx_o:Nnnnnnnn #1#2#3 #4#5#6#7#8 + { + \exp_after:wN \__fp_sqrt_auxxi_o:wwnnN + \int_use:N \__int_eval:w + (#8 + 2499) / 5000 * 5000 ; + {#4} {#5} {#6} {#7} ; + } +\cs_new:Npn \__fp_sqrt_auxxi_o:wwnnN #1; #2; #3#4#5 + { + \__fp_sqrt_auxii_o:NnnnnnnnN + \__fp_sqrt_auxxii_o:nnnnnnnnw + #2 {#1} + {#3} { #4 + \c_one } #5 + } +\cs_new:Npn \__fp_sqrt_auxxii_o:nnnnnnnnw 0; #1#2#3#4#5#6#7#8 #9; + { + \if_int_compare:w #1#2 > \c_zero + \if_int_compare:w #1#2 = \c_one + \if_int_compare:w #3#4 = \c_zero + \if_int_compare:w #5#6 = \c_zero + \if_int_compare:w #7#8 = \c_zero + \__fp_sqrt_auxxiii_o:w + \fi: + \fi: + \fi: + \fi: + \exp_after:wN \__fp_sqrt_auxxiv_o:wnnnnnnnN + \__int_value:w 9998 + \else: + \exp_after:wN \__fp_sqrt_auxxiv_o:wnnnnnnnN + \__int_value:w 10000 + \fi: + ; + } +\cs_new:Npn \__fp_sqrt_auxxiii_o:w \fi: \fi: \fi: \fi: #1 \fi: ; + { + \fi: \fi: \fi: \fi: \fi: + \__fp_sqrt_auxxiv_o:wnnnnnnnN 9999 ; + } +\cs_new:Npn \__fp_sqrt_auxxiv_o:wnnnnnnnN #1; #2#3#4#5#6 #7#8#9 + { + \exp_after:wN \__fp_basics_pack_high:NNNNNw + \int_use:N \__int_eval:w 1 0000 0000 + #2#3 + \exp_after:wN \__fp_basics_pack_low:NNNNNw + \int_use:N \__int_eval:w 1 0000 0000 + + #4#5 + \if_int_compare:w #6 > #1 \exp_stop_f: + \c_one \fi: + + \exp_after:wN \__fp_round:NNN + \exp_after:wN 0 + \exp_after:wN 0 + \__int_value:w + \exp_after:wN \use_i:nn + \exp_after:wN \__fp_round_digit:Nw + \int_use:N \__int_eval:w #6 + 19999 - #1 ; + \exp_after:wN ; + } \cs_new:Npn \__fp_set_sign_o:w #1 \s__fp \__fp_chk:w #2#3#4; @ { \exp_after:wN \__fp_exp_after_o:w @@ -2875,38 +3164,37 @@ \exp_after:wN #3 \exp_after:wN { \int_use:N \__int_eval:w \c_ten_thousand + #1 } #2 ; } -\cs_new:Npn \__fp_fixed_div_myriad:wn #1#2#3#4#5#6; #7 +\cs_new:Npn \__fp_fixed_div_myriad:wn #1#2#3#4#5#6; { - \exp_after:wN \__fp_fixed_mul_after:wn + \exp_after:wN \__fp_fixed_mul_after:wwn \int_use:N \__int_eval:w \c__fp_leading_shift_int - \exp_after:wN \__fp_pack:NNNNNwn + \exp_after:wN \__fp_pack:NNNNNw \int_use:N \__int_eval:w \c__fp_trailing_shift_int - + #1 ; {#7} {#2}{#3}{#4}{#5}; + + #1 ; {#2}{#3}{#4}{#5}; } -\cs_new:Npn \__fp_fixed_mul_after:wn #1; #2 { #2 {#1} } +\cs_new:Npn \__fp_fixed_mul_after:wwn #1; #2; #3 { #3 {#1} #2; } \cs_new:Npn \__fp_fixed_mul_short:wwn #1#2#3#4#5#6; #7#8#9; { - \exp_after:wN \__fp_fixed_mul_after:wn + \exp_after:wN \__fp_fixed_mul_after:wwn \int_use:N \__int_eval:w \c__fp_leading_shift_int + #1*#7 - \exp_after:wN \__fp_pack:NNNNNwn + \exp_after:wN \__fp_pack:NNNNNw \int_use:N \__int_eval:w \c__fp_middle_shift_int + #1*#8 + #2*#7 - \exp_after:wN \__fp_pack:NNNNNwn + \exp_after:wN \__fp_pack:NNNNNw \int_use:N \__int_eval:w \c__fp_middle_shift_int + #1*#9 + #2*#8 + #3*#7 - \exp_after:wN \__fp_pack:NNNNNwn + \exp_after:wN \__fp_pack:NNNNNw \int_use:N \__int_eval:w \c__fp_middle_shift_int + #2*#9 + #3*#8 + #4*#7 - \exp_after:wN \__fp_pack:NNNNNwn + \exp_after:wN \__fp_pack:NNNNNw \int_use:N \__int_eval:w \c__fp_middle_shift_int + #3*#9 + #4*#8 + #5*#7 - \exp_after:wN \__fp_pack:NNNNNwn + \exp_after:wN \__fp_pack:NNNNNw \int_use:N \__int_eval:w \c__fp_trailing_shift_int + #4*#9 + #5*#8 + #6*#7 + ( #5*#9 + #6*#8 + #6*#9 / \c_ten_thousand ) - / \c_ten_thousand - \exp_after:wN ; \__fp_use_braced_s:n + / \c_ten_thousand ; ; } \cs_new:Npn \__fp_fixed_div_int:wwN #1#2#3#4#5#6 ; #7 ; #8 { @@ -2961,79 +3249,78 @@ { #7 {#1#2#3#4#5} {#6} } \cs_new:Npn \__fp_fixed_mul:wwn #1#2#3#4 #5; #6#7#8#9 { - \exp_after:wN \__fp_fixed_mul_after:wn + \exp_after:wN \__fp_fixed_mul_after:wwn \int_use:N \__int_eval:w \c__fp_leading_shift_int - \exp_after:wN \__fp_pack:NNNNNwn + \exp_after:wN \__fp_pack:NNNNNw \int_use:N \__int_eval:w \c__fp_middle_shift_int + #1*#6 - \exp_after:wN \__fp_pack:NNNNNwn + \exp_after:wN \__fp_pack:NNNNNw \int_use:N \__int_eval:w \c__fp_middle_shift_int + #1*#7 + #2*#6 - \exp_after:wN \__fp_pack:NNNNNwn + \exp_after:wN \__fp_pack:NNNNNw \int_use:N \__int_eval:w \c__fp_middle_shift_int + #1*#8 + #2*#7 + #3*#6 - \exp_after:wN \__fp_pack:NNNNNwn + \exp_after:wN \__fp_pack:NNNNNw \int_use:N \__int_eval:w \c__fp_middle_shift_int + #1*#9 + #2*#8 + #3*#7 + #4*#6 - \exp_after:wN \__fp_pack:NNNNNwn + \exp_after:wN \__fp_pack:NNNNNw \int_use:N \__int_eval:w \c__fp_trailing_shift_int + #2*#9 + #3*#8 + #4*#7 + ( #3*#9 + #4*#8 - + \__fp_fixed_mul:nnnnnnnwn #5 {#6}{#7} {#1}{#2} + + \__fp_fixed_mul:nnnnnnnw #5 {#6}{#7} {#1}{#2} } -\cs_new:Npn \__fp_fixed_mul:nnnnnnnwn #1#2 #3#4 #5#6 #7#8 ; #9 +\cs_new:Npn \__fp_fixed_mul:nnnnnnnw #1#2 #3#4 #5#6 #7#8 ; { #1*#4 + #2*#3 + #5*#8 + #6*#7 ) / \c_ten_thousand - + #1*#3 + #5*#7 ; - {#9} ; + + #1*#3 + #5*#7 ; ; } -\cs_new:Npn \__fp_fixed_mul_add:wwwn #1; #2; #3#4#5#6#7#8; #9 +\cs_new:Npn \__fp_fixed_mul_add:wwwn #1; #2; #3#4#5#6#7#8; { - \exp_after:wN \__fp_fixed_mul_after:wn + \exp_after:wN \__fp_fixed_mul_after:wwn \int_use:N \__int_eval:w \c__fp_big_leading_shift_int - \exp_after:wN \__fp_pack_big:NNNNNNwn + \exp_after:wN \__fp_pack_big:NNNNNNw \int_use:N \__int_eval:w \c__fp_big_middle_shift_int + #3 #4 \__fp_fixed_mul_add:Nwnnnwnnn + + #5 #6 ; #2 ; #1 ; #2 ; + - + #7 #8 ; {#9} ; + + #7 #8 ; ; } -\cs_new:Npn \__fp_fixed_mul_sub_back:wwwn #1; #2; #3#4#5#6#7#8; #9 +\cs_new:Npn \__fp_fixed_mul_sub_back:wwwn #1; #2; #3#4#5#6#7#8; { - \exp_after:wN \__fp_fixed_mul_after:wn + \exp_after:wN \__fp_fixed_mul_after:wwn \int_use:N \__int_eval:w \c__fp_big_leading_shift_int - \exp_after:wN \__fp_pack_big:NNNNNNwn + \exp_after:wN \__fp_pack_big:NNNNNNw \int_use:N \__int_eval:w \c__fp_big_middle_shift_int + #3 #4 \__fp_fixed_mul_add:Nwnnnwnnn - + #5 #6 ; #2 ; #1 ; #2 ; - - + #7 #8 ; {#9} ; + + #7 #8 ; ; } -\cs_new:Npn \__fp_fixed_one_minus_mul:wwn #1; #2; #3 +\cs_new:Npn \__fp_fixed_one_minus_mul:wwn #1; #2; { - \exp_after:wN \__fp_fixed_mul_after:wn + \exp_after:wN \__fp_fixed_mul_after:wwn \int_use:N \__int_eval:w \c__fp_big_leading_shift_int - \exp_after:wN \__fp_pack_big:NNNNNNwn + \exp_after:wN \__fp_pack_big:NNNNNNw \int_use:N \__int_eval:w \c__fp_big_middle_shift_int + 1 0000 0000 \__fp_fixed_mul_add:Nwnnnwnnn - ; #2 ; #1 ; #2 ; - - ; {#3} ; + ; ; } \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 + \exp_after:wN \__fp_pack_big:NNNNNNw \int_use:N \__int_eval:w \c__fp_big_middle_shift_int #1 #7*#4 #1 #8*#3 - \exp_after:wN \__fp_pack_big:NNNNNNwn + \exp_after:wN \__fp_pack_big:NNNNNNw \int_use:N \__int_eval:w \c__fp_big_middle_shift_int #1 #7*#5 #1 #8*#4 #1 #9*#3 #2 - \exp_after:wN \__fp_pack_big:NNNNNNwn + \exp_after:wN \__fp_pack_big:NNNNNNw \int_use:N \__int_eval:w \c__fp_big_middle_shift_int #1 \__fp_fixed_mul_add:nnnnwnnnn {#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 + \exp_after:wN \__fp_pack_big:NNNNNNw \int_use:N \__int_eval:w \c__fp_big_trailing_shift_int \__fp_fixed_mul_add:nnnnwnnwN { #6 + #4*#7 + #3*#8 + #2*#9 + #1 } @@ -3876,34 +4163,34 @@ \cs_new:Npn \__fp_pow_exponent:wnN #1; #2 { \if_int_compare:w #2 > \c_zero - \exp_after:wN \__fp_pow_exponent:Nwnnnnnwn % n\ln(10) - (-\ln(x)) + \exp_after:wN \__fp_pow_exponent:Nwnnnnnw % n\ln(10) - (-\ln(x)) \exp_after:wN + \else: - \exp_after:wN \__fp_pow_exponent:Nwnnnnnwn % -( |n|\ln(10) + (-\ln(x)) ) + \exp_after:wN \__fp_pow_exponent:Nwnnnnnw % -( |n|\ln(10) + (-\ln(x)) ) \exp_after:wN - \fi: #2; #1; } -\cs_new:Npn \__fp_pow_exponent:Nwnnnnnwn #1#2; #3#4#5#6#7#8; #9 +\cs_new:Npn \__fp_pow_exponent:Nwnnnnnw #1#2; #3#4#5#6#7#8; { %^^A todo: use that in ln. - \exp_after:wN \__fp_fixed_mul_after:wn + \exp_after:wN \__fp_fixed_mul_after:wwn \int_use:N \__int_eval:w \c__fp_leading_shift_int - \exp_after:wN \__fp_pack:NNNNNwn + \exp_after:wN \__fp_pack:NNNNNw \int_use:N \__int_eval:w \c__fp_middle_shift_int #1#2*23025 - #1 #3 - \exp_after:wN \__fp_pack:NNNNNwn + \exp_after:wN \__fp_pack:NNNNNw \int_use:N \__int_eval:w \c__fp_middle_shift_int #1 #2*8509 - #1 #4 - \exp_after:wN \__fp_pack:NNNNNwn + \exp_after:wN \__fp_pack:NNNNNw \int_use:N \__int_eval:w \c__fp_middle_shift_int #1 #2*2994 - #1 #5 - \exp_after:wN \__fp_pack:NNNNNwn + \exp_after:wN \__fp_pack:NNNNNw \int_use:N \__int_eval:w \c__fp_middle_shift_int #1 #2*0456 - #1 #6 - \exp_after:wN \__fp_pack:NNNNNwn + \exp_after:wN \__fp_pack:NNNNNw \int_use:N \__int_eval:w \c__fp_trailing_shift_int #1 #2*8401 - #1 #7 - #1 ( #2*7991 - #8 ) / 1 0000 ; {#9} ; + #1 ( #2*7991 - #8 ) / 1 0000 ; ; } \cs_new:Npn \__fp_pow_B:wwN #1#2#3#4#5#6; #7; { diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3keys.sty b/Master/texmf-dist/tex/latex/l3kernel/l3keys.sty index a7a262f3020..62baa8a027e 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3keys.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3keys.sty @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3bootstrap} -\GetIdInfo$Id: l3keys.dtx 4581 2013-07-28 08:38:50Z joseph $ +\GetIdInfo$Id: l3keys.dtx 4614 2013-12-08 17:07:31Z joseph $ {L3 Experimental key-value interfaces} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3names.sty b/Master/texmf-dist/tex/latex/l3kernel/l3names.sty index a1cc3246ef6..ff822e0f362 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3names.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3names.sty @@ -13,7 +13,7 @@ %% %% Do not distribute a modified version of this file. %% -%% File: l3names.dtx Copyright (C) 1990-2012 The LaTeX3 project +%% File: l3names.dtx Copyright (C) 1990-2013 The LaTeX3 project %% %% It may be distributed and/or modified under the conditions of the %% LaTeX Project Public License (LPPL), either version 1.3c of this @@ -46,440 +46,440 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3bootstrap}[2012/07/15] -\GetIdInfo$Id: l3names.dtx 4346 2012-12-07 13:46:13Z joseph $ +\GetIdInfo$Id: l3names.dtx 4630 2013-12-29 21:04:05Z joseph $ {L3 Namespace for primitives} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} \let \tex_global:D \global \let \tex_let:D \let \begingroup - \long \def \__expl_primitive:NN #1#2 + \long \def \__kernel_primitive:NN #1#2 { \tex_global:D \tex_let:D #2 #1 } - \__expl_primitive:NN \ \tex_space:D - \__expl_primitive:NN \/ \tex_italiccorrection:D - \__expl_primitive:NN \- \tex_hyphen:D - \__expl_primitive:NN \let \tex_let:D - \__expl_primitive:NN \def \tex_def:D - \__expl_primitive:NN \edef \tex_edef:D - \__expl_primitive:NN \gdef \tex_gdef:D - \__expl_primitive:NN \xdef \tex_xdef:D - \__expl_primitive:NN \chardef \tex_chardef:D - \__expl_primitive:NN \countdef \tex_countdef:D - \__expl_primitive:NN \dimendef \tex_dimendef:D - \__expl_primitive:NN \skipdef \tex_skipdef:D - \__expl_primitive:NN \muskipdef \tex_muskipdef:D - \__expl_primitive:NN \mathchardef \tex_mathchardef:D - \__expl_primitive:NN \toksdef \tex_toksdef:D - \__expl_primitive:NN \futurelet \tex_futurelet:D - \__expl_primitive:NN \advance \tex_advance:D - \__expl_primitive:NN \divide \tex_divide:D - \__expl_primitive:NN \multiply \tex_multiply:D - \__expl_primitive:NN \font \tex_font:D - \__expl_primitive:NN \fam \tex_fam:D - \__expl_primitive:NN \global \tex_global:D - \__expl_primitive:NN \long \tex_long:D - \__expl_primitive:NN \outer \tex_outer:D - \__expl_primitive:NN \setlanguage \tex_setlanguage:D - \__expl_primitive:NN \globaldefs \tex_globaldefs:D - \__expl_primitive:NN \afterassignment \tex_afterassignment:D - \__expl_primitive:NN \aftergroup \tex_aftergroup:D - \__expl_primitive:NN \expandafter \tex_expandafter:D - \__expl_primitive:NN \noexpand \tex_noexpand:D - \__expl_primitive:NN \begingroup \tex_begingroup:D - \__expl_primitive:NN \endgroup \tex_endgroup:D - \__expl_primitive:NN \halign \tex_halign:D - \__expl_primitive:NN \valign \tex_valign:D - \__expl_primitive:NN \cr \tex_cr:D - \__expl_primitive:NN \crcr \tex_crcr:D - \__expl_primitive:NN \noalign \tex_noalign:D - \__expl_primitive:NN \omit \tex_omit:D - \__expl_primitive:NN \span \tex_span:D - \__expl_primitive:NN \tabskip \tex_tabskip:D - \__expl_primitive:NN \everycr \tex_everycr:D - \__expl_primitive:NN \if \tex_if:D - \__expl_primitive:NN \ifcase \tex_ifcase:D - \__expl_primitive:NN \ifcat \tex_ifcat:D - \__expl_primitive:NN \ifnum \tex_ifnum:D - \__expl_primitive:NN \ifodd \tex_ifodd:D - \__expl_primitive:NN \ifdim \tex_ifdim:D - \__expl_primitive:NN \ifeof \tex_ifeof:D - \__expl_primitive:NN \ifhbox \tex_ifhbox:D - \__expl_primitive:NN \ifvbox \tex_ifvbox:D - \__expl_primitive:NN \ifvoid \tex_ifvoid:D - \__expl_primitive:NN \ifx \tex_ifx:D - \__expl_primitive:NN \iffalse \tex_iffalse:D - \__expl_primitive:NN \iftrue \tex_iftrue:D - \__expl_primitive:NN \ifhmode \tex_ifhmode:D - \__expl_primitive:NN \ifmmode \tex_ifmmode:D - \__expl_primitive:NN \ifvmode \tex_ifvmode:D - \__expl_primitive:NN \ifinner \tex_ifinner:D - \__expl_primitive:NN \else \tex_else:D - \__expl_primitive:NN \fi \tex_fi:D - \__expl_primitive:NN \or \tex_or:D - \__expl_primitive:NN \immediate \tex_immediate:D - \__expl_primitive:NN \closeout \tex_closeout:D - \__expl_primitive:NN \openin \tex_openin:D - \__expl_primitive:NN \openout \tex_openout:D - \__expl_primitive:NN \read \tex_read:D - \__expl_primitive:NN \write \tex_write:D - \__expl_primitive:NN \closein \tex_closein:D - \__expl_primitive:NN \newlinechar \tex_newlinechar:D - \__expl_primitive:NN \input \tex_input:D - \__expl_primitive:NN \endinput \tex_endinput:D - \__expl_primitive:NN \inputlineno \tex_inputlineno:D - \__expl_primitive:NN \errmessage \tex_errmessage:D - \__expl_primitive:NN \message \tex_message:D - \__expl_primitive:NN \show \tex_show:D - \__expl_primitive:NN \showthe \tex_showthe:D - \__expl_primitive:NN \showbox \tex_showbox:D - \__expl_primitive:NN \showlists \tex_showlists:D - \__expl_primitive:NN \errhelp \tex_errhelp:D - \__expl_primitive:NN \errorcontextlines \tex_errorcontextlines:D - \__expl_primitive:NN \tracingcommands \tex_tracingcommands:D - \__expl_primitive:NN \tracinglostchars \tex_tracinglostchars:D - \__expl_primitive:NN \tracingmacros \tex_tracingmacros:D - \__expl_primitive:NN \tracingonline \tex_tracingonline:D - \__expl_primitive:NN \tracingoutput \tex_tracingoutput:D - \__expl_primitive:NN \tracingpages \tex_tracingpages:D - \__expl_primitive:NN \tracingparagraphs \tex_tracingparagraphs:D - \__expl_primitive:NN \tracingrestores \tex_tracingrestores:D - \__expl_primitive:NN \tracingstats \tex_tracingstats:D - \__expl_primitive:NN \pausing \tex_pausing:D - \__expl_primitive:NN \showboxbreadth \tex_showboxbreadth:D - \__expl_primitive:NN \showboxdepth \tex_showboxdepth:D - \__expl_primitive:NN \batchmode \tex_batchmode:D - \__expl_primitive:NN \errorstopmode \tex_errorstopmode:D - \__expl_primitive:NN \nonstopmode \tex_nonstopmode:D - \__expl_primitive:NN \scrollmode \tex_scrollmode:D - \__expl_primitive:NN \end \tex_end:D - \__expl_primitive:NN \csname \tex_csname:D - \__expl_primitive:NN \endcsname \tex_endcsname:D - \__expl_primitive:NN \ignorespaces \tex_ignorespaces:D - \__expl_primitive:NN \relax \tex_relax:D - \__expl_primitive:NN \the \tex_the:D - \__expl_primitive:NN \mag \tex_mag:D - \__expl_primitive:NN \language \tex_language:D - \__expl_primitive:NN \mark \tex_mark:D - \__expl_primitive:NN \topmark \tex_topmark:D - \__expl_primitive:NN \firstmark \tex_firstmark:D - \__expl_primitive:NN \botmark \tex_botmark:D - \__expl_primitive:NN \splitfirstmark \tex_splitfirstmark:D - \__expl_primitive:NN \splitbotmark \tex_splitbotmark:D - \__expl_primitive:NN \fontname \tex_fontname:D - \__expl_primitive:NN \escapechar \tex_escapechar:D - \__expl_primitive:NN \endlinechar \tex_endlinechar:D - \__expl_primitive:NN \mathchoice \tex_mathchoice:D - \__expl_primitive:NN \delimiter \tex_delimiter:D - \__expl_primitive:NN \mathaccent \tex_mathaccent:D - \__expl_primitive:NN \mathchar \tex_mathchar:D - \__expl_primitive:NN \mskip \tex_mskip:D - \__expl_primitive:NN \radical \tex_radical:D - \__expl_primitive:NN \vcenter \tex_vcenter:D - \__expl_primitive:NN \mkern \tex_mkern:D - \__expl_primitive:NN \above \tex_above:D - \__expl_primitive:NN \abovewithdelims \tex_abovewithdelims:D - \__expl_primitive:NN \atop \tex_atop:D - \__expl_primitive:NN \atopwithdelims \tex_atopwithdelims:D - \__expl_primitive:NN \over \tex_over:D - \__expl_primitive:NN \overwithdelims \tex_overwithdelims:D - \__expl_primitive:NN \displaystyle \tex_displaystyle:D - \__expl_primitive:NN \textstyle \tex_textstyle:D - \__expl_primitive:NN \scriptstyle \tex_scriptstyle:D - \__expl_primitive:NN \scriptscriptstyle \tex_scriptscriptstyle:D - \__expl_primitive:NN \nonscript \tex_nonscript:D - \__expl_primitive:NN \eqno \tex_eqno:D - \__expl_primitive:NN \leqno \tex_leqno:D - \__expl_primitive:NN \abovedisplayshortskip \tex_abovedisplayshortskip:D - \__expl_primitive:NN \abovedisplayskip \tex_abovedisplayskip:D - \__expl_primitive:NN \belowdisplayshortskip \tex_belowdisplayshortskip:D - \__expl_primitive:NN \belowdisplayskip \tex_belowdisplayskip:D - \__expl_primitive:NN \displaywidowpenalty \tex_displaywidowpenalty:D - \__expl_primitive:NN \displayindent \tex_displayindent:D - \__expl_primitive:NN \displaywidth \tex_displaywidth:D - \__expl_primitive:NN \everydisplay \tex_everydisplay:D - \__expl_primitive:NN \predisplaysize \tex_predisplaysize:D - \__expl_primitive:NN \predisplaypenalty \tex_predisplaypenalty:D - \__expl_primitive:NN \postdisplaypenalty \tex_postdisplaypenalty:D - \__expl_primitive:NN \mathbin \tex_mathbin:D - \__expl_primitive:NN \mathclose \tex_mathclose:D - \__expl_primitive:NN \mathinner \tex_mathinner:D - \__expl_primitive:NN \mathop \tex_mathop:D - \__expl_primitive:NN \displaylimits \tex_displaylimits:D - \__expl_primitive:NN \limits \tex_limits:D - \__expl_primitive:NN \nolimits \tex_nolimits:D - \__expl_primitive:NN \mathopen \tex_mathopen:D - \__expl_primitive:NN \mathord \tex_mathord:D - \__expl_primitive:NN \mathpunct \tex_mathpunct:D - \__expl_primitive:NN \mathrel \tex_mathrel:D - \__expl_primitive:NN \overline \tex_overline:D - \__expl_primitive:NN \underline \tex_underline:D - \__expl_primitive:NN \left \tex_left:D - \__expl_primitive:NN \right \tex_right:D - \__expl_primitive:NN \binoppenalty \tex_binoppenalty:D - \__expl_primitive:NN \relpenalty \tex_relpenalty:D - \__expl_primitive:NN \delimitershortfall \tex_delimitershortfall:D - \__expl_primitive:NN \delimiterfactor \tex_delimiterfactor:D - \__expl_primitive:NN \nulldelimiterspace \tex_nulldelimiterspace:D - \__expl_primitive:NN \everymath \tex_everymath:D - \__expl_primitive:NN \mathsurround \tex_mathsurround:D - \__expl_primitive:NN \medmuskip \tex_medmuskip:D - \__expl_primitive:NN \thinmuskip \tex_thinmuskip:D - \__expl_primitive:NN \thickmuskip \tex_thickmuskip:D - \__expl_primitive:NN \scriptspace \tex_scriptspace:D - \__expl_primitive:NN \noboundary \tex_noboundary:D - \__expl_primitive:NN \accent \tex_accent:D - \__expl_primitive:NN \char \tex_char:D - \__expl_primitive:NN \discretionary \tex_discretionary:D - \__expl_primitive:NN \hfil \tex_hfil:D - \__expl_primitive:NN \hfilneg \tex_hfilneg:D - \__expl_primitive:NN \hfill \tex_hfill:D - \__expl_primitive:NN \hskip \tex_hskip:D - \__expl_primitive:NN \hss \tex_hss:D - \__expl_primitive:NN \vfil \tex_vfil:D - \__expl_primitive:NN \vfilneg \tex_vfilneg:D - \__expl_primitive:NN \vfill \tex_vfill:D - \__expl_primitive:NN \vskip \tex_vskip:D - \__expl_primitive:NN \vss \tex_vss:D - \__expl_primitive:NN \unskip \tex_unskip:D - \__expl_primitive:NN \kern \tex_kern:D - \__expl_primitive:NN \unkern \tex_unkern:D - \__expl_primitive:NN \hrule \tex_hrule:D - \__expl_primitive:NN \vrule \tex_vrule:D - \__expl_primitive:NN \leaders \tex_leaders:D - \__expl_primitive:NN \cleaders \tex_cleaders:D - \__expl_primitive:NN \xleaders \tex_xleaders:D - \__expl_primitive:NN \lastkern \tex_lastkern:D - \__expl_primitive:NN \lastskip \tex_lastskip:D - \__expl_primitive:NN \indent \tex_indent:D - \__expl_primitive:NN \par \tex_par:D - \__expl_primitive:NN \noindent \tex_noindent:D - \__expl_primitive:NN \vadjust \tex_vadjust:D - \__expl_primitive:NN \baselineskip \tex_baselineskip:D - \__expl_primitive:NN \lineskip \tex_lineskip:D - \__expl_primitive:NN \lineskiplimit \tex_lineskiplimit:D - \__expl_primitive:NN \clubpenalty \tex_clubpenalty:D - \__expl_primitive:NN \widowpenalty \tex_widowpenalty:D - \__expl_primitive:NN \exhyphenpenalty \tex_exhyphenpenalty:D - \__expl_primitive:NN \hyphenpenalty \tex_hyphenpenalty:D - \__expl_primitive:NN \linepenalty \tex_linepenalty:D - \__expl_primitive:NN \doublehyphendemerits \tex_doublehyphendemerits:D - \__expl_primitive:NN \finalhyphendemerits \tex_finalhyphendemerits:D - \__expl_primitive:NN \adjdemerits \tex_adjdemerits:D - \__expl_primitive:NN \hangafter \tex_hangafter:D - \__expl_primitive:NN \hangindent \tex_hangindent:D - \__expl_primitive:NN \parshape \tex_parshape:D - \__expl_primitive:NN \hsize \tex_hsize:D - \__expl_primitive:NN \lefthyphenmin \tex_lefthyphenmin:D - \__expl_primitive:NN \righthyphenmin \tex_righthyphenmin:D - \__expl_primitive:NN \leftskip \tex_leftskip:D - \__expl_primitive:NN \rightskip \tex_rightskip:D - \__expl_primitive:NN \looseness \tex_looseness:D - \__expl_primitive:NN \parskip \tex_parskip:D - \__expl_primitive:NN \parindent \tex_parindent:D - \__expl_primitive:NN \uchyph \tex_uchyph:D - \__expl_primitive:NN \emergencystretch \tex_emergencystretch:D - \__expl_primitive:NN \pretolerance \tex_pretolerance:D - \__expl_primitive:NN \tolerance \tex_tolerance:D - \__expl_primitive:NN \spaceskip \tex_spaceskip:D - \__expl_primitive:NN \xspaceskip \tex_xspaceskip:D - \__expl_primitive:NN \parfillskip \tex_parfillskip:D - \__expl_primitive:NN \everypar \tex_everypar:D - \__expl_primitive:NN \prevgraf \tex_prevgraf:D - \__expl_primitive:NN \spacefactor \tex_spacefactor:D - \__expl_primitive:NN \shipout \tex_shipout:D - \__expl_primitive:NN \vsize \tex_vsize:D - \__expl_primitive:NN \interlinepenalty \tex_interlinepenalty:D - \__expl_primitive:NN \brokenpenalty \tex_brokenpenalty:D - \__expl_primitive:NN \topskip \tex_topskip:D - \__expl_primitive:NN \maxdeadcycles \tex_maxdeadcycles:D - \__expl_primitive:NN \maxdepth \tex_maxdepth:D - \__expl_primitive:NN \output \tex_output:D - \__expl_primitive:NN \deadcycles \tex_deadcycles:D - \__expl_primitive:NN \pagedepth \tex_pagedepth:D - \__expl_primitive:NN \pagestretch \tex_pagestretch:D - \__expl_primitive:NN \pagefilstretch \tex_pagefilstretch:D - \__expl_primitive:NN \pagefillstretch \tex_pagefillstretch:D - \__expl_primitive:NN \pagefilllstretch \tex_pagefilllstretch:D - \__expl_primitive:NN \pageshrink \tex_pageshrink:D - \__expl_primitive:NN \pagegoal \tex_pagegoal:D - \__expl_primitive:NN \pagetotal \tex_pagetotal:D - \__expl_primitive:NN \outputpenalty \tex_outputpenalty:D - \__expl_primitive:NN \hoffset \tex_hoffset:D - \__expl_primitive:NN \voffset \tex_voffset:D - \__expl_primitive:NN \insert \tex_insert:D - \__expl_primitive:NN \holdinginserts \tex_holdinginserts:D - \__expl_primitive:NN \floatingpenalty \tex_floatingpenalty:D - \__expl_primitive:NN \insertpenalties \tex_insertpenalties:D - \__expl_primitive:NN \lower \tex_lower:D - \__expl_primitive:NN \moveleft \tex_moveleft:D - \__expl_primitive:NN \moveright \tex_moveright:D - \__expl_primitive:NN \raise \tex_raise:D - \__expl_primitive:NN \copy \tex_copy:D - \__expl_primitive:NN \lastbox \tex_lastbox:D - \__expl_primitive:NN \vsplit \tex_vsplit:D - \__expl_primitive:NN \unhbox \tex_unhbox:D - \__expl_primitive:NN \unhcopy \tex_unhcopy:D - \__expl_primitive:NN \unvbox \tex_unvbox:D - \__expl_primitive:NN \unvcopy \tex_unvcopy:D - \__expl_primitive:NN \setbox \tex_setbox:D - \__expl_primitive:NN \hbox \tex_hbox:D - \__expl_primitive:NN \vbox \tex_vbox:D - \__expl_primitive:NN \vtop \tex_vtop:D - \__expl_primitive:NN \prevdepth \tex_prevdepth:D - \__expl_primitive:NN \badness \tex_badness:D - \__expl_primitive:NN \hbadness \tex_hbadness:D - \__expl_primitive:NN \vbadness \tex_vbadness:D - \__expl_primitive:NN \hfuzz \tex_hfuzz:D - \__expl_primitive:NN \vfuzz \tex_vfuzz:D - \__expl_primitive:NN \overfullrule \tex_overfullrule:D - \__expl_primitive:NN \boxmaxdepth \tex_boxmaxdepth:D - \__expl_primitive:NN \splitmaxdepth \tex_splitmaxdepth:D - \__expl_primitive:NN \splittopskip \tex_splittopskip:D - \__expl_primitive:NN \everyhbox \tex_everyhbox:D - \__expl_primitive:NN \everyvbox \tex_everyvbox:D - \__expl_primitive:NN \nullfont \tex_nullfont:D - \__expl_primitive:NN \textfont \tex_textfont:D - \__expl_primitive:NN \scriptfont \tex_scriptfont:D - \__expl_primitive:NN \scriptscriptfont \tex_scriptscriptfont:D - \__expl_primitive:NN \fontdimen \tex_fontdimen:D - \__expl_primitive:NN \hyphenchar \tex_hyphenchar:D - \__expl_primitive:NN \skewchar \tex_skewchar:D - \__expl_primitive:NN \defaulthyphenchar \tex_defaulthyphenchar:D - \__expl_primitive:NN \defaultskewchar \tex_defaultskewchar:D - \__expl_primitive:NN \number \tex_number:D - \__expl_primitive:NN \romannumeral \tex_romannumeral:D - \__expl_primitive:NN \string \tex_string:D - \__expl_primitive:NN \lowercase \tex_lowercase:D - \__expl_primitive:NN \uppercase \tex_uppercase:D - \__expl_primitive:NN \meaning \tex_meaning:D - \__expl_primitive:NN \penalty \tex_penalty:D - \__expl_primitive:NN \unpenalty \tex_unpenalty:D - \__expl_primitive:NN \lastpenalty \tex_lastpenalty:D - \__expl_primitive:NN \special \tex_special:D - \__expl_primitive:NN \dump \tex_dump:D - \__expl_primitive:NN \patterns \tex_patterns:D - \__expl_primitive:NN \hyphenation \tex_hyphenation:D - \__expl_primitive:NN \time \tex_time:D - \__expl_primitive:NN \day \tex_day:D - \__expl_primitive:NN \month \tex_month:D - \__expl_primitive:NN \year \tex_year:D - \__expl_primitive:NN \jobname \tex_jobname:D - \__expl_primitive:NN \everyjob \tex_everyjob:D - \__expl_primitive:NN \count \tex_count:D - \__expl_primitive:NN \dimen \tex_dimen:D - \__expl_primitive:NN \skip \tex_skip:D - \__expl_primitive:NN \toks \tex_toks:D - \__expl_primitive:NN \muskip \tex_muskip:D - \__expl_primitive:NN \box \tex_box:D - \__expl_primitive:NN \wd \tex_wd:D - \__expl_primitive:NN \ht \tex_ht:D - \__expl_primitive:NN \dp \tex_dp:D - \__expl_primitive:NN \catcode \tex_catcode:D - \__expl_primitive:NN \delcode \tex_delcode:D - \__expl_primitive:NN \sfcode \tex_sfcode:D - \__expl_primitive:NN \lccode \tex_lccode:D - \__expl_primitive:NN \uccode \tex_uccode:D - \__expl_primitive:NN \mathcode \tex_mathcode:D - \__expl_primitive:NN \ifdefined \etex_ifdefined:D - \__expl_primitive:NN \ifcsname \etex_ifcsname:D - \__expl_primitive:NN \unless \etex_unless:D - \__expl_primitive:NN \eTeXversion \etex_eTeXversion:D - \__expl_primitive:NN \eTeXrevision \etex_eTeXrevision:D - \__expl_primitive:NN \marks \etex_marks:D - \__expl_primitive:NN \topmarks \etex_topmarks:D - \__expl_primitive:NN \firstmarks \etex_firstmarks:D - \__expl_primitive:NN \botmarks \etex_botmarks:D - \__expl_primitive:NN \splitfirstmarks \etex_splitfirstmarks:D - \__expl_primitive:NN \splitbotmarks \etex_splitbotmarks:D - \__expl_primitive:NN \unexpanded \etex_unexpanded:D - \__expl_primitive:NN \detokenize \etex_detokenize:D - \__expl_primitive:NN \scantokens \etex_scantokens:D - \__expl_primitive:NN \showtokens \etex_showtokens:D - \__expl_primitive:NN \readline \etex_readline:D - \__expl_primitive:NN \tracingassigns \etex_tracingassigns:D - \__expl_primitive:NN \tracingscantokens \etex_tracingscantokens:D - \__expl_primitive:NN \tracingnesting \etex_tracingnesting:D - \__expl_primitive:NN \tracingifs \etex_tracingifs:D - \__expl_primitive:NN \currentiflevel \etex_currentiflevel:D - \__expl_primitive:NN \currentifbranch \etex_currentifbranch:D - \__expl_primitive:NN \currentiftype \etex_currentiftype:D - \__expl_primitive:NN \tracinggroups \etex_tracinggroups:D - \__expl_primitive:NN \currentgrouplevel \etex_currentgrouplevel:D - \__expl_primitive:NN \currentgrouptype \etex_currentgrouptype:D - \__expl_primitive:NN \showgroups \etex_showgroups:D - \__expl_primitive:NN \showifs \etex_showifs:D - \__expl_primitive:NN \interactionmode \etex_interactionmode:D - \__expl_primitive:NN \lastnodetype \etex_lastnodetype:D - \__expl_primitive:NN \iffontchar \etex_iffontchar:D - \__expl_primitive:NN \fontcharht \etex_fontcharht:D - \__expl_primitive:NN \fontchardp \etex_fontchardp:D - \__expl_primitive:NN \fontcharwd \etex_fontcharwd:D - \__expl_primitive:NN \fontcharic \etex_fontcharic:D - \__expl_primitive:NN \parshapeindent \etex_parshapeindent:D - \__expl_primitive:NN \parshapelength \etex_parshapelength:D - \__expl_primitive:NN \parshapedimen \etex_parshapedimen:D - \__expl_primitive:NN \numexpr \etex_numexpr:D - \__expl_primitive:NN \dimexpr \etex_dimexpr:D - \__expl_primitive:NN \glueexpr \etex_glueexpr:D - \__expl_primitive:NN \muexpr \etex_muexpr:D - \__expl_primitive:NN \gluestretch \etex_gluestretch:D - \__expl_primitive:NN \glueshrink \etex_glueshrink:D - \__expl_primitive:NN \gluestretchorder \etex_gluestretchorder:D - \__expl_primitive:NN \glueshrinkorder \etex_glueshrinkorder:D - \__expl_primitive:NN \gluetomu \etex_gluetomu:D - \__expl_primitive:NN \mutoglue \etex_mutoglue:D - \__expl_primitive:NN \lastlinefit \etex_lastlinefit:D - \__expl_primitive:NN \interlinepenalties \etex_interlinepenalties:D - \__expl_primitive:NN \clubpenalties \etex_clubpenalties:D - \__expl_primitive:NN \widowpenalties \etex_widowpenalties:D - \__expl_primitive:NN \displaywidowpenalties \etex_displaywidowpenalties:D - \__expl_primitive:NN \middle \etex_middle:D - \__expl_primitive:NN \savinghyphcodes \etex_savinghyphcodes:D - \__expl_primitive:NN \savingvdiscards \etex_savingvdiscards:D - \__expl_primitive:NN \pagediscards \etex_pagediscards:D - \__expl_primitive:NN \splitdiscards \etex_splitdiscards:D - \__expl_primitive:NN \TeXXeTstate \etex_TeXXeTstate:D - \__expl_primitive:NN \beginL \etex_beginL:D - \__expl_primitive:NN \endL \etex_endL:D - \__expl_primitive:NN \beginR \etex_beginR:D - \__expl_primitive:NN \endR \etex_endR:D - \__expl_primitive:NN \predisplaydirection \etex_predisplaydirection:D - \__expl_primitive:NN \everyeof \etex_everyeof:D - \__expl_primitive:NN \protected \etex_protected:D - \__expl_primitive:NN \pdfcreationdate \pdftex_pdfcreationdate:D - \__expl_primitive:NN \pdfcolorstack \pdftex_pdfcolorstack:D - \__expl_primitive:NN \pdfcompresslevel \pdftex_pdfcompresslevel:D - \__expl_primitive:NN \pdfdecimaldigits \pdftex_pdfdecimaldigits:D - \__expl_primitive:NN \pdfhorigin \pdftex_pdfhorigin:D - \__expl_primitive:NN \pdfinfo \pdftex_pdfinfo:D - \__expl_primitive:NN \pdflastxform \pdftex_pdflastxform:D - \__expl_primitive:NN \pdfliteral \pdftex_pdfliteral:D - \__expl_primitive:NN \pdfminorversion \pdftex_pdfminorversion:D - \__expl_primitive:NN \pdfobjcompresslevel \pdftex_pdfobjcompresslevel:D - \__expl_primitive:NN \pdfoutput \pdftex_pdfoutput:D - \__expl_primitive:NN \pdfrefxform \pdftex_pdfrefxform:D - \__expl_primitive:NN \pdfrestore \pdftex_pdfrestore:D - \__expl_primitive:NN \pdfsave \pdftex_pdfsave:D - \__expl_primitive:NN \pdfsetmatrix \pdftex_pdfsetmatrix:D - \__expl_primitive:NN \pdfpkresolution \pdftex_pdfpkresolution:D - \__expl_primitive:NN \pdftexrevision \pdftex_pdftextrevision:D - \__expl_primitive:NN \pdfvorigin \pdftex_pdfvorigin:D - \__expl_primitive:NN \pdfxform \pdftex_pdfxform:D - \__expl_primitive:NN \pdfstrcmp \pdftex_strcmp:D - \__expl_primitive:NN \XeTeXversion \xetex_XeTeXversion:D - \__expl_primitive:NN \catcodetable \luatex_catcodetable:D - \__expl_primitive:NN \directlua \luatex_directlua:D - \__expl_primitive:NN \initcatcodetable \luatex_initcatcodetable:D - \__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 + \__kernel_primitive:NN \ \tex_space:D + \__kernel_primitive:NN \/ \tex_italiccorrection:D + \__kernel_primitive:NN \- \tex_hyphen:D + \__kernel_primitive:NN \let \tex_let:D + \__kernel_primitive:NN \def \tex_def:D + \__kernel_primitive:NN \edef \tex_edef:D + \__kernel_primitive:NN \gdef \tex_gdef:D + \__kernel_primitive:NN \xdef \tex_xdef:D + \__kernel_primitive:NN \chardef \tex_chardef:D + \__kernel_primitive:NN \countdef \tex_countdef:D + \__kernel_primitive:NN \dimendef \tex_dimendef:D + \__kernel_primitive:NN \skipdef \tex_skipdef:D + \__kernel_primitive:NN \muskipdef \tex_muskipdef:D + \__kernel_primitive:NN \mathchardef \tex_mathchardef:D + \__kernel_primitive:NN \toksdef \tex_toksdef:D + \__kernel_primitive:NN \futurelet \tex_futurelet:D + \__kernel_primitive:NN \advance \tex_advance:D + \__kernel_primitive:NN \divide \tex_divide:D + \__kernel_primitive:NN \multiply \tex_multiply:D + \__kernel_primitive:NN \font \tex_font:D + \__kernel_primitive:NN \fam \tex_fam:D + \__kernel_primitive:NN \global \tex_global:D + \__kernel_primitive:NN \long \tex_long:D + \__kernel_primitive:NN \outer \tex_outer:D + \__kernel_primitive:NN \setlanguage \tex_setlanguage:D + \__kernel_primitive:NN \globaldefs \tex_globaldefs:D + \__kernel_primitive:NN \afterassignment \tex_afterassignment:D + \__kernel_primitive:NN \aftergroup \tex_aftergroup:D + \__kernel_primitive:NN \expandafter \tex_expandafter:D + \__kernel_primitive:NN \noexpand \tex_noexpand:D + \__kernel_primitive:NN \begingroup \tex_begingroup:D + \__kernel_primitive:NN \endgroup \tex_endgroup:D + \__kernel_primitive:NN \halign \tex_halign:D + \__kernel_primitive:NN \valign \tex_valign:D + \__kernel_primitive:NN \cr \tex_cr:D + \__kernel_primitive:NN \crcr \tex_crcr:D + \__kernel_primitive:NN \noalign \tex_noalign:D + \__kernel_primitive:NN \omit \tex_omit:D + \__kernel_primitive:NN \span \tex_span:D + \__kernel_primitive:NN \tabskip \tex_tabskip:D + \__kernel_primitive:NN \everycr \tex_everycr:D + \__kernel_primitive:NN \if \tex_if:D + \__kernel_primitive:NN \ifcase \tex_ifcase:D + \__kernel_primitive:NN \ifcat \tex_ifcat:D + \__kernel_primitive:NN \ifnum \tex_ifnum:D + \__kernel_primitive:NN \ifodd \tex_ifodd:D + \__kernel_primitive:NN \ifdim \tex_ifdim:D + \__kernel_primitive:NN \ifeof \tex_ifeof:D + \__kernel_primitive:NN \ifhbox \tex_ifhbox:D + \__kernel_primitive:NN \ifvbox \tex_ifvbox:D + \__kernel_primitive:NN \ifvoid \tex_ifvoid:D + \__kernel_primitive:NN \ifx \tex_ifx:D + \__kernel_primitive:NN \iffalse \tex_iffalse:D + \__kernel_primitive:NN \iftrue \tex_iftrue:D + \__kernel_primitive:NN \ifhmode \tex_ifhmode:D + \__kernel_primitive:NN \ifmmode \tex_ifmmode:D + \__kernel_primitive:NN \ifvmode \tex_ifvmode:D + \__kernel_primitive:NN \ifinner \tex_ifinner:D + \__kernel_primitive:NN \else \tex_else:D + \__kernel_primitive:NN \fi \tex_fi:D + \__kernel_primitive:NN \or \tex_or:D + \__kernel_primitive:NN \immediate \tex_immediate:D + \__kernel_primitive:NN \closeout \tex_closeout:D + \__kernel_primitive:NN \openin \tex_openin:D + \__kernel_primitive:NN \openout \tex_openout:D + \__kernel_primitive:NN \read \tex_read:D + \__kernel_primitive:NN \write \tex_write:D + \__kernel_primitive:NN \closein \tex_closein:D + \__kernel_primitive:NN \newlinechar \tex_newlinechar:D + \__kernel_primitive:NN \input \tex_input:D + \__kernel_primitive:NN \endinput \tex_endinput:D + \__kernel_primitive:NN \inputlineno \tex_inputlineno:D + \__kernel_primitive:NN \errmessage \tex_errmessage:D + \__kernel_primitive:NN \message \tex_message:D + \__kernel_primitive:NN \show \tex_show:D + \__kernel_primitive:NN \showthe \tex_showthe:D + \__kernel_primitive:NN \showbox \tex_showbox:D + \__kernel_primitive:NN \showlists \tex_showlists:D + \__kernel_primitive:NN \errhelp \tex_errhelp:D + \__kernel_primitive:NN \errorcontextlines \tex_errorcontextlines:D + \__kernel_primitive:NN \tracingcommands \tex_tracingcommands:D + \__kernel_primitive:NN \tracinglostchars \tex_tracinglostchars:D + \__kernel_primitive:NN \tracingmacros \tex_tracingmacros:D + \__kernel_primitive:NN \tracingonline \tex_tracingonline:D + \__kernel_primitive:NN \tracingoutput \tex_tracingoutput:D + \__kernel_primitive:NN \tracingpages \tex_tracingpages:D + \__kernel_primitive:NN \tracingparagraphs \tex_tracingparagraphs:D + \__kernel_primitive:NN \tracingrestores \tex_tracingrestores:D + \__kernel_primitive:NN \tracingstats \tex_tracingstats:D + \__kernel_primitive:NN \pausing \tex_pausing:D + \__kernel_primitive:NN \showboxbreadth \tex_showboxbreadth:D + \__kernel_primitive:NN \showboxdepth \tex_showboxdepth:D + \__kernel_primitive:NN \batchmode \tex_batchmode:D + \__kernel_primitive:NN \errorstopmode \tex_errorstopmode:D + \__kernel_primitive:NN \nonstopmode \tex_nonstopmode:D + \__kernel_primitive:NN \scrollmode \tex_scrollmode:D + \__kernel_primitive:NN \end \tex_end:D + \__kernel_primitive:NN \csname \tex_csname:D + \__kernel_primitive:NN \endcsname \tex_endcsname:D + \__kernel_primitive:NN \ignorespaces \tex_ignorespaces:D + \__kernel_primitive:NN \relax \tex_relax:D + \__kernel_primitive:NN \the \tex_the:D + \__kernel_primitive:NN \mag \tex_mag:D + \__kernel_primitive:NN \language \tex_language:D + \__kernel_primitive:NN \mark \tex_mark:D + \__kernel_primitive:NN \topmark \tex_topmark:D + \__kernel_primitive:NN \firstmark \tex_firstmark:D + \__kernel_primitive:NN \botmark \tex_botmark:D + \__kernel_primitive:NN \splitfirstmark \tex_splitfirstmark:D + \__kernel_primitive:NN \splitbotmark \tex_splitbotmark:D + \__kernel_primitive:NN \fontname \tex_fontname:D + \__kernel_primitive:NN \escapechar \tex_escapechar:D + \__kernel_primitive:NN \endlinechar \tex_endlinechar:D + \__kernel_primitive:NN \mathchoice \tex_mathchoice:D + \__kernel_primitive:NN \delimiter \tex_delimiter:D + \__kernel_primitive:NN \mathaccent \tex_mathaccent:D + \__kernel_primitive:NN \mathchar \tex_mathchar:D + \__kernel_primitive:NN \mskip \tex_mskip:D + \__kernel_primitive:NN \radical \tex_radical:D + \__kernel_primitive:NN \vcenter \tex_vcenter:D + \__kernel_primitive:NN \mkern \tex_mkern:D + \__kernel_primitive:NN \above \tex_above:D + \__kernel_primitive:NN \abovewithdelims \tex_abovewithdelims:D + \__kernel_primitive:NN \atop \tex_atop:D + \__kernel_primitive:NN \atopwithdelims \tex_atopwithdelims:D + \__kernel_primitive:NN \over \tex_over:D + \__kernel_primitive:NN \overwithdelims \tex_overwithdelims:D + \__kernel_primitive:NN \displaystyle \tex_displaystyle:D + \__kernel_primitive:NN \textstyle \tex_textstyle:D + \__kernel_primitive:NN \scriptstyle \tex_scriptstyle:D + \__kernel_primitive:NN \scriptscriptstyle \tex_scriptscriptstyle:D + \__kernel_primitive:NN \nonscript \tex_nonscript:D + \__kernel_primitive:NN \eqno \tex_eqno:D + \__kernel_primitive:NN \leqno \tex_leqno:D + \__kernel_primitive:NN \abovedisplayshortskip \tex_abovedisplayshortskip:D + \__kernel_primitive:NN \abovedisplayskip \tex_abovedisplayskip:D + \__kernel_primitive:NN \belowdisplayshortskip \tex_belowdisplayshortskip:D + \__kernel_primitive:NN \belowdisplayskip \tex_belowdisplayskip:D + \__kernel_primitive:NN \displaywidowpenalty \tex_displaywidowpenalty:D + \__kernel_primitive:NN \displayindent \tex_displayindent:D + \__kernel_primitive:NN \displaywidth \tex_displaywidth:D + \__kernel_primitive:NN \everydisplay \tex_everydisplay:D + \__kernel_primitive:NN \predisplaysize \tex_predisplaysize:D + \__kernel_primitive:NN \predisplaypenalty \tex_predisplaypenalty:D + \__kernel_primitive:NN \postdisplaypenalty \tex_postdisplaypenalty:D + \__kernel_primitive:NN \mathbin \tex_mathbin:D + \__kernel_primitive:NN \mathclose \tex_mathclose:D + \__kernel_primitive:NN \mathinner \tex_mathinner:D + \__kernel_primitive:NN \mathop \tex_mathop:D + \__kernel_primitive:NN \displaylimits \tex_displaylimits:D + \__kernel_primitive:NN \limits \tex_limits:D + \__kernel_primitive:NN \nolimits \tex_nolimits:D + \__kernel_primitive:NN \mathopen \tex_mathopen:D + \__kernel_primitive:NN \mathord \tex_mathord:D + \__kernel_primitive:NN \mathpunct \tex_mathpunct:D + \__kernel_primitive:NN \mathrel \tex_mathrel:D + \__kernel_primitive:NN \overline \tex_overline:D + \__kernel_primitive:NN \underline \tex_underline:D + \__kernel_primitive:NN \left \tex_left:D + \__kernel_primitive:NN \right \tex_right:D + \__kernel_primitive:NN \binoppenalty \tex_binoppenalty:D + \__kernel_primitive:NN \relpenalty \tex_relpenalty:D + \__kernel_primitive:NN \delimitershortfall \tex_delimitershortfall:D + \__kernel_primitive:NN \delimiterfactor \tex_delimiterfactor:D + \__kernel_primitive:NN \nulldelimiterspace \tex_nulldelimiterspace:D + \__kernel_primitive:NN \everymath \tex_everymath:D + \__kernel_primitive:NN \mathsurround \tex_mathsurround:D + \__kernel_primitive:NN \medmuskip \tex_medmuskip:D + \__kernel_primitive:NN \thinmuskip \tex_thinmuskip:D + \__kernel_primitive:NN \thickmuskip \tex_thickmuskip:D + \__kernel_primitive:NN \scriptspace \tex_scriptspace:D + \__kernel_primitive:NN \noboundary \tex_noboundary:D + \__kernel_primitive:NN \accent \tex_accent:D + \__kernel_primitive:NN \char \tex_char:D + \__kernel_primitive:NN \discretionary \tex_discretionary:D + \__kernel_primitive:NN \hfil \tex_hfil:D + \__kernel_primitive:NN \hfilneg \tex_hfilneg:D + \__kernel_primitive:NN \hfill \tex_hfill:D + \__kernel_primitive:NN \hskip \tex_hskip:D + \__kernel_primitive:NN \hss \tex_hss:D + \__kernel_primitive:NN \vfil \tex_vfil:D + \__kernel_primitive:NN \vfilneg \tex_vfilneg:D + \__kernel_primitive:NN \vfill \tex_vfill:D + \__kernel_primitive:NN \vskip \tex_vskip:D + \__kernel_primitive:NN \vss \tex_vss:D + \__kernel_primitive:NN \unskip \tex_unskip:D + \__kernel_primitive:NN \kern \tex_kern:D + \__kernel_primitive:NN \unkern \tex_unkern:D + \__kernel_primitive:NN \hrule \tex_hrule:D + \__kernel_primitive:NN \vrule \tex_vrule:D + \__kernel_primitive:NN \leaders \tex_leaders:D + \__kernel_primitive:NN \cleaders \tex_cleaders:D + \__kernel_primitive:NN \xleaders \tex_xleaders:D + \__kernel_primitive:NN \lastkern \tex_lastkern:D + \__kernel_primitive:NN \lastskip \tex_lastskip:D + \__kernel_primitive:NN \indent \tex_indent:D + \__kernel_primitive:NN \par \tex_par:D + \__kernel_primitive:NN \noindent \tex_noindent:D + \__kernel_primitive:NN \vadjust \tex_vadjust:D + \__kernel_primitive:NN \baselineskip \tex_baselineskip:D + \__kernel_primitive:NN \lineskip \tex_lineskip:D + \__kernel_primitive:NN \lineskiplimit \tex_lineskiplimit:D + \__kernel_primitive:NN \clubpenalty \tex_clubpenalty:D + \__kernel_primitive:NN \widowpenalty \tex_widowpenalty:D + \__kernel_primitive:NN \exhyphenpenalty \tex_exhyphenpenalty:D + \__kernel_primitive:NN \hyphenpenalty \tex_hyphenpenalty:D + \__kernel_primitive:NN \linepenalty \tex_linepenalty:D + \__kernel_primitive:NN \doublehyphendemerits \tex_doublehyphendemerits:D + \__kernel_primitive:NN \finalhyphendemerits \tex_finalhyphendemerits:D + \__kernel_primitive:NN \adjdemerits \tex_adjdemerits:D + \__kernel_primitive:NN \hangafter \tex_hangafter:D + \__kernel_primitive:NN \hangindent \tex_hangindent:D + \__kernel_primitive:NN \parshape \tex_parshape:D + \__kernel_primitive:NN \hsize \tex_hsize:D + \__kernel_primitive:NN \lefthyphenmin \tex_lefthyphenmin:D + \__kernel_primitive:NN \righthyphenmin \tex_righthyphenmin:D + \__kernel_primitive:NN \leftskip \tex_leftskip:D + \__kernel_primitive:NN \rightskip \tex_rightskip:D + \__kernel_primitive:NN \looseness \tex_looseness:D + \__kernel_primitive:NN \parskip \tex_parskip:D + \__kernel_primitive:NN \parindent \tex_parindent:D + \__kernel_primitive:NN \uchyph \tex_uchyph:D + \__kernel_primitive:NN \emergencystretch \tex_emergencystretch:D + \__kernel_primitive:NN \pretolerance \tex_pretolerance:D + \__kernel_primitive:NN \tolerance \tex_tolerance:D + \__kernel_primitive:NN \spaceskip \tex_spaceskip:D + \__kernel_primitive:NN \xspaceskip \tex_xspaceskip:D + \__kernel_primitive:NN \parfillskip \tex_parfillskip:D + \__kernel_primitive:NN \everypar \tex_everypar:D + \__kernel_primitive:NN \prevgraf \tex_prevgraf:D + \__kernel_primitive:NN \spacefactor \tex_spacefactor:D + \__kernel_primitive:NN \shipout \tex_shipout:D + \__kernel_primitive:NN \vsize \tex_vsize:D + \__kernel_primitive:NN \interlinepenalty \tex_interlinepenalty:D + \__kernel_primitive:NN \brokenpenalty \tex_brokenpenalty:D + \__kernel_primitive:NN \topskip \tex_topskip:D + \__kernel_primitive:NN \maxdeadcycles \tex_maxdeadcycles:D + \__kernel_primitive:NN \maxdepth \tex_maxdepth:D + \__kernel_primitive:NN \output \tex_output:D + \__kernel_primitive:NN \deadcycles \tex_deadcycles:D + \__kernel_primitive:NN \pagedepth \tex_pagedepth:D + \__kernel_primitive:NN \pagestretch \tex_pagestretch:D + \__kernel_primitive:NN \pagefilstretch \tex_pagefilstretch:D + \__kernel_primitive:NN \pagefillstretch \tex_pagefillstretch:D + \__kernel_primitive:NN \pagefilllstretch \tex_pagefilllstretch:D + \__kernel_primitive:NN \pageshrink \tex_pageshrink:D + \__kernel_primitive:NN \pagegoal \tex_pagegoal:D + \__kernel_primitive:NN \pagetotal \tex_pagetotal:D + \__kernel_primitive:NN \outputpenalty \tex_outputpenalty:D + \__kernel_primitive:NN \hoffset \tex_hoffset:D + \__kernel_primitive:NN \voffset \tex_voffset:D + \__kernel_primitive:NN \insert \tex_insert:D + \__kernel_primitive:NN \holdinginserts \tex_holdinginserts:D + \__kernel_primitive:NN \floatingpenalty \tex_floatingpenalty:D + \__kernel_primitive:NN \insertpenalties \tex_insertpenalties:D + \__kernel_primitive:NN \lower \tex_lower:D + \__kernel_primitive:NN \moveleft \tex_moveleft:D + \__kernel_primitive:NN \moveright \tex_moveright:D + \__kernel_primitive:NN \raise \tex_raise:D + \__kernel_primitive:NN \copy \tex_copy:D + \__kernel_primitive:NN \lastbox \tex_lastbox:D + \__kernel_primitive:NN \vsplit \tex_vsplit:D + \__kernel_primitive:NN \unhbox \tex_unhbox:D + \__kernel_primitive:NN \unhcopy \tex_unhcopy:D + \__kernel_primitive:NN \unvbox \tex_unvbox:D + \__kernel_primitive:NN \unvcopy \tex_unvcopy:D + \__kernel_primitive:NN \setbox \tex_setbox:D + \__kernel_primitive:NN \hbox \tex_hbox:D + \__kernel_primitive:NN \vbox \tex_vbox:D + \__kernel_primitive:NN \vtop \tex_vtop:D + \__kernel_primitive:NN \prevdepth \tex_prevdepth:D + \__kernel_primitive:NN \badness \tex_badness:D + \__kernel_primitive:NN \hbadness \tex_hbadness:D + \__kernel_primitive:NN \vbadness \tex_vbadness:D + \__kernel_primitive:NN \hfuzz \tex_hfuzz:D + \__kernel_primitive:NN \vfuzz \tex_vfuzz:D + \__kernel_primitive:NN \overfullrule \tex_overfullrule:D + \__kernel_primitive:NN \boxmaxdepth \tex_boxmaxdepth:D + \__kernel_primitive:NN \splitmaxdepth \tex_splitmaxdepth:D + \__kernel_primitive:NN \splittopskip \tex_splittopskip:D + \__kernel_primitive:NN \everyhbox \tex_everyhbox:D + \__kernel_primitive:NN \everyvbox \tex_everyvbox:D + \__kernel_primitive:NN \nullfont \tex_nullfont:D + \__kernel_primitive:NN \textfont \tex_textfont:D + \__kernel_primitive:NN \scriptfont \tex_scriptfont:D + \__kernel_primitive:NN \scriptscriptfont \tex_scriptscriptfont:D + \__kernel_primitive:NN \fontdimen \tex_fontdimen:D + \__kernel_primitive:NN \hyphenchar \tex_hyphenchar:D + \__kernel_primitive:NN \skewchar \tex_skewchar:D + \__kernel_primitive:NN \defaulthyphenchar \tex_defaulthyphenchar:D + \__kernel_primitive:NN \defaultskewchar \tex_defaultskewchar:D + \__kernel_primitive:NN \number \tex_number:D + \__kernel_primitive:NN \romannumeral \tex_romannumeral:D + \__kernel_primitive:NN \string \tex_string:D + \__kernel_primitive:NN \lowercase \tex_lowercase:D + \__kernel_primitive:NN \uppercase \tex_uppercase:D + \__kernel_primitive:NN \meaning \tex_meaning:D + \__kernel_primitive:NN \penalty \tex_penalty:D + \__kernel_primitive:NN \unpenalty \tex_unpenalty:D + \__kernel_primitive:NN \lastpenalty \tex_lastpenalty:D + \__kernel_primitive:NN \special \tex_special:D + \__kernel_primitive:NN \dump \tex_dump:D + \__kernel_primitive:NN \patterns \tex_patterns:D + \__kernel_primitive:NN \hyphenation \tex_hyphenation:D + \__kernel_primitive:NN \time \tex_time:D + \__kernel_primitive:NN \day \tex_day:D + \__kernel_primitive:NN \month \tex_month:D + \__kernel_primitive:NN \year \tex_year:D + \__kernel_primitive:NN \jobname \tex_jobname:D + \__kernel_primitive:NN \everyjob \tex_everyjob:D + \__kernel_primitive:NN \count \tex_count:D + \__kernel_primitive:NN \dimen \tex_dimen:D + \__kernel_primitive:NN \skip \tex_skip:D + \__kernel_primitive:NN \toks \tex_toks:D + \__kernel_primitive:NN \muskip \tex_muskip:D + \__kernel_primitive:NN \box \tex_box:D + \__kernel_primitive:NN \wd \tex_wd:D + \__kernel_primitive:NN \ht \tex_ht:D + \__kernel_primitive:NN \dp \tex_dp:D + \__kernel_primitive:NN \catcode \tex_catcode:D + \__kernel_primitive:NN \delcode \tex_delcode:D + \__kernel_primitive:NN \sfcode \tex_sfcode:D + \__kernel_primitive:NN \lccode \tex_lccode:D + \__kernel_primitive:NN \uccode \tex_uccode:D + \__kernel_primitive:NN \mathcode \tex_mathcode:D + \__kernel_primitive:NN \ifdefined \etex_ifdefined:D + \__kernel_primitive:NN \ifcsname \etex_ifcsname:D + \__kernel_primitive:NN \unless \etex_unless:D + \__kernel_primitive:NN \eTeXversion \etex_eTeXversion:D + \__kernel_primitive:NN \eTeXrevision \etex_eTeXrevision:D + \__kernel_primitive:NN \marks \etex_marks:D + \__kernel_primitive:NN \topmarks \etex_topmarks:D + \__kernel_primitive:NN \firstmarks \etex_firstmarks:D + \__kernel_primitive:NN \botmarks \etex_botmarks:D + \__kernel_primitive:NN \splitfirstmarks \etex_splitfirstmarks:D + \__kernel_primitive:NN \splitbotmarks \etex_splitbotmarks:D + \__kernel_primitive:NN \unexpanded \etex_unexpanded:D + \__kernel_primitive:NN \detokenize \etex_detokenize:D + \__kernel_primitive:NN \scantokens \etex_scantokens:D + \__kernel_primitive:NN \showtokens \etex_showtokens:D + \__kernel_primitive:NN \readline \etex_readline:D + \__kernel_primitive:NN \tracingassigns \etex_tracingassigns:D + \__kernel_primitive:NN \tracingscantokens \etex_tracingscantokens:D + \__kernel_primitive:NN \tracingnesting \etex_tracingnesting:D + \__kernel_primitive:NN \tracingifs \etex_tracingifs:D + \__kernel_primitive:NN \currentiflevel \etex_currentiflevel:D + \__kernel_primitive:NN \currentifbranch \etex_currentifbranch:D + \__kernel_primitive:NN \currentiftype \etex_currentiftype:D + \__kernel_primitive:NN \tracinggroups \etex_tracinggroups:D + \__kernel_primitive:NN \currentgrouplevel \etex_currentgrouplevel:D + \__kernel_primitive:NN \currentgrouptype \etex_currentgrouptype:D + \__kernel_primitive:NN \showgroups \etex_showgroups:D + \__kernel_primitive:NN \showifs \etex_showifs:D + \__kernel_primitive:NN \interactionmode \etex_interactionmode:D + \__kernel_primitive:NN \lastnodetype \etex_lastnodetype:D + \__kernel_primitive:NN \iffontchar \etex_iffontchar:D + \__kernel_primitive:NN \fontcharht \etex_fontcharht:D + \__kernel_primitive:NN \fontchardp \etex_fontchardp:D + \__kernel_primitive:NN \fontcharwd \etex_fontcharwd:D + \__kernel_primitive:NN \fontcharic \etex_fontcharic:D + \__kernel_primitive:NN \parshapeindent \etex_parshapeindent:D + \__kernel_primitive:NN \parshapelength \etex_parshapelength:D + \__kernel_primitive:NN \parshapedimen \etex_parshapedimen:D + \__kernel_primitive:NN \numexpr \etex_numexpr:D + \__kernel_primitive:NN \dimexpr \etex_dimexpr:D + \__kernel_primitive:NN \glueexpr \etex_glueexpr:D + \__kernel_primitive:NN \muexpr \etex_muexpr:D + \__kernel_primitive:NN \gluestretch \etex_gluestretch:D + \__kernel_primitive:NN \glueshrink \etex_glueshrink:D + \__kernel_primitive:NN \gluestretchorder \etex_gluestretchorder:D + \__kernel_primitive:NN \glueshrinkorder \etex_glueshrinkorder:D + \__kernel_primitive:NN \gluetomu \etex_gluetomu:D + \__kernel_primitive:NN \mutoglue \etex_mutoglue:D + \__kernel_primitive:NN \lastlinefit \etex_lastlinefit:D + \__kernel_primitive:NN \interlinepenalties \etex_interlinepenalties:D + \__kernel_primitive:NN \clubpenalties \etex_clubpenalties:D + \__kernel_primitive:NN \widowpenalties \etex_widowpenalties:D + \__kernel_primitive:NN \displaywidowpenalties \etex_displaywidowpenalties:D + \__kernel_primitive:NN \middle \etex_middle:D + \__kernel_primitive:NN \savinghyphcodes \etex_savinghyphcodes:D + \__kernel_primitive:NN \savingvdiscards \etex_savingvdiscards:D + \__kernel_primitive:NN \pagediscards \etex_pagediscards:D + \__kernel_primitive:NN \splitdiscards \etex_splitdiscards:D + \__kernel_primitive:NN \TeXXeTstate \etex_TeXXeTstate:D + \__kernel_primitive:NN \beginL \etex_beginL:D + \__kernel_primitive:NN \endL \etex_endL:D + \__kernel_primitive:NN \beginR \etex_beginR:D + \__kernel_primitive:NN \endR \etex_endR:D + \__kernel_primitive:NN \predisplaydirection \etex_predisplaydirection:D + \__kernel_primitive:NN \everyeof \etex_everyeof:D + \__kernel_primitive:NN \protected \etex_protected:D + \__kernel_primitive:NN \pdfcreationdate \pdftex_pdfcreationdate:D + \__kernel_primitive:NN \pdfcolorstack \pdftex_pdfcolorstack:D + \__kernel_primitive:NN \pdfcompresslevel \pdftex_pdfcompresslevel:D + \__kernel_primitive:NN \pdfdecimaldigits \pdftex_pdfdecimaldigits:D + \__kernel_primitive:NN \pdfhorigin \pdftex_pdfhorigin:D + \__kernel_primitive:NN \pdfinfo \pdftex_pdfinfo:D + \__kernel_primitive:NN \pdflastxform \pdftex_pdflastxform:D + \__kernel_primitive:NN \pdfliteral \pdftex_pdfliteral:D + \__kernel_primitive:NN \pdfminorversion \pdftex_pdfminorversion:D + \__kernel_primitive:NN \pdfobjcompresslevel \pdftex_pdfobjcompresslevel:D + \__kernel_primitive:NN \pdfoutput \pdftex_pdfoutput:D + \__kernel_primitive:NN \pdfrefxform \pdftex_pdfrefxform:D + \__kernel_primitive:NN \pdfrestore \pdftex_pdfrestore:D + \__kernel_primitive:NN \pdfsave \pdftex_pdfsave:D + \__kernel_primitive:NN \pdfsetmatrix \pdftex_pdfsetmatrix:D + \__kernel_primitive:NN \pdfpkresolution \pdftex_pdfpkresolution:D + \__kernel_primitive:NN \pdftexrevision \pdftex_pdftextrevision:D + \__kernel_primitive:NN \pdfvorigin \pdftex_pdfvorigin:D + \__kernel_primitive:NN \pdfxform \pdftex_pdfxform:D + \__kernel_primitive:NN \pdfstrcmp \pdftex_strcmp:D + \__kernel_primitive:NN \XeTeXversion \xetex_XeTeXversion:D + \__kernel_primitive:NN \catcodetable \luatex_catcodetable:D + \__kernel_primitive:NN \directlua \luatex_directlua:D + \__kernel_primitive:NN \initcatcodetable \luatex_initcatcodetable:D + \__kernel_primitive:NN \latelua \luatex_latelua:D + \__kernel_primitive:NN \luatexversion \luatex_luatexversion:D + \__kernel_primitive:NN \savecatcodetable \luatex_savecatcodetable:D + \__kernel_primitive:NN \bodydir \luatex_bodydir:D + \__kernel_primitive:NN \mathdir \luatex_mathdir:D + \__kernel_primitive:NN \pagedir \luatex_pagedir:D + \__kernel_primitive:NN \pardir \luatex_pardir:D + \__kernel_primitive:NN \textdir \luatex_textdir:D \tex_endgroup:D \tex_let:D \tex_end:D \@@end \tex_let:D \tex_everydisplay:D \frozen@everydisplay diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3pdfmode.def b/Master/texmf-dist/tex/latex/l3kernel/l3pdfmode.def index 84511dd3405..ef13e1888a2 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3pdfmode.def +++ b/Master/texmf-dist/tex/latex/l3kernel/l3pdfmode.def @@ -47,7 +47,7 @@ %% ----------------------------------------------------------------------- %% \RequirePackage{l3bootstrap} -\GetIdInfo$Id: l3drivers.dtx 4602 2013-11-18 23:19:01Z bruno $ +\GetIdInfo$Id: l3drivers.dtx 4632 2013-12-31 17:09:37Z joseph $ {L3 Experimental drivers} \ProvidesExplFile {l3pdfmode.def}{\ExplFileDate}{\ExplFileVersion} @@ -55,43 +55,50 @@ \__expl_package_check: \cs_if_exist:NTF \pdftex_pdfsave:D { - \cs_new_eq:NN \__driver_graphic_state_save: \pdftex_pdfsave:D - \cs_new_eq:NN \__driver_graphic_state_restore: \pdftex_pdfrestore:D + \cs_new_eq:NN \__driver_state_save: \pdftex_pdfsave:D + \cs_new_eq:NN \__driver_state_restore: \pdftex_pdfrestore:D } { - \cs_new_protected_nopar:Npn \__driver_graphic_state_save: + \cs_new_protected_nopar:Npn \__driver_state_save: { \pdftex_pdfliteral:D { q } } - \cs_new_protected_nopar:Npn \__driver_graphic_state_restore: + \cs_new_protected_nopar:Npn \__driver_state_restore: { \pdftex_pdfliteral:D { Q } } } -\cs_new_protected:Npn \__driver_pdf_literal:n #1 +\cs_new_protected:Npn \__driver_literal:n #1 { \pdftex_pdfliteral:D {#1} } -\cs_new_protected:Npn \__driver_pdf_literal_direct:n #1 - { \pdftex_pdfliteral:D direct~{#1} } +\cs_if_exist:NTF \pdftex_pdfsetmatrix:D + { + \cs_new_protected:Npn \__driver_matrix:n #1 + { \pdftex_pdfsetmatrix:D {#1} } + } + { + \cs_new_protected:Npn \__driver_matrix:n #1 + { \__driver_literal:n { #1 \c_space_tl 0~0~cm } } + } \cs_new_protected:Npn \__driver_box_use_clip:N #1 { - \__driver_graphic_state_save: - \__driver_pdf_literal_direct:n + \__driver_state_save: + \__driver_literal:n { - 0 ~ + 0~ \__dim_strip_bp:n { - \box_dp:N #1 } ~ \__dim_strip_bp:n { \box_wd:N #1 } ~ \__dim_strip_bp:n { \box_ht:N #1 + \box_dp:N #1 } ~ re~W~n } \hbox_overlap_right:n { \box_use:N #1 } - \__driver_graphic_state_restore: + \__driver_state_restore: \skip_horizontal:n { \box_wd:N #1 } } \cs_new_protected_nopar:Npn \__driver_box_rotate_begin: { - \__driver_graphic_state_save: + \__driver_state_save: \box_set_wd:Nn \l__box_internal_box \c_zero_dim \fp_set:Nn \l__box_cos_fp { round ( \l__box_cos_fp , 5 ) } \fp_compare:nNnT \l__box_cos_fp = \c_zero_fp { \fp_zero:N \l__box_cos_fp } \fp_set:Nn \l__box_sin_fp { round ( \l__box_sin_fp , 5 ) } - \__driver_pdf_matrix:n + \__driver_matrix:n { \fp_use:N \l__box_cos_fp \c_space_tl \fp_compare:nNnTF \l__box_sin_fp = \c_zero_fp @@ -105,31 +112,23 @@ \fp_use:N \l__box_cos_fp } } -\cs_new_eq:NN \__driver_box_rotate_end: \__driver_graphic_state_restore: +\cs_new_eq:NN \__driver_box_rotate_end: \__driver_state_restore: \cs_new_protected_nopar:Npn \__driver_box_scale_begin: { + \__driver_state_save: \fp_set:Nn \l__box_scale_x_fp { round ( \l__box_scale_x_fp , 5 ) } \fp_set:Nn \l__box_scale_y_fp { round ( \l__box_scale_y_fp , 5 ) } - \__driver_graphic_state_save: - \__driver_pdf_matrix:n + \__driver_matrix:n { \fp_use:N \l__box_scale_x_fp \c_space_tl 0~0~ \fp_use:N \l__box_scale_y_fp } } -\cs_new_eq:NN \__driver_box_scale_end: \__driver_graphic_state_restore: -\cs_if_exist:NTF \pdftex_pdfsetmatrix:D - { - \cs_new_protected:Npn \__driver_pdf_matrix:n #1 - { \pdftex_pdfsetmatrix:D {#1} } - } - { - \cs_new_protected:Npn \__driver_pdf_matrix:n #1 - { \__driver_pdf_literal:n { #1 \c_space_tl 0~0~cm } } - } +\cs_new_eq:NN \__driver_box_scale_end: \__driver_state_restore: \tl_new:N \l__driver_current_color_tl \tl_set:Nn \l__driver_current_color_tl { 0~g~0~G } +%% \end{macrocode} \int_new:N \l__driver_color_stack_int \cs_if_exist:NTF \pdftex_pdfcolorstack:D { @@ -145,11 +144,11 @@ { \cs_new_protected_nopar:Npn \__driver_color_ensure_current: { - \__driver_pdf_literal:n { \l__driver_current_color_tl } + \__driver_literal:n { \l__driver_current_color_tl } \group_insert_after:N \__driver_color_reset: } \cs_new_protected_nopar:Npn \__driver_color_reset: - { \__driver_pdf_literal:n { \l__driver_current_color_tl } } + { \__driver_literal:n { \l__driver_current_color_tl } } } %% %% diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3prop.sty b/Master/texmf-dist/tex/latex/l3kernel/l3prop.sty index c08682a0b57..8f1aa4f4044 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3prop.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3prop.sty @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3bootstrap} -\GetIdInfo$Id: l3prop.dtx 4581 2013-07-28 08:38:50Z joseph $ +\GetIdInfo$Id: l3prop.dtx 4623 2013-12-14 13:53:40Z bruno $ {L3 Property lists} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} @@ -55,7 +55,7 @@ \cs_new:Npn \__prop_pair:wn #1 \s__prop #2 { \__msg_kernel_expandable_error:nn { kernel } { misused-prop } } \tl_new:N \l__prop_internal_tl -\tl_const:Nn \c_empty_prop { \s__prop \s_obj_end } +\tl_const:Nn \c_empty_prop { \s__prop } \cs_new_protected:Npn \prop_new:N #1 { \__chk_if_free_cs:N #1 @@ -86,7 +86,6 @@ \prop_new:N \l_tmpb_prop \prop_new:N \g_tmpa_prop \prop_new:N \g_tmpb_prop -\cs_new:Npn \__prop_strip_end:w #1 \s_obj_end { \exp_not:n {#1} } \cs_new_protected:Npn \__prop_split:NnTF #1#2 { \exp_args:NNo \__prop_split_aux:NnTF #1 { \tl_to_str:n {#2} } } \cs_new_protected:Npn \__prop_split_aux:NnTF #1#2#3#4 @@ -181,13 +180,7 @@ } \__prop_split:NnTF #2 {#3} { #1 #2 { \exp_not:n {##1} \l__prop_internal_tl \exp_not:n {##3} } } - { - #1 #2 - { - \exp_after:wN \__prop_strip_end:w #2 - \l__prop_internal_tl \s_obj_end - } - } + { #1 #2 { \exp_not:o {#2} \l__prop_internal_tl } } } \cs_generate_variant:Nn \prop_put:Nnn { NnV , Nno , Nnx , NV , NVV , No , Noo } @@ -210,13 +203,7 @@ } \__prop_split:NnTF #2 {#3} { } - { - #1 #2 - { - \exp_after:wN \__prop_strip_end:w #2 - \l__prop_internal_tl \s_obj_end - } - } + { #1 #2 { \exp_not:o {#2} \l__prop_internal_tl } } } \cs_generate_variant:Nn \prop_put_if_new:Nnn { c } \cs_generate_variant:Nn \prop_gput_if_new:Nnn { c } diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3quark.sty b/Master/texmf-dist/tex/latex/l3kernel/l3quark.sty index 6f13a54607b..8fef7cdef20 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3quark.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/l3quark.sty @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3bootstrap} -\GetIdInfo$Id: l3quark.dtx 4564 2013-07-21 02:12:33Z bruno $ +\GetIdInfo$Id: l3quark.dtx 4623 2013-12-14 13:53:40Z bruno $ {L3 Quarks} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} @@ -163,7 +163,6 @@ \__scan_new:N \s__stop \cs_new:Npn \__use_none_delimit_by_s__stop:w #1 \s__stop { } \__scan_new:N \s__seq -\__scan_new:N \s_obj_end \cs_new:Npn \quark_if_recursion_tail_break:N #1 { \__quark_if_recursion_tail_break:NN #1 \prg_break: } \cs_new:Npn \quark_if_recursion_tail_break:n #1 diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3seq.sty b/Master/texmf-dist/tex/latex/l3kernel/l3seq.sty index 2df60faf409..758407cb40f 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 4581 2013-07-28 08:38:50Z joseph $ +\GetIdInfo$Id: l3seq.dtx 4623 2013-12-14 13:53:40Z bruno $ {L3 Sequences and stacks} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} @@ -58,7 +58,8 @@ } \tl_new:N \l__seq_internal_a_tl \tl_new:N \l__seq_internal_b_tl -\tl_const:Nn \c_empty_seq { \s__seq \s_obj_end } +\cs_new_eq:NN \__seq_tmp:w ? +\tl_const:Nn \c_empty_seq { \s__seq } \cs_new_protected:Npn \seq_new:N #1 { \__chk_if_free_cs:N #1 @@ -110,7 +111,7 @@ } \tl_set:Nx \l__seq_internal_a_tl { \l__seq_internal_a_tl } } - #1 #2 { \s__seq \l__seq_internal_a_tl \s_obj_end } + #1 #2 { \s__seq \l__seq_internal_a_tl } } \cs_new:Npn \__seq_set_split_auxi:w #1 \__seq_set_split_end: { @@ -123,11 +124,9 @@ \cs_generate_variant:Nn \seq_set_split:Nnn { NnV } \cs_generate_variant:Nn \seq_gset_split:Nnn { NnV } \cs_new_protected:Npn \seq_concat:NNN #1#2#3 - { \tl_set:Nf #1 { \exp_last_unbraced:NNo \__seq_concat:NN #2 #3 } } + { \tl_set:Nf #1 { \exp_after:wN \use_i:nn \exp_after:wN #2 #3 } } \cs_new_protected:Npn \seq_gconcat:NNN #1#2#3 - { \tl_gset:Nf #1 { \exp_last_unbraced:NNo \__seq_concat:NN #2 #3 } } -\cs_new:Npn \__seq_concat:NN #1#2 { \exp_after:wN \__seq_concat:w #1 } -\cs_new:Npn \__seq_concat:w #1 \s_obj_end {#1} + { \tl_gset:Nf #1 { \exp_after:wN \use_i:nn \exp_after:wN #2 #3 } } \cs_generate_variant:Nn \seq_concat:NNN { ccc } \cs_generate_variant:Nn \seq_gconcat:NNN { ccc } \prg_new_eq_conditional:NNn \seq_if_exist:N \cs_if_exist:N { TF , T , F , p } @@ -154,22 +153,9 @@ \cs_generate_variant:Nn \seq_gput_left:Nn { NV , Nv , No , Nx } \cs_generate_variant:Nn \seq_gput_left:Nn { c , cV , cv , co , cx } \cs_new_protected:Npn \seq_put_right:Nn #1#2 - { - \tl_set:Nx #1 - { - \exp_after:wN \__seq_put_right_aux:w #1 - \exp_not:n { \__seq_item:n {#2} \s_obj_end } - } - } + { \tl_put_right:Nn #1 { \__seq_item:n {#2} } } \cs_new_protected:Npn \seq_gput_right:Nn #1#2 - { - \tl_gset:Nx #1 - { - \exp_after:wN \__seq_put_right_aux:w #1 - \exp_not:n { \__seq_item:n {#2} \s_obj_end } - } - } -\cs_new:Npn \__seq_put_right_aux:w #1 \s_obj_end { \exp_not:n {#1} } + { \tl_gput_right:Nn #1 { \__seq_item:n {#2} } } \cs_generate_variant:Nn \seq_gput_right:Nn { NV , Nv , No , Nx } \cs_generate_variant:Nn \seq_gput_right:Nn { c , cV , cv , co , cx } \cs_generate_variant:Nn \seq_put_right:Nn { NV , Nv , No , Nx } @@ -299,17 +285,13 @@ \cs_generate_variant:Nn \seq_pop_left:NN { c } \cs_generate_variant:Nn \seq_gpop_left:NN { c } \cs_new_protected:Npn \seq_get_right:NN #1#2 - { \exp_after:wN \__seq_get_right_setup:wN #1 #2 } -\cs_new_protected:Npn \__seq_get_right_setup:wN \s__seq #1 \s_obj_end #2 { - \__seq_get_right_loop:nn - \q_no_value + \exp_after:wN \use_i_ii:nnn + \exp_after:wN \__seq_get_right_loop:nn + \exp_after:wN \q_no_value #1 - { - ?? - \tex_afterassignment:D \use_none:n - \tl_set:Nn #2 - } + { ?? \tl_set:Nn #2 } + { } { } } \cs_new_protected:Npn \__seq_get_right_loop:nn #1#2 { @@ -318,26 +300,25 @@ } \cs_generate_variant:Nn \seq_get_right:NN { c } \cs_new_protected_nopar:Npn \seq_pop_right:NN - { \__seq_pop:NNNN \__seq_pop_right_aux:NNN \tl_set:Nx } + { \__seq_pop:NNNN \__seq_pop_right:NNN \tl_set:Nx } \cs_new_protected_nopar:Npn \seq_gpop_right:NN - { \__seq_pop:NNNN \__seq_pop_right_aux:NNN \tl_gset:Nx } -\cs_new_protected:Npn \__seq_pop_right_aux:NNN #1#2#3 + { \__seq_pop:NNNN \__seq_pop_right:NNN \tl_gset:Nx } +\cs_new_protected:Npn \__seq_pop_right:NNN #1#2#3 { - \cs_set_eq:NN \seq_tmp:w \__seq_item:n + \cs_set_eq:NN \__seq_tmp:w \__seq_item:n \cs_set_eq:NN \__seq_item:n \scan_stop: #1 #2 { \if_false: } \fi: \s__seq - \exp_after:wN \__seq_pop_right_setup:w + \exp_after:wN \use_i:nnn + \exp_after:wN \__seq_pop_right_loop:nn #2 { - \s_obj_end \if_false: { \fi: } - \tex_afterassignment:D \use_none:n + \if_false: { \fi: } \tl_set:Nx #3 } - \cs_set_eq:NN \__seq_item:n \seq_tmp:w + { } \use_none:nn + \cs_set_eq:NN \__seq_item:n \__seq_tmp:w } -\cs_new:Npn \__seq_pop_right_setup:w \s__seq #1 \s_obj_end - { \exp_after:wN \__seq_pop_right_loop:nn \use_none:n #1 } \cs_new:Npn \__seq_pop_right_loop:nn #1#2 { #2 { \exp_not:n {#1} } @@ -360,9 +341,9 @@ \prg_new_protected_conditional:Npnn \seq_gpop_left:NN #1#2 { T , F , TF } { \__seq_pop_TF:NNNN \__seq_pop_left:NNN \tl_gset:Nn #1 #2 } \prg_new_protected_conditional:Npnn \seq_pop_right:NN #1#2 { T , F , TF } - { \__seq_pop_TF:NNNN \__seq_pop_right_aux:NNN \tl_set:Nx #1 #2 } + { \__seq_pop_TF:NNNN \__seq_pop_right:NNN \tl_set:Nx #1 #2 } \prg_new_protected_conditional:Npnn \seq_gpop_right:NN #1#2 { T , F , TF } - { \__seq_pop_TF:NNNN \__seq_pop_right_aux:NNN \tl_gset:Nx #1 #2 } + { \__seq_pop_TF:NNNN \__seq_pop_right:NNN \tl_gset:Nx #1 #2 } \cs_generate_variant:Nn \seq_pop_left:NNT { c } \cs_generate_variant:Nn \seq_pop_left:NNF { c } \cs_generate_variant:Nn \seq_pop_left:NNTF { c } @@ -380,10 +361,12 @@ \cs_new_nopar:Npn \seq_map_break:n { \__prg_map_break:Nn \seq_map_break: } \cs_new:Npn \seq_map_function:NN #1#2 - { \exp_after:wN \__seq_map_function:wN #1 #2 } -\cs_new:Npn \__seq_map_function:wN \s__seq #1 \s_obj_end #2 { - \__seq_map_function:NNn #2 #1 { ? \seq_map_break: } { } + \exp_after:wN \use_i_ii:nnn + \exp_after:wN \__seq_map_function:NNn + \exp_after:wN #2 + #1 + { ? \seq_map_break: } { } \__prg_break_point:Nn \seq_map_break: { } } \cs_new:Npn \__seq_map_function:NNn #1#2#3 @@ -451,12 +434,8 @@ \int_case:nnF { \seq_count:N #1 } { { 0 } { } - { 1 } - { - \exp_after:wN \__seq_use:wnwnn #1 - \__seq_item:n { } \s_obj_end { } - } - { 2 } { \exp_after:wN \__seq_use:wnwnn #1 {#2} } + { 1 } { \exp_after:wN \__seq_use:NNnNnn #1 ? { } { } } + { 2 } { \exp_after:wN \__seq_use:NNnNnn #1 {#2} } } { \exp_after:wN \__seq_use_setup:w #1 \__seq_item:n @@ -468,11 +447,8 @@ { \__msg_kernel_expandable_error:nnn { kernel } { bad-variable } {#1} } } \cs_generate_variant:Nn \seq_use:Nnnn { c } -\cs_new:Npn \__seq_use:wnwnn - #1 \__seq_item:n #2#3 \__seq_item:n #4#5 \s_obj_end #6 - { \exp_not:n { #2 #6 #4 } } -\cs_new:Npn \__seq_use_setup:w \s__seq #1 \s_obj_end - { \__seq_use:nwwwwnwn { } #1 } +\cs_new:Npn \__seq_use:NNnNnn #1#2#3#4#5#6 { \exp_not:n { #3 #6 #5 } } +\cs_new:Npn \__seq_use_setup:w \s__seq { \__seq_use: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 diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3tl.sty b/Master/texmf-dist/tex/latex/l3kernel/l3tl.sty index 8a46f029c45..9e1afe4039e 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 4592 2013-09-16 21:11:41Z joseph $ +\GetIdInfo$Id: l3tl.dtx 4625 2013-12-27 15:55:36Z joseph $ {L3 Token lists} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3xdvipdfmx.def b/Master/texmf-dist/tex/latex/l3kernel/l3xdvipdfmx.def index b1d14e8264a..cc5c9beb713 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3xdvipdfmx.def +++ b/Master/texmf-dist/tex/latex/l3kernel/l3xdvipdfmx.def @@ -47,48 +47,49 @@ %% ----------------------------------------------------------------------- %% \RequirePackage{l3bootstrap} -\GetIdInfo$Id: l3drivers.dtx 4602 2013-11-18 23:19:01Z bruno $ +\GetIdInfo$Id: l3drivers.dtx 4632 2013-12-31 17:09:37Z joseph $ {L3 Experimental drivers} \ProvidesExplFile {l3xdvidpfmx.def}{\ExplFileDate}{\ExplFileVersion} {L3 Experimental driver: xdvipdfmx} \__expl_package_check: -\cs_new_protected_nopar:Npn \__driver_graphic_state_save: - { \tex_special:D { pdf:content~q } } -\cs_new_protected_nopar:Npn \__driver_graphic_state_restore: - { \tex_special:D { pdf:content~Q } } -\cs_new_protected:Npn \__driver_pdf_literal:n #1 - { \tex_special:D { pdf:content~ #1 } } -\cs_new_protected:Npn \__driver_pdf_literal_direct:n #1 - { \tex_special:D { pdf:literal~direct~ #1 } } +\cs_new_protected_nopar:Npn \__driver_state_save: + { \tex_special:D { pdf:bcontent } } +\cs_new_protected_nopar:Npn \__driver_state_restore: + { \tex_special:D { pdf:econtent } } +\cs_new_protected:Npn \__driver_literal:n #1 + { \tex_special:D { pdf:literal~ #1 } } +\cs_new_protected:Npn \__driver_matrix:n #1 + { \__driver_literal:n { direct~ #1 \c_space_tl 0~0~cm } } \cs_new_protected:Npn \__driver_box_use_clip:N #1 { - \__driver_graphic_state_save: - \__driver_pdf_literal_direct:n + \__driver_literal:n { q } + \__driver_literal:n { - 0 ~ + direct~ + 0~ \__dim_strip_bp:n { - \box_dp:N #1 } ~ \__dim_strip_bp:n { \box_wd:N #1 } ~ \__dim_strip_bp:n { \box_ht:N #1 + \box_dp:N #1 } ~ re~W~n } - \__driver_pdf_matrix:n { -1~0~0~-1 } - \__driver_graphic_state_save: - \__driver_pdf_matrix:n { -1~0~0~-1 } + \__driver_matrix:n { -1~0~0~-1 } + \__driver_literal:n { q } + \__driver_matrix:n { -1~0~0~-1 } \hbox_overlap_right:n { \box_use:N #1 } - \__driver_graphic_state_restore: - \__driver_graphic_state_restore: + \__driver_literal:n { Q } + \__driver_literal:n { Q } \skip_horizontal:n { \box_wd:N #1 } } \cs_new_protected_nopar:Npn \__driver_box_rotate_begin: { - \__driver_graphic_state_save: + \__driver_state_save: \box_set_wd:Nn \l__box_internal_box \c_zero_dim \fp_set:Nn \l__box_cos_fp { round ( \l__box_cos_fp , 5 ) } \fp_compare:nNnT \l__box_cos_fp = \c_zero_fp { \fp_zero:N \l__box_cos_fp } \fp_set:Nn \l__box_sin_fp { round ( \l__box_sin_fp , 5 ) } - \__driver_pdf_matrix:n + \__driver_matrix:n { \fp_use:N \l__box_cos_fp \c_space_tl \fp_compare:nNnTF \l__box_sin_fp = \c_zero_fp @@ -102,24 +103,23 @@ \fp_use:N \l__box_cos_fp } } -\cs_new_eq:NN \__driver_box_rotate_end: \__driver_graphic_state_restore: +\cs_new_eq:NN \__driver_box_rotate_end: \__driver_state_restore: \cs_new_protected_nopar:Npn \__driver_box_scale_begin: { + \__driver_state_save: \fp_set:Nn \l__box_scale_x_fp { round ( \l__box_scale_x_fp , 5 ) } \fp_set:Nn \l__box_scale_y_fp { round ( \l__box_scale_y_fp , 5 ) } - \__driver_graphic_state_save: - \__driver_pdf_matrix:n + \__driver_matrix:n { \fp_use:N \l__box_scale_x_fp \c_space_tl 0~0~ \fp_use:N \l__box_scale_y_fp } } -\cs_new_eq:NN \__driver_box_scale_end: \__driver_graphic_state_restore: -\cs_new_protected:Npn \__driver_pdf_matrix:n #1 - { \__driver_pdf_literal_direct:n { #1 \c_space_tl 0~0~cm } } +\cs_new_eq:NN \__driver_box_scale_end: \__driver_state_restore: \tl_new:N \l__driver_current_color_tl \tl_set:Nn \l__driver_current_color_tl { gray~0 } +%% \end{macrocode} \cs_new_protected_nopar:Npn \__driver_color_ensure_current: { \tex_special:D { color~push~\l__driver_current_color_tl } diff --git a/Master/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty b/Master/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty index 2835a4a7407..eefd87478f3 100644 --- a/Master/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty +++ b/Master/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty @@ -46,8 +46,8 @@ %% %% ----------------------------------------------------------------------- %% -\RequirePackage{expl3}[2013/11/19] -\@ifpackagelater{expl3}{2013/11/19} +\RequirePackage{expl3}[2013/12/31] +\@ifpackagelater{expl3}{2013/12/31} {} {% \PackageError{l3keys2e}{Support package l3kernel too old} @@ -59,7 +59,7 @@ }% \endinput } -\GetIdInfo$Id: l3keys2e.dtx 4608 2013-11-19 15:52:24Z joseph $ +\GetIdInfo$Id: l3keys2e.dtx 4634 2013-12-31 17:32:19Z 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 d686b7b96b4..aa5177281ed 100644 --- a/Master/texmf-dist/tex/latex/l3packages/xparse/xparse.sty +++ b/Master/texmf-dist/tex/latex/l3packages/xparse/xparse.sty @@ -50,8 +50,8 @@ %% %% ----------------------------------------------------------------------- %% -\RequirePackage{expl3}[2013/11/19] -\@ifpackagelater{expl3}{2013/11/19} +\RequirePackage{expl3}[2013/12/31] +\@ifpackagelater{expl3}{2013/12/31} {} {% \PackageError{xparse}{Support package l3kernel too old} @@ -63,7 +63,7 @@ }% \endinput } -\GetIdInfo$Id: xparse.dtx 4609 2013-11-19 16:01:54Z joseph $ +\GetIdInfo$Id: xparse.dtx 4634 2013-12-31 17:32:19Z joseph $ {L3 Experimental document command parser} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} diff --git a/Master/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.sty b/Master/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.sty index ad415a959f2..e054d0013c5 100644 --- a/Master/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.sty +++ b/Master/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.sty @@ -50,8 +50,8 @@ %% %% ----------------------------------------------------------------------- %% -\RequirePackage{expl3}[2013/11/19] -\@ifpackagelater{expl3}{2013/11/19} +\RequirePackage{expl3}[2013/12/31] +\@ifpackagelater{expl3}{2013/12/31} {} {% \PackageError{xtemplate}{Support package l3kernel too old} @@ -63,7 +63,7 @@ }% \endinput } -\GetIdInfo$Id: xtemplate.dtx 4608 2013-11-19 15:52:24Z joseph $ +\GetIdInfo$Id: xtemplate.dtx 4634 2013-12-31 17:32:19Z joseph $ {L3 Experimental prototype document functions} \ProvidesExplPackage {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} |