7

伙计们。我正在用 Rails 开发一个中文应用程序。现在我想在rails控制台中输入一些汉字,但不能在irb中输入。

有没有经验的大佬解决这个问题?我会很感激你的帮助!

4

3 回答 3

5

根据@Jimmy-Huang 的回答,这些是我在 Mac Leopard 上使用 rvm 和 ruby​​ 1.9.2 所遵循的步骤:

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

这导致了一些错误,尤其是在尝试时bundle install

未初始化的常量 Gem::SilentUI

事实证明,这是由于旧版本的 bundler 造成的,这摆脱了它:

gem install bundler
于 2011-04-21T10:25:04.693 回答
2

我为我找到了解决方案,它需要重新编译 readline。现在我可以输入非ASCII字符了!

因为我用的是rvm,所以找到这篇文章来教大家如何在rvm下重新编译readline。http://rvm.beginrescueend.com/packages/readline/

对于不使用 rvm 的人,也许您可​​以关注这篇文章并尝试一下:http: //henrik.nyh.se/2008/03/irb-readline

顺便说一句,ruby-1.9.2 irb 已经支持非 ASCII 输入。

于 2011-01-05T09:09:37.597 回答
1

查看数组上的打包方法: http ://ruby-doc.org/core-1.8.7/classes/Array.html#M000287

我想你会想要:

[111 ,222, 333].pack(U*)

这是与 Matz 就该主题进行的有趣讨论:

http://www.ruby-forum.com/topic/134919

于 2011-01-04T06:10:57.087 回答