You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
145 lines
4.4 KiB
145 lines
4.4 KiB
# Console Control Strings |
|
|
|
A library of cross-platform tested terminal/console command strings for |
|
doing things like color and cursor positioning. This is a subset of both |
|
ansi and vt100. All control codes included work on both Windows & Unix-like |
|
OSes, except where noted. |
|
|
|
## Usage |
|
|
|
```js |
|
var consoleControl = require('console-control-strings') |
|
|
|
console.log(consoleControl.color('blue','bgRed', 'bold') + 'hi there' + consoleControl.color('reset')) |
|
process.stdout.write(consoleControl.goto(75, 10)) |
|
``` |
|
|
|
## Why Another? |
|
|
|
There are tons of libraries similar to this one. I wanted one that was: |
|
|
|
1. Very clear about compatibility goals. |
|
2. Could emit, for instance, a start color code without an end one. |
|
3. Returned strings w/o writing to streams. |
|
4. Was not weighed down with other unrelated baggage. |
|
|
|
## Functions |
|
|
|
### var code = consoleControl.up(_num = 1_) |
|
|
|
Returns the escape sequence to move _num_ lines up. |
|
|
|
### var code = consoleControl.down(_num = 1_) |
|
|
|
Returns the escape sequence to move _num_ lines down. |
|
|
|
### var code = consoleControl.forward(_num = 1_) |
|
|
|
Returns the escape sequence to move _num_ lines righ. |
|
|
|
### var code = consoleControl.back(_num = 1_) |
|
|
|
Returns the escape sequence to move _num_ lines left. |
|
|
|
### var code = consoleControl.nextLine(_num = 1_) |
|
|
|
Returns the escape sequence to move _num_ lines down and to the beginning of |
|
the line. |
|
|
|
### var code = consoleControl.previousLine(_num = 1_) |
|
|
|
Returns the escape sequence to move _num_ lines up and to the beginning of |
|
the line. |
|
|
|
### var code = consoleControl.eraseData() |
|
|
|
Returns the escape sequence to erase everything from the current cursor |
|
position to the bottom right of the screen. This is line based, so it |
|
erases the remainder of the current line and all following lines. |
|
|
|
### var code = consoleControl.eraseLine() |
|
|
|
Returns the escape sequence to erase to the end of the current line. |
|
|
|
### var code = consoleControl.goto(_x_, _y_) |
|
|
|
Returns the escape sequence to move the cursor to the designated position. |
|
Note that the origin is _1, 1_ not _0, 0_. |
|
|
|
### var code = consoleControl.gotoSOL() |
|
|
|
Returns the escape sequence to move the cursor to the beginning of the |
|
current line. (That is, it returns a carriage return, `\r`.) |
|
|
|
### var code = consoleControl.beep() |
|
|
|
Returns the escape sequence to cause the termianl to beep. (That is, it |
|
returns unicode character `\x0007`, a Control-G.) |
|
|
|
### var code = consoleControl.hideCursor() |
|
|
|
Returns the escape sequence to hide the cursor. |
|
|
|
### var code = consoleControl.showCursor() |
|
|
|
Returns the escape sequence to show the cursor. |
|
|
|
### var code = consoleControl.color(_colors = []_) |
|
|
|
### var code = consoleControl.color(_color1_, _color2_, _…_, _colorn_) |
|
|
|
Returns the escape sequence to set the current terminal display attributes |
|
(mostly colors). Arguments can either be a list of attributes or an array |
|
of attributes. The difference between passing in an array or list of colors |
|
and calling `.color` separately for each one, is that in the former case a |
|
single escape sequence will be produced where as in the latter each change |
|
will have its own distinct escape sequence. Each attribute can be one of: |
|
|
|
* Reset: |
|
* **reset** – Reset all attributes to the terminal default. |
|
* Styles: |
|
* **bold** – Display text as bold. In some terminals this means using a |
|
bold font, in others this means changing the color. In some it means |
|
both. |
|
* **italic** – Display text as italic. This is not available in most Windows terminals. |
|
* **underline** – Underline text. This is not available in most Windows Terminals. |
|
* **inverse** – Invert the foreground and background colors. |
|
* **stopBold** – Do not display text as bold. |
|
* **stopItalic** – Do not display text as italic. |
|
* **stopUnderline** – Do not underline text. |
|
* **stopInverse** – Do not invert foreground and background. |
|
* Colors: |
|
* **white** |
|
* **black** |
|
* **blue** |
|
* **cyan** |
|
* **green** |
|
* **magenta** |
|
* **red** |
|
* **yellow** |
|
* **grey** / **brightBlack** |
|
* **brightRed** |
|
* **brightGreen** |
|
* **brightYellow** |
|
* **brightBlue** |
|
* **brightMagenta** |
|
* **brightCyan** |
|
* **brightWhite** |
|
* Background Colors: |
|
* **bgWhite** |
|
* **bgBlack** |
|
* **bgBlue** |
|
* **bgCyan** |
|
* **bgGreen** |
|
* **bgMagenta** |
|
* **bgRed** |
|
* **bgYellow** |
|
* **bgGrey** / **bgBrightBlack** |
|
* **bgBrightRed** |
|
* **bgBrightGreen** |
|
* **bgBrightYellow** |
|
* **bgBrightBlue** |
|
* **bgBrightMagenta** |
|
* **bgBrightCyan** |
|
* **bgBrightWhite** |
|
|
|
|