
        *****************************************************
        *           GENERATED FILE, DO NOT EDIT             *
        * THIS IS NO SOURCE FILE, BUT RESULT OF COMPILATION *
        *****************************************************

This file was generated by po4a(7). Do not store it (in VCS, for example),
but store the PO file used as source file by po4a-translate.

In fact, consider this as a binary, and the PO file as a regular .c file:
If the PO get lost, keeping this translation up-to-date will be harder.

=encoding UTF-8

=head1 名前

po4a - PO ファイルと翻訳済みドキュメントの両方を一括更新

=head1 書式

B<po4a> [I<options>] I<config_file>

=head1 説明

po4a (PO for anything)
は従来のgettextツールを使った文書翻訳の保守作業を容易にします。po4aの主な特徴は内容の翻訳を文書構造から切り離すところにあります。このプロジェクトのやさしい導入についてはページL<po4a(7)>を参照してください。

実行すると
B<po4a>は設定ファイルで指定された全ての文書ファイルを解析します。（翻訳を含む）POファイルを更新して文書にあらゆる変更を反映し、元のマスター文書の構造に（POファイルで見付かった）内容の翻訳を注入することで翻訳文書を生成します。

最初、POファイルには、元の文書からの翻訳すべき文字列のみが含まれています。このファイル形式により、B<po4a>が抽出した各段落に対して、翻訳者が手作業で翻訳を与えることができます。翻訳後に文書が変更された場合、B<po4a>は対応する翻訳をPOファイル内で「fuzzy」として印を付け、翻訳者による手動のレビューを要求します。翻訳者はいわゆる「補遺」を与えることもできます。これは例えば、誰が翻訳を行ったか、どのように誤りを報告するかなどを記載した追加内容です。

 マスター文書 ---+---->-------->---------+
    （文書の執筆）   |                       |
                     V    （po4aの実行）     >-----+--> 翻訳された
                     |                       |     |    文書
  既存のPOファイル -->--> 更新済POファイル >-+     |
      ^                            |               |
      |                            V               |
      +----------<---------<-------+               ^
       （手作業の翻訳過程）                        |
                                                   |
     補遺 -->--------------------------------------+

B<po4a>の作業工程は、オープンソースプロジェクトに相応しい非同期型です。文書の執筆者は自分のペースでマスター文書を作成します。翻訳者はPOファイルの翻訳をレビューし、更新します。保守者は必要に応じてB<po4a>を再実行し、元文書への変更をPOファイルに反映し、最新の文書構造に最新の翻訳を注入することによって、更新された文書の翻訳を生成します。

既定では、翻訳文書はその内容の少なくとも80％が翻訳されたときに作成されます。翻訳されていないテキストは元の言語のまま残されます。そのため翻訳が完全でない場合、作成された文書には言語が混在することになります。80%
のしきい値は、後述の I<--keep>
オプションで変更することができます。ただし、100%でないと直ちに翻訳が無視されるのは、ほとんど利用者に見られないようになるため翻訳者の意欲をそぐかもしれませんし、一方であまりにも不完全な「翻訳」を表示するのはエンドユーザーが困ってしまうかもしれませんので、注意してください。

翻訳された文書ファイルをバージョン管理システムに保存するのは、自動生成されるもののためおそらく悪い考えでしょう。貴重なファイルはPOファイルであり、そこにこそ仲間の翻訳者達の苦労が詰まっているのです。また、S<weblate>などのオンラインプラットフォームで翻訳者と交流するのが楽だという人もいますが、これは当然ながら完全に任意です。

=head2 早分かり入門

B<foo> という名前のプログラムを保守していて、そのプログラムには英語（ほとんどのオープンソースプロジェクトでの橋渡しとなる言語ですが、
B<po4a> はどの言語からでも、またどの言語へでも使えます）で書かれた man ページ F<man/foo.1>
があるとしましょう。いつだったか、誰かが F<man/foo.de.1>
という名前のドイツ語の翻訳を提供したなり立ち消えになったことがありました。ここで問題になっているのは、たった今文書にすべての言語で修正しなければならないような重大な誤解を招く情報が含まれているというバグ報告を受けましたが、ドイツ語を話せないので、翻訳ではなく元の文書を修正するしかないということです。そして今、別の貢献者がこれまた修得していない言語である日本語への翻訳を提供したいと言っています。

