Назначение конфигурации:
@CONF[:PROMPT_MODE] = :SIMPLE
должен прийти перед созданием объекта Irb :
irb = Irb.new(workspace)
Я не уверен, как рано нужно делать другие настройки, но в целом лучше сделать это как можно скорее. Код ниже имеет эти модификации.
#!/usr/bin/env rub
# encoding: utf-8
require 'irb'
module IRB # :nodoc:
def self.start_session(binding)
unless @__initialized
args = ARGV
ARGV.replace(ARGV.dup)
IRB.setup(nil)
ARGV.replace(args)
@__initialized = true
end
@CONF[:IRB_RC].call(irb.context) if @CONF[:IRB_RC]
@CONF[:AUTO_INDENT] = true
@CONF[:PROMPT_MODE] = :SIMPLE
IRB.run_config
workspace = WorkSpace.new(binding)
irb = Irb.new(workspace)
@CONF[:MAIN_CONTEXT] = irb.context
catch(:IRB_EXIT) do
irb.eval_input
end
end
end
IRB.start_session(binding)
Извините, я не видел этого раньше.