一. latex小史

不知道你是否知道一个人(神),他就是现代计算机科学的鼻祖 Donald Ervin Knuth(高德纳)。

高德纳真的是一个人吗?他在自传的开头如是发问。

图灵奖获得者

高德纳是姚期智夫人储枫(Francis Yao)给起的真正的中文名字,不是英译名。在他的个人主页写着这样一句话:

七十年代末,他写下巨著《计算机程序设计艺术 (The Art of Computer Programming)》。在其第二卷校样时,由于当时排版技术的落后,打印出来的作品十分粗糙。内心对美的追求和渴望使他无法忍受那样低质量的排版印刷。他说:“我不知道怎么办。我花了整整15年时间写这些书,可要是这么难看,我怎么能对这样的作品引以为豪呢?”一气之下,书也不写了,转身决定自己来开发一套高质量的计算机排版系统。可是这项工作比他想象的要复杂难办得多,本来准备半年时间完成的任务,这一转身却花了10年。但是创作出来的TeX排版系统,成为当今学术排版的不二之选,号称“排版之王”。

TeX 来源与读音

TeX一名源自technology的希腊词根τεχ,他的国际音标为[tɛx],近似于中文的发音“泰赫”,但是大多数人却容易按英语的发音读成[tɛk],这一点让高德纳老爷子十分不高兴,他几乎固执的要求TeX的发音必须是按国际发音“泰赫”,也不知道大师为何如此执拗。

TeX支票的故事

高德纳正式发行开源TeX排版系统后,悬赏奖励任何能够在 TeX 中发现程序漏洞(bug)的人。谁找出 TEX 里的一个 bug,就付给其 2.56 美元的支票 (因为256 美分刚好是十六进制的一美元),并且逐次翻倍。即找出第二个奖励5.12 美元,第三个奖励 10.24 美元……依此累加。

高德纳此举是出于对 TeX 性能的自信,他也并没有因此而损失多少金钱,因为TeX中的漏洞极少,而真正发现漏洞的人在获得支票后也不会将其兑现。到目前为止,寥寥几位获奖者都将有他签名的支票作为一种荣誉,或是当作文物珍藏。

TeX版本的故事

TeX的版本号也十分有趣,从第3版开始,每次更新都会按照圆周率π的小数顺序向后加一位,比如3,3.1,3.14,3.141…,使之越来越接近圆周率π的值,表达了一种追求完美的思想。目前的 TeX 版本是3.,这表示到现在为止,TeX排版系统已经十分稳定,无懈可击了。高德纳曾表示 :最后一次升级是(在我过世后)将版本数改为 π,那时任何余下的漏洞将被看作程序的功能。

下面我们介绍另一位神,他就是美国计算机科学家莱斯利·兰伯特 (Leslie Lamport)。

另一位图灵奖获得者

TeX问世之后,功能齐全,性能优良,但其内容庞杂,操作专业化,一般人很难上手。因此Lamport博士在原来TeX的基础上加上了许多功能模块,使得它变得简单易用。用户即使没有专业的排版和程序设计知识也可以充分发挥由TeX所提供的强大功能,不必一一亲自去设计或校对,能够在很短时间内生产高质量的印刷品。后来大家在TeX的前面加上了Lamport的前两个字母,就成为了LaTeX。所以LaTeX如果按国际标准发音大约读成“拉泰赫”, 但是人们貌似更加习惯按照自己的理解和发音习惯去读它:拉泰克[la:tɛks]。好在Lamport博士并不在意LaTeX被读做什么。他说:“读音最好是习惯决定,而不是法令。”小编非常同意这种观点。两个创始人对于名称和读音的不同业态或许多少说明了这样一个事实:LaTeX相对于原始的TeX更少关注排版的细节。小编也建议读者在学习使用LaTeX的时候也保持这样一个态度,那就是不要基于拘泥于每一个命令细节以及排版原理,就把它当成一个文档编辑工具,知道怎么去用就可以了。

由于 LaTeX 也是公开源代码的软件,整个业界都在为之贡献。大家写出了很多功能各异的宏包来实现各种各样的功能。我们正在使用的LaTeX版本是LaTeX2e。2e的意思是超出了第2版,接近却还没有达到第3版。庞大的社区使得 LaTeX 的功能越来越丰富,也让它变得越来越强大。那么我们赶紧学起来吧!

LaTeX排版系统遵循的是内容与呈现分离的设计理念,利用LaTeX排版,排版工作由LaTeX内置程序自动完成,作者可以只专注于他们正在编写的内容,而不必同时注视其外观,即 所思即所得(what you mean is what you get)。而我们常见的文档编辑器如word,采用的是 所见即所得(what you see is what you get)的排版方式,你在编写内容的同时,还必须注重其外观。具体说来,LaTeX排版的工作流程如下所示。

