sirrobert-terminal-ansi v0.3.0
Overview
ANSI color codes for the terminal in node.
Usage
Installation
Install with
npm install --save sirrobert-terminal-ansiInvocation
Invoke in the normal way:
const ANSI = require(* sirrobert-terminal-ansi* );The exported obejct, ANSI (name it whatever you like), is a nested hash.
It looks like this:
var codes = {
"off" : '\u001b[0m',
foreground: {
"normal" : '\u001b[39m',
"bold" : "\u001b[1m",
"faint" : "\u001b[2m",
// ...
},
background: {
"normal" : '\u001b[49m',
"black" : "\u001b[40m",
"red" : "\u001b[41m",
// ...
}
};Note that these are just strings. That means you can compound them using string concatenation:
console.log(ANSI.bg.blue, "This has a blue background.", ANSI.reset);
process.stdout.write(ANSI.bg.green, "This has a green background.", ANSI.reset);Of course, feel free to assign them locally:
local fg = ANSI.fg;
local bg = ANSI.bg;
console.log(bg.red + fg.black + "The A-Team!" + ANSI.reset);And you don't have to reset after each line, either.
local fg = ANSI.fg;
local bg = ANSI.bg;
console.log(bg.red + fg.black); // Prints an apparently blank line.
console.log("The A-Team Rules!");
console.log("Everone else Droolz!");
console.log("This text is also super cool!");
console.log(ANSI.reset); // Prints an apparently blank line.Codes
The codes are broken up into background and foreground. You can call them
with .foreground and .background respectively (or .fg and .bg for
short).
Obviously the actual output colors depend on the mappings of your terminal.
The available modifiers are:
ANSI
- .off
Foreground
For example,
ANSI.foreground.boldorANSI.foreground.blue.normal
Modifiers
bold
- faint
- standout
- underline
- blink
- reverse
- hidden
- no-standout
- no-underline
- no-blink
no-reverse
Colors
black
- red
- green
- yellow
- blue
- magenta
- cyan
white
Light Colors
dark_gray (or "light_black", but that's yucky.)
- light_red
- light_green
- light_yellow
- light_blue
- light_magenta
- light_cyan
- light_gray
Background
For example,
ANSI.background.redorANSI.bg.light_blue.normal
Core Colors
black
- red
- green
- yellow
- blue
- magenta
- cyan
white
Extended Colors
dark_gray
- light_red
- light_green
- light_yellow
- light_blue
- light_magenta
- light_cyan
- light_gray
Convenience Aliases
In addition, there are some convenience aliases.
ANSI.foregroundcan be writtenANSI.fg.ANSI.backgroundcan be writtenANSI.bg.ANSI.resetis an alias forANSI.fg.normal + ANSI.bg.normal.
9 years ago