LaTeX 总决式 | 重剑无锋,大巧不工

写在前面的话

最后,我把取舍权交给了交流群里的小伙伴儿们,参与投票人数为42人。大多数同学都投票希望出教程的同时再发学习资料。

我知道其中不乏南郭先生,但希望各位同学对自己投的票负责。当然,我也会尽力把文章写的有趣一点。

2017年我第一次从我的数模教练那听说 LaTeX 排版的强大,转眼间,已经过去快两年了,也算初窥门径,感觉要学精,实在是难登蜀道,其知识体系浩如烟海。

毕业在即,准备用 LaTeX 排毕业论文,但有段时间不用,知识难免遗忘。遂开此系列,也当纪念我的学习生涯吧:

  1. 此系列的每篇文章必会用心耕耘,不追求文章数量,宁缺毋滥;不追求更新速度,欲速则不达。

  2. 在我学习 LaTeX 的途中,走了不少的弯路,欲通过此系列,给初学者指明一条相对明了的学习路径。

  3. 阅读完本系列文章,不可能熟练地掌握 LaTeX ,关键在自己动手实践。道行深浅,修行在个人。

  4. 鄙人才疏学浅,文中谬误之处,敬请海涵。若有高手指点一 二,在下感激不尽。

1. 简介

任何技术的产生与发展都是有血有肉的,忽略这段历史,仅仅学习冰冷的技巧,无疑是悲哀的。千古兴亡多少事悠,不尽长江滚滚流。

关于 LaTeX 的发展史及与所见即所得系统(WYSIWYG),比如微软的 Word 间的较量,我已在《什么是LATEX,《LATEX&Word如何选择》,两篇文章中说的很清楚了,不再赘述。有兴趣的同学可以移步阅读。

此处,关于 TEX 做一个简单小结:

  • 免费

  • TEX 是最精确、最高级的标记语言

  • 版面更专业,数学公式尤其赏心悦目

  • 结构化,它的文档结构清晰

  • 跨平台,它几乎可以运行于所有操作系统

  • 语法不如 HTML 和 XML 严谨、清晰

  • 过程繁琐,需要编译,不能实时查看结果

群里有人问我 TeX、LaTeX、CTEX、TeX Live 之间有什么区别/strong>这明显是没看过我前两篇文章呀,怀着万分悲痛的心情,再给大家小结一下哈:

  • TEX 是一种语言也是一个排版引擎 ,引擎的基本功能就是把字排成行,把行排成页,涉及到断字、断行、分页等算法。

  • LaTeX 是 TEX 的众多宏集之一,只需引用一小段代码,就能实现事先定义好的功能。

  • CTEX 和 TeX Live 都是 TEX 的套装,其中包含了LaTeX,pdfLaTeX,XELaTeX等多种宏集,字体,文档模板,辅助程序等。

[注]: TEX – pdfTeX – XETeX – LuaTeX 都是排版引擎,按照先进程度递增(LuaTeX 尚未完善)

1.1 LaTeX 极速体验

也许你曾听说过 LaTeX 或者 TEX ,但从未使用过。立即体验一下/p>

  1. 前往 http://tug.org/texlive/ 下载安装TEX Live。

  2. 选择编译方式 XELaTeX,点击绿色编译按钮,右侧将弹出编译完成的 pdf 文件。

让我们赶紧开始准备软件吧!

2. 软件的准备

2.1 关于CTEX套装

自2016年3月之后,CTEX 套装一直没有更新;另外 XELATEX 的出现, 让中文使用的很多难题得以解决, 不借助 CTEX 套装也可以很好地处理。

这里我推荐用 TEX Live ,想使用 CTEX 的同学可以自行下载安装。下载地址:http://www.ctex.org/CTeXDownload. CTEX 套装分为Basic 版和 Full 版, 选其中一个下载即可。建议使用 Full 版。安装完成后要立即更新。

2.2 TEX Live 的安装

我是64位的 Windows,下面以Windows为例

  1. 到 http://tug.org/texlive/ 下载自己机器对应的 TEX Live 的镜像或安装包。

  2. 双击 install- tl-windows.exe,开始安装。

  3. 更新. 这一步只是建议, 不是必须的。

TEX Live 的宏包管理器是 tlmgr (TeX Live manager). 在安装路径 C:texlive2015binwin32 下可以找到 tlmgr-gui.

也可以在 WinEdt 工具栏点击图标  启动 tlmgr-gui.  但是, tlmgr 的图形界面使用 Perl 编写, 容易造成系统假死. 故建议使用下面的方法更新.

  1. 使用 Win + R 组合键打开 “运行” 对话框,然后输入 cmd 回车, 打开命令提示符窗口.

  2. 先更新tlmgr. 执行命令

  3. 再更新TEX Live. 执行命令

