這是 Emacs 和 Org 模式系列的第五篇。
這篇博文是由 Org 模式的原始檔生成的,其有幾種格式:部落格頁面、簡報 和 PDF 文件。
Org 模式不僅僅只是一個議程生成程式,它也能輸出許多不同的格式: LaTeX、PDF、Beamer、iCalendar(議程)、HTML、Markdown、ODT、普通文字、手冊頁和其它更多的複雜的格式,比如說網頁檔案。
這也不只是一些事後的想法,這是 Org 模式的設計核心部分並且整合的很好。
這一個檔案可以同時是原始碼、自動生成的輸出、任務列表、文件和展示。
有些人將 Org 模式作為他們首選的標記格式,甚至對於 LaTeX 文件也是如此。Org 模式手冊中的 輸出一節 有更詳細的介紹。
對於任意的 Org 模式的文件,只要按下 C-c C-e
鍵,就會彈出一個讓你選擇多種輸出格式和選項的選單。這些選項通常是次鍵選擇,所以很容易設定和執行。例如:要輸出一個 PDF 文件,按 C-c C-e l p
,要輸出 HMTL 格式的, 按 C-c C-e h h
。
對於所有的輸出選項,都有許多可用的設定;詳情參見手冊。事實上,使用 LaTeX 格式相當於同時使用 LaTeX 和 HTML 模式,在不同的模式中插入任意的前言和設定等。
ELPA 中也包含了許多額外的輸出格式,詳情參見 ELPA。
Beamer 是一個生成簡報的 LaTeX 環境. 它包括了以下特性:
在 Org 模式中用 Beamer 有很多好處,總的來說:
我已經完全用 Org 模式和 beamer 替換掉使用 LibreOffice/Powerpoint/GoogleDocs。事實上,當我必須使用其中一種工具時,這是相當令人沮喪的,因為它們在視覺化表示演講稿結構方面遠遠比不上 Org 模式。
Org 模式的 Beamer 會將你文件中的部分(文中定義了標題的)轉換成幻燈片。當然,問題是:哪些部分?這是由 H 輸出設定(org-export-headline-levels
)決定的。
針對不同的人,有許多不同的方法。我比較喜歡我的簡報這樣:
#+OPTIONS: H:2#+BEAMER_HEADER: \AtBeginSection{\frame{\sectionpage}}
這將為每個主題提供了獨立部分,以突出主題的改變然後使用級別 2(兩個星號)的標題來設定幻燈片。許多 Beamer 主題也有第三個間接層次,所以你可以將 H 設為 3。
你可以在 Org 模式的檔案頂部來插入幾行來設定 Beamer 和 LaTeX。在本文中,例如,你可以這樣定義:
#+TITLE: Documents and presentations with org-mode#+AUTHOR: John Goerzen#+BEAMER_HEADER: \institute{The Changelog}#+PROPERTY: comments yes#+PROPERTY: header-args :exports both :eval never-export#+OPTIONS: H:2#+BEAMER_THEME: CambridgeUS#+BEAMER_COLOR_THEME: default
我比教喜歡修改顏色、專案符號樣式等。我的設定如下:
# We can't just +BEAMER_INNER_THEME: default because that picks the theme default.# Override per https://tex.stackexchange.com/questions/11168/change-bullet-style-formatting-in-beamer#+BEAMER_INNER_THEME: default#+LaTeX_CLASS_OPTIONS: [aspectratio=169]#+BEAMER_HEADER: \definecolor{links}{HTML}{0000A0}#+BEAMER_HEADER: \hypersetup{colorlinks=,linkcolor=,urlcolor=links}#+BEAMER_HEADER: \setbeamertemplate{itemize items}[default]#+BEAMER_HEADER: \setbeamertemplate{enumerate items}[default]#+BEAMER_HEADER: \setbeamertemplate{items}[default]#+BEAMER_HEADER: \setbeamercolor*{local structure}{fg=darkred}#+BEAMER_HEADER: \setbeamercolor{section in toc}{fg=darkred}#+BEAMER_HEADER: \setlength{\parskip}{\smallskipamount}
在這裡,aspectratio=169
將縱橫比設為 16:9, 其它部分都是標準的 LaTeX/Beamer 設定。
有時你會遇到一些非常大的程式碼範例,你可能更傾向與將幻燈片縮小以適應它們。
只要按下 C-c C-c p
將 BEAMER_opt
屬性設為 shrink=15
\。(或者設為更大的 shrink 值)。上一張幻燈片就用到了這個。
這就是最終的效果:
使用 org-tree-slide 這個外掛的話,就可以在 Emacs 的右側顯示幻燈片了。 只要按下 M-x
,然後輸入 org-tree-slide-mode
,回車,然後你就可以用 C->
和 C-<
在幻燈片之間切換了。
你可能會發現 C-c C-x C-v
(即 org-toggle-inline-images
)有助於使系統顯示內嵌的影象。
有許多方式可以將 Org 模式的演講稿彙出為 HTML,並有不同級別的 JavaScript 整合。有關詳細資訊,請參見 Org 模式的 wiki 中的 非 beamer 演講稿一節。
mu4e 郵件!