XeLaTex 和 XeTex 终端应用程序有什么区别?

XeLaTex 和 XeTex 终端应用程序有什么区别?

在 Mac 上,我想通过终端创建 PDF,但我发现无法使用xetex filename.tex,但xelatex filename.tex运行正常。我检查了文件,xelatex实际上是指向的别名xetex。但为什么它们的行为如此不同?我可能需要使用原始可执行文件而不是别名来避免异常。

以下是一些输出:

$ xetex Assignment\ 4.tex

This is XeTeX, Version 3.14159265-2.6-0.99992 (TeX Live 2015) (preloaded format=xetex)
restricted \write18 enabled.
entering extended mode
(./Assignment 4.tex
! Undefined control sequence.
l.4 \documentclass
              [a4paper, 11pt]{article} % Font size (can be 10pt, 11pt or...

? ^Z
[3]  + 44568 suspended  xetex Assignment\ 4.tex 


$ xelatex Assignment\ 4.tex

This is XeTeX, Version 3.14159265-2.6-0.99992 (TeX Live 2015) (preloaded format=xelatex)
restricted \write18 enabled.
entering extended mode
(./Assignment 4.tex
LaTeX2e <2015/10/01> patch level 2
Babel <3.9m> and hyphenation patterns for 79 languages loaded.
(/usr/local/texlive/2015/texmf-dist/tex/latex/base/article.cls
Document Class: article 2014/09/29 v1.4h Standard LaTeX document class
...

答案1

XeTeX 是引擎。LaTeX 是格式。使用 进行编译时xetex,不会加载 LaTeX 格式,因此\documentclass不会定义类似的东西。如果您的文档不是使用 LaTeX 而是使用纯 TeX,则可以通过这种方式进行编译。

可执行文件是相同的,但调用它的名称很重要。这是因为可执行文件会测试以找出它被调用的名称。如果答案是xelatex,它会加载 LaTeX 格式,并且\documentclass定义类似的东西。你可以在控制台显示的输出中看到这一点

... preloaded format=xelatex ...

如果答案是xetex,它不会加载 LaTeX 格式,并且类似的东西\documentclass没有定义。

... preloaded format=xetex ...

如果你愿意,你可以使用

xetex -fmt=<format>

并明确指定您想要的格式。但是,一般来说,当有这样的别名时,没有必要这样做xelatex,尽管这样做也没有什么坏处——结果是一样的。

相关内容