Sha256: f55db5db1ecb2c8ee438c507f0d67fe0a8d515408c85d592ac09bd6b555f8a36
Contents?: true
Size: 1.04 KB
Versions: 1
Compression:
Stored size: 1.04 KB
Contents
require "paint" require "cliprompt/version" require "cliprompt/optionset" module Cliprompt module_function MSG_MANDATORY_TEXT = "Sorry you need to fill that information." MSG_YES_OR_NO = "You need to answer by yes, no, y, n, 1 or 0." MSG_CHOSE_IN_LIST = "You need to chose between the available options." 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 def guess(env, question, *options) opts = Optionset.new *options if ENV[env] opts.validate(question, ENV[env]) else ask question, opts end end def say(message) output.puts message end def shout(message) output.puts Paint[message, :bold, :red ] end def setio(input, output) @@input = input @@output = output end def input @@input ||= STDIN end def output @@output ||= STDOUT end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
cliprompt-0.0.3 | lib/cliprompt.rb |