From: "brixen (Brian Ford)" Date: 2012-10-21T14:29:57+09:00 Subject: [ruby-core:48132] [ruby-trunk - Bug #7201][Open] Setting default_external affects STDIN encoding but default_internal does not Issue #7201 has been reported by brixen (Brian Ford). ---------------------------------------- Bug #7201: Setting default_external affects STDIN encoding but default_internal does not https://bugs.ruby-lang.org/issues/7201 Author: brixen (Brian Ford) Status: Open Priority: Normal Assignee: Category: Target version: ruby -v: ruby 1.9.3p286 (2012-10-12 revision 37165) [x86_64-darwin10.8.0] Changing Encoding.default_external changes STDIN.external_encoding, but changing Encoding.default_internal does not change STDIN.internal_encoding. STDOUT and STDERR internal/external encodings are not changed in either case and are always nil. Is this a bug? See the following IRB transcript: $ irb 1.9.3p286 :001 > Encoding.default_external => # 1.9.3p286 :002 > Encoding.default_internal => nil 1.9.3p286 :003 > STDIN.external_encoding => # 1.9.3p286 :004 > STDIN.internal_encoding => nil 1.9.3p286 :005 > Encoding.default_external = "euc-jp" => "euc-jp" 1.9.3p286 :006 > STDIN.external_encoding => # 1.9.3p286 :007 > STDIN.internal_encoding => nil 1.9.3p286 :008 > Encoding.default_internal = "iso-8859-1" => "iso-8859-1" 1.9.3p286 :009 > STDIN.internal_encoding => nil Thanks, Brian -- http://bugs.ruby-lang.org/