Kindle で RFC や Internet Drafts を読む2009年12月28日

Kindle が日本にも出荷してくれるようになったという話を聞いてむずむずしていたのですが、電車や喫茶店で Kindle 使ってる人を時々見かけるようになったので「円高だし買っちゃえ」ということで購入しました。

標準では日本語のフォントが入ってないけど、日本語フォントが埋め込まれた PDF が読めるということで、青空キンドルを活用して、青空文庫 にある過去の作品群を読んでたりしていたのですが、そういえば RFC や Internet Drafts も読めると便利だよなぁ、と思い始めました。

手段を探してみると、Impedance Mismatch: Internet-Drafts for Kindle (2)にて、txt 形式の RFC を画像に変換し、それを zip で固めたものにするツールが紹介されています。しかし見やすさはいまいちで、Kindle の利点が生かせません。

そこで、RFC 2629 形式で書かれた RFC や Internet Draft があるので、それを HTML 等に変換する xml2rfc を使ってみることにしました。これを使って生成した HTML は文書の論理構造を反映した HTML になるので、これを Kindle に投入する文書の元にします。ちなみに、tools.ietf.org から入手できる HTML は txt を無理に HTML 化したようなものでいまいちです。

xml2rfc はTcl/Tkで書かれてるので、まず導入する必要がありますが、私の普段使いのDebian or Ubuntu 端末には既に入っていたので、すぐに起動できました。xml2rfc を起動して、xml ファイルをダイアログから選択し、出力に HTML フォーマットを選びます。

このxml2rfcが生成するHTMLはそれなりによいのですが、これをそのままKindleに持っていくと無駄な部分も多いのでそれを削ります。たとえば、冒頭部でのスタイルシートや、目次へのリンクは削ります。また、ASCII ARTで書かれた図表はpre要素で囲まれてしまいますが、これはKindleでは使えないので、code要素、br要素を使ったものにし、また、空白を に置き換えます。

この書き換えのために簡単なhtml2kindle.plというフィルタスクリプトをperlで作成しました。入力としてxml2rfcの生成したHTMLを与えると、それなりにKindle向けのHTMLを生成します。

次に、このHTMLを、Mobipocket Creatorを使って、prc 形式に変換します。HTMLをimportし、metadataを適切に編集し、Buildして保存します。そして、そのprcをKindleのdocumentsフォルダに入れると読めるようになります。

現状、xml2rfcを使いますが、これを直接XMLから変換するようにしようかとも思ってます。

参考文献

<< 2009/12 >>
01 02 03 04 05
06 07 08 09 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31

RSS