GitBookのツールチェインにいまさら気づいてツラい
さきほどGitBookでPowerShellの書籍を公開したとかいうエントリーを投稿しましたが、ほんとうに情弱でした。ですます調が混ざってしまう程度に困惑しております。
何がというと、GitBookにはツールチェインがある。つぎの2つだ。
- GitBook Editor
- GitBook CLI
GitBookのオンラインエディタと同様なオフラインエディタ、先ほどmac用をダウンロードしてインストールしてきた。悲しいことに、操作感はまったくオンラインと同じになっているようだ。
これならわざわざ不安定なオンライン版にこだわらなくても、このエディタで書けばいいじゃないか!!
GitBookツールチェイン
このオフラインエディタはmac版だけでなく、Windows版もLinux版も用意されているようだ。クロスプラットフォームということだ。
GitBook Editor
https://www.gitbook.com/editor
このツールからプッシュだけでなくプルもできるし、ブランチ操作もすることができる。もう、これだけでいいんじゃないのか??
なお、このツールでログインすると現在のユーザーディレクトリ内にGitBookというディレクトリが作成され、GitBookユーザーごとにディレクトリわけされている。さらにその中でリポジトリごとにファイルが用意されているし.gitディレクトリも存在しているようだ。よって、これをそのままGitHubやほかのGitリポジトリサービスへプッシュしてもよいのではないかと思われる(未確認)。
一方、コマンドラインツールのほうはローカルでGitBook用の環境をつくることができるもののようだ。npmパッケージになっているのでnode.jsが必須になる。
npm install -g gitbook-cli
あとはよくあるツールのごとく、リポジトリ用のディレクトリを作成して、そのなかで初期化コマンドを唱えれば準備完了!あとはお好きなエディタで書いていけばよろし。
gitbook init
これを行うと、必須の構成が用意されるようだ。SUMMRY.mdとREADME.mdファイルが作成される。ローカルにつくったリポジトリをどうやって見るのさ!となるかもしれないが、そこはビルトインのサーバーがあるようなので、そちらで見ることができる。
gitbook serve
このコマンドを実行すると、初回だけGitBook本体がダウンロードされる。これをベースにして書籍データが読み込まれてGitBookをブラウザで見ることができるようになるわけだ。実行してみると「http://localhost:4000」にアクセスすることで書いた内容が見えるはずだ。しかし、ここまでやってみて気づいたが、このCLIツールはGitリポジトリをつくらない。だから、Gitとして管理したい場合は別途Gitリポジトリとしての初期化を行ったりする必要があるようだ。
静的HTMLとして出力することもできるようで、その場合はつぎのコマンドを実行すればよいらしい。
gitbook build [ブックのディレクトリ] [出力先ディレクトリ]
このあたり、公式ドキュメントに書いていなかったのだが、ソースを読むとこうなっており、そのとおり実行すると確かにhtmlが出力された。あとから追加したマークダウンファイルは、SUMMRY.mdにリンクを書いておくと相手にしてくれるようだ。これを記述し忘れているとそのままのファイルが出力先ディレクトリに出力されてしまっていた。
静的htmlのほかに、pdfやepub、mobiファイルにも出力できるようなので、後ほど試してみたい。もしかしてPandocを使わなくてよくなるのではという淡い期待もあるわけだし。
このほか、book.jsonを作っておくと著者情報やタイトル、プラグイン(あるらしいです)の情報、README.mdファイルなど特別なファイルのパスを変更することもできるようだ。
すべて自分でやりたい方はCLIで、そうでない方はEditorを使うとよいのだろう。ただ、CLIのときはGitコマンドを利用するようになるし、GitHubなどのアカウントでログインしている方はアクセストークンをパスワードの代わりに入力するようになる。
わたしも最初は「え?GitHubでアクセストークンを作成すんの??」と迷ったのだが、GitBookで用意してくれる。GitBookサイトで右上の自分のアイコンが出ているところをクリックすると、メニューが表示される。この中にある「Account Settings」をクリックするとプロフィールなどを変更する画面が表示される。
画面左側の「Personal Settings」から「Applications / Tokens」をクリックすると、トークンを管理する画面に変わる。
ここで画面右側にある「Generate Token」をクリックするとトークンを作成してくれる。
ただし、このトークンは作成したときにしか表示されないため、「.netrc」というファイルを作成してホームディレクトリへ保存しておこう。
machine git.gitbook.com login ユーザー名かメールアドレス password 表示されたトークン
このあたりの話はFAQにあったので、こちらを参照するとよいだろう。
How can I use Git to update my book? · GitBook Help Center
https://help.gitbook.com/books/how-can-i-use-git.html
補足
これらツールチェインはGitHubでソースコードも公開されているので、細かいところが気になる方はこちらをどうぞ。
GitBook
https://github.com/GitbookIO/gitbook
GitBook CLI
https://github.com/GitbookIO/gitbook-cli
なお、エディタのほうがクロスプラットフォームなのでピンときたが、やはりElectron製だった。便利だね、Electron。
【改訂新版】 Windows PowerShell ポケットリファレンス
- 作者: 牟田口大介
- 出版社/メーカー: 技術評論社
- 発売日: 2013/02/23
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (3件) を見る