.PO

PO ファイル

GNU gettext Portable Object (translation source catalog)
質問する
クイック回答

PO ファイルは GNU gettext Portable Object 翻訳カタログです。これは、WordPress テーマ、PHP アプリ、Linux プログラムなどのソフトウェアをローカライズするために使用される、原文の文字列 (msgid) とその翻訳 (msgstr) のプレーンテキスト形式のリストです。Poedit や任意のテキストエディタで開いて編集できます。編集後は、プログラムが翻訳を読み込めるように、msgfmt を使用して .mo ファイルにコンパイルする(または Poedit で保存すると自動的に行われます)必要があります。

開発元: GNU Project / Free Software Foundation (GNU gettext) カテゴリ: 開発用ファイル オープンスタンダード MIME: text/x-gettext-translation
対応OS Windows macOS Linux Web
関連: .DO · .MD · .HEX · .XSD

このページの内容

19k+ 個の拡張子を索引済み
最終確認日:Aug 11, 2026

ファイルの種類がわかりませんか?

ファイルを識別ツールにドロップしてください。最初の数バイトを読み取って形式を特定します。

ファイルを識別する

PO ファイル形式とは?

.po ファイルは GNU gettext Portable Object ファイルであり、ソフトウェア翻訳のための人間が編集可能なソース形式です。この形式は、GNU/Linux ユーティリティ、PHP アプリケーション、Python パッケージ、WordPress のテーマやプラグイン、その他多くのオープンソースアプリケーションなど、非常に幅広いプロジェクトで使用されています。

.po ファイルは、ペアになったエントリとして構成されたプレーンな UTF-8 テキストです。msgid(元のソース言語の文字列)と msgstr(対応する翻訳)で構成されます。# で始まるコメント行には、翻訳者のメモ、抽出されたソースコードのコメント、ファイル参照、および «fuzzy» フラグが含まれます。複数形を持つエントリは、ファイルヘッダーの Plural-Forms 式によって制御される msgid_plural とインデックス付きの msgstr[n] バリアントを使用します。

翻訳ワークフローは 3 つのファイルタイプに従います。開発者が翻訳可能な文字列を .pot テンプレートに抽出し、翻訳者がそれをロケールごとにコピーして msgstr の値を入力し、最後に msgfmt が各 .po をアプリケーションが実行時に読み込むバイナリ .mo ファイルにコンパイルします。.mo はマシン読み取り専用です。コンパイルされた出力ではなく、常に .po を編集します。

.po ファイルはプレーンテキストエディタで編集できますが、Poedit のような専用ツールを使用すると、エラーチェック、あいまい一致(fuzzy-match)の提案、複数形ヘルパーなどが提供されます。Weblate のようなウェブプラットフォームは共同翻訳をサポートしています。この形式は、1995 年に GNU gettext が導入されて以来、安定しており後方互換性があります。

セキュリティと安全性

リスク: LOW

.po ファイルには翻訳テキストとコメントのみが含まれており、実行可能コードはないため、ファイル自体は無害です。唯一の実際的な注意点として、テーマやプラグインに配置された悪意のある翻訳ファイルが、誤解を招くインターフェーステキスト(改ざんされたリンクや指示など)を注入する可能性があります。そのため、言語ファイルは公式のテーマ/プラグインまたは翻訳ソースからのみ使用し、出所不明の «翻訳» ダウンロードは避けてください。

形式の詳細

概要
正式名称GNU gettext Portable Object (translation source catalog)別名 Portable Object file, gettext PO file
開発元GNU Project / Free Software Foundation (GNU gettext)登場時期 1995 (GNU gettext)
MIME タイプtext/x-gettext-translation
タイププレーンテキスト翻訳カタログ (msgid/msgstr ペア)
標準規格オープン・ロイヤリティフリー
この拡張子は以下でも使用されています…
  • Disk image / partition image (rare) - The DB legacy name 'Disk image file' reflects a rare/incorrect labeling; .po is not a standard disk-image extension.

PO ファイルを開くプログラム

Windows3 apps
Poedit フリーミアム «ファイル» > «.po を開く» からグリッド内のエントリを翻訳して保存します。Poedit は対応する .mo を自動的に書き出します。
GNU gettext (msgfmt / msgmerge) オープンソース 任意のテキストエディタで .po を編集し、«msgfmt file.po -o file.mo» でコンパイルするか、«msgmerge» で新しい .pot に合わせて更新します。
Visual Studio Code / Notepad++ 無料 テキストとして開きます。gettext/PO 拡張機能を使用すると、シンタックスハイライトが利用でき、素早い編集に便利です。
macOS2 apps
Poedit フリーミアム «ファイル» > «.po を開く» からグリッド内のエントリを翻訳して保存します。Poedit は対応する .mo を自動的に書き出します。
GNU gettext (Homebrew) オープンソース «brew install gettext» を実行後、.po を編集して «msgfmt file.po -o file.mo» を実行します。
Linux3 apps
GNU gettext オープンソース ほとんどのディストリビューションにプリインストールされています。.po を編集し、«msgfmt» でコンパイル、«msgmerge» で更新します。
Poedit フリーミアム «ファイル» > «.po を開く» からグリッド内のエントリを翻訳して保存します。Poedit は対応する .mo を自動的に書き出します。
Gtranslator / Lokalize オープンソース GNOME (Gtranslator) および KDE (Lokalize) の PO エディタです。.po を開いて翻訳します。
Web1 app
Weblate オープンソース gettext .po をインポート/エクスポートするウェブ翻訳プラットフォームです。ブラウザで翻訳してカタログをダウンロードできます。

