61

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

4

3 回答 3

75

只需require 'irb/completion'放入您的 irbrc。

如果这不起作用尝试债券,http ://tagaholic.me/bond/ :

   require 'bond'; require 'bond/completion'

Bond 不仅改进了 irb 的补全,http ://tagaholic.me/2009/07/22/better-irb-completion-with-bond.html ,而且还提供了一个简单的 dsl 来进行自定义自动补全。

于 2009-09-05T05:14:48.617 回答
22

这只是重复上面 Cody Caughlan 评论的信息,因此更容易找到:

或者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 
于 2009-09-05T01:58:27.857 回答
9

这就是在 Mac OS 10.11.5 上对我有用的方法。使用 rvm。请执行下列操作 :

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

  4. 保存并关闭文件

  5. 打开irb并使用tab密钥自动完成
于 2016-07-20T12:24:51.400 回答