log.saiias

あてにならない備忘録

Advent Calendar Advent Calendar 8日目

この記事は Advent Calendar Advent Calendar 8日目の記事です。前の人は @osa_k さん です。

今日は Sphinx Advent Calendar を紹介します。

ソフトウェア開発においてドキュメントは利用、保守、ソフトウェアの品質を保つという点で非常に重要なものです。 しかしドキュメント作成にかかるコストが大きくなると、ドキュメント化がおざなりになってしまいがちです。 構造化された品質の高いドキュメントをできるだけ少ない労力で作成しようという思いから生まれたのがSphinxです。

Sphinxの主な特徴

  • 階層化された構造
  • コードハイライト
  • 複数の出力形式に対応(HTML,PDF,ePubなど)
  • Pythonで拡張が書ける

ここまでがSphinxの紹介です。Advent Calendarでは便利な拡張や各エディタでの便利な設定などを紹介しています。 今年のAdvent Calendarで気になった記事は1日目の Sphinx mobi builder です。

今年は楽天のkoboやamazonのkindleの日本版の発売され、電子書籍リーダー低価格で手に入ることができるようになり、日本でも電子書籍の流れが生まれてきました。 しかし端末ごとに対応しているファイル形式が違うのでどの端末向けに対応させるかがネックになってきます。SphinxはデフォルトでePub形式には対応しているのですが、kindle向けのファイル形式のmobiには対応していません。しかし kindlebuilder という拡張を使うことによってmobiにも対応することができるようです。 この拡張によってSphinx向けにreStructuredTextでドキュメントを記述すれば、HTML,PDF,ePub,mobiなどの形式に対応することができPCやタブレット,電子書籍リーダーなどの端末に合わせてビルドすることができます。

Sphinx Advent Calendarの紹介は以上になります。個人的にはSphinxpython界隈だけではなく他のコミュニティに広がることによってReST記法が流行ってくれればいいなぁとか思ってます。はてブもmarkdown記法には対応したもののまだReST記法では書けなかったり、ブログフレームワークもmarkdownで書けるOctopressが流行り始めたりとReST記法をよく使う自分としては肩身が狭いです。

(追記) この記事はgithubページのエントリをはてブに移行したものです。(2013-01-05)