class Cureutils::CLI

The class represents the cli interface

Public Class Methods

exit_on_failure?() click to toggle source
# File lib/cureutils/cli.rb, line 23
def exit_on_failure?
  true
end

Public Instance Methods

date(fmt = '+%F %H:%M:%S @P') click to toggle source

Original date command’s default is ‘+%a %b %e %H:%M:%S %Z %Y @P’ However, I would like to adopt this setting.

# File lib/cureutils/cli.rb, line 145
def date(fmt = '+%F %H:%M:%S @P')
  logic = DateLogic.new
  logic.opt_date(options[:date])
  logic.opt_file(options[:file])
  logic.format = fmt
  exit(logic.print_results)
end
echo() click to toggle source
# File lib/cureutils/cli.rb, line 126
def echo # rubocop:disable Metrics/AbcSize
  logic = EchoLogic.new
  logic.precure(options[:precure])
  logic.msg_attack(options[:attack])
  logic.nosleep(options[:quick])
  logic.style(options[:style])
  exit(logic.print_results)
end
girls() click to toggle source
# File lib/cureutils/cli.rb, line 57
def girls # rubocop:disable Metrics/MethodLength
  girls = Precure.all_girls
  girls.delete(Cure.echo) unless options[:movie]
  if options['full-name'.to_sym]
    girls.each do |v|
      puts v.full_name
    end
  else
    girls.each do |v|
      puts v.human_name
    end
  end
end
grep(default_pat = '[:precure_name:]', filename = nil) click to toggle source
# File lib/cureutils/cli.rb, line 91
def grep(default_pat = '[:precure_name:]', filename = nil) # rubocop:disable Metrics/AbcSize, Metrics/LineLength
  logic = GrepLogic.new
  logic.source_input(filename)
  logic.pattern(default_pat.clone, options['extended-regexp'.to_sym])
  # Check the file discriptor to check the pipe exists or not.
  logic.option_colorize($stdout.isatty)
  logic.option_only(options['only-matching'.to_sym])
  # Print matched lines.
  exit(logic.print_results)
end
humanize() click to toggle source
# File lib/cureutils/cli.rb, line 42
def humanize
  logic = TranslateLogic.new
  logic.translate_from_to('[:precure_name:]', '[:human_name:]')
  logic.in = $stdin
  exit(logic.print_results)
end
janken() click to toggle source
# File lib/cureutils/cli.rb, line 154
def janken
  logic = JankenLogic.new
  exit(logic.janken.to_i)
end
precures() click to toggle source
# File lib/cureutils/cli.rb, line 75
def precures
  cures = Precure.all_girls
  cures.delete(Cure.echo) unless options[:movie]
  cures.map!(&:precure_name)
  cures.each do |v|
    puts v
  end
end
tr(pat_from = '[:precure_name:]', pat_to = '[:human_name:]') click to toggle source
# File lib/cureutils/cli.rb, line 103
def tr(pat_from = '[:precure_name:]', pat_to = '[:human_name:]')
  logic = TranslateLogic.new
  logic.in = $stdin
  logic.translate_from_to(pat_from, pat_to)
  exit(logic.print_results)
end
transform() click to toggle source
# File lib/cureutils/cli.rb, line 34
def transform
  logic = TranslateLogic.new
  logic.translate_from_to('[:human_name:]', '[:precure_name:]')
  logic.in = $stdin
  exit(logic.print_results)
end
version() click to toggle source
# File lib/cureutils/cli.rb, line 29
def version
  puts "#{Cureutils.name} #{Cureutils::Version}"
end