关于这一点可能已经存在大量问题,但我整天都在为 TeX 的学习曲线而感到不知所措。
我正在尝试学习 LuaTeX(顺便说一句,如果您知道一个好的教程,我很想了解一下)。我昨天下载了适用于 Windows 的 TeX Live 2011。我有一个 LaTeX 文档,其语法可行,可以正确呈现。当我将排版设置切换为 时ConTeXt (LuaTeX)
,我得到Undefined control sequence
第一行,\documentclass{report}
。我做错了什么?
答案1
希望这个回答能帮你澄清一些基本概念。
TeX TeX 是 Knuth 发明的一种(宏)编程语言。它是一种图灵完备的语言。也就是说,理论上你可以用其他语言做几乎所有的事情,尽管不一定很容易。
TeX 引擎
可以解释 TeX 语言的程序。它就像perlPerl 语言的程序。第一个 TeX 引擎由 Knuth 编写。如今,流行的引擎包括pdftex
、、xetex
。比其他两个引擎快得多,尽管其他两个引擎提供了额外的功能,尤其是对于使用 opentype 字体。luatex
提供的不仅仅是字体。pdftex
luatex
乳胶和语境这些都是格式。格式只是一组 TeX 宏(好吧,其实没那么简单)。它们定义了很多宏供您使用。例如,LaTeX 定义了和\documentclass
宏\begin{document}
,而 ConTeXt 定义了\starttext
。要回答格式中到底有什么,需要很长的篇幅。现在,您可能只是认为该程序是启动引擎、输入 LaTeX 宏包(即格式)然后处理输入的lualatex
快捷方式。(我知道这不是luatex
精确的解释一下,但我相信它可以帮助初学者理解)。
LuaLaTeX,西拉特克斯,pdfLaTeX,...这些只是使用 LaTeX 格式和 TeX 引擎的快捷方式。
在问题中,您似乎认为 ConTeXt 和 LuaTeX 是相同的。事实并非如此。ConTeXt Mark IV 需要 LuaTeX 作为引擎来处理此格式。就像许多 LaTeX 软件包和即将推出的 LaTeX3 格式需要具有 e-TeX 功能的引擎一样。
如果这个答案有误,请纠正我。
答案2
最有可能的是,你输入了luatex
编译 LaTeX 文档。编译的正确命令乳胶使用 LuaTeX 编写的代码是lualatex
。