历史不节约

时间:2009-11-17 22:55:40

标签: ruby irb

为什么我的irb历史不再保存?

2 个答案:

答案 0 :(得分:3)

事实证明,ruby 1.8.7引入了一个错误,不再保证终结器能够运行。

要解决此问题,我将以下代码段添加到我的.irbrc文件中:

require 'irb/ext/save-history'

Kernel.at_exit do
  IRB::HistorySavingAbility.create_finalizer.call(IRB.CurrentContext.instance_variable_get(:@io).send(:binding))
end

答案 1 :(得分:0)

我也遇到了红宝石2.3.7。这是由于rvm ruby​​软件包没有正确的权限来更新默认的.irbrc_history文件。这似乎是known bug

一个简单的解决方法是仅更改此历史记录文件在您的~/.irbrc文件中的位置。

IRB.conf[:HISTORY_FILE] = "#{ENV['HOME']}/.irb_history"