文書の保守の悪夢を解決するために、文書をB<po4a>に変換する時が来ました。必要なときに文書を更新したい、仲間の翻訳者達の作業を楽にしたい、そして、利用者が古くて誤解を招くような文書を目にすることがないようにしたい、そう思っていますよね。

変換には2つの工程が含まれます。po4aインフラの立ち上げと、以前のドイツ語翻訳を引き揚げるための変換です。この後者の部分は、以下のようにS<po4a-gettextize>を使用して行われます。L<po4a-gettextize(1)>
のドキュメントに詳述されているように、この過程が完全に自動化されることは稀ですが、一度完了すればドイツ語翻訳を含む B<de.po> ファイルを
po4a の作業工程に統合することができます。

  po4a-gettextize --format man --master foo.1 --localized foo.de.1 --po de.po

それではpo4aを設定しましょう。適切なファイル配置を使うと設定ファイルはこのように単純になります。

 [po_directory] man/po4a/

 [type: man] man/foo.1 $lang:man/translated/foo.$lang.1

これは、すべての（翻訳者の作業内容を含む）PO ファイルが F<man/po4a/> ディレクトリにあり、マスターファイルは F<man/foo.1>
の 1
つだけであることを指定するものです。もし、複数のマスターファイルがあれば、2行目のような行がいくつもあることになります。このような行はそれぞれ、対応する翻訳ファイルをどこに書き込むかも指定します。ここでは、F<man/foo.1>
のドイツ語訳は F<man/translated/foo.de.1> にあります。

B<po4a>の設定を完了するために最後に必要なものは、新しい翻訳を開始するために使用されるべきテンプレート材料を含むPOTファイルです。指定されたS<po_directory>の中にに拡張子S<.pot>の空のファイルを作成するだけです（例：F<man/po4a/foo.pot>）。そしてB<po4a>はその中に期待される内容を詰め込みます。

この立ち上げでのファイルについておさらいすると次のようになります。

  ├── man/
  │   ├── foo.1        <- 英語で書かれた元のmanページ
  │   ├── po4a/
  │   │   ├── de.po    <- gettextizationによるドイツ語訳のPO
  │   │   └── foo.pot  <- 将来の翻訳に向けたPOTテンプレート（最初は空）
  │   └── translated/  <- 翻訳が作られるディレクトリ
  └── po4a.cfg         <-設定ファイル

一度立ち上げれば、B<po4a>を実行すると、文書を解析し、POTテンプレートファイルを更新し、それを使ってPO翻訳ファイルを更新し、それを使って文書の翻訳ファイルを更新します。すべて1つのコマンドで。

        po4a --verbose po4a.cfg

以上です。B<po4a>は完璧に構成されました。F<man/foo.1>の誤りを修正したら、ドイツ語翻訳の問題のある段落は、修正後の英語のテキストに置き換えられるでしょう。言語が混ざることは理想的ではありませんが、自分で理解が及ばない翻訳の誤りを取り除き、利用者に提示する内容が決して誤解を招くものにならないようにするためには、これが唯一の方法なのです。対応するPOファイル中のドイツ語の翻訳を更新するのも遥かに簡単なので、言語の混在は長くは続かないでしょう。最後に、新しく翻訳に貢献したい日本語の翻訳者が現れた場合は、翻訳者がS<foo.pot>を複製してS<ja.po>にファイルを変更し、翻訳を完成させます。このファイルを受け取ったらF<man/po4a/po/>の中に置くだけです。改めて
B<po4a> を実行すると、（充分に内容が翻訳されていれば）翻訳されたページが F<man/translated/foo.ja.1> として現れます。

=head1 オプション

=over 4

=item B<-k>, B<--keep>

生成するファイルを維持する（つまり書き出す）翻訳率の下限値（既定値：80）。言い換えると、既定では書き出されるために少なくとも 80％
は翻訳されディスク上に保存されていなければなりません。

=item B<-w>, B<--width>

結果のファイルで折り返す列です（既定は76）。形式で対応しているときに有効です。与えられた値が0以下なら、結果のファイルは全く折り返されません。その形式で折り返し直すと壊れてしまうときに便利です。

=item B<-h>, B<--help>

短いヘルプメッセージを表示します。

=item B<-M>, B<--master-charset>

翻訳文書を含むファイルで使われている文字セットです。すべてのマスター文書が、同じ文字セットを使用していなければならないことに注意してください。

=item B<-L>, B<--localized-charset>

