% \iffalse meta-comment % % Copyright (C) 2019-2020 % The LaTeX3 Project and any individual authors listed elsewhere % in this file. % % This file is part of the LaTeX base system. % ------------------------------------------- % % It may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3c % of this license or (at your option) any later version. % The latest version of this license is in % https://www.latex-project.org/lppl.txt % and version 1.3c or later is part of all distributions of LaTeX % version 2008 or later. % % This file has the LPPL maintenance status "maintained". % % The list of all files belonging to the LaTeX base distribution is % given in the file `manifest.txt'. See also `legal.txt' for additional % information. % % The list of derived (unpacked) files belonging to the distribution % and covered by LPPL is defined by the unpacking scripts (with % extension .ins) which are part of the distribution. % % \fi % % \iffalse %%% From File: ltexpl.dtx % %<*driver> % \fi \ProvidesFile{ltexpl.dtx} [2020-05-03 v1.2b LaTeX Kernel (expl3-dependent code)] % \iffalse \documentclass{ltxdoc} \GetFileInfo{ltfinal.dtx} \title{\filename} \date{\filedate} \author{% Joseph Wright} \begin{document} \MaintainedByLaTeXTeam{latex} \maketitle \DocInput{ltfinal.dtx} \end{document} % % \fi % % \section{\pkg{expl3}-dependent code} % % \StopEventually{} % % \changes{v0.0}{2019-10-02}{Initial version} % % \begin{macrocode} %<*2ekernel> % \end{macrocode} % % \subsection{Loader} % % Check for the required primitive/engine support and the existence of % a loader. % \begin{macrocode} % %<*2ekernel|latexrelease> %\IncludeInRelease{2020/02/02}% % {expl3}{Pre-load expl3}% % \end{macrocode} % If we are doing a rollback with a format containing expl3 we % aren't reloading it as that creates havoc. This may need a % refined version! % \changes{v1.0a}{2020/03/02} % {Don't load expl3 if already in the format (gh/295)} % \changes{v1.1}{2020/03/05} % {Load xparse.ltx if \cs{NewDocumentCommand} is not defined % by expl3.ltx} % \begin{macrocode} \expandafter\ifx\csname tex\string _let:D\endcsname\relax \IfFileExists{expl3.ltx} {% \ifnum0% \ifdefined\pdffilesize 1\fi \ifdefined\filesize 1\fi \ifdefined\luatexversion\ifnum\luatexversion>94 1\fi\fi >0 % \expandafter\@firstofone \else \message{Skipping expl3-dependent extensions} %<2ekernel> \expandafter\endinput % \expandafter\@gobble \fi } {% \message{Skipping expl3-dependent extensions}% %<2ekernel> \endinput % \@gobble }% {% \input{expl3.ltx} \ifdefined\NewDocumentCommand \else \IfFileExists{xparse.ltx} {\input{xparse.ltx}} {}% \fi }% \else \GenericInfo{}{Skipping: expl3 code already part of the format} \fi % %\EndIncludeInRelease % \end{macrocode} % % \subsection{Using expl3 code} % % \begin{macrocode} %<*2ekernel|latexrelease> %\IncludeInRelease{2020/10/01}% % {\@expl@tl@trim@spaces@apply@@nN} % {l3 macro for use in include}% % \end{macrocode} % In order to ease the implemantation of some new features in % \LaTeXe\ we may (temporarily) use some coding based on the % \pkg{expl3}-code. % Such macros will eventually vanish and may be changed % unannounced. They are there for internal use in the \LaTeXe\ % kernel and are not meant to be used in third-party % packages. These macros will always have the \verb|@expl@| % prefix in their name. % % \changes{v1.2a}{2020/05/02} % {Define a macro based on l3 language to support inclusion of % files with space in the name (gh/217)} % \begin{macrocode} \ExplSyntaxOn \cs_new_eq:NN \@expl@tl@trim@spaces@apply@@nN \tl_trim_spaces_apply:nN \ExplSyntaxOff % \end{macrocode} % % \begin{macrocode} % %\EndIncludeInRelease %\IncludeInRelease{0000/00/00}% % {\@expl@tl@trim@spaces@apply@@nN} % {l3 macro for use in include}% % %\let\@expl@tl@trim@spaces@apply@@nN\@undefined % %\EndIncludeInRelease %<*2ekernel> % \end{macrocode} % % \begin{macrocode} % % \end{macrocode} % % \Finale