Emacsは非常に多機能なプログラムです。テキストエディターであることはもちろん、メールクライアント、ニュースリーダー、さらには財務トラッカーにもなり得ます。これは、Emacsをどんな目的にも状況にも簡単に適応させることができるからです。

Beamerは、LaTeX文書を作成するのと同じような方法でプレゼンテーション用スライドを作成することができるLaTeXモジュールです。ここでは、それを使ってEmacsの中でプレゼンテーションを作成する方法を紹介します。

ヒント: Emacsのキーボードショートカットのチートシートをダウンロードして、生産性を向上させましょう。

Beamer の仕組みは?

BeamerはLaTeX文書システムの拡張機能で、カスタマイズ可能なスライドモジュールを作成することができます。

BeamerがデフォルトのLaTeXと大きく異なる点は、セクションの代わりにフレームを使用する点です。Beamerのフレームは、内容やその形状を変更できる文書ページです。例えば、Beamerでは複数のフレーム間で全く異なるテーマを使用することが簡単にできます。

この方法によって、Beamerは柔軟性と移植性を兼ね備えています。

EmacsでBeamerを使う

EmacsでBeamerを使う最も簡単な方法の1つはOrg Modeを使うことです。これを使えば、Org ModeとLaTeXのインストールは信じられないほど簡単です。まず、あなたのディストリビューションのパッケージリポジトリからLaTeXをインストールする必要があります。

Ubuntuの場合、以下のコマンドを実行してLaTeXをインストールします。

sudo apt install texlive-full

そこから、UbuntuはあなたのコンピュータでLaTeXスイート全体を適切に実行するために必要なすべてのパッケージをダウンロードし、インストールします。

EmacsにOrg Modeをインストールするには、Alt + Xを押して、“package-install “とタイプしてください。するとプロンプトが表示されますので、インストールしたいパッケージを入力してください。org`と入力します。

と入力します。 これでEmacsにOrgのソースコードをダウンロード、コンパイル、インストールするように指示します。

Emacsで基本的なプレゼンテーションを作成する

LaTeXとOrgモードがインストールされたので、最初のBeamerドキュメントを作成することができます。

    1. Ctrl + X を押し、次に Ctrl + F を押すと、EmacsのFile Bufferプロンプトが表示されます。そこで、作成するドキュメントのファイル名を指定します。

と入力します。 2. 次に、Ctrl + C, Ctrl + E, そして # を押します。これで、新しいドキュメントを開始するためのデフォルトのOrgテンプレートが挿入されます。

3. Orgが使用するテンプレートの種類を聞いてきたら、“default “と入力すると、文書にデフォルトのテンプレートが挿入されます。

このテンプレートには、あらゆるOrgドキュメントで推奨されるデフォルトが含まれています。ほとんどの場合、このテンプレートは基本的なプレゼンテーションには十分でしょう。

4. 次に行うことは、OrgにBeamerのプレゼンテーションを作成することを伝えることです。そのためには、テンプレートの末尾に以下の行を追加する必要があります。

#+LaTeX_CLASS: beamer
#+LaTeX_CLASS_OPTIONS: [大きく].

これで、最初のスライドを作り始めることができます。Orgは、ドキュメントの最初の2つのレベルを使用して、プレゼンテーションのカテゴリとセクションの両方を確立します。それを知った上で、次の例を考えてみましょう。

\* はじめに
\*\* First Topic
\*\*\* First Topic ↵第1トピックの紹介
	最初のトピックの最初のスライドです。
	This is first slide of the first topic.
  • 第1階層は、その下にあるすべてのスライドのカテゴリとタイトルスライドとして機能します。これにより、その下のスライドを特定のテーマに従ってグループ化することができます。この例では、最初のレベルに「紹介」というラベルを付けました。
  • 2番目のレベルはサブカテゴリとして機能し、これを使用してさらにスライドを指定することができます。これは通常のLaTeXドキュメントのsection{}ブロックと同じようなものです。
  • 最後に、第3階層は、最終的にBeamerの出力に表示されるスライドです。つまり、このレベル以下に書いた内容は、プレゼンテーションの中でテキストとして表示されます。

5. 5. スライドをBeamerプレゼンテーションとしてエクスポートするには、Ctrl + C を押し、次に Ctrl + E を押してください。これでOrgのエクスポートメニューが表示されます。Shift+O` を押すと、コンパイルされ、プレゼンテーションが開かれます。

