From: Kouji Takao Date: 2012-02-07T09:56:47+09:00 Subject: [ruby-dev:45202] [Backport93 - Backport #5941] Backport r34391 (補完候補にマルチバイト文字が含まれる場合の挙動) Issue #5941 has been updated by Kouji Takao. Subject changed from Backport 34391 (補完候補にマルチバイト文字が含まれる場合の挙動) to Backport r34391 (補完候補にマルチバイト文字が含まれる場合の挙動) ---------------------------------------- Backport #5941: Backport r34391 (補完候補にマルチバイト文字が含まれる場合の挙動) https://bugs.ruby-lang.org/issues/5941 Author: Nobuhiro IMAI Status: Open Priority: Normal Assignee: Category: Target version: =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/