无法使 SageTeX 正常工作

无法使 SageTeX 正常工作

根据让 TeX 了解 SageTeX,让 TeX 了解 SageTeX 的首选方法是将tex在 处找到的文件夹SAGE_ROOT/local/share/texmf/tex(在我的 OS X 情况下是)复制到在 shell 中/Applications/Sage-6.4.1.app/Contents/Resources/sage/local/share/texmf/tex运行所返回的值中,在我的例子中是。kpsewhich -var-value=TEXMFHOME/Users/chuck/Library/texmf

我已经这样做了,现在sagetex.sty(和许多其他文件)可以在 找到/Applications/Sage-6.4.1.app/Contents/Resources/sage/local/share/texmf/tex/generic/sagetex

因此我打开该example.tex文件(使用 TeXShop)generic并单击该文件夹中的排版按钮。PDF 在 TeXShop 中生成并打开,但是所有应该有 Sage 操作结果的地方却出现了双问号。

单击时出现的控制台排版有许多错误,全部属于同一类型:

LaTeX Warning: Reference `@sageinline0' on page 1 undefined on input line 40.
LaTeX Warning: Reference `@sageinline1' on page 1 undefined on input line 41.

第 40 行和第 41 行如下所示:

This is an example $2+2=\sage{2+2}$. If you raise the current year mod
$100$ (which equals $\sage{mod(\the\year, 100)}$) to the power of the

此时的 PDF 输出包含以下文本:

这是一个例子 2 + 2 = ??。如果你将当前年份 mod 100(等于 ??)进行

Sage 和 TeX 的其他简单测试都已证明是成功的。例如,启动 Sage 应用程序并选择“终端会话 > Sage”可以正确输出输入42+2并且创建一个非常简单的 TeX 文档并使用latex终端中的命令运行它也是成功的,因此这些似乎都可以单独运行而不会出现问题。

我该怎么做才能让他们一起工作?

答案1

TeXShop 使用称为“引擎”的脚本来排版每个文档。它已设置为处理 Sage,但您需要激活 SageTeX 引擎。

在 Finder 中,导航到~/Library/TeXshop/Engines该文件夹​​,其中会有一个Inactive文件夹。里面是文件sage.engine。将其移动到Engines文件夹中,然后重新启动 TeXshop。

(您还会在 Sage 文件夹中找到一些其他文档,包括一个示例文档。它还推荐了一种正确访问 Sage 的不同方法,而无需将其复制到本地texmf文件夹。)

重新启动 TeXShop 后,在 Typeset 按钮旁边的下拉菜单中,将出现 Sage 引擎。选择它,然后编译您的文档。现在一切都应该正常工作了。

您可以添加以下行:

% !TEX TS-program = sage

到您的 Sage 文档的第一行,Sage 引擎将被自动选择。

答案2

作为参考,这里是 SageMath 文档中与 SageTeX 相关的部分以及 SageTeX GitHub 存储库的最新链接。

相关内容