ちょっと話題の記事

GitBook 環境を準備してみる

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

毎度お馴染み流浪の動かしてみた & C 芸人の Fujimura です。

最近はドキュメントを書くことが多いのですが、markdown で書かれたドキュメントをいい感じの PDF にしてくれるコマンドラインツールがないかなと google 先生や識者に尋ねてみたところ、gitbook が使えそうということがわかったため、手元に環境構築してみました。

インストール

README.md にあるとおりに gitbook-cli を npm でインストールします。

$ npm install -g gitbook-cli

これでインストールされるのはラッパーらしく、実際には gitbook の何らかのサブコマンドを実行すると、最新版がインストールされます。

$ gitbook help
Installing GitBook 2.6.7
:
:
:

実行

さっそく実行してみます。サンプルとして GitBook Documentation の中身を持ってきてみます。

$ git clone https://github.com/GitbookIO/documentation.git
$ cd documentation

ブラウザで見るには serve サブコマンドを使用します。

$ gitbook serve
Live reload server started on port: 35729
Press CTRL+C to quit ...

info: loading book configuration....OK
info: load plugin gitbook-plugin-highlight ....OK
info: load plugin gitbook-plugin-search ....OK
info: load plugin gitbook-plugin-sharing ....OK
info: load plugin gitbook-plugin-fontsettings ....OK
info: load plugin gitbook-plugin-livereload ....OK
info: >> 5 plugins loaded
info: start generation with website generator
info: clean website generatorOK
info: generation is finished

Starting server ...
Serving book on http://localhost:4000

起動したら指定された localhost:4000 をブラウザで開いてみます。

localhost4000
次に PDF を作成してみます。今度は pdf サブコマンドを使用します。

$ gitbook pdf . gitbook-doc.pdf
info: loading book configuration....OK
info: load plugin gitbook-plugin-highlight ....OK
info: load plugin gitbook-plugin-search ....OK
info: load plugin gitbook-plugin-sharing ....OK
info: load plugin gitbook-plugin-fontsettings ....OK
info: >> 4 plugins loaded
info: start generation with pdf generator
info: clean pdf generatorOK
info: write SUMMARY.html
info: start conversion to pdf ....ERROR

Error: Need to install ebook-convert from Calibre

Calibre が必要となるようですので、インストールします。(brew cask でインストールすると楽です。)

$ brew cask install calibre
==> Downloading https://download.calibre-ebook.com/2.49.0/calibre-2.49.0.dmg
(snip)
calibre staged at '/opt/homebrew-cask/Caskroom/calibre/2.49.0' (4094 files, 209M)

再度、実行してみます。

$ gitbook pdf . gitbook-doc.pdf
info: loading book configuration....OK
info: load plugin gitbook-plugin-highlight ....OK
info: load plugin gitbook-plugin-search ....OK
info: load plugin gitbook-plugin-sharing ....OK
info: load plugin gitbook-plugin-fontsettings ....OK
info: >> 4 plugins loaded
info: start generation with pdf generator
info: clean pdf generatorOK
info: write SUMMARY.html
info: start conversion to pdf ....OK
info: generation is finished
info: >> 1 file(s) generated

Done, without error

今度は成功して、PDF ファイルができていますので、ビューワーで確認します。

gitbookhelp
リンクもきちんと設定されています。

まとめ

gitbook で markdown で書かれたドキュメントを HTML および PDF にいい感じに変換してみました。少し触ってみただけでも、かなり興味深かかったので、もうちょっといじくってみたいと思います。