Class: Console::Terminal::XTerm
- Inherits:
-
Text
- Object
- Text
- Console::Terminal::XTerm
show all
- Defined in:
- lib/console/terminal/xterm.rb
Constant Summary
collapse
- COLORS =
{
black: 0,
red: 1,
green: 2,
yellow: 3,
blue: 4,
magenta: 5,
cyan: 6,
white: 7,
default: 9,
}
- ATTRIBUTES =
{
normal: 0,
bold: 1,
bright: 1,
faint: 2,
italic: 3,
underline: 4,
blink: 5,
reverse: 7,
hidden: 8,
}
Instance Method Summary
collapse
Methods inherited from Text
#[], #[]=, #initialize, #puts, #write
Instance Method Details
#colors? ⇒ Boolean
53
54
55
|
# File 'lib/console/terminal/xterm.rb', line 53
def colors?
true
end
|
#reset ⇒ Object
79
80
81
|
# File 'lib/console/terminal/xterm.rb', line 79
def reset
"\e[0m"
end
|
#size ⇒ Object
57
58
59
|
# File 'lib/console/terminal/xterm.rb', line 57
def size
@output.winsize
end
|
#style(foreground, background = nil, *attributes) ⇒ Object
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
|
# File 'lib/console/terminal/xterm.rb', line 61
def style(foreground, background = nil, *attributes)
tokens = []
if foreground
tokens << 30 + COLORS.fetch(foreground)
end
if background
tokens << 40 + COLORS.fetch(background)
end
attributes.each do |attribute|
tokens << ATTRIBUTES.fetch(attribute){attribute.to_i}
end
return "\e[#{tokens.join(';')}m"
end
|