Help:Extension:Translate/翻訳対象ページの移動
Translate 拡張機能を使用して他の言語に翻訳された翻訳元ページを移動する場合、翻訳元ページと一緒に翻訳ページも移動する必要があります。 翻訳ページは、翻訳元ページの下位ページとして存在します。 例えば、FooBar という名前の翻訳元ページがあり、そのページがフランス語とスペイン語に翻訳されている場合、翻訳ページは FooBar/fr と FooBar/es に存在することになります。
翻訳された翻訳元ページを移動する過程は、通常のページと同じです。 その違いは、下位ページの移動方法にあります。
画像では、翻訳対象の翻訳元ページを移動しています。 ここで注意したい節がいくつかあります。
- 翻訳ページ - 翻訳原文が既にどの言語に訳出されたか示します。 これが移動対象です。
- 翻訳単位ページ - 翻訳対象ページにおいて、これらは個別に追跡される部分のうちもっとも小さな単位です。対象ページは段落ほどのサイズの翻訳単位に分割され、それぞれの単位はメッセージとなります。 これらもすべて移動の対象です。
- 翻訳対象に指定された下位ページ - これらはその他の翻訳対象の原文で、移動対象の翻訳原文の下位ページとして存在します。 これらはこの時点の移動処理ではいっしょに移動できないため、個別に移動するほかありません。
- その他の下位ページ - これは移動対象の翻訳対象の原文ページの下位にある通常の下位ページです。 これを移動するには、画面に表示された「すべての下位ページを移動する」Move all subpages のオプションを有効にします。
トークページがあるなら、それも移動。 トークページ付きのページには前置詞 (Has talk page トークページあり) が付きます。 サブページを翻訳対象に指定した場合と同様、トークページが翻訳対象なら必ず個別に移動します。
利用者が移動手順の初期設定を行うと、実際の移動作業はバックグラウンドのジョブとして実行されます。 「移動ジョブ」の状態はページ翻訳記録で追跡できます。
跡地にリダイレクトを残すには:チェックボックスで選択できるようにしてあり、翻訳単位のページ自体と翻訳ページ以外のすべては、特定のページを移動した跡地にリダイレクトを追加できます(対象は翻訳対象ページ、トークページ、標準語のサブページおよびそのトークページ)。
$wgTranslatePageMoveLimit
の設定により変更できます。 多数のページの移動には、moveTranslatableBundle.php
の使用が推奨されます。
多数のページを一括して移動
多数のページを一括して移動するには、UI を使ってページ移動を実行する場合に適用する ジョブ キュー がやや信頼性に欠けるため、スクリプト moveTranslatableBundle.php
の使用が推奨されます。
ページ移動のときスクリプトは必要に応じて検証し、移動対象を表示、その後、利用者の許可を得るまでページ移動を待機します。
スクリプトは以下のパラメーターを受け取ります:
current-page
必須
現在のページ名
new-page
必須
新しいページ名
user
必須
移動した利用者名
reason
省略可能
移動を実行した理由
skip-subpages
省略可能
下位ページ群を現在のページの下位に移動するのをスキップ
skip-talkpages
省略可能
作業中のページに付随する会話ページの移動を迂回
skip-redirect
省略可能
翻訳可能な文字列、サブページおよび関連の会話ページへのリダイレクトを迂回
使用例:
# Here "Main Page 60" is being renamed to "Main Page 70" by "Admin" php extensions/Translate/scripts/moveTranslatableBundle.php "Main Page 60" "Main Page 70" Admin --reason "Just an example" --skip-redirect
翻訳されたページのウィキ間での移動
場合によっては、翻訳対象ページやメッセージ群を異なるウィキ間で移動させる必要があることがあります。 これは複数の方法で行えます:
- メンテナンス スクリプトを使用
メンテナンス スクリプト
1 つのウィキから翻訳可能バンドルをエクスポートし、別のウィキにインポートするために使用できるスクリプトが 2 つあります。
エクスポート
翻訳可能バンドルをエクスポートするには、当該バンドルが存在するウィキ上でエクスポート用スクリプトを実行します。 これによりファイルが作成され、そのファイルを移動先ウィキでのインポートに使用できます。
$phpmaintenance/run.php./extensions/Translate/scripts/exportTranslatableBundle.php--translatable-bundle"Page to translate"--filename/var/www/html/w/translate-2023年05月22日.xml--include-talk-pages--include-subpages Exporting1page(s)oftypetranslatablebundle. Exporting5page(s)oftypetranslation. Exporting23page(s)oftypetranslationunit. Exporting1page(s)oftypetalkpages. Exporting0page(s)oftypetranslatabletalk. Exporting1page(s)oftypesubpage. Done!Exportedbundle'Translate-2023年05月22日'to'/var/www/html/w/translate-2023年05月22日.xml'.
スクリプトは以下のパラメーターを想定しています:
--translatable-bundle
– Name of the translatable page to export--filename
– Name and path to save the export file to--include-talk-pages
– (Optional) Include talk pages--include-subpages
– (Optional) Include subpages.
Importing
The file exported can then be imported into another wiki by running the import script:
phpmaintenance/run.php./extensions/Translate/scripts/importTranslatableBundle.phptranslate-2023年05月22日.xml--userAdmin--interwiki-prefix"1"--comment"Hello world" Completedimportoffile.Createdpage'Translate-2023年05月22日' Youcannowmarkthepage'Translate-2023年05月22日'fortranslation.
The script expects the following parameters:
Required? | Description | |
---|---|---|
Path | 必須 | Path to the exported XML file |
--user
|
必須 | Name of the user performing the import |
--interwiki-prefix
|
必須 | Prefix to apply to unknown (and possibly also known) usernames |
--assign-known-users
|
省略可能 | Whether to apply the prefix to usernames that exist locally |
--comment
|
省略可能 | Comment added to the log for the import. |
Limitation
- This only tags the translation, but does not mark the page for translation. That has to be done manually
- For translatable pages, metadata such as priority languages are not exported / imported. Please add them when marking the page for translation.