Module: Rbcli::Msg
- Defined in:
- lib/rbcli/util/msg.rb
Class Method Summary collapse
- .err(message, log: false, color: :yellow) ⇒ Object
- .fatal(message, log: true, color: :red, exitcode: 1) ⇒ Object
- .print(message, log: false, color: nil) ⇒ Object
- .puts(message, log: false, color: nil) ⇒ Object
- .triggered(msg, msg_success, msg_fail = nil, fatality_msg = nil, log: false, success_color: :green, fail_color: :red, newline: false, &block) ⇒ Object
- .yesno(question, default_to_yes: false) ⇒ Object
Class Method Details
.err(message, log: false, color: :yellow) ⇒ Object
13 14 15 16 17 |
# File 'lib/rbcli/util/msg.rb', line 13 def self.err , log: false, color: :yellow Rbcli::log.warn {} if log = .colorize(color) if Rbcli::config[:colorize_output] STDERR.puts end |
.fatal(message, log: true, color: :red, exitcode: 1) ⇒ Object
19 20 21 22 23 24 25 |
# File 'lib/rbcli/util/msg.rb', line 19 def self.fatal , log: true, color: :red, exitcode: 1 Rbcli::log.fatal {"Exited with the message: " + } if log = "Error: #{}" = .colorize(color) if Rbcli::config[:colorize_output] STDERR.puts exit exitcode end |
.print(message, log: false, color: nil) ⇒ Object
2 3 4 5 |
# File 'lib/rbcli/util/msg.rb', line 2 def self.print , log: false, color: nil Rbcli::log.info {} if log STDOUT.print end |
.puts(message, log: false, color: nil) ⇒ Object
7 8 9 10 11 |
# File 'lib/rbcli/util/msg.rb', line 7 def self.puts , log: false, color: nil Rbcli::log.info {} if log = .colorize(color) if Rbcli::config[:colorize_output] STDOUT.puts end |
.triggered(msg, msg_success, msg_fail = nil, fatality_msg = nil, log: false, success_color: :green, fail_color: :red, newline: false, &block) ⇒ Object
29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/rbcli/util/msg.rb', line 29 def self.triggered msg, msg_success, msg_fail = nil, fatality_msg = nil, log: false, success_color: :green, fail_color: :red, newline: false, &block @triggernests.times {msg = ' ' + msg} @triggernests += 1 Rbcli::Msg.send ((newline) ? :puts : :print), msg result = yield @triggernests -= 1 tmsg = (result or msg_fail.nil?) ? msg_success : msg_fail @triggernests.times {tmsg = ' ' + tmsg} tcol = (result or msg_fail.nil?) ? success_color : fail_color Rbcli::Msg.puts tmsg, log: log, color: tcol Rbcli::Msg.fatal fatality_msg, log: log if fatality_msg end |
.yesno(question, default_to_yes: false) ⇒ Object
44 45 46 47 48 49 50 51 52 53 54 55 |
# File 'lib/rbcli/util/msg.rb', line 44 def self.yesno question, default_to_yes: false yes_display = (default_to_yes) ? 'Y' : 'y' no_display = (default_to_yes) ? 'n' : 'N' Rbcli::Msg.print "#{question} (#{yes_display}/#{no_display}): ", log: false if default_to_yes answer = !gets.chomp.casecmp('n').zero? else answer = gets.chomp.casecmp('y').zero? end Rbcli::log.info {"Question: #{question}. Answer: #{answer}"} answer end |