久しぶりにAozoraEpub3を使ってみると意外とバグがあるかもと思って、調べてみている。
AozoraEpub3のソースコードをダウンロードしてビルドしたのも、バグを修正したかったからなのだが。どうも大半の人は、ウェブ小説をダウンロードして読むことに使うのか、あまり、自作の小説をEPUB変換することについてのバグのチェックはされていないかもしない。
AozoraEpub3のずっとあるnav.xhtmlのバグを読んでいていたのだけど、ネストしていて見るのがどうも嫌になってくる。ただ、プルリクエストを適用しただけだと、自作の小説を２階層化せずにEPUBに出力するとEPUBチェックでエラーが出るようだ。
AozoraEpub3のプルリクエスト、マージリクエストは4つあり。プルリクエストは、自分の変更点を受け入れてくれるよう要求することであるが。マージリクエストは実際にこの変更点をコードで持って示す形である。管理側はマージボタンを押すだけで完了するレベルである。ただ、本家側のAozoraEpub3の管理者が2年ぐらい不在なので、プルリクエストもマージリクエストも放置されている状況にある。
AozoraEpub3のコード分析
バグ取りするのにどの部分にどんな処理を書いているのかを読み解いていた。クラスのパスが書かれているファイルがなかったり。ビルドの構成ファイルがなかったり、プロジェクトファイルがなかったりはあったが。なんとなく、どこに何があるのかがわかった気がする。
JAVAとJavaScriptの違いはインドとインドネシア並みに違うと言われるが。JavaScriptでパッケージマネージャーに慣れているのと、なぜライブラリを読むこむのにこれだけ手間がかかるのかがよくわからなかったり。やっていることの割にコードの量が多く感じて違和感が多々あったのだけど。JavaScript以外のプログラムはこんな感じなんだろうか。
どうせAozoraEpub3はJAVAなんだし、いっその事アンドロイドアプリを作ったほうが利用者が増えるかな。アンドロイドスタジオに突っ込むだけで行けそう？
バグ修正版をビルドして配布しています。
JAVAの実行ファイルはAdoptOpenJDKでビルドしています。