我看到很多很酷的东西可以添加到我的 Ruby 控制台中。例如,一个好的列表是“我的 .irbrc for console/irb ”。
我用谷歌搜索,但我发现的只是网络博客,上面写着人们将什么宝石添加到他们的 .irbrc 中。没有人说在哪里可以找到它。
我找不到“irbrc”。我打开我的主文件夹,如果我输入 IRB,它会转到 Ruby 控制台,但我找不到这个文件。有人可以帮我找到它吗?
我看到很多很酷的东西可以添加到我的 Ruby 控制台中。例如,一个好的列表是“我的 .irbrc for console/irb ”。
我用谷歌搜索,但我发现的只是网络博客,上面写着人们将什么宝石添加到他们的 .irbrc 中。没有人说在哪里可以找到它。
我找不到“irbrc”。我打开我的主文件夹,如果我输入 IRB,它会转到 Ruby 控制台,但我找不到这个文件。有人可以帮我找到它吗?
这是一个 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'
如果您无法在您的主目录中找到该文件.irbrc
,只需在您的主目录中创建它并用一些行填充它,例如:
require "irb/completion"
然后,当您启动 irb 时,您的 irb 将自动加载完成模块。
PS:它也适用于 UNIX/Linux 系统。