Meta:Translate 拡張機能

This page is a translated version of the page Meta:Translate extension and the translation is 86% complete.
Outdated translations are marked like this.

メタウィキには、それぞれの言語に翻訳する必要のある重要な文書がたくさんあります。翻訳とはさまざまな段階にたくさんの人の手が必要なプロセスで、割り当てられたタスクや役割を果たすと、お互いを十分に知らない同士でも共同作業が成立するような、作業そのものの設計が重要です。Translate 拡張機能はこういう要望に応じるよう設計された、MediaWikiのツールです。

はじめに

文字を石に彫りこんだ時代は、ソーステキストが何か迷うことはありませんでしたが、コンセンサンスの進化や新たにもたらされる事実と数字など多くの変化に基づいて、翻訳産業が発展しました。Translate 拡張機能は、途切れることなく続く進化に対応するように設計してあります。もともとMediaWikiソフトフェアの地域化をサポートすることが開発の目的でしたが、translatewiki.netで使われていたページ変換機能を組み込んで拡張しました。最初の大規模な実装では、userbase.kde.org上のKDEの説明文書の翻訳をサポートし、現在はメタウィキ上でも機能を発揮しています。

ページ翻訳機能はプロの翻訳者が使用するワークフローとツールをモデルにしています。翻訳を素早く提供するために、必要な作業に集中しています。翻訳原文の変更箇所の識別と訳文の更新が簡単でなければなりません。

同じツールつまりTranslate 拡張機能を使用することで、ソフトウェアの地域化ならびに文書の翻訳に同じ技術が適用できることも、重要な利点です。そのおかげでメタの翻訳者コミュニティも translatewiki.net の地域化コミュニティも、同じプロジェクトでの作業と、ベストプラクティスの共有がより簡単になります。

ツール

かつてプロの翻訳者は、私たちの翻訳作業を手伝うことを拒んでいました。彼らは自分たちの使い慣れた翻訳ツールを使いたいと思っており、もし私たちのツールしか使えない場合は、時間が無駄にならないツールであるべきだと考えています。そこで多くのプロ用ツールで共有される形式のGettextをサポートしてソフトフェアの地域化をしています。

テキスト断片に関する追加情報

特定の基準の枠組みの中でのみ、意味が明瞭なテキストがしばしばあります。翻訳者には、そのようなテキストの真の意味まで理解しろとは期待できません。意味をはっきり示すように翻訳者から求められた場合は、翻訳原文にいくらか説明を添えることができます。原文の意図を変えない程度に翻訳を修正するため用いるものの、他言語で読んだ人にも意味が通じる表現を選びます。

翻訳が必要な文書の記録

翻訳の必要な文章が未処理の場合、翻訳の特別ページが自動的に表示されます。

動作の仕組み

中程度のサイズの文書は文と段落から成り立ちます。通常、翻訳原文の変更は段落の追加・削除やテキストの修正など、翻訳原文全てではなく一部で行われます。どんな変更があったのか認識すると、必要な作業を的確に把握できます。その結果、翻訳原文をいくつかのメッセージに細分化します。

詳しくは MediaWiki のヘルプページ、Help:Extension:Translate/翻訳の例をご覧ください。

翻訳作業の流れ(ワークフロー)

  • 翻訳管理者がテキストにタグを付けて翻訳対象に指定すると、その文書は翻訳可能になります。
  • 翻訳者は特別ページあるいは翻訳が必要なページのリンクから対象を選択します。
  • テキストのある部分(ユニット)を翻訳して保存すると、次のメッセージが選択できます。
  • 訳文に査読可能のマークが付き、翻訳済みの部分を閲覧できるようになります。

翻訳のガイドライン

一部の例外を除き、メタの全ての翻訳システムはたいてい、Translate 拡張機能に置き換えられています。翻訳の特別ページ群(主に特別:言語別翻訳状況)を使うべきで、翻訳依頼ページの使用は終わりました。

