0

我想在我的 irb 控制台中有一个明确的功能,但没有。这是我每次从终端加载 irb 时输入的内容:

def cls
  system 'clear'
end

每次加载 irb 时都键入它并不难,但是当 irb 启动时自动加载这个函数肯定会很好。

是否有可能做到这一点?

4

2 回答 2

1

irb启动时,它会.irbrc在您的主目录中查找该文件。如果文件存在,它会评估它。所以这个文件是向 irb 添加一些通用内容的理想场所......

为了获得灵感,我的看起来像这样:

require 'rubygems'
require 'pp'
require 'irb/ext/save-history'

# add $HOME/lib to the load path
$: << '~/lib'

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


def real_instance_methods_of(klass)
  klass.instance_methods - ((klass.ancestors - [klass]).map(&:instance_methods).flatten)
end

class Class
  def instance_methods_defined_here
    real_instance_methods_of self
  end
end

# more stuff...
# ...

编辑:我现在才注意到戴夫牛顿的评论;他已经指出了 .irbrc 解决方案...

于 2012-10-04T07:37:15.267 回答
-2

在 Mac 上只需按 CMD + K 即可清除屏幕

于 2012-10-04T03:09:23.443 回答