Markdown ドキュメントの翻訳をメンテナブルに行うための Node.js 製ツール "Inalz" を作った
Markdown ドキュメントの翻訳を効率的・継続的に行うためのツールを開発した。
- GitHub: https://github.com/FujiHaruka/inalz
- Documentation: https://inalz.netlify.com/ja/
作った動機はドキュメントにも書いたけど、ブログでも改めて書く。
英語ドキュメントの日本語訳は多くの方々がやっていて、頭が下がる素晴らしい仕事だと思う一方で、結構な確率でメンテされていない。以下のような問題点があるため、メンテしにくい。
- 一度翻訳したらそれっきり放置で元ドキュメントの更新があっても翻訳が更新されない
- 原文と訳文の対応表のようなものがないので、誤訳があっても可視化されにくい
翻訳は地道で骨が折れる作業なので、一度完成したら公開してそのまま放置したくなる気持ちは非常にわかる。特に、技術ドキュメントの翻訳方法が確立していなくて、だいたいは元の英文マークダウンドキュメントのファイルを日本語に書き換えるといったやり方でやっている。この方法はメンテがしずらい。
たとえば、Kubernetes のウェブサイト翻訳。
Kubernetes のウェブサイトは公式で多言語対応しようとしている。やり方はそのままマークダウンドキュメントを書き換えるというもの。元ドキュメントのほうも頻繁に更新されるので、プルリクがカオスで、翻訳ブランチは大変なことになっている。
あるいは、React のドキュメント翻訳。
こちらもマークダウンドキュメントを書き換える方法。一通り翻訳は完了しているが、本家の更新に追従するのが大変そうだ。
こういった問題を解決して、翻訳作業をメンテナブルにしようと開発したのが Inalz である。
ツールを開発する上で品質を上げる最善の方法はドッグフィーディングだということで、さっそくいくつかのドキュメントを翻訳してみた。以下である。
翻訳は地道で骨の折れる作業だからこそ、時間が経っても翻訳が読まれるように、継続的にメンテしていくことが大切だと思う。