あとで読みかえしたいページをちまちまとスクレイピングしては reStructuredText に落しこんで、そこそこたまると EPUB にまとめてリーダーアプリでメモしたりしています。 reST には html の ruby element に相当するものがありません。もちろんサポートしているモジュールは見つかりますが、 docutils をすこし拡張すればできそうなので、やってみました。
とりあえず reST の拡張といえばカスタム Directives の利用ですが、インラインマークアップにするために Substitution References でカスタム Directives と入れ替えします。
さすがにこれは面倒なので、つぎに Interpreted Text Roles の使用を考えます。 Specialized Roles として “raw” が提供されていますが、これは reST の可読性が著しく低下してしまいます。現在マークダウンを利用することが多いですが、プレーンテキストとしてエディタで開いたときは reST のほうが読みやすいと思っています。
テキストをパーズして rt (base text) 部と rp (annotation) 部をとりだしているため、入れ子状の ruby を構成するにはまだ工夫が必要ですが、現状ふりがなとしての使用しか考えていないのでしばらくこれで運用します。