XP祭り2014で、Re:VIEWを使った書物の作成について話を聞きました。
Re:VIEWとその周辺とツールを使うことで、markdownでマークアップしたテキストをPDFやePubにできるとのこと。
今回、仕事の納品物のドキュメントを作成するにあって、ツールに何を使ってもOKという許可がおりたこともあって、試しにRe:VIEWでドキュメントを書くことにしました。
その記録を兼ねた記事です。
まずは細かい話を省略して、準備からPDF生成まで。
ツールの用意
ツール | 説明 | 参照サイト |
---|---|---|
md2review | markdownからRe:VIEWへ変換するのに利用します | GitHub - takahashim/md2review: a converter from Markdown into Re:VIEW, using redcarpet |
Re:VIEW | Re:VIEW本体 | GitHub - kmuto/review: Re:VIEW is flexible document format/conversion system |
LaTeX | PDF化の場合、Re:VIEWはLaTeXファイルを生成するので、それをPDF化するためにLaTeXが必要になります | TeX Wiki |
ツールのインストール
md2reviewとRe:VIEWはgemでインストールします。
$ gem install md2review $ gem install review
LaTeX は TeX Wiki の記事を参考にインストールします。
OS X (Mac) | Mac - TeX Wiki |
Linux | Linux - TeX Wiki |
Microsoft Windows | Microsoft Windows - TeX Wiki |
ひな形を生成する
review-init
コマンドを利用してドキュメントのひな形を生成します。
$ review-init sample-document
コマンドを実行すると sample-document というディレクトリが生成されます。
ディレクトリの構成は次のようになっています。
sample-document.re | Re:VIEW ファイル。このファイルに本文を記述します。 |
catalog.yml | 章立てを記述します。 |
config.yml | 作成するドキュメントの設定を記述します。 |
images/ | Re:VIEW から参照するイメージファイルはこのディレクトリに格納します。 |
layouts/layout.html.erb | HTML ファイルや ePub ファイルのレイアウトの設定を記述します。 |
Rakefile | ビルドのためのタスクを定義した rake ファイルです。 |
sty/reviewmacro.sty | LaTeX のスタイルファイルです。 |
style.css | HTML ファイルや ePub ファイルのスタイルファイルです。 |
markdown でテキストを書き md2review で Re:VIEW にする
markdownd で記述したファイルを用意します。ここでは sample-document.md というファイル名とします。
このファイルを md2review コマンドで Re:VIEW のファイルに変換します。
$ md2review sample-document.md > sample-document.re
Re:VIEW から PDF へ
PDF化には review-pdfmaker というコマンドを使います。
パラメータとして、設定ファイルを指定します。
$ review-pdfmaker config.yml
config.ymlの内容がreview-init コマンドで生成したままの場合、PDF化に成功すると book.pdf というファイルが生成されます。
PDFファイルを開くと markdown で記述した以外に表紙や目次や奥付が挿入されています。これらの設定や PDF ファイルのファイル名などは設定ファイルで設定することになります。
ちなみに。わたしが使用した環境では、すでに PDF ファイルやPDFファイルを生成する際に作成されるワークディレクトリ(book-pdf/ というディレクトリ)がすでに存在していると、review-pdfmaker の実行が失敗しました。そのため、PDF ファイルを再生成するときは、それらを削除する必要がありました。
$ rm -rf *pdf