Bug #550

irbで日本語を入力できない

Added by Yuki Sonoda almost 7 years ago. Updated about 4 years ago.

[ruby-dev:36198]
Status:Rejected
Priority:Normal
Assignee:-
ruby -v: Backport:

Description

=begin
Mac OS X上のirbで日本語文字を入力しようとすると、無効なバイト列に化けて例外が発生します。

% uname -a
Darwin yugui-macbook.local 9.4.0 Darwin Kernel Version 9.4.0: Mon Jun 9 19:30:53 PDT 2008; root:xnu-1228.5.20~1/RELEASE_I386 i386
% ruby-trunk -v
ruby 1.9.0 (2008-09-05 revision 0) [i386-darwin9.4.0]
% echo $LANG
ja_JP.UTF-8
% irb-trunk
irb(main):001:0> "あ"
SyntaxError: (irb):1: invalid multibyte char
(irb):1: unterminated string meets end of file
from /Users/yugui/local/bin/irb-trunk:12:in `'
irb(main):002:0> ENCODING
=> #Encoding:US-ASCII

どうも、readlineの中で入力文字列が無効なバイト列になっているようです。
=end

History

#1 Updated by Yui NARUSE almost 7 years ago

  • Status changed from Open to Rejected

=begin
Mac OS X や NetBSD で用いられている GNU readline の代替ライブラリ、
Editline Library (libedit) はマルチバイト文字に対応していません。
“At the moment libedit does not support UTF-8 and multi-byte character sets.”
http://www.thrysoee.dk/editline/

よって、仕様です。
=end

#2 Updated by Yui NARUSE almost 7 years ago

=begin
なお、Mac OS X や NetBSD でも GNU readline を用いるようにすれば表示可能なはずです。
また、意欲のある方は libedit 側を直すという手もあります。
=end

Also available in: Atom PDF