tikz muss nach gb4e importiert werden?

tikz muss nach gb4e importiert werden?

Ich verwende die Pakete gb4eund tikz. Es scheint, dass ich, wenn ich gb4evor importiere tikz, einen Fehler erhalte: TeX-Kapazität überschritten, entschuldigen Sie [Parameter-Stackgröße=10000]. \catcode`\noexpand\^^A

Wenn ich jedoch gb4edanach importiere tikz, gibt es kein Problem. Warum ist das so?

Hier ist ein minimales funktionierendes Beispiel, das den Fehler reproduziert:

\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[margin=1in]{geometry}
\usepackage{gb4e}
\usepackage{tikz}
\begin{document}
test
\end{document}

Link für gb4e:https://ctan.org/pkg/gb4e?lang=en

Antwort1

Ich werde dies gerne löschen, aber das Handbuch gb4ebeginnt mit dem Satz

Die Datei gb4e.sty ermöglicht die Verwendung von _(Tiefstellung) und (Hochstellung) in normalem Text, was praktisch ist, aber weil dadurch deren Definitionen geändert werden, muss sie nach jeder Datei geladen werden, die sie in ihrer TEX-Bedeutung verwendet.^

Bildbeschreibung hier eingeben

_Wenn Sie also und in normalem Text verwenden möchten ^, müssen Sie gb4ezuletzt laden, da dadurch die Definitionen von _und geändert werden ^.

JEDOCHes stellt sich heraus, dass das nicht wirklich zu einer superstabilen Lösung führt. Versuchen wir es mal mit gb4eHappy und laden es zuletzt. Folgendes funktioniert:

\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[margin=1in]{geometry}
\usepackage{tikz}
\usepackage{gb4e}
\begin{document}
test 
% \pgfmathsetmacro{\myx}{2^3}\myx % <-does not work
\pgfmathsetmacro{\myx}{pow(2,3)}\myx
\end{document}

Wenn Sie jedoch einen Ausdruck ^mit pgf analysieren,das wird nicht funktionieren:

 \pgfmathsetmacro{\myx}{2^3}

Dies können Sie vermeiden, indem Sie die Möglichkeit, _und ^in normalem Text zu verwenden, mit ausschalten \noautomath. Dann können Sie auch Ti ladenkZ zuletzt.

\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[margin=1in]{geometry}
\usepackage{gb4e}
\noautomath
\usepackage{tikz}
\begin{document}
test 
\pgfmathsetmacro{\myx}{2^3}\myx % works now
\pgfmathsetmacro{\myx}{pow(2,3)}\myx
\end{document}

verwandte Informationen