Reveal.jsの使い方(初心者向け.MathJax対応)

2通りの使い方を書きます.

  1. 手早くプレビューを見ながら編集.(VSCode使用)
  2. GitHub Pagesで公開する.

手早くプレビューを見ながら編集

VSCodeと,その拡張機能vscode-revealを使用します.

VSCodeをインストール.インストール画面ではポチポチ進めてOKです.

次に,VSCodeを起動して,拡張機能vscode-revealをインストールします. 拡張機能のアイコンを押して,検索フォームで「reveal」とでも打つと候補に出てきますので,インストール.

f:id:futakuchi0117:20180813194052p:plain

インストール後は念のためVSCodeを再起動させておきます. これで準備完了です.

スライドを作っていきます. 適当な場所にMarkdownファイル(例えばtest.md)を作って,VSCodeでそれを開きます.

簡単な例として,以下のコードを貼り付けてみます.

Hello, Reveal.js!

---

1

--

2

--

3

---

4

--

5

---

6

貼り付けたら,Ctrl+Shift+Pでコマンドパレットを開いて,revealで検索して,Revealjs: Show presentation by sideを選択すると,右のウィンドウにスライドのプレビューが出てきます.

f:id:futakuchi0117:20180813200546j:plain

右下の矢印で,グリングリンと動かせるでしょうか?

あとはこれを見ながら自由に書くだけです.

実際のプレゼンのときには,コマンドパレットでOpen presentation in browserや,Export in PDFなどで見やすい形式にしておくとよいでしょう.

詳細な使い方は,vscode-revealのドキュメントを参照してください.

他にも,同じような方法を解説されているこちらのページも参考になります.

PDFに出力するときの注意点

標準では,ChromeFirefoxなど,お使いのブラウザの印刷機能を使ってPDF出力することになりますが,このとき,背景を印刷する設定にしておかないと,スライドでの背景がうまく反映されません.

Chromeですと,背景のグラフィックにチェックを入れるようにしてください.

f:id:futakuchi0117:20180813201135p:plain

数式を書くときの注意点

Markdown中で数式を書くときにしばしば起きる問題として,適切なエスケープを使わないと,数式がうまく表示されません.

詳しくはこちらの記事を参照.

qiita.com

GitHub Pagesで公開する

GitHub Pagesとは,GitHub による静的サイトのホスティングサービスです.

これを使うと,ちょっとした資料や簡単なホームページを公開することができます.

これから,下のような感じでReveal.jsによるスライドを公開するまでの手順を書きます.

  1. GitHub Pagesを使えるようにする
  2. GitHubからreveal.jsのプロジェクトzipをダウンロード or クローン
  3. index.html内の,<body><section>部分を編集
  4. GitHubで新規のリポジトリを作成して,編集したプロジェクトを全てコピーしてpush

GitHub Pagesを使えるようにする

使い方については以下.

ferret-plus.com

index.html内の,<body><section>部分を編集

Markdownを別ファイル書いておいて,それを読み込む形にしておくと便利ですので,<section>部分を次のように編集します.

<section data-markdown="md/test.md"
    data-separator="\n---\n$"
    data-separator-vertical="^\n--$">
    <script type="text/template">
    </script>
</section>

あとは,上にも書きましたが,GitHubで新規のリポジトリを作成して,編集したプロジェクトを全てコピーしてpushすればスライドが公開されます.

上のほうに埋め込んだスライドは, https://inukair.github.io/index.html というURLになっていますので,これをはてなブログにでも埋め込みたい場合は,

<section>
    <iframe width="800px" height="340px" src="https://inukair.github.io/index.html">  
    </iframe>
</section>

のように<iframe>を使うとよいでしょう.

MathJaxを使う場合

数式を表示させたい場合,本家にも詳しく解説されていますが,いくつかの設定を加える必要があります.

GitHubからreveal.jsのプロジェクトをダウンロードした場合,index.html内の,<script>内を

<script>
    // More info about config & dependencies:
    // - https://github.com/hakimel/reveal.js#configuration
    // - https://github.com/hakimel/reveal.js#dependencies
    Reveal.initialize({
        math: {
            mathjax: 'https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js',
            config: 'TeX-AMS_HTML-full'  // See http://docs.mathjax.org/en/latest/config-files.html
        },
        dependencies: [
            { src: 'plugin/markdown/marked.js' },
            { src: 'plugin/markdown/markdown.js' },
            { src: 'plugin/notes/notes.js', async: true },
            { src: 'plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } }, 
            { src: 'plugin/math/math.js', async: true }
        ]
    });
</script>

のように書き換えると,数式が書けるようになります.

今回使用したスライドのMarkdownファイルはこちらで公開しています.

その他使い方

細かく説明するよりも,本家を読むのがよさそうです:

github.com

公式デモも面白いです.

テーマは色々なものが用意されていますので,お好みで変えるとよいでしょう.

qiita.com

あと,こちらのページを参考にさせていただきました.

qiita.com

qiita.com

あと,GitPitchのような便利なサービスもたくさんありますので,色々試してみたいところです.