ローカライズされた文書を含む、ファイルで使われている文字セット。翻訳されたすべての文書は同じ文字セットを使用することに注意してください。

=item B<-A>, B<--addendum-charset>

追加内容の文字セットです。追加内容では、すべて同じ文字セットを使用することに注意してください。

=item B<-V>, B<--version>

スクリプトのバージョンを表示して終了します。

=item B<-v>, B<--verbose>

プログラムの冗長度を上げます。

=item B<-q>, B<--quiet>

プログラムの冗長度を下げます。

=item B<-d>, B<--debug>

デバッグ情報を出力します。

=item B<-o>, B<--option>

書式プラグインに渡す追加オプションです。有効なオプションやその意味の詳細は、各プラグインの説明書を参照してください。例えば、AsciiDocパーサーには
'-o tablecells' を、テキストパーサーには '-o tabs=split' を渡すことができます。

=item B<-f>, B<--force>

生成の必要はないと B<po4a> が判断した場合でも、常に POT ファイルと PO ファイルを生成します。

デフォルトの動作 (B<--force> を指定しない場合) は以下のようになります:

=over

POT
ファイルが存在する場合、マスター文書や設定ファイルの方が新しければ（B<--no-update>が指定されている場合を除き）再生成を実行します。POT
ファイルもまた一時文書に書き出され、変更が本当に必要かどうか B<po4a> が検証を行います。

また、マスタードキュメント、PO
ファイル、追加内容のどれか、設定ファイルのいずれかが翻訳より新しい場合にのみ、翻訳を再生成します。しきい値に達しない翻訳を再生成しないように
(B<--keep> を参照)、F<.po4a-stamp> 拡張子を持つファイルを作成します (B<--stamp> を参照)。

=back

マスタードキュメントがファイルをインクルードする場合、インクルードするファイルの更新時刻は考慮されないため、B<--force>
フラグを使用するべきです。

PO ファイルは、常に POT を元に B<msgmerge -U> で再生成されます。

=item B<--stamp>

翻訳が閾値に到達せず生成されないとき、B<po4a>
にスタンプファイルを作成するように指示します。このスタンプファイルは翻訳済みドキュメントが期待する名前に F<.po4a-stamp>
拡張子をつけた名前となります。

注意: これは F<.po4a-stamp>
ファイルの作成を行うだけです。スタンプファイルは存在すれば使用され、B<--rm-translations>
を指定した場合や、最終的にファイルの翻訳が完了した場合に削除されます。

=item B<--no-translations>

翻訳済みドキュメントを生成せず、POT ファイルや PO ファイルの更新のみ行います。

=item B<--no-update>

POT、POのファイルは変更せず、翻訳のみを更新することができます。

=item B<--keep-translations>

翻訳が B<--keep> で指定された閾値を満たしていない場合でも、既存の翻訳ファイルを保持します。
このオプションでは、内容の乏しい新しい翻訳ファイルは作成されませんが、マスターファイルへの変更のために陳腐化した既存の翻訳が保存されます。

警告：このフラグは po4a
の動作をかなり大幅に変更します。というのは、翻訳が改善されるまで、あなたの翻訳したファイルはまったく更新されないからです。正確な未翻訳の文書より、古びた翻訳文書のほうを世に出したい場合にのみ、このフラグを使用してください。

=item B<--rm-translations>

翻訳済みファイルを削除します (B<--no-translations> を暗に意味します)。

=item B<--no-backups>

このフラグは 0.41 から何もしなくなりました。また今後のリリースで削除される可能性があります。

=item B<--rm-backups>

このフラグは 0.41 から何もしなくなりました。また今後のリリースで削除される可能性があります。

=item B<--translate-only> I<翻訳されたファイル>

指定したファイルに対する翻訳のみ行います。設定ファイル内にファイルがたくさん指定されている場合、処理の高速化に役立つことでしょう。このオプションは、PO
ファイルと POT ファイルの更新を行わないことに注意してください。このオプションは複数回指定できます。

=item B<--variable> I<var>B<=>I<value>

B<po4a> 設定ファイル内で展開する変数を定義します。現れるすべての I<$(var)> は、I<value>
に置換されます。このオプションは複数回使用できます。

=item B<--target-lang> I<言語>

指定された言語に対してのみ、POファイルを更新して翻訳文書を生成します。このオプションは複数回使えます。

=item B<--srcdir> I<ソースディレクトリ>

