I have no answer for you why this does not work, but I found the file /etc/irbrc on my system (OS X - Snow Leopard, Ruby 1.8.7), which provides a consistent history for me. So, two tips: i) check / etc / irbrc (or the equivalent) to make sure there is nothing to interfere with your settings, and ii) try the settings below to see if you can get the story working So.
# Some default enhancements/settings for IRB, based on # http://wiki.rubygarden.org/Ruby/page/show/Irb/TipsAndTricks unless defined? ETC_IRBRC_LOADED # Require RubyGems by default. require 'rubygems' # Activate auto-completion. require 'irb/completion' # Use the simple prompt if possible. IRB.conf[:PROMPT_MODE] = :SIMPLE if IRB.conf[:PROMPT_MODE] == :DEFAULT # Setup permanent history. HISTFILE = "~/.irb_history" MAXHISTSIZE = 100 begin histfile = File::expand_path(HISTFILE) if File::exists?(histfile) lines = IO::readlines(histfile).collect { |line| line.chomp } puts "Read #{lines.nitems} saved history commands from '#{histfile}'." if $VERBOSE Readline::HISTORY.push(*lines) else puts "History file '#{histfile}' was empty or non-existant." if $VERBOSE end Kernel::at_exit do lines = Readline::HISTORY.to_a.reverse.uniq.reverse lines = lines[-MAXHISTSIZE, MAXHISTSIZE] if lines.nitems > MAXHISTSIZE puts "Saving #{lines.length} history lines to '#{histfile}'." if $VERBOSE File::open(histfile, File::WRONLY|File::CREAT|File::TRUNC) { |io| io.puts lines.join("\n") } end rescue => e puts "Error when configuring permanent history: #{e}" if $VERBOSE end ETC_IRBRC_LOADED=true end
liwp Jan 14 '10 at 17:50 2010-01-14 17:50
source share