diff options
Diffstat (limited to 'Master/texmf-dist/doc/latex/nameauth/compat.tex')
-rw-r--r-- | Master/texmf-dist/doc/latex/nameauth/compat.tex | 107 |
1 files changed, 81 insertions, 26 deletions
diff --git a/Master/texmf-dist/doc/latex/nameauth/compat.tex b/Master/texmf-dist/doc/latex/nameauth/compat.tex index 0edc05be0bd..783e0e02484 100644 --- a/Master/texmf-dist/doc/latex/nameauth/compat.tex +++ b/Master/texmf-dist/doc/latex/nameauth/compat.tex @@ -8,7 +8,7 @@ %% %% This is a generated file. %% -%% Copyright (C) 2023 by Charles P. Schaum <charles[dot]schaum@comcast.net> +%% Copyright (C) 2024 by Charles P. Schaum <charles[dot]schaum@comcast.net> %% %% This file may be distributed and/or modified under the conditions of %% the LaTeX Project Public License, either version 1.3 of this license @@ -21,40 +21,95 @@ %% 2005/12/01 or later. %% -% This snippet assists backward compatibility for older +% This is not a standalone document. +% Use this file only in the document preamble. + +\makeatletter + +% Do not include the rest of this file +% unless we are in a document preamble. + +\ifx\@onlypreamble\@notprerr\else + +% Check against the latex version date. Create a macro +% if the date is at least 2018/10/05 because that is +% when Unicode processing changed for the better. + + \@ifl@t@r\fmtversion{2018/10/05}{\def\nameauthltx{}}{} + +% Here we check for 2018/04/30 because that is when xparse +% added the ! modifier. + + \@ifl@t@r\fmtversion{2018/04/30}{\def\nameauthxp{}}{} + +% Here we assist backward compatibility for older % distributions of LaTeX and compatibility for multiple -% LaTeX engines. It is not a standalone document. -% -\IfFileExists{iftex.sty}{\usepackage{iftex}}{} -\unless\ifdefined\RequireTUTeX - \usepackage{ifxetex} - \usepackage{ifluatex} - \usepackage{ifpdf} -\fi +% LaTeX engines. + +% If we want to use TikZ, this flag will help us. + + \newif\ifDoTikZ -\ifxetex - \usepackage{fontspec} - \usepackage{polyglossia} - \setdefaultlanguage{american} -\else - \ifluatex - \ifpdf - \usepackage{fontspec} - \usepackage{polyglossia} - \setdefaultlanguage{american} +% If we couch this statement in a conditional, we avoid +% potential errors in older versions. + + \IfFileExists{iftex.sty}{\usepackage{iftex}}{} + +% The presence of \RequireTUTeX means that these older +% packages are not needed (thanks to iftex). Otherwise +% we are using an older version and need these packages. + + \unless\ifdefined\RequireTUTeX + \usepackage{ifxetex} + \usepackage{ifluatex} + \usepackage{ifpdf} + \fi + +% Instead of worrying about older or newer changes, we +% ensure consistency when the LaTeX engine changes. +% The goal is to get the same ``lmodern'' look. +% Users will need to change language and font options +% for their own needs. + + \ifxetex + \usepackage{fontspec} + \usepackage{polyglossia} + \setdefaultlanguage{american} + \DoTikZtrue % Loading TikZ will work (pdf) + \else + \ifluatex + \ifpdf + \usepackage{fontspec} + \usepackage{polyglossia} + \setdefaultlanguage{american} + \DoTikZtrue % Loading TikZ will work (pdf) + \else + \IfFileExists{utf8-2018.def}{} + {\usepackage[utf8]{inputenc}} + \usepackage[TS1,T1]{fontenc} + \usepackage[american]{babel} + \usepackage{lmodern} + % Using dvi-based workflows does not + % work well with TikZ; pstricks instead + \fi \else \IfFileExists{utf8-2018.def}{} {\usepackage[utf8]{inputenc}} \usepackage[TS1,T1]{fontenc} \usepackage[american]{babel} \usepackage{lmodern} + \ifpdf + \usepackage{tikz} + \DoTikZtrue % Loading TikZ will work (pdf) + \fi + % Using dvi-based workflows does not + % work well with TikZ; pstricks instead \fi - \else - \IfFileExists{utf8-2018.def}{} - {\usepackage[utf8]{inputenc}} - \usepackage[TS1,T1]{fontenc} - \usepackage[american]{babel} - \usepackage{lmodern} \fi + +% Here one would load TikZ if needed +% \ifDoTikZ \usepackage{tikz} \fi + \fi +\makeatother |