🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
流行的 _TeX 发行_,比如 CTeX 和 TeX Live, 都自带有一些用于编辑文档的编辑器。这些编辑器差异还是很大的,从简单的 TeXworks 到复杂的 WinEdt, 各种各样。但是不管是什么样的编辑器,他们都是用来编辑纯文本的而已(.tex 就是纯文本),换言之他们只是 Windows 自带的记事本程序的加强版而已,_他们本身并不是 TeX 系统的一部分_。 > 所谓 TeX 发行,指的是包括 TeX 系统的各种可执行程序,以及他们执行时需要的一些辅助程序和宏包文档的集合。 国内的同学安装 CTeX 的比较多,CTeX 自带的编辑器,除了大家熟知的 WinEdt,还有 TeXworks。而 TeX Live 则只是自带了 TeXworks 而已。 本文只介绍 TeXworks 编辑器的使用。原因有二: * WinEdt 过于繁琐,很多功能用不上,反而给新手增加学习成本; * TeXworks 是 TeX Live 自带的编辑器,而 TeX Live 是跨平台的,各个操作系统都可以使用。 ## 启动 TeXworks 启动 TeXworks 很简单,不论你安装的是 CTeX 还是 TeX Live, 你都可以在 Windows 启动对话框中输入 texworks 按回车。具体步骤是: * 按下键盘上的 Windows 徽标键,同时按下 R 键 —— ` + R`; * 键入 `texworks`; * 回车。 如果安装的是 CTeX,也可以进入开始菜单,从 CTeX - MiKTeX - TeXworks 打开。 启动之后,TeXworks 的界面,会默认占据你屏幕的左半边,右半边留空。效果如下图: [![](http://ww4.sinaimg.cn/large/818901c1jw1e44dgufrnpj20iy0kimxz.jpg)](https://box.kancloud.cn/2015-07-07_559b4726254a6.jpg) 图中空白的部分,就是输入编辑文本的编辑框;在编辑框的右下角,显示有三个按钮,最左边的是换行符模式,中间是_编码模式_,右边标示当前光标所在位置;编辑框的上方是工具栏,工具栏的右半部分使大家熟悉的功能(新建、打开、保存、撤消、恢复、剪切、复制、黏贴、查找、替换),工具栏的左边则是_编译按钮_ (TeXworks 也称其为“排版工具”);工具栏在往上,则是菜单栏,此处按下不表。 > Windows,Unix 等操作系统对待“换行符”是有不同的。索性 TeXworks 为我们做了足够的提示,方面我们的选择(点击一下那个按钮就知道了)。一般而言,保持默认即可。 > > 字符(包括英文字符和中文字符)在计算机中,经过编码以二进制的形式存储在计算机中。如果编辑器编码和计算机内部编码不一致,则会导致所谓“乱码”的现象。TeXworks 默认使用 UTF8 编码,在我们的文档中不需要进行任何更改,而对于一些其他的文档可能需要按照要求更改编码。 ## 排版工具 TeXworks 为我们预设了若干排版工具(pdfTeX, pdfLaTeX, XeTeX, XeLaTeX 等),他们分别代表什么实在太过复杂并且也不是当前需要讲明白的。本文中需要用到的排版工具主要是_XeLaTeX_,关于这些工具的介绍,可以参看后文。当你对 TeX 系统相当熟悉之后,也可以不适用 TeXworks 预设的工具,自己配置排版工具。 TeXworks 默认的排版工具是 pdfLaTeX,如果你希望更改这个默认值,可以在_编辑 - 首选项 - 排版 - 处理工具 - 默认_ 中修改。 ## Hello, world! 在编辑框中,输入如下内容: ~~~ \documentclass{article} % 这里是导言区 \begin{document} Hello, world! \end{document} ~~~ 将文档保存在你希望的位置,然后在排版工具的下拉选框中选中 XeLaTeX 后,按下绿色的编译按钮。一会儿,如果没有意外,屏幕的右边就会出现编译之后结果。如下图: [![](http://ww4.sinaimg.cn/large/818901c1jw1e44e55rnkkj211y0kmwgi.jpg)](https://box.kancloud.cn/2015-07-07_559b47264405a.jpg) 很容易发现,输入进编辑框的五行文字,在最终输出的 pdf 档中只显示了 1 行。事实上,交付 TeX 处理的文档内容,并不会全部输出。 此处的第一行`\documentclass{article}`中包含了一个控制序列(或称命令 / 标记)。所谓控制序列,是以反斜杠`\`开头,以第一个_空格或非字母_ 的字符结束的一串文字,他们并不被输出,但是他们会影响输出文档的效果。这里的控制序列是`documentclass`,它后面紧跟着的`{article}`代表这个控制序列有一个必要的参数,该参数的值为`article`. 这个控制序列的作用,是调用名为 “article” 的文档类。 > 部分控制序列还有被方括号`[]`包括的可选参数。 > > 所谓文档类,即是 TeX 系统预设的(或是用户自定的)一些格式的集合。不同的文档类在输出效果上会有差别。 此处的第二行以`%`开头。在 TeX 风格的文档中,从 “%” 开始,到该行末尾的所有字符,都会被 TeX 系统无视,只作为供人类阅读的注释。除非在 “%” 前加上反斜杠来取消这一特性,例如 ~~~ 今年的净利润为 20\%, 比去年高。 ~~~ 此处 “%” 被当做正常的百分号处理,其后的文字也将被正常输出。 其后出现了控制序列`begin`,这个控制序列总是与`end`成对出现。这两个控制序列以及他们中间的内容被称为“环境”;他们之后的第一个必要参数总是一致的,被称为环境名。 只有在 “document” 环境中的内容,才会被正常输出到文档中去或是作为控制序列对文档产生影响。因此,在`\end{document}`之后插入任何内容都是无效的。 `\begin{document}`与`\documentclass{article}`之间的部分被称为导言区。导言区中的控制序列,通常会影响到整个输出文档。