Help:Extension:Translate/オフライン翻訳

From mediawiki.org
This page is a translated version of the page Help:Extension:Translate/Off-line translation and the translation is 100% complete.

このページでは、オフラインで翻訳する方法を説明します。 この話題に関心があるなら、すでにGettext POファイルとは何か理解しているという前提で説明します。 ここでは翻訳拡張機能を用いるウィキで、それをどう使うか述べることにします。 この条件に当てはまらない場合は、むしろオンライン翻訳の「翻訳のしかた 」の解説を読んではどうでしょうか。

より一般的には、ウェブ接続がとても遅いまたは制限がある場合、あるいはオフラインツールがなくてはならない場合、ウェブインターフェースは使いたくないかもしれません。 ただ、翻訳拡張機能を使うなら、これは共同作業向けに設計してある点にご注意ください。 つまり特定のファイルをオフラインで長期に押さえるべきではなく、常に新しいファイルを翻訳を始める直前にダウンロードすべきであるということです。 さもなくば、そのウィキで作業する他の翻訳者と競合するかもしれません。

書き出し

どのメッセージも Gettext POファイル形式でダウンロードでき、手順はSpecial:Translateメニューの export for off-line translation (オフライン翻訳用に書き出し) を選びます。 サイトによっては、無効に設定してあるかもしれません。 作業に取り掛かる準備として、使用言語 (local) のガイドをチェック、書き出しの対応を確認してください。

またメッセージ群に書き出しのオプションがあっても、実際に書き出してみると翻訳 (translation) がネイティブな形式で渡され、それが Gettext 形式だった場合にはオフライン翻訳には使えません!

ファイルは標準の Gettext PO 形式で追加情報が付けてあります。 ヘッダには以下のフィールドが含まれ、メッセージ単位のmsgctxtには翻訳拡張機能に必要な識別子があります。 編集ソフトによっては、このヘッダに埋め込まれたコメントつまりこのコードmsgctxtの行を除去してしまうため、最初はご利用の編集ソフトやエディタをテストするために短いファイルで実行することをお勧めします—何百もの文を翻訳した後で、実はエディタのせいでオンラインシステムに翻訳を戻せないとわかったら目も当てられません! メッセージの説明文書は翻訳コメントとして書き出します。

ヘッダーの重要なフィールド:

"X-Language-Code: nl\n"
"X-Message-Group: ext-abc\n"

この例では、「ext-abc」がメッセージ群名です。 翻訳可能なページから書き出すと、メッセージ群の名前はそれぞれ「page-」 + ページ名となります(つまりページ名「Example」に対して、ヘッダに"X-Message-Group: page-Example\n"という行が含まれます)。

GetText .po ファイルのエントリの例を示します。ここでは、英語 (msgid の行) から日本語 (msgstr の行) に翻訳しています。

#. [Wiki] このテキストは履歴タブで使用されます。
#. [Wiki] 

msgctxt "history_short"
msgid "History"
msgstr "Versionsgeschichte"

msgctxt で始まる行に注目してください: 次の msgid の行で示されるメッセージの用途を簡単に説明しています。 このような msgctxt の行は省略可能ですが、お勧めします。 .po ファイルをインポートすると、この文脈テキストはウィキの翻訳 UI の利用者に見えるようになり、必要に応じて保持または更新される必要があります。


取り込み

ファイルを完全に翻訳する必要はありません。部分的に翻訳されたメッセージをアップロードして大丈夫です。 これらのファイルをインポートする方法は 2 つあります。

適切な権限を持つ利用者は、翻訳をアップロードしたり取り込むのに Special:ImportTranslations を使用できます。 この特別ページではファイルを処理して変更点を示し、利用者はそれらを取り込むことができます。 多くの変更点を含む大きなファイルの取り込みは、処理時間が限られているため複数の段階を経ることがあります。

インポートはコマンドライン スクリプト Translate/script/poimport.php を使うこともできます。これは柔軟性は低いのですが、一度にすべてをインポートできます。また、サーバーへのシェル アクセスができる必要があります。

オフライン翻訳をインポートできるかできないか、できる場合の仕様はご利用のwiki次第です。

Gettext エディター

オフラインでファイルを編集できるツールをいくつか示します。

POedit
すべてのプラットフォーム。使用条件はwxWidgets toolkitのサポート。GTK+ を積んだUnixおよびWindowsで試験済み。
警告 必ずバージョン1.4.2以上を使うこと。それ以下だと「msgctxt」の行が欠落してしまい、作業ができません。
gtranslator
使用条件はUnixとLinuxのデスクトップPCの GNOME 環境。
Lokalize
PC版のすべてのプラットフォーム。使用条件はKDE 4利用者ウィキ (user wiki) とオンラインのマニュアル (handbook) を提供。
Translate Toolkit
すべてのプラットフォーム。使用条件はプログラム言語python のインストール。複数のファイル形式に対応。
Virtaal
現状でWindows、Linuxに対応。上記のツールキットによるマルチ形式翻訳ツール。
OmegaT
すべてのプラットフォーム。使用条件はJavaのインストール。プロ翻訳者向けのフリーウェア。複数のファイル形式に対応、ファジーマッチング可、用語集と翻訳メモリをサポート。
Eazy PO
Windows。インストール不要で軽い。
Gorm PO file editor
Windows。インストール不要、小さいながらもパワフルなプログラム。バージョン1.0 では msgctxt タグでエラー発生。
Better PO Editor
ソースコード、Windows、BSD、Unix、Linux、Mac OS X。スペルチェック、Google 翻訳の訳例推薦機能。
gted
Linux、Windows、MAC OS X。Eclipse IDE のプラグイン、さまざまなツールを同梱。