こんにちはtakada-atです。 わたしはkindleユーザーで、毎日通勤電車の中でkindleを使ってます。 持ち歩くのが難しい重い技術書などもkindleなら簡単に持ち運べて、どこでも読めて、しかもどこでも購入できるので大変重宝してます。英語コンテンツ以外が少ないのが難点ですが、勉強と割り切って英語中心に読んでます。 慣れてくると欲がでてきて、「ソースコードもkindleで読みたい!」と考えるようになりました。 ソースコードをkindle用の形式に変換してくれるツールを探したんですが、無かったのでつくってみました。




https://github.com/takada-at/sc2epub

■しくみ

  • epub形式のファイルはxhtmlに、表紙・目次などのメタデータを追加して、zip圧縮したものです。
  • そこで sc2epub では、ソースコードを PREタグでかこんで、xhtml に変換し、目次など、必要なファイルを追加します。
  • またMakefile を生成し、zip 圧縮や kindle用のmobiフォーマットへの変換を簡単にします。
  • epub から mobiファイルへの変換には、amazon公式のkindlegen を利用できます。
  • http://www.amazon.com/gp/feature.html?ie=UTF8&docId=1000234621

■インストール


$ gem install sc2epub

■使い方

sc2epub <変換したいソースコードのディレクトリ> <生成されるディレクトリ> <プロジェクト名> という風に使用します。 例として readline-5.2 のソースを変換します。 "~/src/readline-epub" というディレクトリを作成します。

$ sc2epub ~/src/readline-5.2 ~/src/readline-epub readline
$ cd ~/src/readline-epub
$ make

ここまでで readline.epub というファイルが生成されます。 mobi ファイルを作成するためには先に kindlegen コマンドをパスの通った場所にインストールしておく必要があります。 kindlegen コマンドは以下から入手してください。 http://www.amazon.com/gp/feature.html?ie=UTF8&docId=1000234621 kindlegen コマンドがあれば、以下のように mobi ファイルを作成できます。

$ make kindle

readline.mobi というファイルが作成されるので、あとはこちらを kindle にコピーして読むことができます。

■使用感など

ページの端で折り返されるので、若干読みづらいですが、読めないことはないです。 kindle側でtypeface をcondensed に変更し、フォントサイズを小さくすると読みやすくなるようです。

■ 参考資料

epubフォーマットについては、以下のページなどを参考にしました。