From: Sora Harakami Date: 2010-06-01T08:04:56+09:00 Subject: [ruby-dev:41489] [Bug #3374] r28118のreadlineで日本語入力ができない・裏のスレッドが動かない Bug #3374: r28118のreadlineで日本語入力ができない・裏のスレッドが動かない http://redmine.ruby-lang.org/issues/show/3374 起票者: Sora Harakami ステータス: Open, 優先度: Normal カテゴリ: ext ruby -v: ruby 1.9.3dev (2010-06-01 trunk 28118) [x86_64-darwin10.3.0] Sora Harakamiです。 昨日までできていたReadlineでの日本語入力ができなくなっていて(台形+?になってしまう)、 少しテストしてみたら過去にも同じ症状があった裏スレッドが動作しなくなる問題 (そのときはReadline.input = STDINで解決) も再発していたようでした。 尚、Readlineはmacportでインストールしたものを使っています。 以下、テストに使用したコードと結果を貼っておきます。 本来なら裏でスレッドが働き、現在時刻が表示されながら入力待ちになるはずです。 日本語入力も正常に働くべきなのですが、それも文字化けしうまく動作しません。 $ cat readline_test.rb require 'readline' Thread.new do loop do p Time.now sleep 1 end end while s = Readline.readline(">") puts "=>#{s}" end $ ruby -v readline_test.rb ruby 1.9.1p378 (2010-01-10 revision 26273) [i386-darwin10.2.0] >2010-06-01 08:01:41 +0900 2010-06-01 08:01:42 +0900 2010-06-01 08:01:43 +0900 あいうえお =>あいうえお >2010-06-01 08:01:44 +0900 2010-06-01 08:01:45 +0900 hoge =>hoge >2010-06-01 08:01:46 +0900 readline_test.rb:10:in `readline': Interrupt from readline_test.rb:10:in `
' ----- $ ruby -v readline_test.rb (文字化けして"台形+?"の部分は""に置換してあります。) ruby 1.9.3dev (2010-06-01 trunk 28118) [x86_64-darwin10.3.0] > 2010-06-01 08:02:07 +0900 => >hoge 2010-06-01 08:02:12 +0900 =>hoge > 2010-06-01 08:02:17 +0900 => > readline_test.rb:10:in `
': Interrupt ---------------------------------------- http://redmine.ruby-lang.org