Translate拡張機能はとても柔軟ですが制限もあります。機能は正しく使わなくてはならず、さもなければ翻訳者に不適切な負担を強いることになります。一般的に、ページを分割した翻訳単位が大きいほど、翻訳者の自由度は高くなります。単位が小さいほど(既定の自動分割の場合)翻訳者はますます翻訳原文の文書構造に従うことを余儀なくされ、また変更の追跡および翻訳の更新と一貫性を確保することが容易になります。翻訳管理者は必要に応じて、翻訳原文ページを正しく準備しなければなりません。チュートリアル「翻訳を準備する方法」と詳細な説明文書を参照してください。

  • * 私論とその他のコミュニティページ(ヘルプページも?): 非常に自由で、ほとんどのセクションと翻訳ユニットが1対1で対応。
  • * 公式の方針とガイドライン、法的文書、他の場所に公開するための翻訳依頼: 厳密に翻訳するために標準的なTranslate拡張機能の分割。[作業の進捗状態について説明することを忘れないでください。]

これら2つの中にはいくつかの重複部分とサブケースがあります(完全な柔軟性と完全な一貫性のほとんど間にあります)。

メンテナンス

  • * 全てのカテゴリを翻訳する必要があります。翻訳は例えばカテゴリ:Helpのように言語コードの下位ページで行います。拡張機能が自動的に他言語へのリンクを作成すると、カテゴリのタイトル(および説明文書)が翻訳可能になるものの、カテゴリの一覧には常に正式なページ名かカテゴリ名が表示されます(bugzillaを参照)。テンプレートを介すると下位ページ名から言語コードを取得して、すべてのページが翻訳者の作業を待たずに翻訳されたカテゴリ名に自動的に配置されます(要注意=translatewiki:Template:Langcatは直感的に操作できず、wm2012:Template:AddLanguageCategoryはとても非効率な上に言語リストを手動で管理する必要があります)。
  • * 翻訳したテンプレートも必ず対象に含めます(例: translatewiki:Template:Localized参照)。{{draft}}/jaのような単純な下位ページを使用するのか、コモンズのように自動翻訳システムを使うのかははっきりとしていませんが、自動翻訳されたテンプレートは既にいくつか存在しています。[1] どちらのシステムでも、テンプレートのコンテンツを拡張機能で翻訳できます。{{essay}}など言語選択ベースの基本テンプレートを置き換え、おそらくは移行するべきですが、必須ではありません。
  • * サイドバー:組織化されていない要素の翻訳で説明したように完全に翻訳、ただしsysopに限定し、あらゆるユーザーが翻訳した場合の煩雑さを防ぐとよい。 See documentation on Meta-Wiki’s sidebar.

その他

過程

全般

翻訳システムは今後も、主にボランティアによって管理されます。技術的にはページ翻訳の構文は少し難しく、チェックをいくつか行う必要があるため、(任意のバージョンの)ページを翻訳対象にするには翻訳管理者フラグが必須です。メタ管理者は、他のユーザーを助けたいあるいは助けるべきだと自覚した場合、果たすべき役割をわきまえる限り、グループに自分自身を追加(および削除)することができます(当然、説明文書を熟読して可能であればテストも行っているはず—メタは遊び場ではないし翻訳者はおもちゃではありませんから)。さらにユーザーは誰でもWM:RFAのローカルのビューロクラットに自分を管理者にするよう要求できます。詳細はMeta:翻訳管理者 を参照してください[3]

ユーザーなら誰でもページに翻訳タグを追加して、翻訳をリクエストできます。それを「Special:PageTranslation」(翻訳が提案されているページ)から選んでチェックし、翻訳対象に指定するのは翻訳管理者にしかできません。翻訳の構文を覚えたくないユーザーは、通常の「管理者またはビューロクラット向けの依頼案件に対するヘルプ」ページでリクエストできます。現在のところ翻訳に優先順位を指定する方法はありませんが、いずれにしても過去にうまくいった試しはありませんでした。翻訳を急いでほしい場合は、翻訳者のメーリングリストあるいは直接、翻訳者に翻訳を依頼してください[4]