B<po4a> 設定ファイルで指定されたすべての入力文書に対する基底ディレクトリを指定します。

l<destdir>とl<srcdir>の両方が指定された場合、入力ファイルはl<destdir>、現在のディレクトリ、l<srcdir>の順番で探索します。出力ファイルは、指定されていればl<destdir>に、そうでなければ現在のディレクトリに書き出されます。

=item B<--destdir> I<対象ディレクトリ>

B<po4a>の設定ファイルで指定されたすべての出力文書の基底ディレクトリを設定します（前述のB<--srcdir>を参照）。

=back

=head2 POTヘッダーを変更するオプション

=over 4

=item B<--porefs> I<type>

参照形式を指定します。引数 I<type> は、いずれの参照も生成しない B<never> かファイルを指定するのみで行番号を指定しない B<file>
かカウンタを増加させることで行番号を置き換える B<counter> か完全な参照を含む B<full> のいずれかを指定できます（既定値：full）。

=item B<--wrap-po> B<no>|B<newlines>|I<number>（既定値：76）

poファイルの行の折り返し方法を指定します。これにより、適切に折り返されているがgitの競合につながる可能性のあるファイルか、もしくは自動的に処理しやすいものの人間にとっては読みにくいファイルかのいずれかを選択できます。

歴史的な理由から、gettextスイートは整形を理由にpoファイルを77行目で折り返すことで再整形します。このオプションはpo4aの振舞いを指定するものです。数値が指定された場合、po4aはこの行中の位置以降にある内容中の改行箇所でpoファイルを折り返します。B<newlines>が指定された場合、po4aは内容中の改行箇所でのみmsgidとmsgstrを分割します。B<no>が指定された場合、po4aはpoファイルをまったく折り返しません。参照コメントはpo4aが内部的に用いるgettextツールによって常に折り返されます。

このオプションは、msgidとmsgstrの行の折り返し方法、すなわちこれらの文字列の内容に改行を追加する方法には影響しないことに注意してください。

=item B<--master-language>

翻訳文書を含むソースファイルの言語。すべてのマスター文書が同じ言語を使用する必要があることに注意してください。

=item B<--msgid-bugs-address> I<Eメール@アドレス>

msgid のバグレポートを送るアドレスをセットします。デフォルトでは、生成した POT ファイルに Report-Msgid-Bugs-To
フィールドはありません。

=item B<--copyright-holder> I<文字列>

POT ヘッダの著作権者 (copyright holder) を設定します。既定値は "Free Software Foundation, Inc."
です。

=item B<--package-name> I<string>

POT ヘッダのパッケージ名をセットします。デフォルト値は "PACKAGE" です。

=item B<--package-version> I<string>

POT ヘッダのパッケージバージョンをセットします。デフォルト値は "VERSION" です。

=back

=head2 PO ファイルを変更するオプション

=over 4

=item B<--msgmerge-opt> I<オプション>

B<msgmerge>(1) 用の追加オプションです。

注意: B<$lang> は現在の言語へ展開されます。

=item B<--no-previous>

このオプションは、B<msgmerge> に渡すオプションから B<--previous>
を削除します。これは0.16より前のB<gettext>のサポートに不可欠なものです。

=item B<--previous>

このオプションは、B<msgmerge> に渡すオプションに B<--previous> を追加します。B<gettext> 0.16
以降が必要で、デフォルトで有効です。

=back

=head1 設定ファイル

po4a は引数として設定ファイルを必要とします。このファイルには、次の要素が含まれている必要があります。

=over

=item

POファイルのパスおよびプロジェクトに存在する言語のリスト、

=item

オプションとして、いくつかの大域オプションと、個々のマスターファイルを設定するためのテンプレートとして使用される、いわゆる設定エイリアス、

=item

翻訳する各マスターファイルとそれぞれに指定する引数の一覧。

=back

各行は角括弧で囲まれた命令とその後に続く引数で構成されています。 コメントは文字 '#'
で始まり行末まで続きます。行末をエスケープすることで複数行にわたる命令を書けます。

このページでは、いくつかの完全な例を紹介していますが、他の例はソース配布物のC<t/cfg>ディレクトリにあります。

=head2 POファイルとPOTファイルの探索

最も簡単な方法は、以下のようにPOTとPOのファイルへのパスを明示的に指定することです。

 [po4a_paths] man/po/project.pot de:man/po/de.po fr:man/po/fr.po

