Skip to content

Latest commit

 

History

History
63 lines (43 loc) · 5.44 KB

translation-guide.ja.md

File metadata and controls

63 lines (43 loc) · 5.44 KB

quarkus.io 翻訳プロジェクト 翻訳ガイド

quarkus.io 翻訳プロジェクトでは、quarkus.io の翻訳に取り組んでいます。

翻訳方式

quarkus.ioはJekyllを用いた静的サイトであり、コンテンツは asciidoctor (.adoc) で記述されています。 レポジトリは quarkusio/quarkusio.github.io に存在し、CC BY 3.0 に基づき公開されています。 本プロジェクトでは、.adocファイルからpo4aというユーティリティを用いてテキストを抽出し、翻訳して.adocファイルに書き戻してビルドすることで日本語版サイトを構築する方式を採っています。 po4aを用いたテキストの抽出、翻訳メモリを用いた訳文の適用、機械翻訳による下訳、書き戻し処理のワークフローは、本レポジトリのGitHub Actionsによって自動化されており、 抽出されたテキストは翻訳テキストを管理するファイル形式である、.poファイルとして、l10nディレクトリ 以下に保存されています。

翻訳への貢献

翻訳に貢献頂ける場合、本レポジトリをローカルにcloneし、手元でl10nディレクトリ 配下の.poファイルを編集してPull-Requestをお送り下さい。 各ファイルの翻訳状況は、こちらから確認できます。

翻訳着手の宣言

同じファイルを複数のメンバが同時に作業着手し、重複して作業して無駄が発生するのを避ける為、翻訳作業に着手する際は、 GitHubのIssueで、どのファイル、範囲を対象に作業着手するか宣言をお願いします。 Issueを立てる際は逆に既存のIssueで既に誰かが対象に対して作業着手を宣言していないか、ご確認下さい。

翻訳作業

.poファイルは、テキストファイルですが、様々な翻訳補助ツールが編集に対応しています。例えば、POEdit は Windows/Mac/Linux での実行に対応しており、ショートカットキーも充実していることから、編集する際に使用すると便利です。

翻訳対象の自動取込、自動下訳

翻訳対象のファイルは、quarkus.ioが更新されますと定期的に本レポジトリにGitHub Actionsのワークフローにより、 自動で取り込まれ、.poファイルが作成されます。.poファイルには翻訳メモリに収録された既存の訳文や、 quarkus-adoc-po-translator を用いて DeepL APIで自動で翻訳した訳文が挿入されますので、翻訳の際の下訳としてご活用下さい。

但し、あくまでも機械翻訳な為、てにおは等が不自然な部分も多く、「要確認」(fuzzy)としてマークされており、「要確認」マークを外さない限り、翻訳として反映されません。 訳文をレビュー、修正し、「要確認」マークを外して下さい。

翻訳対象ファイル

l10nディレクトリ 配下の.poファイルすべてを将来的には翻訳していきたいところですが、まずは主要なコンテンツである「ガイド」と 「ブログ」を翻訳する為に、l10n/po/ja_JP/_guidesディレクトリl10n/po/ja_JP/_postsディレクトリ ディレクトリを中心に翻訳を進めていければと思います。

翻訳不要文の扱い

ソースコードやURL等、全体が翻訳不要なセンテンスが.poファイルに含まれている場合があります。 その場合は原文をそのままコピーする必要は「ありません」。そのまま、訳文は空欄のままにして下さい。そうすると、原文がそのまま使用されます。

翻訳結果のプレビュー

.poファイルを翻訳し、Pull-Requestを頂ければ、自動でGitHub Actionsでサイトのビルドが行われ、一時的にサイトを閲覧できるURLが GitHubのPull-Requestに対するコメントとして5分程度で送信されます。 そちらの一時サイトから、翻訳結果のプレビューを確認することが出来ますので、ご活用下さい。

HTMLテンプレートの更新対応・翻訳

quarkus.ioのコンテンツは asciidoctor (.adoc) で記述されていますが、一部のテキストはJekyllのHTMLテンプレートに含まれています。 JekyllのHTMLテンプレートに記述されたテキストについては、po4aでプログラム処理するのが不可能な為、l10n/overrideディレクトリ に po4aで処理できないファイルのコピーを配置し、こちらのファイルを手動で翻訳しておき、Jekyllサイトビルド時にこれらのファイルで 元ファイルを上書きすることでローカライゼーションを実現しています。 upstream側で元ファイルが更新された場合、l10n/overrideディレクトリ側にコピーしたファイル側も更新する必要があります。 現時点で、upstream側の元ファイルの更新を検知して通知する機能等はありませんのでご注意下さい。