From 85e1bda8ff811190b54a457151b6b72a2dfa369d Mon Sep 17 00:00:00 2001 From: keiju Date: Fri, 29 Jul 2005 07:18:34 +0000 Subject: * lib/irb/context.rb: fix `irb --readline` option. [ruby-dev:40955] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@8866 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 3 +++ lib/irb/context.rb | 20 ++++++++++++++++---- 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index 012f877fb..7b367f9ff 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,6 @@ +Fri Jul 29 16:12:02 005 Keiju Ishitsuka + * lib/irb/context.rb: fix `irb --readline` option. [ruby-dev:40955] + Fri Jul 29 09:59:38 2005 Nobuyoshi Nakada * eval.c (rb_call0): fix calling zsuper from a method with anonymous diff --git a/lib/irb/context.rb b/lib/irb/context.rb index 043c12ade..d01bd4aef 100644 --- a/lib/irb/context.rb +++ b/lib/irb/context.rb @@ -58,12 +58,24 @@ module IRB case input_method when nil - if (defined?(ReadlineInputMethod) && - (use_readline? || IRB.conf[:PROMPT_MODE] != :INF_RUBY && STDIN.tty?)) - @io = ReadlineInputMethod.new - else + case use_readline? + when nil + if (defined?(ReadlineInputMethod) && STDIN.tty? && + IRB.conf[:PROMPT_MODE] != :INF_RUBY) + @io = ReadlineInputMethod.new + else + @io = StdioInputMethod.new + end + when false @io = StdioInputMethod.new + when true + if defined?(ReadlineInputMethod) + @io = ReadlineInputMethod.new + else + @io = StdioInputMethod.new + end end + when String @io = FileInputMethod.new(input_method) @irb_name = File.basename(input_method) -- cgit