ここではまずPOTファイルへのパスを指定し、次にドイツ語とフランス語のPOファイルへのパスを指定しています。

同じ意味ですが、コピーアンドペーストでのミスを軽減するために、以下のように書くこともできます。

 [po4a_langs] fr de
 [po4a_paths] man/po/project.pot $lang:man/po/$lang.po

C<$lang> 構成要素は、与えられた言語一覧から自動的に展開されるため、新しい言語を追加する際のコピーアンドペーストでのミスの発生を軽減できます。

以下のように、翻訳プロジェクトを含むディレクトリへのパスを提供するだけで、同じ情報をさらに簡潔にすることができます。

 [po_directory] man/po/

与えられたディレクトリには、いくつかのPOファイルが含まれていなければなりません。それぞれのファイル名はF<XX.po>で、C<XX>はこのファイルで使用されている言語のISO
639-1形式にしたがったものです。また、ディレクトリには、C<.pot>という拡張子を持つPOTファイルが1つ含まれていなければなりません。初回実行時には、このファイルは中身が空でも構いませんが、必ず存在しなければなりません（po4aは拡張子の前の部分を推測することはできません）。

C<po_directory> と C<po4a_paths>
のどちらか一方だけを選択する必要があることに注意してください。前者（C<po_directory>）は、より簡素で、コピー＆ペーストエラーの危険を低減しますが、規定通りのプロジェクト構造とファイル名を使用する必要があります。後者(C<po4a_paths>)はより明示的で、おそらくより読みやすいので、最初にpo4aでプロジェクトを立ち上げるときはこちらをお勧めします。

=head3 POファイルは一元化すべきか、もしくは分割すべきか？

既定では、po4aは翻訳プロジェクトの全内容を含む、対象言語ごとに1つのPOファイルを生成します。プロジェクトが大きくなると、これらのファイルの大きさが問題になることがあります。Weblateを使用する場合、各翻訳区分（つまりmsgid）に優先順位を指定し、重要なものから順に翻訳することが可能です。それでも、翻訳チームは内容をいくつかのファイルに分割することを好むことがあります。

マスターファイルごとに1つのPOファイルがあるようにするには、以下のように、C<[po4a_paths]> 行でPOファイルの名前に文字列
C<$master> を使うだけです。

 [po4a_paths] doc/$master/$master.pot $lang:doc/$master/$lang.po

この行によってpo4aは翻訳する文書ごとにそれぞれPOTファイルとPOファイルを作成します。例えば3つの文書と5つの言語がある場合、3つのPOTファイルと15のPOファイルになります。これらのファイルは
C<po4a_paths> テンプレートで指定された名前になり、 C<$master>
は翻訳するそれぞれの文書の基幹名に置き換えられます。名前が衝突した場合はPOTファイルで以下のように C<pot=> 引数を使って指定できます。

この機能は、複数の翻訳ファイルを同じ POT
ファイルにまとめることにも使用できます。次の例では、2つのPOTファイルだけが生成されます。F<l10n/po/foo.pot>（F<foo/gui.xml>由来の翻訳材料を含む）と
F<l10n/po/bar.pot>（F<bar/gui.xml> と F<bar/cli.xml> の両方の翻訳材料を含む）です。

 [po4a_langs] de fr ja
 [po4a_paths] l10n/po/$master.pot $lang:l10n/po/$master.$lang.po
 [type: xml] foo/gui.xml $lang:foo/gui.$lang.xml pot=foo
 [type: xml] bar/gui.xml $lang:bar/gui.$lang.xml pot=bar
 [type: xml] bar/cli.xml $lang:bar/cli.$lang.xml pot=bar

分割モードでは、B<po4a> は PO の更新中に一時的な大枠を構築し、すべての PO
ファイル間で翻訳を共有します。2つのPOファイルが同じ文字列に対して異なる翻訳を持つ場合、B<po4a>はこの文字列をファジーとして印を付け、この文字列を含むすべてのPOファイルにおいて両方の翻訳を提示します。翻訳者によってファジーが解除されると、その翻訳がすべての
PO ファイルで自動的に使用されます。

=head2 翻訳するドキュメントの指定

