\newcommand{\AddVariable}[2]{
\immediate\write\vars{chk_#1='#2'}}
-\newcommand{\AddPackage}[1]{
- \immediate\write\packages{#1}}
+\newcommand{\AddPackage}[2][]{
+ \immediate\write\packages{#2 #1}}
% Tests whether an item is present
% Syntax: \TestItem[<file>]{<name>}{<type>}{<ext>}{<iftrue>}{<iffalse>}
\fi}
-% Test for the LaTeX version
-\newcommand{\TestLaTeXVersion}[1]{
- \message{^^J\prefix checking for LaTeX version at least as of #1...}
- \@ifl@t@r\fmtversion{#1}{\existstrue}{\existsfalse}
- \ifexists
- \message{yes^^J}
- \AddVariable{#1}{yes}
- \AddPackage{LaTeX-#1}
- \else
- \message{no^^J}
- \AddVariable{#1}{no}
- \fi}
-
-
% Adapted from ltxcheck.tex
\newcommand{\TestFont}[2][\default]{
\def\default{#2}
\fi}
\newcommand{\TestPackage}[2][\default]{
+ \def\default{#2}
\TestItem[#1]{#2}{package}{sty}{\AddPackage{#2}}{}}
\newcommand{\TestDocClass}[2]{
\message{^^J\prefix checking for LaTeX version... \fmtversion}
\AddVariable{fmtversion}{\fmtversion}
-%%% Crucial versions
-% This one introduces \textsubscript
-\TestLaTeXVersion{2005/12/01}
-% This one introduces \UseRawInputEncoding
-\TestLaTeXVersion{2018/04/01}
-% This one introduces path encoding changes
-\TestLaTeXVersion{2019/10/01}
-% This introduces all math and text spaces
-% previously only available via amsmath
-\TestLaTeXVersion{2020/10/01}
-% This robustifies LaTeX commands
-\TestLaTeXVersion{2021/06/01}
-% Introduction of \\DocumentMetadata
-\TestLaTeXVersion{2022/06/01}
+%%% Store the current LaTeX version
+\AddPackage[\fmtversion]{LaTeX}
%%% And now, the list of available languages
% The trick is to know that \the\everyjob contains something like