Wiki に書いた URL のリストから青空文庫のミックス電子書籍を作れるようにする aozora-mix.rb

青空文庫に掲載されている作品はけっこう短いものが多いので、いくつかの作品をまとめて短編集かアンソロジーみたいな感じで読みたいなと思って、ある程度汎用的に使える仕組みを考えてみた。

Wiki (jottit) のページに書いた URL のリストから、いくつかの作品を詰め合わせた epub を作ることができる。たとえば青空文庫で読める日本古典SFから短い作品だけを抜粋してリンク集にした日本古典SF短編集というページを作ったとして、以下のように実行すると、

ruby aozora-mix.rb 日本古典SF短編集

こんな感じで処理が行われて、out.epub というファイルが生成される。

ダウンロードします (http://www.aozora.gr.jp/cards/000160/files/877_23846.html)
ダウンロードしました (海野十三 千年後の世界)
ダウンロードします (http://www.aozora.gr.jp/cards/000262/files/1458_14514.html)
ダウンロードしました (小酒井不木 恋愛曲線)
ダウンロードします (http://www.aozora.gr.jp/cards/000160/files/873_23287.html)
ダウンロードしました (海野十三 放送された遺言)

(中略)

epubファイルを作成しています (out.epub)
完了しました

自分の場合は Kindle で読むために kindlegen で mobi に変換した。残念ながら目次ページはうまく生成されなかったけど、作品ごとにジャンプできるのでそれなりに使えるっぽい。こんな感じで表示されている。

http://farm6.static.flickr.com/5186/5634859758_a15543ac04.jpg
http://farm6.static.flickr.com/5181/5634283297_d49610bbc6.jpg

細かい使い方については README に書いてある。Wiki は誰でも編集できるようにしてあるのでよかったら使ってみてください。

Ruby は敷居が高いのでjs-eeepub + グリモンとかにしたほうがよかったかも、画像の埋め込みとか縦書き対応とかやってみたい気もする。