Class: Rainbow::StringUtils
- Inherits:
-
Object
- Object
- Rainbow::StringUtils
- Defined in:
- lib/rainbow/string_utils.rb
Class Method Summary collapse
Class Method Details
.uncolor(string) ⇒ Object
16 17 18 19 |
# File 'lib/rainbow/string_utils.rb', line 16 def self.uncolor(string) # See http://www.commandlinefu.com/commands/view/3584/remove-color-codes-special-characters-with-sed string.gsub(/\e\[[0-9;]*m/, '') end |
.wrap_with_sgr(string, codes) ⇒ Object
3 4 5 6 7 8 9 10 11 12 13 14 |
# File 'lib/rainbow/string_utils.rb', line 3 def self.wrap_with_sgr(string, codes) return string if codes.empty? seq = "\e[" + codes.join(";") + "m" match = string.match(/^(\e\[([\d;]+)m)*/) seq_pos = match.end(0) string = string[0...seq_pos] + seq + string[seq_pos..-1] string += "\e[0m" unless string =~ /\e\[0m$/ string end |