技術的詳細

詳細仕様
フォーマットタイププレーンテキスト、行指向 (GNU gettext PO 構文)
エンコーディングUTF-8 (ヘッダーの Content-Type フィールドで宣言); 古いカタログでは ISO-8859-x エンコーディングが使用される場合があります
MIME タイプtext/x-gettext-translation
エントリ構造msgid / msgstr のペア。同一のソース文字列を文脈で区別するためのオプションの msgctxt
ヘッダーエントリ最初のエントリは空の msgid を持ち、その msgstr ブロックには Project-Id-Version、Content-Type、Plural-Forms、その他のカタログメタデータが含まれます
複数形msgid_plural と、インデックス付きの msgstr[0], msgstr[1], ... バリアント。Plural-Forms ヘッダー式が、特定のカウントに対してどの形式を適用するかを制御します
コメントの種類# (翻訳者コメント), #. (抽出されたソースコメント), #: (ソースファイル参照), #, (fuzzy や c-format などのフラグ)
Fuzzy フラグ#, fuzzy は、ソース文字列の変更後にレビューが必要な翻訳をマークします。msgfmt はコンパイルされた .mo 出力から fuzzy エントリを除外します
コンパイル済み出力msgfmt によってバイナリの .mo (Machine Object) に変換されます。実行中のアプリケーションは gettext() を介してこの .mo を読み込みます
テンプレートファイル.pot (Portable Object Template) - 未翻訳のスケルトン。すべての言語の .po ファイルは、msginit または msgmerge を介してここから派生します
一般的なファイルサイズ5 KB - 5 MB。プロジェクト内の翻訳可能な文字列の数に比例します
ツールチェーンxgettext (ソースから文字列を抽出), msginit (新しい .po を作成), msgmerge (既存の .po を更新), msgfmt (.mo にコンパイル)
プラットフォームすべて - Linux, macOS, Windows, BSD。GNU gettext または互換性のある libintl 実装が利用可能な場所ならどこでも
エコシステムWordPress, Drupal, GNOME, KDE, Python gettext, PHP gettext、およびその他多くの国際化 (i18n) フレームワークで使用されています
リリース日1995 (GNU gettext)
最新バージョンPO file syntax is stable; defined in the current GNU gettext manual
オープンスタンダードはい · ロイヤリティフリー
仕様書www.gnu.org

PO の変換

コミュニティ Q&A

ユーザーからの質問
質問する
PO ファイルを扱うユーザーからヘルプを得られます。OSやソフトウェアのバージョンなど、具体的に記載してください。
アカウント不要 ・ 通常1日以内に回答されます

まだ質問はありません。PO ファイルについて最初の質問をしてみましょう。

よくある質問

.po ファイルとは何ですか?
GNU gettext Portable Object の略で、原文の文字列 (msgid) と翻訳 (msgstr) をペアにしたプレーンテキストの翻訳カタログです。バイナリの .mo にコンパイルされる編集可能なソースであり、WordPress、PHP、Python、Linux アプリで非常に一般的です。
.po ファイルを開いて編集するにはどうすればよいですか?
Poedit(Windows/Mac/Linux で標準的な無料の GUI エディタ)または任意のテキスト/コードエディタで開きます。編集後、«msgfmt» で .mo にコンパイルします。Poedit を使用している場合は、保存時に自動的に行われます。
.po、.pot、.mo の違いは何ですか?
.pot は未翻訳のテンプレート、.po は作業を行う人間が編集可能な翻訳済みカタログ、.mo はプログラムが実際に読み込むコンパイルされたバイナリです。.po を翻訳し、そこから .mo を生成します。
.po を編集しましたが、アプリの翻訳が変わりません。なぜですか?
プログラムは .po ではなく、コンパイルされた .mo を読み込みます。«msgfmt file.po -o file.mo» で再コンパイルするか、Poedit で保存してください。また、ファイル名がロケール(例:plugin-fr_FR.po)と一致し、正しい /languages フォルダにあるか確認してください。
WordPress のプラグインやテーマを翻訳するにはどうすればよいですか?
プラグインの .pot テンプレートをコピーし、Poedit で開き、言語を選択して文字列を翻訳し、«plugin-ja.po» などの名前で保存します。Poedit は WordPress が使用できるように、対応する .mo を /languages フォルダに書き出します。
.po ファイルを Excel で開けますか?
直接は開けません。スプレッドシートではなく gettext 構文だからです。Translate Toolkit の po2csv を使用して Excel で開ける CSV に変換し、その後 csv2po で元に戻すことができます。

参考文献

1GNU gettext manual - The Format of PO Fileswww.gnu.org
2GNU gettext - official sitewww.gnu.org

さらに探索

データベース全体から

今週のトップ拡張子

1.AQQAQQ Instant Messenger File
2.CRDOWNLOADChrome Partial Download File
3.PARTPartial Download File
4.DATProgram Data File (generic)
5.BINCD/DVD Disc Image (BIN/CUE)
6.EXEWindows Executable (Portable Executable)
7.RPMSGRestricted Permission Message
8.NOMEDIAAndroid No-Media Marker File
9.MDMarkdown Document
10.TXTPlain Text File

関連する拡張子

.DOStata Do-File
.MDMarkdown Document
.HEXIntel HEX File
.XSDXML Schema Definition
.MAPSource Map (JavaScript / CSS)
.CONFIGConfiguration File

無料ファイルツール

ブラウザで動作するファイル識別および画像変換ツール。すべてお使いのデバイス上で実行されます。

ツールボックスを開く

ファイル拡張子を A-Z で閲覧