アカウント名:
パスワード:
日本語対応に関してencoding周りの右往左往はきつかった5.6系のころ、5.8.22ぐらいまで、~5.30あたりで互換性のない変更がかかるencodingのフィルタ指定が消えたのは痛かった
ようやく安定してきたが、まだおまじないが冗長なのでまだ変更がかかるんだろうな7系はどうなのさ、と思ったら短くなる方向でまた変わるみたいに書いてあった:-)
# 悪いのはあいつ
Perlも使うけど、シビアな日本語対応のためにRubyも覚えた。Perl6の代わりでもある。
Perl 5.8 が当たり前の環境で、 open() で読み書きするには PerlIO を使って 2 番目の引数で :encoding() を指定したり、標準入出力については binmode() で同様のことをしたりする程度で、特に Encode モジュールを明示的に使うこともなく Unicode 文字を扱えていたのですが、際どいことをしようとすると何か問題があったのでしょうか。
同じ問題を踏んだときに困らないよう、> 5.8.22ぐらいまで> ~5.30あたりの非互換を共有いただけますか?
openに引数を追加するのではなくencodingのフィルタでcp932にしてソースがcp932でもよいようにするというのが途中で消えたということです。
まあ日本語のWindowsだけの話ですが、これによってcp932で書いてあった文字コードをutf-8に変えなきゃならなくなってdiffが悲惨な事に。文字コードがutf-8な環境ではこのような問題はないでしょう。
use utf8だけで済むなら簡単だが、そのあとuse open ':encoding(console_out)';use Encode::Locale;binmode STDIN, ":encoding(console_in)";binmode STDOUT, ":encoding(console_out)";binmode STDERR, ":encoding(console_out)";
Perlは正規表現が言語処理系に含まれている類まれな設計で、JPerlの場合は日本語が処理できる。それにひきかえ、モダンパールのほうはというと...。
utf8 プラグマを使えば、ソースコードさえ UTF-8 で書いてあれば日本語どころか絵文字まで対応できてしまいますね。
でもきっと、お高いんでしょう?
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
あつくて寝られない時はhackしろ! 386BSD(98)はそうやってつくられましたよ? -- あるハッカー
JPerlが消えてからというもの (スコア:0)
日本語対応に関してencoding周りの右往左往はきつかった
5.6系のころ、5.8.22ぐらいまで、~5.30あたりで互換性のない変更がかかる
encodingのフィルタ指定が消えたのは痛かった
ようやく安定してきたが、まだおまじないが冗長なのでまだ変更がかかるんだろうな
7系はどうなのさ、と思ったら短くなる方向でまた変わるみたいに書いてあった:-)
# 悪いのはあいつ
Perlも使うけど、シビアな日本語対応のためにRubyも覚えた。Perl6の代わりでもある。
Re: (スコア:0)
Perl 5.8 が当たり前の環境で、 open() で読み書きするには PerlIO を使って 2 番目の引数で :encoding() を指定したり、
標準入出力については binmode() で同様のことをしたりする程度で、特に Encode モジュールを明示的に使うこともなく Unicode 文字を扱えていたのですが、
際どいことをしようとすると何か問題があったのでしょうか。
同じ問題を踏んだときに困らないよう、
> 5.8.22ぐらいまで
> ~5.30あたり
の非互換を共有いただけますか?
Re: (スコア:0)
openに引数を追加するのではなくencodingのフィルタでcp932にしてソースが
cp932でもよいようにするというのが途中で消えたということです。
まあ日本語のWindowsだけの話ですが、これによってcp932で書いてあった文字コードを
utf-8に変えなきゃならなくなってdiffが悲惨な事に。
文字コードがutf-8な環境ではこのような問題はないでしょう。
use utf8だけで済むなら簡単だが、
そのあと
use open ':encoding(console_out)';
use Encode::Locale;
binmode STDIN, ":encoding(console_in)";
binmode STDOUT, ":encoding(console_out)";
binmode STDERR, ":encoding(console_out)";
Re: (スコア:0)
Perlは正規表現が言語処理系に含まれている類まれな設計で、JPerlの場合は日本語が処理できる。それにひきかえ、モダンパールのほうはというと...。
Re:JPerlが消えてからというもの (スコア:1)
utf8 プラグマを使えば、ソースコードさえ UTF-8 で書いてあれば日本語どころか絵文字まで対応できてしまいますね。
Re: (スコア:0)
でもきっと、お高いんでしょう?