在Mac上找到“irbrc”文件

时间:2013-02-22 04:18:21

标签: ruby

我看到很多很酷的东西,我可以添加到我的Ruby控制台。例如,一个好的清单是 “My .irbrc for console/irb”。

我用谷歌搜索,但我发现的只是网络日志,说明人们添加到他们的.irbrc中的宝石。没有人说在哪里找到它。

我找不到“irbrc”。 我打开了我的主文件夹,如果我输入IRB,它会进入Ruby控制台,但我找不到这个文件。 有人可以帮我找到它吗?

2 个答案:

答案 0 :(得分:12)

这是一个irbrc dotfile,因此您需要在主目录中ls -a才能找到它。如果它不在那里,只需创建一个.irbrc文件。

我很简单,但这就是我的内容:

require 'rubygems'
require 'ap'

require 'irb/completion'
ARGV.concat [ "--readline", "--prompt-mode", "simple" ]

module Readline
  module History
    LOG = "#{ENV['HOME']}/.irb-history"

    def self.write_log(line)
      File.open(LOG, 'ab') {|f| f << "#{line}\n"}
    end

    def self.start_session_log
      write_log("\n# session start: #{Time.now}\n\n")
      at_exit { write_log("\n# session stop: #{Time.now}\n") }
    end
  end

  alias :old_readline :readline
  def readline(*args)
    ln = old_readline(*args)
    begin
      History.write_log(ln)
    rescue
    end
    ln
  end
end

IRB::Irb.class_eval do
  def output_value
    ap @context.last_value
  end
end

Readline::History.start_session_log

require 'irb/ext/save-history'
IRB.conf[:SAVE_HISTORY] = 100
IRB.conf[:HISTORY_FILE] = "#{ENV['HOME']}/.irb-save-history"

IRB.conf[:PROMPT_MODE] = :SIMPLE
require 'irb/completion'

答案 1 :(得分:1)

如果您无法在主目录中找到文件.irbrc,只需在主目录中创建该文件并填写一些行,例如:

require "irb/completion"

然后当您启动irb时,您的irb将自动加载完成模块。

PS:它也适用于UNIX / Linux系统。