summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/l3kernel/expl3.sty')
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/expl3.sty107
1 files changed, 68 insertions, 39 deletions
diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
index 1b25d6f4498..433b3fe9cad 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
+++ b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
@@ -47,15 +47,14 @@
%% -----------------------------------------------------------------------
\def\ExplFileName{expl3}
\def\ExplFileDescription{L3 programming layer}
-\def\ExplFileDate{2014/05/20}
-\def\ExplFileVersion{4814}
+\def\ExplFileDate{2014/06/10}
+\def\ExplFileVersion{5105}
\let\ExplLoaderFileVersion\ExplFileVersion
\ProvidesPackage{\ExplFileName}
[%
\ExplFileDate\space v\ExplFileVersion\space
\ExplFileDescription\space (loader)
]
-\RequirePackage{ifpdf}
\newcommand\expl@create@bool@option[2]%
{%
\DeclareOption{#1}{\chardef #2=1 }%
@@ -109,19 +108,35 @@
active~engine.~LaTeX3~will~use~the~'#2'~driver~instead.
}
\tl_new:N \l__expl_driver_tl
+\bool_if:nTF
+ {
+ \cs_if_exist_p:N \pdftex_pdfoutput:D
+ && \int_compare_p:nNn \pdftex_pdfoutput:D > \c_zero
+ }
+ {
+ \cs_new_eq:NN \__expl_if_pdf:T \use:n
+ \cs_new_eq:NN \__expl_if_pdf:F \use_none:n
+ \cs_new_eq:NN \__expl_if_pdf:TF \use_i:nn
+ }
+ {
+ \cs_new_eq:NN \__expl_if_pdf:T \use_none:n
+ \cs_new_eq:NN \__expl_if_pdf:F \use:n
+ \cs_new_eq:NN \__expl_if_pdf:TF \use_ii:nn
+ }
\keys_define:nn { expl }
{
driver .choice:,
driver / auto .code:n =
{
- \xetex_if_engine:TF
- { \tl_set:Nn \l__expl_driver_tl { xdvipdfmx } }
+ \tl_set:Nx \l__expl_driver_tl
{
- \ifpdf
- \tl_set:Nn \l__expl_driver_tl { pdfmode }
- \else
- \tl_set:Nn \l__expl_driver_tl { dvips }
- \fi
+ \xetex_if_engine:TF
+ { xdvipdfmx }
+ {
+ \__expl_if_pdf:TF
+ { pdfmode }
+ { dvips }
+ }
}
},
driver / dvipdfmx .code:n =
@@ -131,14 +146,15 @@
{
\__msg_kernel_error:nnnn { expl } { wrong-driver }
{ dvipdfmx } { xdvipdfmx }
- \tl_set:Nn \l__expl_driver_tl { xdvipdmx }
+ \tl_set:Nn \l__expl_driver_tl { xdvipdfmx }
}
{
- \ifpdf
- \__msg_kernel_error:nnnn { expl } { wrong-driver }
- { dvipdfmx } { pdfmode }
- \tl_set:Nn \l__expl_driver_tl { pdfmode }
- \fi
+ \__expl_if_pdf:T
+ {
+ \__msg_kernel_error:nnnn { expl } { wrong-driver }
+ { dvipdfmx } { pdfmode }
+ \tl_set:Nn \l__expl_driver_tl { pdfmode }
+ }
}
},
driver / dvips .code:n =
@@ -151,11 +167,12 @@
\tl_set:Nn \l__expl_driver_tl { xdvipdfmx }
}
{
- \ifpdf
- \__msg_kernel_error:nnnn { expl } { wrong-driver }
- { dvips } { pdfmode }
- \tl_set:Nn \l__expl_driver_tl { pdfmode }
- \fi
+ \__expl_if_pdf:T
+ {
+ \__msg_kernel_error:nnnn { expl } { wrong-driver }
+ { dvips } { pdfmode }
+ \tl_set:Nn \l__expl_driver_tl { pdfmode }
+ }
}
},
driver / latex2e .code:n =
@@ -170,12 +187,12 @@
\tl_set:Nn \l__expl_driver_tl { xdvipdfmx }
}
{
- \ifpdf
- \else
- \__msg_kernel_error:nnnn { expl } { wrong-driver }
- { pdfmode } { dvips }
- \tl_set:Nn \l__expl_driver_tl { dvips }
- \fi
+ \__expl_if_pdf:F
+ {
+ \__msg_kernel_error:nnnn { expl } { wrong-driver }
+ { pdfmode } { dvips }
+ \tl_set:Nn \l__expl_driver_tl { dvips }
+ }
}
},
driver / xdvipdfmx .code:n =
@@ -183,18 +200,20 @@
\tl_set:Nn \l__expl_driver_tl { xdvipdfmx }
\xetex_if_engine:F
{
- \ifpdf
- \__msg_kernel_error:nnnn { expl } { wrong-driver }
- { xdvipdfmx } { pdfmode }
- \tl_set:Nn \l__expl_driver_tl { pdfmode }
- \else
- \__msg_kernel_error:nnnn { expl } { wrong-driver }
- { xdvipdfmx } { dvips }
- \tl_set:Nn \l__expl_driver_tl { dvips }
- \fi
+ \__expl_if_pdf:TF
+ {
+ \__msg_kernel_error:nnnn { expl } { wrong-driver }
+ { xdvipdfmx } { pdfmode }
+ \tl_set:Nn \l__expl_driver_tl { pdfmode }
+ }
+ {
+ \__msg_kernel_error:nnnn { expl } { wrong-driver }
+ { xdvipdfmx } { dvips }
+ \tl_set:Nn \l__expl_driver_tl { dvips }
+ }
}
},
- driver .initial:n = { latex2e } ,
+ driver .initial:n = { auto } ,
native-drivers .choice:,
native-drivers .default:n = { true },
native-drivers / false .meta:n = { driver = latex2e },
@@ -259,8 +278,17 @@
}
}
{
- \cs_set_protected:Npn \ProvidesExplFile #1#2#3#4
- { \ProvidesFile {#1} [ #2~v#3~#4 ] }
+ \cs_set_protected:Npn \ProvidesExplFile
+ {
+ \group_begin:
+ \char_set_catcode_space:n { `\ }
+ \ProvidesExplFileAux
+ }
+ \cs_set_protected:Npn \ProvidesExplFileAux #1#2#3#4
+ {
+ \group_end:
+ \ProvidesFile {#1} [ #2~v#3~#4 ]
+ }
\tl_const:Nn \c__expl_def_ext_tl { def }
\@onefilewithoptions { l3 \l__expl_driver_tl } [ ] [ ] \c__expl_def_ext_tl
\cs_set_protected:Npn \ProvidesExplFile #1#2#3#4
@@ -268,6 +296,7 @@
\ProvidesFile {#1} [ #2~v#3~#4 ]
\ExplSyntaxOn
}
+ \cs_undefine:N \ProvidesExplFileAux
}
\tl_put_left:Nn \@pushfilename
{