TEX  Live 使用配搭有多种, 这里只说两个:

  1. TEX Live + TeXworks;

  2. TEX Live + WinEdt + Sumatra PDF.

TEX Live + TeXworks

对 TeXworks 的字体及大小、语法高亮、默认编译方式等进行设置如上图所示,推荐:

  1. 字体选择为 Verdana, 字 14 磅;

  2. 将默认编译方式设为 XeLaTeX;

  3. 对编译方式可以按自己的喜好排序, 比如图中依次为XeLaTeX, pdfLaTeX, BibTeX等.

TEX Live + WinEdt + Sumatra PDF

很多用户习惯使用 WinEdt, 安装 TEX Live 之后也可以选配WinEdt 以及 Sumatra PDF.

在 WinEdt 的发布 站 http://www.winedt.com/ 下载安装即可. 安装过程中, WinEdt会自动配置连接到 TEX Live.

接着安装 Sumatra PDF, 方便文件的反向查找.下载 址:http://www.sumatrapdfreader.org/free-pdf-reader.html.

安装 Sumatra PDF 后, 要对 WinEdt 配置, 使用 Sumatra PDF 作为默认的 pdf 阅读器. 在 WinEdt 菜单栏选 Options —> Execution Modes —>PDF Viewer.

至此, 软件的安装已经完成了! 编译下前面例子, 测试安装是否成功了呢/p>

3. LATEX 的基本知识

建议: 在用中学.  边用边学, 建立了基本的概念以后, 在使用中根据需求去解决问题.  LATEX 的功能和宏包有很多, 每个人用到的功能是有限的; 不主张看完一本大部头的书, 才动手上机测试.

  • 第一步: 把 TEX Live 安装到你的机器里.

  • 第二步: 找一份 LATEX 的入门介绍看看, 一边看一边在电脑上测试编译.  

  • 建议开辟一个 “测试区” 文件夹, 用来调试某段 TEX 文档, 或者用来学习、测试各种命令的功能.

3.1 一篇LATEX文档的基本构成

一篇LATEX 文档, 由三个部分组成: 文档类声明, 导言区, 正文.

文档类就是, 里面声明你要书写什么样式的文档, 常用的有: , ,.

可以自己定义一个新的文档类, 对文章的总体样式和各个细节进行声明, 或者定义自己的命令.

正文, 即 和 之间的部分.

导言区, 夹在 和 之间的部分, 放置需要使用的宏包,或者自己规定一些新的命令.

上例中, 我们自己定义了一个全新的命令, 在正文使用该命令时, 得到的就是该命令的内容“中国湖北”. 还可以定义更复杂的结构或内容.

可能你需要定义的东西太多, 这时可以把它们写在一个文档里面, 这种文档就是宏包. 使用时在导言区使用, 即可以插入该文档的内容.

例如我们想书写一个数学符 . 该数学符 已经由宏包定义过了, 这样只需要在导言区写上, 加载该宏包即可.

3.2 文档的编译方法

3.2.1 编译方式的选择

几种常见的编译方式: XeLaTeX, pdfLaTeX, LaTeX. 推荐使用XeLaTeX, pdfLaTeX 编译, 直接得到pdf 文档.

不同的编译方法, 对应的源文件一般略有不同. 比如第一页的例子,使用pdfLATEX 编译得到的pdf 文件, 其中文是乱码. 需要增加UTF8 选项:

不同的编译方式, 得到不同的效果.  下图可见XeLaTeX 处理得更好, 这也是推荐使用XeLaTeX 的一个重要原因.

3.2.2 中文文档的处理

中文的实现, 推荐使用CTEX 宏集.

下面是类中文文档的例子.

下面是类中文文档的例子.

以下是使用文档类编写幻灯片的一个示例.

4.1 TeXworks 的基本用法

  1. 注释功能

: 对选定区域进行注释, 该段不参与编译;: 取消注释.

  1. 自动补全

使用方法是在输入若干字母后按 或者. 比如, 输入i 之后按 就会得到, 输入xg 之后按 会得到, 输入bth 之后按 会得到

如果有几种可能的补全方式, 多按几次就会在这几种方式之间循环.具体可以参考TeXworks 的帮助文档, 里面还介绍了很多快捷键命令.

4.2 WinEdt 的基本用法

最新版本为WinEdt 10.3, 这里以WinEdt 9.1 为例,两个版本没有大的区别.

  1. 环境的自动补全

输入一个环境名, 比如, 紧接着输入一个右括 , 即输入

窗口会自动出现与之配对的end{definiton}, 即得到

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年7月22日
下一篇 2019年7月22日

相关推荐