青空文庫の「組版案内」で配布されている txt2html内にあるt2hs.rbを改造するプロジェクトです。
Ruby 3.0以上が推奨ですが、2.7.xでも動くはずです。
それ以前のRuby 2.xで利用する場合は、aozora2html-2.0.xをご利用ください。
RubyGemsとしてインストール可能になっています。
$ gem install aozora2html
ソースからインストールするときは以下のようにします。
$ gem install bundler
$ rake install
コマンドはaozora2htmlです。以下のように実行します。
$ aozora2html foo.txt foo.html
こうすると、青空文庫記法で書かれたfoo.txtをfoo.htmlに変換します。
また、青空文庫サイトで配布している、中にテキストファイルが同梱されているzip形式のファイルも変換できます。
$ aozora2html foo.zip foo.html
第1引数にURLを指定すると、そのURLのファイルをダウンロードして変換します。
$ aozora2html http://example.jp/foo/bar.zip foo.html
第2引数を省略すると、ファイルではなく標準出力に変換結果を出力します。
$ aozora2html foo.txt
コマンドラインオプションとして--gaiji-dirと--css-files、--use-jisx0213、--use-unicode、--error-utf8があります。
--gaiji-dirは外字画像のパスを指定します。--css-filesはCSSファイルを,区切りで指定します。--use-jisx0213はJIS X 0213の外字画像を使わず、数値実体参照として表示します。--use-unicodeはUnicodeのコードポイントが指定されている外字を数値実体参照として表示します。--error-utf8はエラーメッセージをUTF-8で出力するようにします。
可能な限り数値実体参照を使って表示するには、以下のようにオプションを指定します。
$ aozora2html --use-jisx0213 --use-unicode foo.txt
テストも追加しています。テストは以下のように実行します。
$ bundle install
$ rake test
主な更新履歴はCHANGELOG.mdにあります。
コードに関する技術的なnoteはHACKING.mdにあります。
CC0
To the extent possible under law, 青空文庫 has waived all copyright and related or neighboring rights to txt2xhtml. This work is published from Japan.
