在他的优秀文章《LaTeX 文档创建入门》中,作者 Aaron Cocker 介绍了 LaTeX 排版系统,并解释了如何使用 TeXstudio 创建 LaTeX 文档。他还列出了一些 LaTeX 编辑器,许多用户觉得它们在创建 LaTeX 文档时很有帮助。
我对 Greg Pittman 在文章中的这条评论引起了我的注意:“当你刚开始使用 LaTeX 时,它似乎需要大量的输入......”。这是真的。LaTeX 确实涉及大量的输入和调试,如果你遗漏了一个特殊字符,比如感叹号,这可能会让许多用户,尤其是初学者感到沮丧。在本文中,我将向您介绍 GNU Emacs,并描述如何使用它来创建 LaTeX 文档。
创建您的第一个文档
通过输入以下命令启动 Emacs
emacs -q --no-splash helloworld.org
-q
标志确保不加载任何 Emacs 初始化。 --no-splash-screen
标志阻止启动画面,以确保只打开一个窗口,其中包含文件 helloworld.org
。

GNU Emacs,其中 helloworld.org 文件在缓冲区窗口中打开。
让我们以 Emacs 的方式添加一些 LaTeX 标头:转到菜单栏中的 Org,然后选择 导出/发布。

如何插入默认模板。
在下一个窗口中,Emacs 提供导出或插入模板的选项。通过输入 # ([#] 插入模板)来插入模板。这将把光标移动到迷你缓冲区,提示符显示 选项类别:。此时您可能不知道类别名称;按 Tab 键查看可能的补全。输入“default”并按 Enter 键。将插入以下内容
#+TITLE: helloworld
#+DATE: <2018-03-12 Mon>
#+AUTHOR:
#+EMAIL: makerpm@nubia
#+OPTIONS: ':nil *:t -:t ::t <:t H:3 \n:nil ^:t arch:headline
#+OPTIONS: author:t c:nil creator:comment d:(not "LOGBOOK") date:t
#+OPTIONS: e:t email:nil f:t inline:t num:t p:nil pri:nil stat:t
#+OPTIONS: tags:t tasks:t tex:t timestamp:t toc:t todo:t |:t
#+CREATOR: Emacs 25.3.1 (Org mode 8.2.10)
#+DESCRIPTION:
#+EXCLUDE_TAGS: noexport
#+KEYWORDS:
#+LANGUAGE: en
#+SELECT_TAGS: export
根据您的意愿更改标题、日期、作者和电子邮件。我的看起来像这样
#+TITLE: Hello World! My first LaTeX document
#+DATE: \today
#+AUTHOR: Sachin Patil
#+EMAIL: psachin@redhat.com
我们还不想创建目录,因此将 toc
的值从 t
更改为内联 nil
,如下所示
#+OPTIONS: tags:t tasks:t tex:t timestamp:t toc:nil todo:t |:t
让我们添加一个节和段落。节以星号 (*) 开头。我们将从 Aaron 的帖子中复制一些段落内容(来自 Lipsum Lorem Ipsum 生成器)
* Introduction
\paragraph{}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras lorem
nisi, tincidunt tempus sem nec, elementum feugiat ipsum. Nulla in
diam libero. Nunc tristique ex a nibh egestas sollicitudin.
\paragraph{}
Mauris efficitur vitae ex id egestas. Vestibulum ligula felis,
pulvinar a posuere id, luctus vitae leo. Sed ac imperdiet orci, non
elementum leo. Nullam molestie congue placerat. Phasellus tempor et
libero maximus commodo.

Helloworld.org 文件
内容就位后,我们将内容导出为 PDF。再次从 Org 菜单中选择 导出/发布,但这次输入 l (导出为 LaTeX),然后输入 o (作为 PDF 文件并打开)。这不仅会打开 PDF 文件供您查看,还会将文件另存为 helloworld.pdf
,与 helloworld.org
位于同一路径。

将 helloworld.org 导出到 helloworld.pdf

helloworld.pdf 文件在底部打开
您还可以通过按 Alt + x
,然后输入“org-latex-export-to-pdf”将 org 导出为 PDF。使用 Tab 键自动完成。
Emacs 还创建了 helloworld.tex
文件,以便您可以控制内容。

Emacs,其中 LaTeX、org 和 PDF 文件在三个不同的窗口中打开
您可以使用以下命令将 .tex
文件编译为 .pdf
pdflatex helloworld.tex
您还可以将 .org
文件导出为 HTML 或简单的文本文件。我喜欢 .org 文件的原因是它们可以推送到 GitHub,在那里它们像任何其他 markdown 格式一样呈现。
创建 LaTeX Beamer 演示文稿
让我们更进一步,使用同一文件创建 LaTeX Beamer 演示文稿,并进行如下所示的一些修改
#+TITLE: LaTeX Beamer presentation
#+DATE: \today
#+AUTHOR: Sachin Patil
#+EMAIL: psachin@redhat.com
#+OPTIONS: ':nil *:t -:t ::t <:t H:3 \n:nil ^:t arch:headline
#+OPTIONS: author:t c:nil creator:comment d:(not "LOGBOOK") date:t
#+OPTIONS: e:t email:nil f:t inline:t num:t p:nil pri:nil stat:t
#+OPTIONS: tags:t tasks:t tex:t timestamp:t toc:nil todo:t |:t
#+CREATOR: Emacs 25.3.1 (Org mode 8.2.10)
#+DESCRIPTION:
#+EXCLUDE_TAGS: noexport
#+KEYWORDS:
#+LANGUAGE: en
#+SELECT_TAGS: export
#+LATEX_CLASS: beamer
#+BEAMER_THEME: Frankfurt
#+BEAMER_INNER_THEME: rounded
* Introduction
*** Programming
- Python
- Ruby
*** Paragraph one
Lorem ipsum dolor sit amet, consectetur adipiscing
elit. Cras lorem nisi, tincidunt tempus sem nec, elementum feugiat
ipsum. Nulla in diam libero. Nunc tristique ex a nibh egestas
sollicitudin.
*** Paragraph two
Mauris efficitur vitae ex id egestas. Vestibulum
ligula felis, pulvinar a posuere id, luctus vitae leo. Sed ac
imperdiet orci, non elementum leo. Nullam molestie congue
placerat. Phasellus tempor et libero maximus commodo.
* Thanks
*** Links
- Link one
- Link two
我们在标题中添加了三行
#+LATEX_CLASS: beamer
#+BEAMER_THEME: Frankfurt
#+BEAMER_INNER_THEME: rounded
要导出为 PDF,请按 Alt + x
并输入“org-beamer-export-to-pdf”。

使用 Emacs 和 Org 模式创建的 Latex Beamer 演示文稿
我希望您喜欢使用 Emacs 创建此 LaTeX 和 Beamer 文档(请注意,使用键盘快捷键比使用鼠标更快)。Emacs Org 模式提供的功能远不止我在这篇文章中介绍的;您可以在 orgmode.org 上了解更多信息。
14 条评论