By default, resets everything to the terminal’s defaults.
Note:
The escape sequence inserted at the end of the string by terminal-related
methods of String
resets all character attributes to the terminal’s
defaults. So, when combining format a
and b
, something like
("foo".a + " bar").b
will not work as expected, but "foo".a.b + " bar".b
will. You may also use TermCharFormat
(this class).
Usage example:
print "{(new TermCharFormat).yellow_fg.bold}a{(new TermCharFormat).yellow_fg}b{new TermCharFormat}"
console :: TermCharFormat :: black_bg
Apply a black background and returnself
.
console :: TermCharFormat :: black_fg
Apply a black foreground and returnself
.
console :: TermCharFormat :: blink
Apply blinking or bold weight and returnself
.
console :: TermCharFormat :: blue_bg
Apply a blue background and returnself
.
console :: TermCharFormat :: blue_fg
Apply a blue foreground and returnself
.
console :: TermCharFormat :: cyan_bg
Apply a cyan background and returnself
.
console :: TermCharFormat :: cyan_fg
Apply a cyan foreground and returnself
.
console :: TermCharFormat :: default
Apply normal (default) format and returnself
.
console :: TermCharFormat :: default_bg
Apply the default background and returnself
.
console :: TermCharFormat :: default_fg
Apply the default foreground and returnself
.
console :: TermCharFormat :: defaultinit
console :: TermCharFormat :: from
Copies the attributes from the specified format.console :: TermCharFormat :: green_bg
Apply a green background and returnself
.
console :: TermCharFormat :: green_fg
Apply a green foreground and returnself
.
console :: TermCharFormat :: inverse
Apply reverse video and returnself
.
console :: TermCharFormat :: magenta_bg
Apply a magenta background and returnself
.
console :: TermCharFormat :: magenta_fg
Apply a magenta foreground and returnself
.
console :: TermCharFormat :: normal_weight
Apply normal weight and returnself
.
console :: TermCharFormat :: not_underlined
Add the attribute that disable underlining and returnself
.
console :: TermCharFormat :: positive
Add the attribute that disable reverse video and returnself
.
console :: TermCharFormat :: red_bg
Apply a red background and returnself
.
console :: TermCharFormat :: red_fg
Apply a red foreground and returnself
.
console :: TermCharFormat :: steady
Add the attribute that disable blinking and returnself
.
console :: TermCharFormat :: underline
Apply underlining and returnself
.
console :: TermCharFormat :: white_bg
Apply a white background and returnself
.
console :: TermCharFormat :: white_fg
Apply a white foreground and returnself
.
console :: TermCharFormat :: yellow_bg
Apply a yellow background and returnself
.
console :: TermCharFormat :: yellow_fg
Apply a yellow foreground and returnself
.
console $ TermCharFormat :: SELF
Type of this instance, automatically specialized in every classconsole :: TermCharFormat :: black_bg
Apply a black background and returnself
.
console :: TermCharFormat :: black_fg
Apply a black foreground and returnself
.
console :: TermCharFormat :: blink
Apply blinking or bold weight and returnself
.
console :: TermCharFormat :: blue_bg
Apply a blue background and returnself
.
console :: TermCharFormat :: blue_fg
Apply a blue foreground and returnself
.
core :: Object :: class_factory
Implementation used byget_class
to create the specific class.
console :: TermCharFormat :: cyan_bg
Apply a cyan background and returnself
.
console :: TermCharFormat :: cyan_fg
Apply a cyan foreground and returnself
.
console :: TermCharFormat :: default
Apply normal (default) format and returnself
.
console :: TermCharFormat :: default_bg
Apply the default background and returnself
.
console :: TermCharFormat :: default_fg
Apply the default foreground and returnself
.
console :: TermCharFormat :: defaultinit
console :: TermEscape :: defaultinit
core :: Object :: defaultinit
console :: TermCharFormat :: from
Copies the attributes from the specified format.console :: TermCharFormat :: green_bg
Apply a green background and returnself
.
console :: TermCharFormat :: green_fg
Apply a green foreground and returnself
.
console :: TermCharFormat :: inverse
Apply reverse video and returnself
.
core :: Object :: is_same_instance
Return true ifself
and other
are the same instance (i.e. same identity).
core :: Object :: is_same_serialized
Isself
the same as other
in a serialization context?
core :: Object :: is_same_type
Return true ifself
and other
have the same dynamic type.
console :: TermCharFormat :: magenta_bg
Apply a magenta background and returnself
.
console :: TermCharFormat :: magenta_fg
Apply a magenta foreground and returnself
.
console :: TermCharFormat :: normal_weight
Apply normal weight and returnself
.
console :: TermCharFormat :: not_underlined
Add the attribute that disable underlining and returnself
.
core :: Object :: output_class_name
Display class name on stdout (debug only).console :: TermCharFormat :: positive
Add the attribute that disable reverse video and returnself
.
console :: TermCharFormat :: red_bg
Apply a red background and returnself
.
console :: TermCharFormat :: red_fg
Apply a red foreground and returnself
.
console :: TermCharFormat :: steady
Add the attribute that disable blinking and returnself
.
console :: TermCharFormat :: underline
Apply underlining and returnself
.
console :: TermCharFormat :: white_bg
Apply a white background and returnself
.
console :: TermCharFormat :: white_fg
Apply a white foreground and returnself
.
console :: TermCharFormat :: yellow_bg
Apply a yellow background and returnself
.
console :: TermCharFormat :: yellow_fg
Apply a yellow foreground and returnself
.
# ANSI/VT100 code to change character look (SGR).
#
# By default, resets everything to the terminal’s defaults.
#
# Note:
#
# The escape sequence inserted at the end of the string by terminal-related
# methods of `String` resets all character attributes to the terminal’s
# defaults. So, when combining format `a` and `b`, something like
# `("foo".a + " bar").b` will not work as expected, but `"foo".a.b + " bar".b`
# will. You may also use `TermCharFormat` (this class).
#
# Usage example:
#
# print "{(new TermCharFormat).yellow_fg.bold}a{(new TermCharFormat).yellow_fg}b{new TermCharFormat}"
class TermCharFormat
super TermEscape
private var attributes: Array[String] = new Array[String]
# Copies the attributes from the specified format.
init from(format: TermCharFormat) do
attributes.add_all(format.attributes)
end
redef fun to_s do return "{csi}{attributes.join(";")}m"
# Apply the specified SGR and return `self`.
private fun apply(sgr: String): TermCharFormat do
attributes.add(sgr)
return self
end
# Apply normal (default) format and return `self`.
fun default: TermCharFormat do return apply("0")
# Apply bold weight and return `self`.
fun bold: TermCharFormat do return apply("1")
# Apply underlining and return `self`.
fun underline: TermCharFormat do return apply("4")
# Apply blinking or bold weight and return `self`.
fun blink: TermCharFormat do return apply("5")
# Apply reverse video and return `self`.
fun inverse: TermCharFormat do return apply("7")
# Apply normal weight and return `self`.
fun normal_weight: TermCharFormat do return apply("22")
# Add the attribute that disable underlining and return `self`.
fun not_underlined: TermCharFormat do return apply("24")
# Add the attribute that disable blinking and return `self`.
fun steady: TermCharFormat do return apply("25")
# Add the attribute that disable reverse video and return `self`.
fun positive: TermCharFormat do return apply("27")
# Apply a black foreground and return `self`.
fun black_fg: TermCharFormat do return apply("30")
# Apply a red foreground and return `self`.
fun red_fg: TermCharFormat do return apply("31")
# Apply a green foreground and return `self`.
fun green_fg: TermCharFormat do return apply("32")
# Apply a yellow foreground and return `self`.
fun yellow_fg: TermCharFormat do return apply("33")
# Apply a blue foreground and return `self`.
fun blue_fg: TermCharFormat do return apply("34")
# Apply a magenta foreground and return `self`.
fun magenta_fg: TermCharFormat do return apply("35")
# Apply a cyan foreground and return `self`.
fun cyan_fg: TermCharFormat do return apply("36")
# Apply a white foreground and return `self`.
fun white_fg: TermCharFormat do return apply("37")
# Apply the default foreground and return `self`.
fun default_fg: TermCharFormat do return apply("39")
# Apply a black background and return `self`.
fun black_bg: TermCharFormat do return apply("40")
# Apply a red background and return `self`.
fun red_bg: TermCharFormat do return apply("41")
# Apply a green background and return `self`.
fun green_bg: TermCharFormat do return apply("42")
# Apply a yellow background and return `self`.
fun yellow_bg: TermCharFormat do return apply("43")
# Apply a blue background and return `self`.
fun blue_bg: TermCharFormat do return apply("44")
# Apply a magenta background and return `self`.
fun magenta_bg: TermCharFormat do return apply("45")
# Apply a cyan background and return `self`.
fun cyan_bg: TermCharFormat do return apply("46")
# Apply a white background and return `self`.
fun white_bg: TermCharFormat do return apply("47")
# Apply the default background and return `self`.
fun default_bg: TermCharFormat do return apply("49")
end
lib/console/console.nit:171,1--284,3