フューチャー技術ブログ

Python連載始まります&Python翻訳プロジェクト

最近社内でも使う人が徐々に増えている? Pythonの連載記事を開始しようと思います。

この企画を立てた時は、Python 3.10も近いし、そちらのアップデートの紹介をしようと思ったのですが、Python.jpに完璧な記事群が公開されているので、そちらをご覧ください。

本エントリーではPythonドキュメントの日本語訳プロジェクトに参加してみた話を紹介します。

Pythonドキュメント日本語訳プロジェクト

現在はcocoatomoさんがプロジェクトの管理者をやられています。現在の状況は以下のところで詳しく説明されています。

プロジェクトのホームとなっている場所のGitHubです。参加の仕方も書かれています。

Pythonには今まで育てられてきた「実家」のような言語と感じているので、恩返しはしたいと思っていますし、先日、エキスパートPythonプログラミング改訂3版が出版されましたという記事を書きましたが、Pythonの書籍だと一次情報として公式のドキュメントをかなり参照しています。特に言語仕様周り。本を読んでいて、さらに詳しく知りたい読者の人が見た時に、英語のページしかないのは不親切かな、と思い、僕も本から参照されている情報を中心に翻訳に参加しようと思いました。

なにせドキュメント数が膨大で翻訳の人手が足りているとは言えない状況ですので、もし興味がある人、ちょっとでも世の中に貢献してみたい人なんかはいいと思います。

英語力は、そこまで大事ではないというか、読みやすい日本語を各能力とPythonの知識の方が大事かもしれません。

Transifexを使って翻訳する

翻訳にはいろいろな便利なツールが、SaaSやデスクトップツール、市販、OSSなどさまざまな形態で提供されています。OSSだとOmegaTとかが有名ですね。翻訳プロジェクトではTransifexを使っています。

スクリーンショット_2021-09-27_13.42.22.png

プロジェクトに参加申請のDiscordのDMで、cocoatomoさんにアカウントをお伝えするとプロジェクトメンバーにしてもらえます。ページを開いたら右上の翻訳ボタンを押します。

次にファイル(ページ)のリストがずらっと表示されます。リストをスクロールして探すのはほぼ不可能ですので、左上の検索バーに名前を入れて探しましょう。Descriptorのページ(how toの方)がエキスパートPythonから参照されているので、これを翻訳します。

スクリーンショット_2021-09-27_13.46.31.png

翻訳作業は簡単です。翻訳していない行を探してクリックし、原文を参考にしながら日本語を入力し、保存ボタンを押していくだけです。なお、原文はSphinxで、reStrcuturedTextというマークアップ言語で書かれているため、それのインラインの構文がちょっと載っていたりします。このサンプル画像の :meth:`__getattr__ ` とかがそれに該当します。マークアップを消してしまわないように、Raw編集モードをオプションで有効にしておきます。

スクリーンショット_2021-09-27_13.48.34.png スクリーンショット_2021-09-27_13.53.36.png

この手の翻訳ツールは、原文が書き変わったりすると、全て未翻訳に戻ってしまいます。しかし、作業結果が消えてしまうわけではなく、過去の情報も残っています。それが提案というところに表示されます。原文の一致度とともに表示されます。形式が決まっているライブラリのリファレンスだと、他のモジュールの似たような文章も提案されることもあります。その場合はこのサジェストを元に、原文の違いだけ書き換えて利用できます。

ちなみに、↓の文章はfunction callsが単数系に変わっただけですので、日本語的には差はありません。こういうのはそのまま取り込んでしまっても良いですね。

スクリーンショット_2021-09-27_13.56.18.png

こんな感じでばしばし翻訳していけます。1つのページを終わらせるのは達成感があります。過去からあったページは提案を元にやっていけるところもいくつかありますし、そうではない新規ページは新しいPythonの知識を得ることができます。自分の学習と、社会貢献が一度にできてしまうので翻訳活動はお得です。また、翻訳も一人で悩まずに、ちょっとしたことを情報交換できるDiscordチャンネルもあります。

1日5個ぐらいでいいからぼちぼち翻訳しようと思っています。