本文适给日常使用过pdf文件,在哪里听说过LaTeX但又对它没有什么概念的孩子看。
大概能传递一点 “入门” 的信息吧。
【节约5分钟的人生】
如果你大概知道 HTML, Markdown或者ReStructuredText 是什么,LaTeX其实跟它们是类似的东西。
用规定好的字符串,即代码,标记格式,将内容填进格式中即可经过软件“渲染”得到对人来说可读性更强的文档。
【5分钟了解LaTeX是做什么的】
(既然你诚心诚意地发问了,咳咳……)
(观众朋友们,大家早中晚上好)
如果你此前对LaTeX是什么没有一丁点概念,那么请容许我用 “一段人话” 对它进行描述:
LaTeX 是一款文档编辑软件;本质上,LaTeX 和 Microsoft Word、iWork 这样的软件功能类似,都是根据用户输入的内容,生成一份遵照用户指定样式的文档。由 LaTeX 生成的文档直接是 pdf 格式的,也就是大家看课件,看正/盗版电子书,看论文都爱用的Portable Document Format 啦。
与各种office软件不同的是,LaTeX并不是所见即所得。产出的是pdf文档,但是作者实际上要编辑的是 .tex 文件。
比如使用LaTeX写作时,输出的pdf文件:
【下面这个图片截自一个由LaTeX生成的pdf】
(很多人会说,使用LaTeX,你写东西就不用担心文档的格式和美观。至于文档是否美观,这见仁见智;而且,实际使用 LaTeX 的时候,编辑格式有时是一件让人抓狂的事情,并非“不用担心”那么舒服)
“代码”在这里是指能被LaTeX读懂的格式标记,即 LaTeX 会根据你输入的“代码”(储存在一个后缀为.tex的文件中)组织出一个方便阅读的pdf文件。你的代码可以表达很多对文档格式的要求,比如 “这里的内容是标题”,“这里是个表格”,“这里该放这张图片” 。
下方即是编辑代码文件(.tex格式源文件)时的场面:
【下面这张图片展示了与上图对应的 .tex文件】
对比上面这张图 和 前一张图中第三页(Page 3 of 4)的内容,即可观察到 “代码”(上图中蓝色的字和大括号中的字)。
这些“代码”就镶嵌在你文档“内容”的字里行间。它们就是对“格式”的描述。
与各种“office软件”不同的是,LaTeX 的使用者通过代码的形式编辑文本的样式 然后在代码中加入内容。
LaTeX 的代码能方便地表达章节标题、段落内容、插入图片、列表等等“格式”。打开一个已经定义好的样式(称为“模板”),将内容填入代码中,LaTeX就可以依据添加过内容的代码生成一份规规矩矩的文档
(请参考下一张图片);或者,这个模板可以被编辑、修改成需要的样子。
在直接使用一个“模板”(别人设置好的格式)的情况下,LaTeX 的使用者的确不用操心文档格式,于是就有更多时间关注文档内容的写作了。然而,使用LaTeX的学习成本也正来源于“自己设置格式”,使用、调整模板乃至自己创建模板:要使用
LaTeX,你就必须学会使用“代码”与计算机软件交流。
如果你没有被“代码”两个字的出现吓走,欢迎来到新世界。
代码用于让人和计算机交流,对人来说不很自然,但它总归是要能让人类也读懂的(否则怎么和计算机愉快玩耍),即便你没有任何代码基础,只需要懂点英语,这些 LaTeX 中常用到的代码的含义也能猜个八九不离十。
使用LaTeX,就是使用 “代码” 向 “LaTeX” 表达自己对格式的要求。
【学习LaTeX代码的方式】
重点是要在实践和试验中学习这个工具。
学习各种跟“程序”和“代码”有关的东西最好的方式不是通读一本《blablabla 从入门到精通》,而是用一台好用的电脑加上科学的上网方式,通过实际操作和解决实际问题来学习。
使用 LaTeX 写写 hello world,甚至写写自己的实验报告(或者论文啦之类的什么),是由陌生到熟悉的最好方式。
使用中你就会发现,你想分自然段,想用黑体、斜体字,想列表,想分章节,想加个目录,想来个封面……
善用搜索引擎搜索你的需求,看看别人是如何解决类似问题的。
通常 StackOverflow 和 ShareLaTeX 就能给出满意的答案。
当然,如果你执着地想彻底了解来龙去脉,也可以直接阅读“官方文档”(软件的说明书)以最硬核的方式学习LaTeX:搜索 LaTeX Documentation 即可找到。
【看到代码别慌,先体验一下使用 LaTeX 进行文本编辑】
使用 LaTeX 进行工作,需要一个 LaTeX 软件的发行版本 (点击链接看各种版本什么区别)。这个软件可以安装在个人电脑上(本地)使用,也可以使用“云端”的服务,以网页应用的形式使用。
由于 LaTeX 的安装过程还算有些成本,为了先直接体验一下LaTeX,不妨使用在线的 LaTeX 工具,比如 Overleaf (网页应用程序,只要网络通畅,完全可以用它来产出精美的文档)。
这里以 Overleaf 为例,体验一下使用 LaTeX 编辑文档。
首先,打开网页Overleaf (点击链接打开) ;然后注册新用户吧(2020年3月9日更:现在 create a new paper 这个选项在首页上消失了,大爷的。所以,想要方便地试水 LaTeX 的话,你得先在 overleaf 上注册账号,不过好在注册步骤不繁琐)。
接下来,进入了 Overleaf 提供的文档编辑界面(如下图):
【左半页是被编辑的.tex文件,默认以“Rich Text”的形式显示;右边是由 LaTeX 生成的pdf文件】
请注意的是,RichText 不是 .tex 文件本来的样子;
RichText 即 “富文本” 格式,它是已经具有一定字号、缩进等格式特征的文本形式。下图页面左边的内容就是显示为富文本格式的 .tex文件,这样显示是为了更方便人类使用者阅读代码。
但想要真正使用 LaTeX 终究是免不了目睹 .tex 格式的源代码的,不如从一开始就鼓起勇气面对 .tex 吧。
点击页面左上角的 Source 按钮, 让隐藏着黑暗力量的 .tex 代码在你面前展示它真正的样子。
【封印解除后(误)像下面这张图的样子:】
下图是 2020年3月9日的编辑界面截图。 Overleaf 2019年底升级界面之后,左右显示的内容划分也没有变(但是青蛙先生消失了 T_T )。
网页右边的pdf预览窗口会根据左边的源代码的变动显示新的pdf文件。所以,编辑左半边的代码,右边就能实时显示编辑的效果。
【描述一下 Overleaf 提供的 LaTeX 编辑服务是怎么工作的:】
把 LaTeX 比作是一部把 “输入” 加工成 “输出” 的机器;加工的过程称为“渲染 (render)”。
Overleaf 是给机器输入并且展示机器输出的窗口,也可以称为使用者和 LaTerX 之间的"界面 (interface)"。
Overleaf 的页面左边是代码,输入机器;页面右边是机器输出的内容,一个 pdf 文件,称为“预览 (preview)”。
页面的右半边 “Preview” 旁边跟着 Manual 和 Auto 按钮是用来调节是否在编辑代码后自动生成预览。
不论手动还是自动开始渲染,Overleaf 帮我们达成了 “在修改页面左边的源代码之后,在右边展示相应改变” 这个功能。
(当然,这些不是 Overleaf 的全部。但就入门而言,我也不多说嘞。)
【用这个网页来体验一下 LaTeX 】
试水一种工具,那就要 change stuff, and see what happens.
经过上述步骤之后,现在已经有一个示例 LaTeX Project 摆在你眼前
通过观察,左边的.tex文件其实是文档内容和代码的嵌合。
找到左边代码中“内容”的部分,改动看看右边的预览有什么变化。(右侧的预览会随左边对内容的编辑而增删内容,这就是简单地体验一下 LaTeX 的工作方式。并非像office软件那样所见即所得的文档编辑,而是“代码 --› 所得”的过程。)
想要继续学习如何使用这个工具,不妨查找 LaTeX 的教程,先观察别人写好的LaTeX代码然后模仿着写出自己的代码(多少有点描红的意思)。
在某些大型视频网站上搜索 LaTeX tutorial 试试看吧。
【成功的“学习”来自“了解”,“使用”,“观察”和“思考”。】
迈出勇敢折腾LaTeX的第一步,那就是自己给自己找需求。
各种各样写文档时的需求,比如 字体加粗,斜体,转换成标题,输入数学公式,特殊符号……
善用科学和搜索引擎,你会找到满意的答案 。
(推荐使用英文搜索,比如对应上文,可以搜索:boldface, italic, headline, math formula)
LaTeX 的代码更像是对文本编辑的一堆指令,功能明确,用法明确 (所以 LaTeX 应该是 "macro“ 而不是"programming language")。
通过搜索引擎,你可以找到能够将内容渲染为某种格式的 LaTeX 指令,套用一下,改一改内容,你也就学会了使用这个 LaTeX 指令了;不必抄小本本上或者背下来,下次再有相同的格式需要,至少做到能快速搜索到能现成套用的 LaTeX 命令即可。使用 LaTeX 久了,自然就会记住某些常出现的指令。
我们下次见的话,就说说在自己的电脑上安装LaTeX软件吧。
如果有下次的话。嗯。