From: Nobuyoshi Nakada Date: 2008-09-25T17:07:34+09:00 Subject: [ruby-dev:36559] Re: Encoding.default_internal のためのパッチ なかだです。 At Thu, 25 Sep 2008 14:58:36 +0900, Yukihiro Matsumoto wrote in [ruby-dev:36551]: > 「変換をさせるなら変換を指定する」というのは具体的にはどうい > う意味でしょう。 > > 私には「internalを空にしたときにはdefaultを使う」と > 「default_internalはIOでinternalを指定しなかった場合のエンコー > ディングである」は同じ意味のように感じられますが。 「:」があれば変換あり、なければそのままということです。 [ruby-dev:36552]にある、 > ちょっと苦しいですが、 > > open(path, "r:default_external:") をdefault_internalを使う指定として、 open(path, "r:external") は今までと同じく無変換でexternalとして読み込む、というのはどうで しょう。 > 今回の提案では、default_internalが指定されている場合 > > open(path, "r") > > で、default_externalからdefault_internalへの変換が行われると > いう意味で、暗黙の変換が発生することになり、かなり大きな方針 > 変更です。 > default_external default_internal > +-------+-------------------+-------------------+ > | -L | locale | locale | > |-E :i | locale | i | > |-E e | e | e | > |-E e:i | e | i | > |(なし) | locale | UTF-8 | > +-------+-------------------+-------------------+ default_internalなし、という指定はできないわけですか。 > |また、internalとexternalそれぞれだけを指定するオプションを複数指 > |定した場合とか。 > > -Eオプションは1度しか受け付けないことにしようと思っています。 コマンドライン、RUBYOPT、shebangそれぞれで一度ずつ、でしょうか。 -- --- 僕の前にBugはない。 --- 僕の後ろにBugはできる。 中田 伸悦