
Ich habe ein seltsames Problem beim Ausführen von fp
Makros in der tabenum
( tablists
Paket-)Umgebung. Ich fp
generiere normalerweise einige Werte, die mit einer persönlichen Listenumgebung basierend auf präsentiert werden tabenum
.
Tatsache ist, dass ich einen fp
Wert, wenn ich ihn außerhalb der Umgebung einstelle tabenum
, innerhalb der Umgebung erreichen kann, aber wenn ich ihn innerhalb der Umgebung einstelle, wird der resultierende Wert nicht festgelegt. Es gibt auch merkwürdige Verhaltensweisen je nach dem Ort der Einstellung im Verhältnis zu den tabenumitem
Befehlen.
Beispielsweise der folgende Code
\begin{tabenum}
\FPmul\result{12}{10}
\tabenumitem \result
\end{tabenum}
"unknown \result command" error
wird eine Weile Folgendes verursachen :
\FPmul\result{12}{10}
\begin{tabenum}
\tabenumitem \result
\end{tabenum}
wird nicht.
multido
Mein Problem besteht darin, dass ich mithilfe eines Befehls innerhalb der Umgebung mehrere Werte generieren möchte tabenum
und diese daher nicht vor dem Öffnen der Umgebung generieren kann.
Durch das Ausprobieren vieler Beispiele habe ich festgestellt, dass sich das Verhalten der fp
Befehle im Mathematikmodus ändert. Eine mögliche Lösung könnte darin bestehen, den Mathematikmodus zum Ausführen der fp
Befehle zu beenden und zum Anzeigen der Werte mit wieder einzusteigen tabenumitem
.
Danke
Antwort1
Tabellenzellen fungieren als Gruppen, daher sind nicht globale Definitionen nach dem Schließen der Gruppe verschwunden.
- Platzieren Sie die Berechnung entweder in derselben Zelle oder
- Definieren Sie ein globales Makro.
Beispiel für beide:
\documentclass{article}
\usepackage{tablists}
\usepackage{fp}
\begin{document}
\begin{tabenum}
\tabenumitem
\FPmul\result{12}{10}%
\FPclip\result\result
\result
\end{tabenum}
\begin{tabenum}
\FPmul\result{21}{10}%
\FPclip\result\result
\global\let\gresult\result
\tabenumitem\gresult
\end{tabenum}
\end{document}