33

我刚刚在 Windows 机器上安装了 ruby​​ 1.9.2,Backspace 或任何其他箭头键都不起作用。仅当我在 Git Bash 控制台上打开 IRB 时才会发生这种情况。但它在 Windows 控制台上运行良好。有什么帮助吗?

注意:IRB 在使用早期版本的 ruby​​ 的两个控制台上都可以正常工作。

4

6 回答 6

47

同样的事情发生在我身上。使用--noreadline运行 irb解决了我的问题:

irb --noreadline
于 2011-11-08T22:02:21.430 回答
9

似乎您在编译 ruby​​ 时没有安装 readline。所以安装 readline,也许还有 readline-devel,然后重新编译 ruby​​。

于 2011-06-24T05:44:04.243 回答
9

您还可以在 ~/.irbrc 中禁用 readline

IRB.conf[:USE_READLINE] = false
于 2013-09-18T09:49:19.517 回答
7

如此处所述https://groups.google.com/forum/#!topic/rubyinstaller/HgswOz1T-eE,使用以下命令/别名:

alias irb="ruby -S irb"

如果这不起作用,请改用 pry:

gem install pry
于 2014-01-29T19:07:45.903 回答
5

安装 rb-readline gem。

gem install rb-readline
于 2013-12-31T02:35:10.460 回答
0

简短的回答我必须进行 brew upgrade,(显然情况是,据我采访过的一位 ruby​​ 专家说,“主干中有一个新的默认 gem,Reline,这是一个 readline 后备。”)。然后 irb 中的新窗口和箭头键起作用了。然后 sudo gem install pry, new window, and pry 工作。ruby --version 降到 2.3,我不得不做 brew install ruby​​,它说 ruby​​ 2.6 已经安装并且要 brew reinstall ruby​​,它说要更新路径,我这样做了,然后就好了。安装了红宝石 2.6。编辑-现在rails坏了..我会进一步更新。

更详细的答案。

我遇到了 ruby​​ irb 箭头键不起作用的问题,

~/blah$ irb
irb(main):001:0> ^[[A^[[D^[[B^[[C

我在osx上,几个月前我认为我没有这个问题

并且在启动pry时也出现错误,pry<ENTER> it says "Reason: image not found - /usr/local/Cellar/ruby/2.5.0/lib/ruby/2.5.0/x86_64-darwin16/readline.bundle"

我试过brew link readline --force了 没用 我试过irb --noreadline了 没用

但对我有用的是来自红宝石专家的 - brew upgrade

据我采访过的一位 ruby​​ 专家说,显然情况是“主干中有一个新的默认 gem,Reline,这是一个 readline 后备。”

然后我启动了一个新的终端窗口,$irb 使用箭头键。

然后我做了sudo gem install pry,打开了一个新的终端窗口,然后撬开了。

Ruby 真的应该是 2.6 时又回落到 2.3,我以为是 2.6

所以我做了brew install ruby,它说 ruby​​ 2.6 已经安装,并建议brew reinstall ruby. 所以我做到了brew reinstall ruby。打开一个新的终端窗口。它仍然在2.3上。但它建议添加export PATH="/usr/local/opt/ruby/bin:$PATH"到 .bash_profile (osx 上自动运行的文件)。我这样做是行不通的,但是在PATH="/usr/local/opt/ruby/bin:$PATH"每个终端会话开始时手动执行是可行的。

编辑-现在rails坏了,我会进一步更新。

更新路径后运行宝石时,我得到了宝石。

这个解决方案并不理想,因为它提供了两个版本的 ruby​​,因此当然也提供了两个版本的 gem

Last login: Fri Aug  9 16:02:48 on ttys001
have run /Users/apple/.bash_profile
~$ cd /usr/local/opt/ruby/bin
/usr/local/opt/ruby/bin$ ls
bundle  bundler erb gem irb rake    rdoc    ri  ruby
/usr/local/opt/ruby/bin$ echo $PATH
/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:~/rubymac/rubyrailshelperscripts:/opt/X11/bin:/Users/apple/.vimpkg/bin:/usr/local/opt/fzf/bin
/usr/local/opt/ruby/bin$ which gem
/usr/bin/gem
/usr/local/opt/ruby/bin$ cd ~/
~$ /usr/local/opt/ruby/bin/ruby --version
ruby 2.6.3p62 (2019-04-16 revision 67580) [x86_64-darwin16]
~$ /usr/bin/ru
ruby      runocc.d  
~$ /usr/bin/ruby --version
ruby 2.3.7p456 (2018-03-28 revision 63024) [universal.x86_64-darwin16]
~$ 
于 2019-08-03T15:37:33.027 回答