Module: Ansi256
- Defined in:
- lib/ansi256.rb,
lib/ansi256/code.rb,
lib/ansi256/mixin.rb,
lib/ansi256/version.rb
Defined Under Namespace
Modules: Mixin
Constant Summary collapse
- CODE =
{ :reset => 0, :bold => 1, :underline => 4, :black => 30, :red => 31, :green => 32, :yellow => 33, :blue => 34, :magenta => 35, :cyan => 36, :white => 37, :on_black => 40, :on_red => 41, :on_green => 42, :on_yellow => 43, :on_blue => 44, :on_magenta => 45, :on_cyan => 46, :on_white => 47, }.freeze
- NAMED_COLORS =
Set[ :black, :red, :green, :yellow, :blue, :magenta, :cyan, :white, ].freeze
- VERSION =
"0.2.1"
Class Method Summary collapse
Class Method Details
.bg(code, str = nil) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/ansi256.rb', line 20 def bg code, str = nil if str wrap str, Ansi256.bg(code) elsif NAMED_COLORS.include?(code) "\e[#{CODE[code] + 10}m" elsif code.is_a?(Fixnum) && (0..255).include?(code) "\e[48;5;#{code}m" else raise ArgumentError, "Invalid color code: #{code}" end end |
.fg(code, str = nil) ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/ansi256.rb', line 8 def fg code, str = nil if str wrap str, Ansi256.fg(code) elsif NAMED_COLORS.include?(code) "\e[#{CODE[code]}m" elsif code.is_a?(Fixnum) && (0..255).include?(code) "\e[38;5;#{code}m" else raise ArgumentError, "Invalid color code: #{code}" end end |
.plain(str) ⇒ Object
42 43 44 |
# File 'lib/ansi256.rb', line 42 def plain str str.gsub(PATTERN, '') end |