移動

  • メインページ:サブページとmigrateを残す(古いバージョンに基づき、テンプレートの大半は含まない)。
  • アーカイブされた翻訳依頼:カテゴリを除去するなど。
  • wmf:ウィキの方針と重要なページの大半:コピーするか履歴付きでMeta-Wikiにインポートして、翻訳する。その後はMeta-Wikiに残し、エキスポートする必要はありません。
    • 理事会の決議、投票、議事録など理事会が直接管理するものは理事会がウィキで直接Translate拡張機能を使用するため、例外とします。
    • Translation requests/WMFで一覧が作成されています。
  • ほかの場所で発表するためのアクティブな翻訳依頼:migrate。
  • その他Metaにある非英語のページ: 移動。
    1. User:Nemo bis/Old translationsCategory:Language link templatesおよびTemplate:Other languages [1]も要チェック): カテゴリの割り当てその他。
    2. リダイレクトは残し、翻訳ページはすべて、それぞれの言語コードさのサブページへ移動。
      • この作業により、未処理のまま放置された項目の洗い出しができる。
    3. ボットが未翻訳のソース言語ページ(英語版)にタグを付ける。
      • ページ全体を翻訳対象として指定。ただしテンプレート、カテゴリは自動処理で翻訳されるため、対象外。
      • 対象ページは翻訳単位を1つしか作らないよう編集される(題名は除外)。付与される翻訳タグは1組のみ。二重の新しい行 double newlines は削除される。
    4. ページが翻訳指定されるとサブページは英文で上書きされる。
    5. ボット(もしくはインポート係)が元からある翻訳済みページのコンテンツを該当する翻訳(分)単位ごとに翻訳名前空間にアップロード。
      • この前の段階で翻訳済みのコンテンツが非表示になったため、この作業は迅速にすませる方が良い。前段階に取り掛かる前に下準備を整える必要がある。
      • 理想としてはある段階でボットの作業も行い、翻訳済みのリダイレクトから題名を取り出して、タイトル翻訳(翻訳ユニット0)を構築する。
  • 旧来の翻訳の処理方法。
    • 翻訳リクエスト(およびその全ての翻訳)はMeta:バビロン にリダイレクトされると大幅に簡素化され、基本的に含まれるのは特別ページやヘルプページへのリンク(ポインタ)の他、数項目。Translationは新しいシステムではごく基本的なヘルプページとして更新/リライトされ(Meta固有の情報としてcf [2])、翻訳のよくある質問(に加えてその全ての翻訳)がそこにリダイレクトされる。
    • 新しいシステムを使わない翻訳リクエスト(例:他のウィキに提出された翻訳リクエスト)はCategory:Translation requestsのサブカテゴリだけに分類され、Category:Translations by statusのサブカテゴリと同時にアーカイブ(過去ログ化)される。これは実際には[Special:MessageGroupStats]]にソフトリダイレクトされる(Translations/Finalizing requestsも同じ)。
    • 「Translations/links/template」はSpecial:LanguageStatsへのリダイレクトに変換済み。
    • Category:Translations by languageは存続するものの、できれば自動化したテンプレートでデータを新しい翻訳システムへ入力する。
    • 翻訳リクエストのテンプレートは全て廃止としてマークする。(合わせてtemplates こちらの一覧も要チェック。

注記

  1. Commons:Localization/jaを参照。{{UILANGCODE}}の代わりに{{int:lang}}を利用することで利用者の言語を取得し、改善することが出来ます。
    現在、このページで{{UILANGCODE}} は「en」を返します。これは存在しないTemplate:UILANGCODEの赤字リンクか、あるいは現在もTemplate:LangSwitch他多くの自動翻訳されたテンプレートで使われる、{{int:lang}} ハックを含むそのテンプレートの移行の結果なのか、本来は {{UILANGCODE}} は MediaWiki 自体のネーティブの拡張機能であるべきです。
    LangSwitchに基づき自動翻訳されたテンプレートの多くは、簡単に新しい翻訳拡張機能を使用するように変更できます:LangSwitch呼び出しを既定の言語の翻訳タグと置き換え、LangSwitchの既存の翻訳を言語ごとの下位ページへ移動します 。 翻訳権限を持つ人が実行するボットは、この変換作業(既存の翻訳の転送を含む)を補完できます。(さもなければ「translate」タグを使用して準備したこれらのテンプレートは、翻訳対象に指定されるまで作動しません)。
  2. ステータステンプレートを理解するのに苦労したり間違えたりすることが多い翻訳者にとって、これで多くのことが単純化されます。現在、CentralNoticeの翻訳は管理サイドでさらに開発が必要です。Siebrand、Nikerabbit がこれについて話し合う予定です。ぜひフィードバックを寄せてください。
  3. 以前のシステムと比べると、誰が翻訳作業を行っているのかを明確にする以外は、何も変わっていません。以前は翻訳委員会のメンバー他、経験豊富なユーザー(通常はsysops)が管理しました。
  4. 以前のプロセスはごく少数のユーザーしか理解できなかったし、この方法を導入しても何も変わりません。新しいシステムはより円滑で文書化されており、役割とタスクが明確です。

関連項目