
我在(套件)環境fp
中運行巨集時遇到一個奇怪的問題。我用來產生一些值,這些值在基於 的個人清單環境中呈現。tabenum
tablists
fp
tabenum
事實是,如果我fp
在 外部設定一個值tabenum
,我可以在環境內部到達它,但如果我在環境內部設定它,則結果值將被取消設定。根據相對於指令的設定位置,還會出現奇怪的行為tabenumitem
。
例如下面的程式碼
\begin{tabenum}
\FPmul\result{12}{10}
\tabenumitem \result
\end{tabenum}
一段時間會導致"unknown \result command" error
以下情況:
\FPmul\result{12}{10}
\begin{tabenum}
\tabenumitem \result
\end{tabenum}
將不會。
我的問題是我如何使用環境multido
中的命令產生多個值tabenum
,因此在打開環境之前我無法產生它們。
透過嘗試大量範例,我發現fp
命令的行為在數學模式內發生了變化。也許解決方案可以包括退出運行fp
命令的數學模式並返回到使用 來顯示值tabenumitem
。
謝謝
答案1
表格單元格充當群組,因此非全域定義在群組關閉後消失。
- 要么將計算放在同一個單元格中,要么
- 定義一個全域巨集。
兩者的範例:
\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}