diff options
| author | Markus Reiter | 2016-08-26 16:04:47 +0200 |
|---|---|---|
| committer | Markus Reiter | 2016-10-01 20:00:49 +0200 |
| commit | 6d8ee395fa5878282a1ce3975b632103448be042 (patch) | |
| tree | 557520df749494a6a58ee54a139d4238ad41380d /Library/Homebrew/utils.rb | |
| parent | 19e633f1900ea910c2a9db85dc7c7bea0825676d (diff) | |
| download | brew-6d8ee395fa5878282a1ce3975b632103448be042.tar.bz2 | |
Refactor Tty.
Diffstat (limited to 'Library/Homebrew/utils.rb')
| -rw-r--r-- | Library/Homebrew/utils.rb | 92 |
1 files changed, 9 insertions, 83 deletions
diff --git a/Library/Homebrew/utils.rb b/Library/Homebrew/utils.rb index 58083fe1b..5c0aa601d 100644 --- a/Library/Homebrew/utils.rb +++ b/Library/Homebrew/utils.rb @@ -10,85 +10,11 @@ require "utils/git" require "utils/analytics" require "utils/github" require "utils/curl" - -class Tty - class << self - def strip_ansi(string) - string.gsub(/\033\[\d+(;\d+)*m/, "") - end - - def blue - bold 34 - end - - def white - bold 39 - end - - def magenta - bold 35 - end - - def red - underline 31 - end - - def yellow - underline 33 - end - - def reset - escape 0 - end - - def em - underline 39 - end - - def green - bold 32 - end - - def gray - bold 30 - end - - def highlight - bold 39 - end - - def width - `/usr/bin/tput cols`.strip.to_i - end - - def truncate(str) - w = width - w > 10 ? str.to_s[0, w - 4] : str - end - - private - - def color(n) - escape "0;#{n}" - end - - def bold(n) - escape "1;#{n}" - end - - def underline(n) - escape "4;#{n}" - end - - def escape(n) - "\033[#{n}m" if $stdout.tty? - end - end -end +require "utils/tty" def ohai(title, *sput) title = Tty.truncate(title) if $stdout.tty? && !ARGV.verbose? - puts "#{Tty.blue}==>#{Tty.white} #{title}#{Tty.reset}" + puts "#{Tty.blue}==>#{Tty.reset} #{Tty.bold}#{title}#{Tty.reset}" puts sput end @@ -96,16 +22,16 @@ def oh1(title, options = {}) if $stdout.tty? && !ARGV.verbose? && options.fetch(:truncate, :auto) == :auto title = Tty.truncate(title) end - puts "#{Tty.green}==>#{Tty.white} #{title}#{Tty.reset}" + puts "#{Tty.green}==>#{Tty.reset} #{Tty.bold}#{title}#{Tty.reset}" end # Print a warning (do this rarely) def opoo(warning) - $stderr.puts "#{Tty.yellow}Warning#{Tty.reset}: #{warning}" + $stderr.puts "#{Tty.yellow.underline}Warnin#{Tty.reset.yellow}g:#{Tty.reset} #{warning}" end def onoe(error) - $stderr.puts "#{Tty.red}Error#{Tty.reset}: #{error}" + $stderr.puts "#{Tty.red.underline}Error#{Tty.reset.red}:#{Tty.reset} #{error}" end def ofail(error) @@ -171,9 +97,9 @@ def pretty_installed(f) if !$stdout.tty? f.to_s elsif Emoji.enabled? - "#{Tty.highlight}#{f} #{Tty.green}#{Emoji.tick}#{Tty.reset}" + "#{Tty.bold}#{f} #{Tty.green}#{Emoji.tick}#{Tty.reset}" else - "#{Tty.highlight}#{Tty.green}#{f} (installed)#{Tty.reset}" + "#{Tty.green.bold}#{f} (installed)#{Tty.reset}" end end @@ -181,9 +107,9 @@ def pretty_uninstalled(f) if !$stdout.tty? f.to_s elsif Emoji.enabled? - "#{f} #{Tty.red}#{Emoji.cross}#{Tty.reset}" + "#{Tty.bold}#{f} #{Tty.red}#{Emoji.cross}#{Tty.reset}" else - "#{Tty.red}#{f} (uninstalled)#{Tty.reset}" + "#{Tty.red.bold}#{f} (uninstalled)#{Tty.reset}" end end |
