Rubyコンソールに追加できるクールなものがたくさんあります。たとえば、適切なリストは「コンソール/irbのMy.irbrc」です。
私はグーグルで検索しましたが、私が見つけたのは、人々が.irbrcに追加する宝石を書いているウェブログだけです。誰もそれをどこで見つけるかを言っていません。
「irbrc」が見つかりません。ホームフォルダを開いて、IRBと入力すると、Rubyコンソールに移動しますが、このファイルが見つかりません。誰かが私がそれを見つけるのを手伝ってもらえますか?
Rubyコンソールに追加できるクールなものがたくさんあります。たとえば、適切なリストは「コンソール/irbのMy.irbrc」です。
私はグーグルで検索しましたが、私が見つけたのは、人々が.irbrcに追加する宝石を書いているウェブログだけです。誰もそれをどこで見つけるかを言っていません。
「irbrc」が見つかりません。ホームフォルダを開いて、IRBと入力すると、Rubyコンソールに移動しますが、このファイルが見つかりません。誰かが私がそれを見つけるのを手伝ってもらえますか?
これはirbrcドットファイルなので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システムでも動作します。