スライドに箇条書きと記号を追加する

単純なテキストスライドを作成する以外に、箇条書きや特殊な記号をBeamerのプレゼンテーションに含めることも可能です。

Beamerのスライドに箇条書きを追加するには、スライドの見出しの下にOrgの箇条書きを作成するだけです。Orgはそれを検知し、Beamerに対応するものに変換します。例えば、これは3つの箇条書きを持つBeamerのスライドの抜粋です。

\* ୧⃛(๑⃙⃘◡̈๑⃙⃘)
\*\* First Topic
\*\*\* The First Topic in Bullets ╱第一弾のトピック
	- Hello! これは第1弾です。
	- こんにちは、第2弾です。
	- 最後に、これは第3弾です。

一方、Beamerで特殊記号を使うのは厄介なことです。これは、その特殊なLaTeX制御文字を用意しなければならないからです。例えば、ギリシャ語の記号 “α “を書くには、Org文書にalphaというコードを書く必要があります。

この問題に対処する一つの方法は、Org Tab Completionを使うことです。これは、挿入可能な特殊文字を親切に提案してくれる内蔵機能です。これを使うには、文字の名前を入力し始め、Esc + Tab を押すだけです。

Emacsでスライドに画像を追加する

Beamerは画像もネイティブにサポートしています。画像のファイルパスを二重角括弧で指定するだけです。

このリンクのファイルパスは、絶対パスでも相対パスでもかまいません。例えば、以下のコードでは2つのBeamerスライドを作成し、2つの異なる画像を表示します。

\* ୧⃛(๑⃙⃘◡̈๑⃙⃘)
\*\* First Topic
\**** The First Image of the Topic
	- Hello! この画像は絶対リンクの1枚目です。
	[[/home/ramces/tmp/org/presentation/img1.jpg]] 。
\*\*\* ♪The Second Image of the Topic
	- またまたこんにちはー。相対リンクの2枚目の画像です。
	[[./img2.jpg]] です。

Emacsでスライドにテーブルを追加する

記号や画像の他に、プレゼンテーションにテーブルを挿入することもできます。Beamerでは、テーブルの内容にデフォルトのLaTeXテーブル構文を使用し、それを印刷可能なラインテーブルに変換します。

この方法の問題点は、LaTeXの表の構文が非常に複雑になることです。LaTeXでは、行表を作成し、フォーマットする方法の本質を変更することができます。これは上級者にとっては便利ですが、初心者にとっては問題となりえます。

Orgモードでは、この要件を回避し、独自のテーブル機能によってプレゼンテーションに適したテーブルを作成することができます。さらに、Orgスタイルのテーブルを作るのも驚くほど簡単です。パイプ記号(|)をタイプして、Tabを押すだけなのです。

すると、1列のテーブルが自動的に生成されるので、そこに表示したいデータを入力します。そこから、現在のテーブルを越えて入力し、Tabを押すことで、使用できる列や行を拡張することができます。

また、Orgは新しいコンテンツに合わせてテーブルのサイズを再調整します。例えば、これは3つのカラムを持つスライドです。

\*\*\* The First Table of This Topic
	- こんにちは。これは3つのカラムを持つスライドです。
	      | これは1行目です。
          |---------+------------+-----|
          | これは2行目
          | これは3列目です。
          |---------+------------+-----|
          | | | |

これができたら、Orgのエクスポートメニューから、このスライドを変換することができます。ここから、Orgは各テーブルのセルをそれぞれのBeamerに相当するものに変換します。

