module Cliprompt
Constants
- MSG_CHOSE_A_NUMBER
- MSG_CHOSE_IN_LIST
- MSG_INPUT_A_NUMBER
- MSG_MANDATORY_TEXT
- MSG_YES_OR_NO
- VERSION
Public Instance Methods
ask(question, *options)
click to toggle source
interactive setup of option
# File lib/cliprompt.rb, line 17 def ask(question, *options) if options[0].class == Optionset opts = options[0] else opts = Optionset.new(*options) end output.print "#{question} #{opts.display}" answer = input.gets.chomp output.flush opts.validate(question, answer) end
guess(env, question, *options)
click to toggle source
if environment var is set, use it, otherwise, ask for a value
# File lib/cliprompt.rb, line 30 def guess(env, question, *options) opts = Optionset.new(*options) if ENV[env] opts.validate(question, ENV[env]) else ask question, opts end end
input()
click to toggle source
defaults to STDIN
# File lib/cliprompt.rb, line 58 def input @@input ||= STDIN end
output()
click to toggle source
defaults to STDOUT
# File lib/cliprompt.rb, line 63 def output @@output ||= STDOUT end
say(message)
click to toggle source
output a message message - string to output
# File lib/cliprompt.rb, line 41 def say(message) output.puts message end
setio(input, output)
click to toggle source
makes possible to set input and output
# File lib/cliprompt.rb, line 52 def setio(input, output) @@input = input @@output = output end
shout(message)
click to toggle source
paints a message in bold and red and output it message - string to paint
# File lib/cliprompt.rb, line 47 def shout(message) output.puts Paint[message, :bold, :red ] end