また、翻訳すべき文書を一覧にする必要があります。それぞれのマスター文書について、使用する形式の構文解析器、翻訳された文書が生成される場所、そして任意で追加の構成を指定しなければいけません。ファイル名に空白が含まれている場合は引用符で囲むかエスケープしてください。以下に一例を示します。

 [type: sgml] "doc/my stuff.sgml"  "fr:doc/fr/mon truc.sgml"  de:doc/de/mein\ kram.sgml
 [type: man] script fr:doc/fr/script.1 de:doc/de/script.1
 [type: docbook] doc/script.xml fr:doc/fr/script.xml \
             de:doc/de/script.xml

しかし繰り返しになりますが、これらの複雑な行は読んだり変更したりするのが難しいです。例えば新しい言語を追加するときなどです。そこで C<$lang>
テンプレートを使って以下のようにまとめ直すとより簡素になります。

 [type: sgml]    doc/my_stuff.sgml $lang:doc/$lang/my_stuff.sgml
 [type: man]     script.1          $lang:po/$lang/script.1
 [type: docbook] doc/script.xml    $lang:doc/$lang/script.xml

=head2 オプションの指定

オプションには2種類あります。I<po4aオプション>はpo4aコマンドラインオプションの既定値であり、I<形式オプション>は形式の構文解析器の動作を変更するために使用されます。I<po4a
オプション> として、例えば、B<--keep> コマンドラインパラメータの既定値を 80% ではなく 50%
にすることを設定ファイルに指定することができます。I<形式オプション>は各構文解析モジュールの個別のページ、例えばL<Locale::Po4a::Xml(3pm)>に記載されています。例えば、B<nostrip>をXMLパーサーに渡すと、抽出された文字列の周りのスペースを取り除かないようにすることができます。

これらのオプションは特定のマスターファイルに対して、あるいはそのファイルの特定の翻訳に対して、C<opt:> と C<opt_XX:> を使って
C<XX>
言語に渡すことができます。次の例では、B<nostrip>オプションが（すべての言語に対して）XML構文解析器に渡される一方で、フランス語翻訳に対しては閾値が0％に減じられています（したがって、翻訳は常に維持されます）。

 [type:xml] toto.xml $lang:toto.$lang.xml opt:"-o nostrip" opt_fr:"--keep 0"

いずれにせよ、これらの設定の各区切りは行末に配置しなければなりません。ファイルの宣言が最初に来て、次に補遺があればそれを（後述）、そしてオプションだけが来るようにしなければなりません。設定の各区切りの集合化は、内部的には文字列として連結されるためあまり重要ではありません。以下の例はすべて等価です。

  [type:xml] toto.xml $lang:toto.$lang.xml opt:"--keep 20" opt:"-o nostrip" opt_fr:"--keep 0"
  [type:xml] toto.xml $lang:toto.$lang.xml opt:"--keep 20 -o nostrip" opt_fr:"--keep 0"
  [type:xml] toto.xml $lang:toto.$lang.xml opt:--keep opt:20 opt:-o opt:nostrip opt_fr:--keep opt_fr:0

言語固有のオプションは、POT ファイルを構築するときには使用されないことに注意してください。例えば、フランス語の翻訳を構築するときだけ構文解析器に
B<nostrip> を渡すことは不可能です。なぜなら、同じ POT
ファイルがすべての言語を更新するために使われるからです。したがって言語固有のオプションは、C<--keep>オプションのように、翻訳を作成するときに使用されるものだけです。

=head3 設定ファイルのエイリアス

同じオプションを複数のファイルに渡すには、次のように型の別名を定義するのが一番です。次の例では、C<--keep 0> がC<man>
型の拡張であるこの C<test> 型を使用するすべてのイタリア語翻訳に渡されています。

  [po4a_alias:test] man opt_it:"--keep 0"
  [type: test] man/page.1 $lang:man/$lang/page.1

また、以下のように既存の型を拡張し、別名に同じ名前を再利用することも可能です。これは、誤った再帰的定義として解釈されることはありません。

  [po4a_alias:man] man opt_it:"--keep 0"
  [type: man] man/page.1 $lang:man/$lang/page.1

=head3 大域的な既定のオプション

また、C<[options]>行を使用し、ファイルの種類に関係なく、すべてのファイルに対して使用しなければならないオプションを定義することができます。

  [options] --keep 20 --option nostrip

コマンドラインオプションと同様に、設定ファイルに渡される引数を略すことができます。

  [options] -k 20 -o nostrip

=head3 オプションの優先順位

各ソースのオプションを連結し、既定値をより具体的なオプションで簡単に上書きできるようになっています。その順序は以下の通りです。