EmacsのデフォルトのBeamerテーマを変更する

Beamerはデフォルトで、すべてのスライドに「デフォルト」のテーマを使用しています。これはLaTeXのデザインキューに従った一般的な青白いテーマです。このテーマは、どのような種類のプレゼンテーションにも対応できますが、ユーザーによっては、このテーマが堅苦しく、技術的であると感じるかもしれません。

Beamerのデフォルトテーマを変更するには、文書の冒頭に #+LaTeX_HEADER: 変数を追加します。その後に、使いたいテーマの名前を続けます。例えば、これはBerlinというテーマを使っているBeamerの文書です。

#+title: サンプルビーマー
#+author: ラムセス・レッド
#+startup: beamer
#+LaTeX_CLASS: beamer
#+LaTeX_CLASS_OPTIONS: [大きい].
#+LaTeX_HEADER: \mode{usetheme{Berlin}}
 
\* Ȃ はじめに
\*\* Ίτανα τανα τανα τανα
\*\*\* The First Topic of This Topic ✎初回トピック
	- こんにちは。最初のトピックの最初のスライドです。今回はBerlinのテーマを使っています

よくある質問

セクションの見出しを別のスライドの目印にすることは可能ですか?

はい!第1レベルの見出しと第2レベルの見出しの両方をスライドのマーカーとして使用することは、完全に可能です。これは、数枚のスライドを作成するだけで、プレゼンテーションに追加の小見出しが必要ない場合に便利です。

この動作を変更するには、ドキュメントの前文にある #+OPTIONS: を探せばよいのです。これは、あなたのOrgドキュメントがどのように見え、どのように振る舞うかを決定する特別な変数です。

そこから、変数の値リストの中からH:パラメータを見つける必要があります。これは、Beamerでどの見出しがスライドに変換されるかを制御するものです。対応する値は、Orgがスライドに使用する見出しのレベルを決定します。より高いレベルの見出しを使用するためには、1または2のいずれかの値を指定する必要があります。

Beamerのスライドに音声やビデオファイルを追加することはできますか?

残念ながらできません。Beamerは画像以外のマルチメディアファイルには対応していません。

この問題を解決するには、multimediaのようなサードパーティのLaTeXプラグインを使うのが一つの方法です。これを使い始めるには、文書のプリアンブルの最初に以下の行を記述する必要があります。

#+LATEX_HEADER: \usepackage{multimedia} と書いてください。

そこから、次の行を使用して、1つのビデオファイルが添付されたフレームを作成することができます。

#begin_latex (訳注:日本語訳ではありません)
begin{frame}
movie[width=textwidth,height=3cm]{Video Label}を作成します。 ``samplemovie.mp4} end{frame}
#+end_latex

Orgドキュメントをエクスポートしようとすると、Emacsが “Invalid Key “と表示します。私のインストールが壊れているのでしょうか?

いいえ、おそらくEmacsがBeamerのインストールを正しく認識できていないのでしょう。このような現象が起こる原因はいくつかありますが、一般的な原因は、あなたのシステムにBeamerが正しくインストールされていないことです。これを解決するには、あなたのマシンのターミナルを開いて、次のコマンドを入力するだけです。

sudo tlmgr install beamer` と入力します。

このコマンドを実行すると、TeXLiveのインストールが始まり、Beamerがインストールされているかどうかが確認されます。Beamerを再インストールするか、インターネットから新しいBeamerを取得します。この後、Emacsをリロードして、Beamerがインストールされているかどうかを確認する必要があります。

画像引用元:Unsplash

Akira
Akiraは情熱的なゲーマーであり、製品レビュアーです。ゲームをしていないときは、最新のゲーミングアクセサリーを試したり、製品のレビューをしていることが多い。彼の分かりやすいスタイルは、ゲーマーが自分のニーズに最も適した製品を簡単に判断できるようにするものです。また、技術的な問題にも精通しており、その解決方法も知っている。