argra****@users*****
argra****@users*****
2008年 6月 30日 (月) 04:09:58 JST
Index: docs/perl/5.10.0/perlapio.pod diff -u docs/perl/5.10.0/perlapio.pod:1.2 docs/perl/5.10.0/perlapio.pod:1.3 --- docs/perl/5.10.0/perlapio.pod:1.2 Sat Jun 21 17:46:23 2008 +++ docs/perl/5.10.0/perlapio.pod Mon Jun 30 04:09:58 2008 @@ -211,8 +211,8 @@ =end original -Because "perlio.h" is a thin layer (for efficiency) the semantics of -these functions are somewhat dependent on the underlying implementation. +"perlio.h" は(効率のために)薄い層なので、これらの関数の意味は基礎となる +実装に若干依存しています。 Where these variations are understood they are noted below. (TBT) @@ -223,9 +223,8 @@ =end original -Unless otherwise noted, functions return 0 on success, or a negative -value (usually C<EOF> which is usually -1) and set C<errno> on error. -(TBT) +特に注意がなければ、関数は成功時に 0 を返し、エラー時には負数(普通は +-1 の値を持つ C<EOF>)を返して C<errno> をセットします。 =over 4 @@ -276,9 +275,9 @@ =end original -While this currently exists in all three implementations perl itself -does not use it. I<As perl does not use it, it is not well tested.> -(TBT) +これは現在のところ 3 つ全ての実装に存在していますが、perl 自身はこれを +使っていません。 +I<perl が使っていないので、十分にテストされていません。> =begin original @@ -630,11 +629,9 @@ 値を返しません。 何が「行」を構成するかは実装依存ですが、普通は "\n" を書くとバッファを フラッシュします。 -What happens with things like -"this\nthat" is uncertain. +"this\nthat" のようなものに対して何が起こるかは不明確です。 (Perl core は "dumping" が $| の自動フラッシュに 関係していない I<ときにのみ> これを使います)。 -(TBT) =back @@ -677,10 +674,9 @@ =end original あらゆる perl ヘッダファイルをインクルードする I<前> に行います。 -(This will probably become -the default at some point). That prevents "perlio.h" from attempting -to #define stdio functions onto PerlIO functions. -(TBT) +(これはおそらくある時点でデフォルトになります。) +これにより "perlio.h" が stdio を PerlIO 関数に #define しようとするのを +妨げます。 =begin original @@ -731,9 +727,8 @@ =end original -Once called the FILE * should I<ONLY> be closed by calling -C<PerlIO_close()> on the returned PerlIO *. -(TBT) +一度呼び出されると、この FILE * は返された PerlIO * で C<PerlIO_close()> を +呼び出すことによって I<のみ> クローズされるべきです。 =begin original @@ -742,9 +737,8 @@ =end original -The PerlIO is set to textmode. Use PerlIO_binmode if this is -not the desired mode. -(TBT) +PerlIO はテキストモードにセットされます。 +これが希望しているモードでない場合は、PerlIO_binmode を使います。 =begin original @@ -769,11 +763,9 @@ PerlIO * を取り、ANSI C の I<stdio.h> と共にコンパイルされ、リンクされる ことが想定されるコードに渡すのに適した‘ネイティブ’な FILE * 構造体を 作成します。 -The mode -argument should be a string as would be passed to fopen/PerlIO_open. -If it is NULL then - for legacy support - the FILE * is opened in same -mode as the PerlIO *. -(TBT) +mode 引数は fopen/PerlIO_open に渡される文字列です。 +これが NULL の場合は - レガシー対応のために - FILE * は PerlIO * と同じ +モードでオープンします。 =begin original @@ -802,9 +794,8 @@ =end original -Calling this function repeatedly will create a FILE * on each call -(and will push an :stdio layer each time as well). -(TBT) +この関数を複数回呼び出すと、呼び出し毎に FILE * を作成します(そして +毎回 :stdio 層にプッシュします)。 =item B<PerlIO_releaseFILE(p,f)> @@ -828,9 +819,8 @@ =end original -Use this to disassociate a file from a PerlIO * that was associated -using PerlIO_exportFILE(). -(TBT) +PerlIO_exportFILE() を使って PerlIO * に結び付けられたファイルを +分離するためにこれを使います。 =item B<PerlIO_findFILE(f)> Index: docs/perl/5.10.0/perlsec.pod diff -u docs/perl/5.10.0/perlsec.pod:1.2 docs/perl/5.10.0/perlsec.pod:1.3 --- docs/perl/5.10.0/perlsec.pod:1.2 Sat Jun 21 17:46:23 2008 +++ docs/perl/5.10.0/perlsec.pod Mon Jun 30 04:09:58 2008 @@ -154,8 +154,10 @@ は汚染性がチェックされません。 This requires extra carefulness -unless you want external data to affect your control flow. Unless -you carefully limit what these symbolic values are, people are able +unless you want external data to affect your control flow. +これらのシンボリックな値が何かを注意深く制限しないと、POSIX::system のような +あなたの Perl コードの +people are able to call functions B<outside> your Perl code, such as POSIX::system, in which case they are able to run arbitrary external code. (TBT) @@ -592,10 +594,8 @@ =end original -The benefit of using C<-Mlib=/foo> over C<-I/foo>, is that the former -will automagically remove any duplicated directories, while the later -will not. -(TBT) +C<-I/foo> ではなく C<-Mlib=/foo> を使う利点は、後者だけが自動的に重複した +ディレクトリを自動的に除去することです。 =begin original Index: docs/perl/5.10.0/perluniintro.pod diff -u docs/perl/5.10.0/perluniintro.pod:1.3 docs/perl/5.10.0/perluniintro.pod:1.4 --- docs/perl/5.10.0/perluniintro.pod:1.3 Thu Jun 12 04:59:15 2008 +++ docs/perl/5.10.0/perluniintro.pod Mon Jun 30 04:09:58 2008 @@ -417,13 +417,12 @@ Perlのユーザは普通は、Perl がその内部文字列をたまたま、どのように エンコードするかを、知る必要も、気にする必要もありませんが、Unicode 文字列を -PerlIO 層なしにストリームに出力しようとすると、 -関係するようになります -- one with the "default" encoding。 +PerlIO 層なしに -- 「デフォルトの」エンコーディングで -- ストリームに +出力しようとすると、関係するようになります。 このようなケースでは、内部的に使われている生のバイト列(それぞれの 文字列の必要に応じて、ネイティブの文字セットか、UTF-8)が使われます。 それらの文字列に、0x00FF を超える文字があれば、"Wide character" の警告が 出されます。 -(TBT) =begin original @@ -527,11 +526,9 @@ =end original Perl 5.8.0 は、EBCDIC プラットフォームでもまた、Unicode をサポートします。 -There, -Unicode support is somewhat more complex to implement since -additional conversions are needed at every step. +ここでは、各ステップで追加の変換が必要になるので、Unicode サポートは +実装が若干より複雑になります。 いくつかの問題が残っています; 詳しくは L<perlebcdic> を参照してください。 -(TBT) =begin original @@ -544,8 +541,8 @@ =end original -ともかく、EBCDIC プラットフォームでの Unicode 対応は、EBCDIC プラットフォームでは -うまく動かなかった 5.6 シリーズよりは改善しえいます。 +ともかく、EBCDIC プラットフォームでの Unicode 対応は、EBCDIC +プラットフォームではうまく動かなかった 5.6 シリーズよりは改善しています。 EBCDIC プラットフォームでは、内部 Unicode エンコーディング形式は UTF-8 ではなく UTF-EBCDIC です。 この違いは、ASCII 文字はそのまま UTF-8 にエンコードされるという点において @@ -1199,10 +1196,9 @@ =end original Unicode 文字の内部エンコーディングの内側を覗き見る方法の 1 つは、 -C<unpack("C*", ...> を使い、to get the bytes of whatever the string -encoding happens to be, or C<unpack("U0..", ...)> to get the bytes of the -UTF-8 encoding: -(TBT) +エンコーディングが何であろうとも文字列のバイト列を得るために +C<unpack("C*", ...> を使うか、UTF-8 エンコーディングのバイト列を得るために +C<unpack("U0..", ...)> を使うことです: # this prints c4 80 for the UTF-8 bytes 0xc4 0x80 print join(" ", unpack("U0(H2)*", pack("U", 0x100))), "\n"; @@ -1698,12 +1694,11 @@ =end original -In one sense, what you are asking doesn't make much sense: +ある意味では、あなたが尋ねようとしていることはほとんど意味はありません: エンコーディングは文字のためのもので、バイナリデータは「文字」ではないので、 「データ」を何かのエンコーディングに変換するということは、 バイナリデータの文字セットとエンコーディングが分かっていない限り無意味です; そして分かっているならそれは単なるバイナリデータではないですよね? -(TBT) =begin original @@ -1733,7 +1728,7 @@ concerned. 呼び出しの前後の両方において、文字列 C<$data> は単に 8 ビットのバイトの 塊です。 -contains just a bunch of 8-bit bytes. As far as Perl is concerned, +As far as Perl is concerned, the encoding of the string remains as "system-native 8-bit bytes". (TBT) @@ -1743,8 +1738,7 @@ =end original -You might relate this to a fictional 'Translate' module: -(TBT) +これを架空の 'Translate' モジュールと関連付けることもできます: use Translate; my $phrase = "Yes"; @@ -1759,10 +1753,9 @@ =end original -The contents of the string changes, but not the nature of the string. -Perl doesn't know any more after the call than before that the -contents of the string indicates the affirmative. -(TBT) +文字列の内容は変わりますが、文字列の性質は変わりません。 +Perl は文字列の内容が肯定を意味するという呼び出し前の状態よりも多く、 +呼び出しによって何かを知ることはありません。 =begin original @@ -1772,7 +1765,8 @@ =end original -Back to converting data. If you have (or want) data in your system's +データの変換に戻ります。 +If you have (or want) data in your system's native 8-bit encoding (e.g. Latin-1, EBCDIC, etc.), you can use pack/unpack to convert to/from Unicode. (TBT) @@ -1813,12 +1807,11 @@ =end original -You can convert well-formed UTF-8 to a sequence of bytes, but if -you just want to convert random binary data into UTF-8, you can't. -B<Any random collection of bytes isn't well-formed UTF-8>. You can -use C<unpack("C*", $string)> for the former, and you can create -well-formed Unicode data by C<pack("U*", 0xff, ...)>. -(TBT) +整形された UTF-8 はバイト列に変換できますが、単にランダムなバイナリデータを +UTF-8 に変換したいのなら、それはできません。 +B<全てのランダムなバイト列が整形された UTF-8 にはなりません。>. +前者のためには C<unpack("C*", $string)> が使えますし、 +C<pack("U*", 0xff, ...)> を使って整形された Unicode データを作成できます。 =item *