Testing for variant/version
David Carlisle
d.p.carlisle at gmail.com
Tue Apr 9 11:58:47 CEST 2024
You can use
\ExplSyntaxOn
\str_compare:nNnTF {aaay} < {aaax} {yes} {no}
\ExplSyntaxOff
The latex format has already tested which engine you are using and resolved
differences between the primitive name and/or supplied Lua implementation
where needed, so you don't need to load any packages or re-test or load
another lua emulation.
David
On Tue, 9 Apr 2024 at 10:50, Peter Flynn <peter at silmaril.ie> wrote:
> A user has suggested the following code to make sure that a macro is
> using the "right" string comparator macro:
>
> \ifdefined\pdftexversion
> \let\switch at strcmp=\pdfstrcmp
> \else
> \ifdefined\xetexversion
> \let\switch at strcmp=\strcmp
> \else
> \ifdefined\luatexversion
> \input pdftexcmds.sty
> \let\switch at strcmp=\pdf at strcmp
> \else
> \let\switch at strcmp=\pdfstrcmp% Danger, Will Robinson!
> \PackageWarningNoLine{stringswitch}{\protect\pdfstrcmp\space
> selected (no \protect\TeX\space variant version found, maybe very old?)}%
> \fi
> \fi
> \fi
>
> The final \else was added because TeX Live 2019/Debian in its xelatex
> incarnation was failing the first three tests. Is there another test
> than can be performed for earlier versions (some of them are probably
> still widespread)?
>
> Peter
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://tug.org/pipermail/tex-live/attachments/20240409/a8542f92/attachment.htm>
More information about the tex-live
mailing list.