最近忙里偷闲,想学学一直放在藏书阁里的 LATEX Notes,于是边看边装 texlive ……

$ pacman -S texlive-bin

先来个 hello world:

%hello_world.tex
\documentclass{article}
\begin{document}
Hello, World!
\end{document}

生成 dvi 文件:

$ latex hello_world

很无情地给出错误:

Latex error: I can’t find the format file `latex.fmt’!

查了半天,发现 texlive-core 才是正主,texlive-bin 只是它的一个依赖,汗……

$ pacman -S texlive-core

这下终于通过了……

这才明白 texlive 果然是个庞然大物,texlive-bin 就 16M 了,texlive-core 有 50 多M,又安个 texlive-cjk 又是 50M,真不知道 texlive-most 有多大……

以下是某高手解释 tex、latex 等的关系,转自 这里

  • tex可理解为一个标准,如C/C++标准,定义基本API;
  • LaTeX是对tex的扩展,封装了一些功能,以便于使用,就像Boost/ACE库之于C++一样;ConTeXt是TeX的另外一个封装库,级别跟LaTeX一样;最早的tex扩展应该是plain tex,现在仍然有很多人在使用;
  • pdftex, xetex可以看成是tex的编译器,就像gcc, icc之于C/C++;luatex是现在比较新的tex`编译器’,而knuth tex是最早的tex编译器;当然不同的编译器可能有不同的扩展,如xetex对unicode的支持,luatex对内嵌lua脚本的扩展等等。
  • winedt是一个tex编辑器,跟notepad,vim,emacs一样,编辑器而已,只是对latex文件的语法、语义支持强一些;
  • miktex, texlive就像Visual C++,C++ Builder一样,提供了写tex/latex/context文档所需要的基本的和必要的工具,如tex编译器和常用的宏包,可以理解为集成开发环境;
  • ctex是基于miktex的二次开发,加入了一些中文配置(如CJK/CCT),方便了国内用户使用。如果非要打比方的话,可以理解为“支持中文的linux”。

评论