Locale::Po4a::Pod - PO ファイルと POD
データの変換
use Locale::Po4a::Pod;
my $parser = Locale::Po4a::Pod->new (sentence => 0, width => 78);
# Read POD from STDIN and write to STDOUT.
$parser->parse_from_filehandle;
# Read POD from file.pod and write to file.txt.
$parser->parse_from_file ('file.pod', 'file.txt');
Locale::Po4a::Pod は、POD
フォーマット (Perl
のドキュメント用に用意された言語)
のドキュメントを他の
[自然]
言語へ翻訳するのを助けるモジュールです。
このモジュールの状態¶
このモジュールは岩のように安定していると思いますが、
/usr/lib/perl5/Tk/MainWindow.pod
(とその他のページ。以下参照)
には、たったひとつ以下のような既知のバグがあります。
C<" #n">
残念ながら、po4a
のバージョンでは、折り返しにより空白で分割されてしまいました。その結果、オリジナルバージョンでは、man
に以下を含みますが、
" #n"
私のところでは以下を含みます。
"" #n""
このロジックにより
C<foobar> が "foobar"
に書き換えられてしまいます。
私のところで問題のあるページの完全なリストです
(564
ページから。折り返す桁の選択に依存することに注してください)。
/usr/lib/perl5/Tk/MainWindow.pod /usr/share/perl/5.8.0/overload.pod
/usr/share/perl/5.8.0/pod/perlapi.pod /usr/share/perl/5.8.0/pod/perldelta.pod
/usr/share/perl/5.8.0/pod/perlfaq5.pod /usr/share/perl/5.8.0/pod/perlpod.pod
/usr/share/perl/5.8.0/pod/perlre.pod /usr/share/perl/5.8.0/pod/perlretut.pod
内部構造¶
Pod::Parser
の派生クラスと同様に、Locale::Po4a::Pod
は同じメソッドとインターフェースをサポートしています。すべての詳細は
Pod::Parser
をご覧ください。簡単に言うと、"Locale::Po4a::Pod->new()"
で新しいパーサを作成し、
parse_from_filehandle() と
parse_from_file()
のどちらかを呼び出します。
new()
はキーと値の組の形のオプションを取り、パーサの振る舞いを制御できます。認識する以下のオプションは、Pod::Parser
のすべての派生クラスで共通です。
- alt
- 値を true
とすると、代替出力フォーマットを選択します。他にもありますが、異なる見出しのスタイルを用い、左マージンとコロンで
=item
エントリをマークします。デフォルトは
false です。
- code
- 値を true
とすると、入力ファイルの非
POD
部分を出力に含めます。POD
ブロックで説明されているコードを、コードが損なわれないままに
POD
をレンダリングして表示するのに便利です。
- indent
- 通常のテキストをインデントする空白の数で、=over
ブロックに対するデフォルトのインデントです。デフォルトは
4 です。
- loose
- 値を true
とすると、空行を
=head1
見出しの後に出力します。値を
false (デフォルト)
とすると、 =head2
の後には空行を出力しますが、
=head1
の後に空行を出力しません。マニュアルページが期待している形式であるため、これをデフォルトとしています。任意のテキストドキュメントを整形する場合、true
と設定すると、より満足する出力結果となるでしょう。
- quotes
- C<>
で囲んだテキストに使用する、引用符を設定します。値が
1
文字の場合、左右の引用符にその文字を使用します。2
文字の場合、1
文字目が左引用符とし、2
文字目を右引用符とします。4
文字の場合、最初の 2
文字を左引用符とし、続く
2
文字を右引用符とします。
ここには特殊な値 none
も設定できます。この場合、C<>
テキストのまわりに引用符を追加しません。
- sentence
- 値を true
とすると、Locale::Po4a::Pod
は各文が 2
つの空白で終わると仮定し、その空白を保持しようとします。値を
false
とすると、非逐語段落にある連続した空白すべてを、ひとつの空白に圧縮します。デフォルトは
true です。
- width
- 右端でテキストを折り返す文字数です。デフォルトは
76 です。
関連項目¶
Pod::Parser,
Locale::Po4a::Man(3pm),
Locale::Po4a::TransTractor(3pm),
po4a(7)
Denis Barbier <barbier@linuxfr.org>
Martin Quinson (mquinson#debian.org)
著作権・ライセンス¶
Copyright 2002 by SPI, inc.
本プログラムはフリーソフトウェアです。GPL
の条項に基づき再頒布と変更を行うことができます
(COPYING
ファイルをご覧ください)。