From: "NARUSE, Yui" Date: 2010-05-24T21:18:10+09:00 Subject: [ruby-dev:41404] Re: [Feature #3328] Kernel#p outputs as default_internal encoding, and so on 成瀬です。 (2010/05/21 8:10), Masaya Tarui wrote: > Feature #2102 [ruby-dev:39343] でString#inspectについては強制的にencodingを > 揃えるようになりましたが、SymbolやRegexpについてはそうなっておらず、 > 同じような簡単にエラーになる状態になっています。ユーザー定義のinspectにも > 同様です。またにinspectで文字コードの違いが区別できません。 Symbol と Regexp は忘れていました。 確かに対処が必要だと思います。 > そこで、Kernel#pで表示する前やArrayやHashで各inspect結果をマージする前に、 > String#inspectと同様な処理を行うのはどうでしょうか?具体的にはinspectで > 想定するEncodingと異なる場合に、非ASCII文字をエスケープ表示にする > String#inspect_encodeを追加し、それをrb_inspectから呼ぶ事を提案したいと > 思います。ASCII文字については手を加えないため、不可逆ですが実用上は問題 > ないと思います。 ご検討をお願いします。 同様な処理といいながらなぜ新しい API を追加するんですか。 -- NARUSE, Yui