WEBサービス創造記

WEBサービスを作ったり保守したりしてる人のメモブログです。

Mac OS X(Snow Leopard)のirb上で日本語が文字化けする問題を解決

      2015/06/13

OSのバージョン↓

$ uname -a
Darwin okishima-no-MacBook-Pro.local 10.8.0 Darwin Kernel Version 10.8.0: Tue Jun  7 16:33:36 PDT 2011; root:xnu-1504.15.3~1/RELEASE_I386 i386

irbを起動して日本語を入力すると、???という風に文字化けしてしまう。

以下のページによると、Mac OS XではGNU readlineの代わりにEditline Libraryが使われているそうで、GNU readlineを使えば解決する
#550: irbで日本語を入力できない

RVMを利用している場合は、下記の手順でreadlineを有効化できる。
※RVMのバージョンが古いと、”rvm package install readline”というコマンドになるらしい

$ rvm pkg install readline
$ rvm remove 1.9.2
$ rvm install 1.9.2 --with-readline-dir=$rvm_path/usr

上記コマンド実行後、irbを起動して日本語を入力してみたところ、文字化けが解消された。

$ irb
ruby-1.9.2-p290 :001 > "日本語".length
 => 3

確認してないが、OS X Lionでは文字化けが発生しないという噂も↓
ちなみに、OS X Lion からは readline で日本語が使えるようになっています。

 - OS X , , , ,