diff options
Diffstat (limited to 'lib/irb')
-rw-r--r-- | lib/irb/context.rb | 4 | ||||
-rw-r--r-- | lib/irb/input-method.rb | 16 |
2 files changed, 17 insertions, 3 deletions
diff --git a/lib/irb/context.rb b/lib/irb/context.rb index d2d0bed522..9647327037 100644 --- a/lib/irb/context.rb +++ b/lib/irb/context.rb @@ -479,9 +479,7 @@ module IRB # StdioInputMethod or RelineInputMethod or ReadlineInputMethod, see #io # for more information. def prompting? - verbose? || (STDIN.tty? && @io.kind_of?(StdioInputMethod) || - @io.kind_of?(RelineInputMethod) || - (defined?(ReadlineInputMethod) && @io.kind_of?(ReadlineInputMethod))) + verbose? || @io.prompting? end # The return value of the last statement evaluated. diff --git a/lib/irb/input-method.rb b/lib/irb/input-method.rb index a483ec671b..c199830928 100644 --- a/lib/irb/input-method.rb +++ b/lib/irb/input-method.rb @@ -44,6 +44,10 @@ module IRB false end + def prompting? + false + end + # For debug message def inspect 'Abstract InputMethod' @@ -91,6 +95,10 @@ module IRB true end + def prompting? + STDIN.tty? + end + # Returns the current line number for #io. # # #line counts the number of times #gets is called. @@ -220,6 +228,10 @@ module IRB @eof end + def prompting? + true + end + # For debug message def inspect readline_impl = (defined?(Reline) && Readline == Reline) ? 'Reline' : 'ext/readline' @@ -467,6 +479,10 @@ module IRB @eof end + def prompting? + true + end + # For debug message def inspect config = Reline::Config.new |