在Ruby中1.9.3 IRB无法进入变音(Can't enter Umlauts in R

2019-06-24 01:47发布

我经历的Ruby 1.9.3的与Mac OS 10.7.3 IRB非常奇怪的行为,当我试图进入一个变音符,它在提示,转义,看起来像这样(我输入"ü"在键盘上)

irb(main):001:0> "\U+FFC3\U+FFBC"

什么是超级奇怪的是这样的:

irb(main):001:0> "\U+FFC3\U+FFBC".length
=> 0

当然,不显示的字符之一:

irb(main):001:0> "\U+FFC3\U+FFBC"
=> ""

有谁知道这是怎么回事这里,或如何解决这一问题?

Answer 1:

维克多·莫罗兹没有完全给出明确的答案,但他的链接导致我的解决方案(感谢!):

我忘了提:

  • 进出口运行自制软件
  • 我内置红宝石使用Ruby构建和这个配方(1.9.3-P125-PERF,与猎鹰补丁)

那么,什么我没有解决我的情况下,这个问题是重新编译,我用自制安装了这个时间指向红宝石(在我的情况6.2.2)的较新版本的readline的。

它是采取的步骤:

$ brew install readline
$ export CPPFLAGS=-I/usr/local/Cellar/readline/6.2.2/include
$ export LDFLAGS=-L/usr/local/Cellar/readline/6.2.2/lib/
$ curl https://raw.github.com/gist/1688857/rbenv.sh | sh && rbenv global 1.9.3-p125-perf


Answer 2:

我碰到这个问题跑为好,但我的红宝石与RVM而不是红宝石构建建。 我还以前使用自制的山狮跑等软件包安装程序,而其中得到的Readline 6.2.5或类似的东西。 这原来是这个问题的原因我。 因此,这里的修复:

从该网站RVM :

如果在编译有关的ReadLine时有一个错误,你可能需要尝试下面定义的程序安装。

$ RVM PKG安装的readline

$ RVM重新安装1.9.2 --with-的readline-DIR = $ rvm_path的/ usr

注意,具有MacPorts的,芬克的时候,还是自制的readline安装在系统上会出现此错误最常见。

希望这可以帮助别人!



Answer 3:

这可能有助于http://henrik.nyh.se/2008/03/irb-readline

UPDATE其实我的Mac上我有红宝石的港版没有问题,但原来的Mac OS版本确实有这个问题(从未使用过一个)。 所以,最简单的方法可能只是从口安装Ruby。



Answer 4:

这个命令解决了这个问题对我来说:

brew install readline
RUBY_CONFIGURE_OPTS=--with-readline-dir="$(brew --prefix readline)" rbenv install 1.9.3-p286

来源: https://github.com/rbenv/ruby-build/wiki



文章来源: Can't enter Umlauts in Ruby 1.9.3 IRB