开发者

Backspace and arrow keys aren't working in IRB(Git Bash console) on windows machine

I just installed ruby 1.9.2 on windows machine and Backspace or any other arrow keys don't work. This happens only when I open IRB on Git Bash console. But it works fine on Windows console. Any help on that?

开发者_JAVA百科

Note: IRB was working fine on both consoles with the earlier versions of ruby.


Same thing happened to me. Running irb with --noreadline solved my problem:

irb --noreadline


Seems you didn't have readline installed while compile ruby. So install readline, maybe also readline-devel, then recompile ruby.


You can also disable readline in ~/.irbrc

IRB.conf[:USE_READLINE] = false


As documented here https://groups.google.com/forum/#!topic/rubyinstaller/HgswOz1T-eE, use the below command/alias:

alias irb="ruby -S irb"

If that doesn't work, use pry instead:

gem install pry


Install the rb-readline gem.

gem install rb-readline


Brief answer I had to do brew upgrade,(Apparently the situation, according to a ruby expert I spoke to, is that "There's a new default gem in trunk, Reline, that's a readline fallback.") . Then a new window and arrow keys in irb worked. Then sudo gem install pry, new window, and pry worked. ruby --version fell to 2.3 and I had to do brew install ruby, it said ruby 2.6 already installed and to do brew reinstall ruby, and it said to update the path, I did that and then fine. ruby 2.6 installed. edit- now rails is broken.. i'll update further.

More elaborate answer.

I had this issue of ruby irb arrow keys not working,

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

I am on osx, and don't think I had this issue some months ago

and also had an error when starting 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"

I tried brew link readline --force it didn't help, I tried irb --noreadline it didn't help

But what worked for me was this from a ruby expert- brew upgrade

Apparently the situation, according to a ruby expert I spoke to, is that "There's a new default gem in trunk, Reline, that's a readline fallback."

Then I started a new terminal window and $irb worked with arrow keys.

I then did sudo gem install pry , opened a new terminal window, and pry worked.

Ruby fell back to 2.3 when it should really be 2.6 and I thought it was 2.6

So I did brew install ruby, it said ruby 2.6 was already installed, and suggested brew reinstall ruby. so I did brew reinstall ruby . Opened a new terminal window. It was still on 2.3. But it suggested adding export PATH="/usr/local/opt/ruby/bin:$PATH" to .bash_profile (a file on osx that runs automatically). I did that it didn't work, but doing PATH="/usr/local/opt/ruby/bin:$PATH" manually at the start of each terminal session works.

edit- now rails is broken , i'll update further.

I got gem to work when I ran the one after updating the path..

This solution is not ideal as it gives two versions of ruby, and thus of course two versions of 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]
~$ 
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