Sha256: 1038f574e2888b00e7e31c1bd8e2d811e2ab700488c692db7249bd968fadcb5f
Contents?: true
Size: 1.56 KB
Versions: 4
Compression:
Stored size: 1.56 KB
Contents
require 'thor' require 'active_support/concern' require 'colorize' module Daigaku module Terminal module Output extend ActiveSupport::Concern included do private def say(text) output = text.split("\n").map {|line| "\t#{line}" }.join("\n") $stdout.puts output end def empty_line $stdout.puts '' end def get(string) $stdout.print "\n\t#{string} " $stdin.gets.strip end def say_info(text) say_box(text, ' ℹ', :light_blue) end def say_warning(text) say_box(text, '⚠ ', :light_red) end def say_box(text, symbol, color) empty_line say line.send(color) empty_line indented_text = text.split("\n").join("\n#{' ' * (symbol.length + 1)}") say indented_text.prepend("#{symbol} ").send(color) empty_line say line.send(color) empty_line end def line(symbol = '-') symbol * 70 end def get_command(command, description) say description loop do cmd = get '>' unless cmd == command say "This was something else. Try \"#{command}\"." next end system cmd break end end def get_confirm(description) say_warning description confirm = get '(yes|no)' yield if confirm == 'yes' && block_given? end end end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
daigaku-0.3.0 | lib/daigaku/terminal/output.rb |
daigaku-0.2.0 | lib/daigaku/terminal/output.rb |
daigaku-0.1.1 | lib/daigaku/terminal/output.rb |
daigaku-0.1.0 | lib/daigaku/terminal/output.rb |