Die Dateneingabe in einer tabellarischen Umgebung führt zu einem merkwürdigen zusätzlichen Leerzeichen

Die Dateneingabe in einer tabellarischen Umgebung führt zu einem merkwürdigen zusätzlichen Leerzeichen

Ich schreibe eine Tabelle und versuche, deren Inhalt aus einer externen Datei zu importieren. Kurioserweise habe ich festgestellt, dass TeX beim Importieren des Inhalts dem letzten Eintrag ein seltsames Leerzeichen hinzuzufügen scheint. Dies tritt nicht auf, wenn ich den Inhalt aus der externen Datei kopiere und direkt in das Dokument einfüge. Wie kann ich dieses Verhalten beheben?

MWE:

\documentclass[margin=0.1cm]{standalone}

\begin{filecontents*}{data.tex}
01 & 02 & 03 & 04 & 05\\06 & 07 & 08 & 09 & 10\\11 & 12 & 13 & 14 & 15\\16 & 17 & 18 & 19 & 20\\21 & 22 & 23 & 24 & 25
\end{filecontents*}

\begin{document}

\begin{tabular}{c|c|c|c|c}
\input{data.tex}
\end{tabular}

\begin{tabular}{c|c|c|c|c}
01 & 02 & 03 & 04 & 05\\06 & 07 & 08 & 09 & 10\\11 & 12 & 13 & 14 & 15\\16 & 17 & 18 & 19 & 20\\21 & 22 & 23 & 24 & 25
\end{tabular}

\end{document}

Das Ergebnis des MWE wird unten angezeigt. Die linke Tabelle ist eingegeben, die rechte direkt getippt. Beachten Sie, dass 25 in beiden Fällen unterschiedliche Ausrichtungen hat. Bildbeschreibung hier eingeben

Antwort1

Dies geschieht aufgrund der Handhabung von \input{…}(bei LaTeX vom 01.10.2020 gibt es meines Wissens sogar zusätzlichen Hook-Code nach dem Ende eines \input) und weil Sie ein zusätzliches Leerzeichen haben: das Zeilenende nach \input{…}. Um dies zu vermeiden, kommentieren Sie das Zeilenende nach \input{…}:

\documentclass[margin=0.1cm]{standalone}

\begin{filecontents*}{data.tex}
01 & 02 & 03 & 04 & 05\\06 & 07 & 08 & 09 & 10\\11 & 12 & 13 & 14 & 15\\16 & 17 & 18 & 19 & 20\\21 & 22 & 23 & 24 & 25
\end{filecontents*}

\begin{document}

\begin{tabular}{c|c|c|c|c}
\input{data.tex}% <-- this percent is needed
\end{tabular}

\begin{tabular}{c|c|c|c|c}
01 & 02 & 03 & 04 & 05\\06 & 07 & 08 & 09 & 10\\11 & 12 & 13 & 14 & 15\\16 & 17 & 18 & 19 & 20\\21 & 22 & 23 & 24 & 25
\end{tabular}

\end{document}

Ausrichtung von 25 ist hier gleich

Hinweis: Dies würde bei plainTeX nicht passieren \input …, da in diesem Fall das Leerzeichen (des Zeilenendes) das Ende des Dateinamens wäre. Dies würde jedoch beispielsweise Dateinamen mit Leerzeichen nicht unterstützen.

Siehe auch:Was ist der Nutzen von Prozentzeichen (%) am Zeilenende? (Warum erzeugt mein Makro zusätzliches Sp...

verwandte Informationen