aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/utils.rb
diff options
context:
space:
mode:
authorMarkus Reiter2016-08-26 16:04:47 +0200
committerMarkus Reiter2016-10-01 20:00:49 +0200
commit6d8ee395fa5878282a1ce3975b632103448be042 (patch)
tree557520df749494a6a58ee54a139d4238ad41380d /Library/Homebrew/utils.rb
parent19e633f1900ea910c2a9db85dc7c7bea0825676d (diff)
downloadbrew-6d8ee395fa5878282a1ce3975b632103448be042.tar.bz2
Refactor Tty.
Diffstat (limited to 'Library/Homebrew/utils.rb')
-rw-r--r--Library/Homebrew/utils.rb92
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