123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140 |
- # 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.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**
|