我是一名 LaTeX 用户,正在学习一些 ConTeXt 教程,但很早就遇到了瓶颈。这让我怀疑我的设置是否出了问题,或者我没有理解一些非常基本的东西,或者 ConTeXt 是否比我想象的要脆弱一些。我使用的是 MacTeX-2012。
使用带有选项的公式和枚举时出现错误letter
。省略选项letter
,效果很好:
\defineenumeration[guess][location=left]
\starttext
\startformula
x = no error
\stopformula
\guess This is just a guess.
\stoptext
但是,以下操作会导致和texexec
失败:Undefined control sequence
\startformula
\stopformula
\defineenumeration[guess][location=left, letter=it]
\starttext
\startformula
x = error
\stopformula
\guess This is just a guess.
\stoptext
取出formula
会消除错误,因此带有选项的枚举letter=it
本身就可以正常工作。
在测试这个时,我发现(令我惊讶的是)注释掉该letter
选项会出现同样的错误:
\defineenumeration[guess][location=left] %, letter=it]
\starttext
\startformula
x = error
\stopformula
\guess This is just a guess.
\stoptext
但去掉=
标志就可以解决这个问题。运行时没有错误:
\defineenumeration[guess][location=left] %, letter it]
\starttext
\startformula
x = no error
\stopformula
\guess This is just a guess.
\stoptext
但是,这不仅仅是等号,因为它可以毫无错误地运行:
\defineenumeration[guess][location=left] %, bar=baz]
\starttext
\startformula
x = no error
\stopformula
\guess This is just a guess.
\stoptext
我很困惑。我做错了什么吗?
答案1
由于某种原因,您提供的代码使 ConTeXt 切换到荷兰语界面(我不知道为什么)。在荷兰语界面中,命令\startformula
未定义,因此您会收到错误。您可以使用
texexec --interface=en file.tex
这会强制 ConTeXt 使用具有英语界面的 MkII 并处理文件。
但是,正如评论中指出的那样,您最好使用 ConTeXt MkIV,它使用命令context
而不是texexec
。您将获得完整的 Unicode 支持和更轻松的字体处理。
顺便说一句:我不知道该letter=it
选项应该做什么。你在哪里找到它的文档?