GNU gettext PO(ポータブル オブジェクト)

Libre ソフトウェア(自由ソフトウェア)の翻訳に最も広く使用されているフォーマット。

ファイルに保存されている付随情報は、ヘッダーを調整するか、対応する原文にリンクして対応します。

原文の変更の表示

Weblate は、PO ファイルに以前のソース文字列が存在する場合、それを抽出して、編集が必要な文字列の差異を表示できます。この機能を利用するには、msgmerge--previous オプション付きで実行し、生成された PO ファイルに以下のような行を含めることが必要です:

#, fuzzy
#| msgid "previous-untranslated-string"
msgid "untranslated-string"
msgstr "translated-string"

PO ファイル ヘッダー

PO ファイルのヘッダーは Weblate によって自動的に管理されます。オプションで、原文ミスの報告先アドレス および "Language-Team" ヘッダーの設定 を含めることができます。

ヘッダー コメントには、コメント内の貢献者情報 を使用して翻訳者を含むように更新することもできます。

行の折り返し

行折り返しは主に GNU gettext の動作に準拠しています。ただし、GNU gettext の折り返しアルゴリズムや、その基盤となる Unicode データは随時更新されるため、一部の特殊なケースでは違いが生じることがあります。

折り返し幅は po_line_wrap パラメーターで設定できます。参照: ファイル形式パラメータ

対応する MO ファイルの生成

MO ファイルを PO ファイルと一緒にリポジトリに保持している場合は、MO ファイルの生成 を使用して、MO ファイルを PO ファイルに合わせて最新の状態に保つことができます。

POT ファイルから PO ファイルを更新する

POT に合わせて PO ファイルを更新 (msgmerge) を使用すると、POT ファイルから PO ファイルを更新できます。参照: 翻訳対象の言語ファイルの更新

モノリンガルの gettext

一部のプロジェクトでは、gettext をモノリンガル形式として使用することを定めています。ソースコード内の ID のみをコード化し、文字列を英語を含むすべての言語に翻訳することが必要です。これには対応していますが、コンポーネントを Weblate にインポートするときは、このファイル形式を明示的に選択することが必要です。

ファイルの例

一般的なバイリンガルの gettext PO ファイル:

#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "Monday"
msgstr "Pondělí"

#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "Tuesday"
msgstr "Úterý"

#: weblate/accounts/avatar.py:163
msgctxt "No known user"
msgid "None"
msgstr "Žádný"

一般的なモノリンガルの gettext PO ファイル:

#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "day-monday"
msgstr "Pondělí"

#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "day-tuesday"
msgstr "Úterý"

#: weblate/accounts/avatar.py:163
msgid "none-user"
msgstr "Žádný"

一般的な基礎となる言語ファイル:

#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "day-monday"
msgstr "Monday"

#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "day-tuesday"
msgstr "Tuesday"

#: weblate/accounts/avatar.py:163
msgid "none-user"
msgstr "None"

Weblate の設定

バイリンガル gettext 用の、標準的な Weblate コンポーネント構成

ファイル マスク

po/*.po

モノリンガル用の、基礎となる言語ファイル

Empty(空)

新しい翻訳のテンプレート

po/messages.pot

ファイル形式

Gettext PO ファイル

モノリンガル gettext 用の、標準的な Weblate コンポーネント構成

ファイル マスク

po/*.po

モノリンガル用の、基礎となる言語ファイル

po/en.po

新しい翻訳のテンプレート

po/messages.pot

ファイル形式

gettext PO ファイル (モノリンガル)

ファイル形式パラメータ

po_* パターンを持つ ファイル形式パラメータ を使用すると、gettext 形式の動作を設定できます。