module Readline
Public Class Methods
prompt(message, exit_on_exit: true)
click to toggle source
# File lib/vv/readline_methods.rb, line 20 def prompt message, exit_on_exit: true message.is_a! String message.concat " " input = Readline.safe_readline message if input.nil? puts exit end input.chomp! exit if input == "exit" and exit_on_exit input end
prompt_yn(message, default: nil)
click to toggle source
# File lib/vv/readline_methods.rb, line 39 def prompt_yn(message, default: nil) default = true if default == "y" or default == "Y" default = false if default == "n" or default == "N" option = case default when nil "[y/n]" when false "[y/N]" when true "[Y/n]" end option.prepend " " message += option answer = nil loop do input = prompt(message) answer = default if input == "" answer = true if input == "y" or input == "Y" answer = false if input == "n" or input == "N" break unless answer.nil? puts "Unrecognized input. Please enter response again." end answer end
safe_readline(prompt)
click to toggle source
# File lib/vv/readline_methods.rb, line 8 def safe_readline(prompt) stty_save = `stty -g`.chomp begin Readline.readline prompt rescue Interrupt puts system("stty", stty_save) exit end end
vv_enabled?()
click to toggle source
# File lib/vv/readline_methods.rb, line 3 def vv_enabled? true end
Private Instance Methods
prompt(message, exit_on_exit: true)
click to toggle source
# File lib/vv/readline_methods.rb, line 20 def prompt message, exit_on_exit: true message.is_a! String message.concat " " input = Readline.safe_readline message if input.nil? puts exit end input.chomp! exit if input == "exit" and exit_on_exit input end
prompt_yn(message, default: nil)
click to toggle source
# File lib/vv/readline_methods.rb, line 39 def prompt_yn(message, default: nil) default = true if default == "y" or default == "Y" default = false if default == "n" or default == "N" option = case default when nil "[y/n]" when false "[y/N]" when true "[Y/n]" end option.prepend " " message += option answer = nil loop do input = prompt(message) answer = default if input == "" answer = true if input == "y" or input == "Y" answer = false if input == "n" or input == "N" break unless answer.nil? puts "Unrecognized input. Please enter response again." end answer end
safe_readline(prompt)
click to toggle source
# File lib/vv/readline_methods.rb, line 8 def safe_readline(prompt) stty_save = `stty -g`.chomp begin Readline.readline prompt rescue Interrupt puts system("stty", stty_save) exit end end
vv_enabled?()
click to toggle source
# File lib/vv/readline_methods.rb, line 3 def vv_enabled? true end