class Bundler::Thor::LineEditor::Readline
Public Class Methods
available?()
click to toggle source
# File lib/bundler/vendor/thor/lib/thor/line_editor/readline.rb, line 4 def self.available? begin require "readline" rescue LoadError end Object.const_defined?(:Readline) end
Public Instance Methods
readline()
click to toggle source
Calls superclass method
Bundler::Thor::LineEditor::Basic#readline
# File lib/bundler/vendor/thor/lib/thor/line_editor/readline.rb, line 13 def readline if echo? ::Readline.completion_append_character = nil # rb-readline does not allow Readline.completion_proc= to receive nil. if complete = completion_proc ::Readline.completion_proc = complete end ::Readline.readline(prompt, add_to_history?) else super end end
Private Instance Methods
add_to_history?()
click to toggle source
# File lib/bundler/vendor/thor/lib/thor/line_editor/readline.rb, line 28 def add_to_history? options.fetch(:add_to_history, true) end
completion_options()
click to toggle source
# File lib/bundler/vendor/thor/lib/thor/line_editor/readline.rb, line 42 def completion_options options.fetch(:limited_to, []) end
completion_proc()
click to toggle source
# File lib/bundler/vendor/thor/lib/thor/line_editor/readline.rb, line 32 def completion_proc if use_path_completion? proc { |text| PathCompletion.new(text).matches } elsif completion_options.any? proc do |text| completion_options.select { |option| option.start_with?(text) } end end end
use_path_completion?()
click to toggle source
# File lib/bundler/vendor/thor/lib/thor/line_editor/readline.rb, line 46 def use_path_completion? options.fetch(:path, false) end