2012-03-18 140 views
1

通过PuTTY在rails 2.3.12中使用脚本/控制台。当我按下“向上”箭头访问我写的最后一条命令时,它不是打开命令,而是将奇怪的字符串“^ [[A”打印到终端。与其他箭头一样...后退箭头打印“^ [[D”和向前箭头打印“^ [[”C“通过PuTTY在Rails控制台中执行历史命令

希望有人认出这些奇怪的代码,并可能告诉我如何让箭头正常工作。这是一个PuTTY设置问题?

回答

1

向上箭头功能由readline提供。通常,在构建ruby时,./configure自动检测readline库并为它们构建ruby映射。有时这不起作用,你必须在构建ruby时安装新库或自定义配置--with-readline-dir。 irb和rails-console只是使用ruby stdlib的readline功能,可能你的ruby构建没有检测到并绑定readline。

我建议你调查other SO questions relevant to building ruby with readline看看他们中的一个是否能为你的ruby版本和你的操作系统提供指导。

0

我用这个,它使用JRuby 1.6.7为我工作和Rails 2.3.8(见链接,原来的解决方案)

它看起来像打捆防止IRB控制台使用readline。您可以解决此通过将下面的行放在.irbrc,这将迫使IRB到readline的使用:

IRB.conf[:USE_READLINE] = true 

这里建议

Running rails console with bundle exec

希望这会有所帮助。