From: Nobuhiro IMAI Date: 2012-01-30T09:05:07+09:00 Subject: [ruby-dev:45158] [ruby-trunk - Bug #5941][Open] 補完候補にマルチバイト文字が含まれる場合の挙動 Issue #5941 has been reported by Nobuhiro IMAI. ---------------------------------------- Bug #5941: 補完候補にマルチバイト文字が含まれる場合の挙動 https://bugs.ruby-lang.org/issues/5941 Author: Nobuhiro IMAI Status: Open Priority: Normal Assignee: Kouji Takao Category: ext Target version: ruby -v: ruby 2.0.0dev (2012-01-27 trunk 34383) [x86_64-linux] =begin 以下のように、補完候補にマルチバイト文字が含まれる場合に、 文字単位ではなくバイト単位で処理されてしまうのは仕様でしょうか? 出来れば文字単位で処理されて、「あ」だけがバッファに残ったまま、 補完候補が表示されて欲しいです(以下では補完候補は表示しないようにしています)。 メンテナの高尾さんからはバグではないかと教えていただいたので、 Bug ということでチケットを作成しています。 # encoding: UTF-8 require "readline" RUBY_DESCRIPTION # => "ruby 2.0.0dev (2012-01-27 trunk 34383) [x86_64-linux]" Readline::VERSION # => "6.2" Readline.completion_proc = ->(text){%w[ああ あい]} IO.pipe{|r, w| Readline.input = r Readline.output = (w << "あ\t").reopen(IO::NULL) p Readline.readline } # >> "あ\xE3\x81" =end -- http://bugs.ruby-lang.org/