Wie richtet man eine bedingte Schleife ein, die auswählt, welcher Compiler innerhalb desselben Dokuments verwendet werden soll?

Wie richtet man eine bedingte Schleife ein, die auswählt, welcher Compiler innerhalb desselben Dokuments verwendet werden soll?

Ich habe eine TeXlive 2019-Installation mit einem ungelösten Problem, das mich bislang daran hindert, auf diesem Computer mit LuaLaTeX zu kompilieren. Daher dachte ich, ich könnte der Präambel des Dokuments hinzufügen, dass ich an Code arbeite, der mir die Wahl lässt, mit LuaLaTeX zu kompilieren oder es andernfalls mit pdfLaTeX zu tun.

Ich bin ziemlich sicher, dass ich so etwas vor Jahren schon einmal gesehen habe, aber ich konnte die Lösung, nach der ich suche, nicht finden.

Erinnert sich jemand von euch an die Lösung, die ich suche? Im Moment wäre mein MWE wie folgt:

\documentclass[fontsize=10pt,headings=big,headsepline=on,paper=7in:8.5in,DIV=calc,BCOR=5mm]{scrbook}
\usepackage[english]{babel}
\usepackage{fontspec}
\defaultfontfeatures{Ligatures=TeX, Scale=MatchLowercase}
\usepackage{xunicode}
\usepackage{luatextra}
\setmainfont[
ItalicFont = SourceSerifPro,
ItalicFeatures={FakeSlant=0.2}
]{SourceSerifPro}
\setsansfont{SourceSansPro} 
\setmonofont{SourceCodePro}
\usepackage{blindtext}

\begin{document}
\Blindtext[3][2]
\end{document}

Antwort1

Diese Version des Dokuments funktioniert in Lualatex, Xelatex und PDFlatex (und Latex und mit einigen Warnungen auch Platex).

\documentclass[fontsize=10pt,headings=big,headsepline=on,paper=7in:8.5in,DIV=calc,BCOR=5mm]{scrbook}
\usepackage[english]{babel}
\usepackage{iftex}

\iftutex
% luatex or xetex
\usepackage{fontspec}
\defaultfontfeatures{Ligatures=TeX, Scale=MatchLowercase}
%\usepackage{xunicode}
%\usepackage{luatextra}
\setmainfont[
ItalicFont = SourceSerifPro,
ItalicFeatures={FakeSlant=0.2}
]{SourceSerifPro}
\setsansfont{SourceSansPro} 
\setmonofont{SourceCodePro}
\else
% pdftex
\fi
\usepackage{blindtext}

\begin{document}
\Blindtext[3][2]
\end{document}

verwandte Informationen