LaTeX系统处理流程

我们只需要编写XXX.tex文档即可,编译工作全部由laTeX完成。上面这张图的具体流程小编在此就不作详细解释了,稍微值得一提的是,由laTeX系统生成的dvi文件是独立于任何输出设备(dvi 为 device independent 的缩写,即与设备无关的)。所以在任何操作系统平台上,用任何LaTeX/TeX软件排版同一个tex文件,得到的都是一样的输出结果。这也是为什么用LaTex生产的文件,可以避免像Word那样换台机器就出现格式错乱的问题。至于LaTex生产文件的具体流程,我们不必了解的那么精细,以上流程完全不懂也没有关系,我们完全可以做如下简化。

LaTeX系统处理简化流程

意思就是说我们只有准备好LaTeX文档, LaTeX系统就好自动按照文档的结构的制式进行布局排版。如果对于生成的pdf文件排版不满意,我们再反过来进行tex文档的调整。

简单地讲,就是:

写论文要脑子,

排版是要命啊!

学会latex,从此优雅而从容的写作。

现在运行TeX文本的软件特别多,Windows,Mac,Linux等各个环境下也分别拥有其主流LaTeX排版软件。小编一直用的 TeXstudio,觉得还挺好用的,推荐给大家。读者若有其他偏好的latex排版软件就用别的吧,如上文所说,LaTeX排版不受任何平台任何软件的影响。

复制以下链接下载 Texstudio 软件,并按以下步骤设置好内部环境。

安装完成后打开软件,你将看到如下画面。在上方工具栏中点击 选项栏,选择 设置TeXstudio(c)进行设置。

如果是windows用户,点击命令栏进行如下初期运行环境设置:

(设置虽然有些繁琐,但是用电脑版微信打开此篇文章,粘贴复制一下,应该也还好。)

1  命令设置

platex -enc -kanji=utf8 -synctex=1 -interaction=nonstopmode %.tex

pdflatex.exe -synctex=1 -interaction=nonstopmode %.tex

xelatex.exe -synctex=1 -interaction=nonstopmode %.tex

lualatex.exe -synctex=1 -interaction=nonstopmode %.tex

DVI查看器:

C:\w32tex\dviout\dviout.exe ?am.dvi   (64位系统为w64tex)

PS查看器:

C:\WINDOWS\system32\OpenWith.exe "?am.ps"    (64位系统为\system64)

外部PDF查看器:

"C:\Program Files (x86)\Adobe\Acrobat 10.0\Acrobat\Acrobat.exe" "?am.pdf"

dvips.exe -o %.ps %.dvi

dvipng.exe -T tight -D 120 %.dvi

ps2pdf.exe %.ps

dvipdfm.exe %.dvi

bibtex.exe %

BibTex8位:

bibtex8.exe %

biber.exe %

Makeindex:

makeindex.exe %.idx

texindy.exe %.idx

制作词汇表:

makeglossaries.exe %

Metapost:

mpost.exe -interaction=nonstopmode ?me)

Asymptote:

asy.exe ?m*.asy

Ghostscript:

"c:\texlive\2013\bin\win32\rungs.exe" "?am.ps"

latexmk.exe -pdf -silent -synctex=1 %

<未知>

<未知>

2. 构建设置(这栏直接下拉选择就好,无需手动输入)

构建并查看:

DVI->PDF链

默认编译器:

默认查看器:

PDF查看器

PDF查看器:

内置PDF查看器(内嵌)

默认文献工具:

如上设置完成后,界面如下所示。

此时,就完成了LaTeX的初期运行环境全部设置。恭喜!

下面给大家一个简单的模板,共大家平时写点儿小文章用。

下载后用TeXstudio打开,点击上方工具栏中的构建并查看按钮(或者按快捷键 F5),便可生成pdf文件。界面如下。左边位tex原文档,右边是生成的pdf文件。

如果你想用LaTeX进行论文写作,请到各大杂志社官网下载其LaTeX模板,下完你就可以用啦,往里面填好内容就行,完全不用担心格式问题,开你不开心!

下载操作也十分简单,举个栗子:

比如如果你要投spring旗下的Computational Mechanics杂志,只需找到他家官网,(地址链接:),然后点进去,你就会看到如下画面:

点击下方红色框框中的 Submission Template 就可下载其模版。然后就可以用啦!

好了,最后以一首打油诗结束本文:

工欲善其事,

必先利其器。

为君发文章,

泰赫来帮忙。