如何在Ruby的IRB中启用自动完成function

当我使用Merb的内置控制台时,我得到类似于标准bash提示符的选项卡自动完成。 我觉得这很有用,并希望在非merb IRB会话中启用它。 如何在IRB中自动完成?

只需在irbrc中放入require 'irb/completion'即可。

如果这样做不起作用,请尝试粘贴, http : //tagaholic.me/bond/ :

  require 'bond'; require 'bond/completion' 

Bond不仅可以提高irb的完成度,还可以提供一个简单的dsl来进行自定义自动完成。

这只是重复Cody Caughlan上面评论的信息,所以很容易find:

要么require 'irb/completion'要么将以下内容添加到~/.irbrc

 IRB.conf[:AUTO_INDENT] = true IRB.conf[:USE_READLINE] = true IRB.conf[:LOAD_MODULES] = [] unless IRB.conf.key?(:LOAD_MODULES) unless IRB.conf[:LOAD_MODULES].include?('irb/completion') IRB.conf[:LOAD_MODULES] << 'irb/completion' end 

这是在Mac OS 10.11.5上的工作。 使用rvm。 请执行下列操作 :

  1. sudo gem install bond
  2. 在主目录中创build.irbrc文件。 vi ~/.irbrc
  3. .irbrc文件中添加以下行require 'bond' Bond.start

  4. 保存并closures文件

  5. 打开irb并使用tab键自动完成