=over

=item

C<[options]>行は、他のソースで上書き可能な既定値を提供します。

=item

種類の別名が使用されます。言語固有の設定は、すべての言語に適用される設定より優先されます。

=item

特定のマスターファイルに固有の設定は、既定の設定と種類の別名に由来する設定の両方を上書きします。この場合、言語固有の設定は大域的な設定より優先されます。

=item

最後に、B<po4a>コマンドラインで提供される引数は、設定ファイルの設定を上書きします。

=back

=head3 例

ここでは、空白と引用符の使い分けを示す例を示します。

 [po_directory] man/po/
 
 [options] --master-charset UTF-8
 
 [po4a_alias:man] man opt:"-o \"mdoc=NAME,SEE ALSO\""
 [type:man] t-05-config/test02_man.1 $lang:tmp/test02_man.$lang.1 \
            opt:"-k 75" opt_it:"-L UTF-8" opt_fr:--verbose

=head2 補遺：翻訳に追記する

もし、翻訳者の著作情報を加えるなど、翻訳に追加の節を追加したい場合は、マスターファイルで定まる行に補遺ファイルを定義する必要があります。補遺ファイルの構文についてより詳しくは、L<po4a(7)>
ページを参照してください。

 [type: pod] script fr:doc/fr/script.1 \
             add_fr:doc/l10n/script.fr.add

また、以下のように言語テンプレートを使用することも可能です。

 [type: pod] script $lang:doc/$lang/script.1 \
             add_$lang:doc/l10n/script.$lang.add

補遺の適用に失敗したら、その翻訳は無視されます。

=head3 補遺の宣言用の修飾子

補遺修飾子は、すべての言語では補遺を提供していない場合や、補遺の一覧がある言語と別の言語とで変わってくる場合に、構成ファイルを単純化できます。修飾子は、ファイル名の前にある単一の文字です。

=over 2

=item B<?>

ファイルが存在する場合 I<addendum_path> を含めます。なければ何もしません。

=item B<@>

I<addendum_path> は通常の追加内容ファイルではなく、追加内容ファイルのリスト (1 行 1 ファイル)
です。各追加内容ファイルの前に修飾子を追加できます。

=item B<!>

I<addendum_path> は読み込まれません。また、その他の追加内容で読み込まれるように指定してあっても読み込まれません。

=back

以下では存在する場合にのみいかなる言語においても補遺を含みます。補遺が存在しない場合、エラーは報告されません。

 [type: pod] script $lang:doc/$lang/script.1  add_$lang:?doc/l10n/script.$lang.add

以下には各言語向けの補遺の一覧が含まれます。

 [type: pod] script $lang:doc/$lang/script.1  add_$lang:@doc/l10n/script.$lang.add

=head2 翻訳する文字列の選別

時には、翻訳過程でいくつかの文字列を隠したいことがあります。そのために、マスターファイルにC<pot_in>引数を与えて、POTファイルを構築するときに本当のマスターの代わりに使用するファイルの名前を指定することができます。以下はその例です。

  [type:docbook] book.xml          \
          pot_in:book-filtered.xml \
          $lang:book.$lang.xml

この設定により、翻訳される文字列はF<book-filtered.xml>（B<po4a>を呼び出す前に生成されなければなりません）から抽出され、翻訳ファイルはF<book.xml>から構築されることになります。その結果、F<book.xml>
には含まれるが F<book-filtered.xml> には含まれない文字列は PO
ファイルに含まれず、翻訳者が翻訳を提供することができなくなります。そのため、これらの文字列は翻訳文書を作成する際に変更されずに残されることになります。これは当然ながら翻訳水準を低下させるので、とにかく文書を確実に作成するためにC<--keep>オプションが必要になるかもしれません。

=head1 関連項目

L<po4a-gettextize(1)>、L<po4a(7)>。

=head1 著者

 Denis Barbier <barbier@linuxfr.org>
 Nicolas François <nicolas.francois@centraliens.net>
 Martin Quinson (mquinson#debian.org)


=head1 訳者

 倉澤 望 <nabetaro@debian.or.jp>
 Debian JP Documentation ML <debian-doc@debian.or.jp>

=head1 著作権とライセンス

Copyright 2002-2023 by SPI, inc.

本プログラムは自由ソフトウェアです。GPL v2.0以降の条項に基づき再頒布と変更を行えます（COPYINGファイルを参照）。
