Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2024 Edition に向けた翻訳作業 #73

Open
TonalidadeHidrica opened this issue Jan 27, 2025 · 2 comments
Open

2024 Edition に向けた翻訳作業 #73

TonalidadeHidrica opened this issue Jan 27, 2025 · 2 comments

Comments

@TonalidadeHidrica
Copy link

前回の翻訳作業から4年が経過し、このリポジトリの翻訳も本家から大きく乖離しました。
2025年2月20日には Rust 1.85.0 が stabilize され、Rust 2024 もついに主役に躍り出ます。
本家リポジトリには Rust 2024 で追加される様々な要素の詳細な説明に加え、Rust 2021 以前の説明にも変更や追加が見受けられます。

この機会に、Edition Guide を再び本家に追従させ、日本語 Rust コミュニティが新しい Edition を円滑に受け入れることができる土台を作りましょう!

この issue は、2024 Edition に合わせたマイルストーンの説明文的 issue としたいと思っています。
全体的な方針の議論や、貢献方法の説明などもここに書いていく予定です。
(見切り発車で開始しましたので、運用は今後変更になる可能性があります。)

@tatsuya6502 このリポジトリの Milestones に新たに 2024 Ed. を作成していただけますでしょうか?

@TonalidadeHidrica
Copy link
Author

TonalidadeHidrica commented Jan 27, 2025

翻訳作業の流れを説明します。
作業の必須ツールに、 mdbook および mdbook-transcheck が挙げられます。いずれも cargo install できます。
また、rust-lang/edition-guide および rust-lang-jp/edition-guide をローカル環境にフォークしておいてください。

作業の開始

翻訳は節=ファイルごとに行います。節ごとに issue が既に作られておりますので、(重複作業を防止するため)翻訳を開始するときにその issue comment にて宣言してください。節によっては特有の注意点が記載されているので、目を通しておいてください。

ウェブで見られる文書は src/ フォルダ内にすべて .md 形式で書かれており、英語版と日本語版のファイルは(基本的に)同名で一体一対応しています。日本語版のファイルは英語と日本語が交互に現れます:具体的には、英語版の .md ファイルに含まれる全ての段落が過不足なくコメントアウトされた状態でそのまま記載されており、それに続いて日本語の翻訳文が記載されています。
翻訳作業を始めるときには、まずコメントアウトされている英語文を英語版ファイルと一致させる必要があります。 mdbook-transcheck はそのような作業のための確認ツールです。

新しいファイルを翻訳する場合

日本語版がまだ作成されていないファイルの翻訳を開始する場合は、英語版から日本語版へファイルをコピーした上で、各段落をコメント <!-- --> で囲ってください。このとき、コメントの開閉タグは英語版の本文とは独立した行として記載してください。(さもないと、後述のコマンドで差分が正しく検出できません。)コピーしたら、 mdbook-transcheck コマンドを用いて差分が生じないことを確認してください:

$ mdbook-transcheck --single (英語版リポジトリのファイル).md (日本語版リポジトリのファイル).md

すでにある翻訳を更新する場合

上記の mdbook-transcheck コマンドを実行すると、差分位置が表示されます。英語版の文章をコピーするなどして、差分が報告されない状態にしてください。
なおこの作業には同コマンドの --fix オプションを使うことによりある程度自動化できますが、特に変更量が多い場合等に必ずしも適切にコメントが開始/終了されるとは限らないのでご注意ください。

いずれのケースにおいても、差分が出なくなったら、一旦コミットするとよいでしょう。

翻訳作業

翻訳は、英語文の段落の直下に対応する日本語訳文からなる段落を記載する作業です。もしすでにある翻訳を更新している場合、先程作成したコミットの diff をみることで、どの部分を修正する必要があるかを知ることができます。プルリクエストにも同様の diff が可視化されるので、レビュワーもまた変更がきちんと反映されているかどうかを知ることができるという寸法です。

翻訳時の注意点は、Rust By Examples の Contributions 案内に準拠します。
いくつか内容は被りますが、他にも列挙すると以下の通りです:

  • 文章は敬体(~です、~ます)調で統一します。
  • 訳語に関してはできるだけコミュニティの慣例に従います。多くの Rust 用語の訳語は Translation table 等で確認可能です。(このリンクは The Book の翻訳リポジトリへのリンクですが、Edition Guide のリポジトリの TranslationTable.md にはエディション特有のいくつかの用語の訳例が掲載されている場合があります。)
  • 英文はコメントアウトして下に日本語文を記載すると言いましたが、実はコードブロックだけは例外です。コードブロックは基本的にそのまま記載してください。コード内のコメントに関しては、英語文を 消さずに 日本語訳コメントを直下の行に追記してください。(詳しくはリポジトリ内にすでにあるファイルをご覧ください。)
  • これは非常に難しいことですが、できるだけ日本語として自然に読める文を書きたいものです。がんばるしかないです。いくつかの Tips を載せておきます:
    • 主語が人一般にあたる we は、無理に「私達」とせずに日本語文からは消失させてしまって構わないでしょう。
    • "can" は「~することができます」「~することが可能です」と訳してしまいがちですが、よく考えると実は冗長で、「~できます」で十分です。
    • 無生物主語は翻訳調の文章を生みがちです(この文のように)。日本語特有の言葉の省略や曖昧性を駆使して、いい感じに文構造を組み替えてあげると理想的です。

翻訳に困った語や文があったら、issue comment または Zulip chat の #translation ストリーム にてご相談ください。

レビュー

翻訳が完了したら、Pull request を作成してください。提出前に改めて、mdbook-transcheck で差分が検出されないことを確認してください。Pull request のコメントには、 "Closes #〇〇" のように対応する issue 番号を記載してください。レビュワーが翻訳をレビューし、マージすることになります。

@TonalidadeHidrica
Copy link
Author

新しいファイルを翻訳する場合(追記)

  • 目次ページを更新 #75 がマージされていない場合は、`TonalidadeHidrica:summary` から新しいブランチを作成してください。それ以外の場合は、 `master` ブランチから新しいブランチを作成してください。
  • 翻訳時は、 src/SUMMARY.md のタイトルも訳したタイトルに置き換えることを忘れないでください。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant