ansi-code
TypeScript icon, indicating that this package has built-in type declarations

1.0.2 • Public • Published

ansi-code

Catalog of ANSI standard codes for ASCII terminals

Install

npm install ansi-code

Usage

import {font, cursor, screen, beep} from 'ansi-code'
 
const write = (...txt: string[]) => process.stdout.write(txt.join(''))
 
// Erase current screen, and move cursor position to top-left
write(
  screen.erase,
  cursor.to(0, 0)
)
 
// Text style
write(
  font.style.bold,
  'This is a bold text',
  font.reset,
  cursor.nextLine()
)
 
// Text color
write(
  font.color.red,
  'This is a red text',
  font.reset,
  cursor.nextLine()
)
 
// Text bgColor
write(
  font.bgColor.blue,
  'This is a text with blue background',
  font.reset,
  cursor.nextLine()
)
 
// Text style, color, and bgColor
write(
  font.style.underline,
  font.color.cyan,
  font.bgColor.red,
  'This is a underlined cyan text with red background',
  font.reset,
  cursor.nextLine()
)

API

Exported variables


font

Const object

Properties:

Name Type Value
reset string \u001B[0m
family object see below
style object see below
color object see below
bgColor object see below

font.family

Name Type Value
default string \u001B[10m
font1 string \u001B[11m
font2 string \u001B[12m
font3 string \u001B[13m
font4 string \u001B[14m
font5 string \u001B[15m

font.style

Name Type Value
bold string \u001B[1m
italic string \u001B[3m
underline string \u001B[4m

font.color

Name Type Value
black string \u001B[30m
red string \u001B[31m
green string \u001B[32m
yellow string \u001B[33m
blue string \u001B[34m
magenta string \u001B[35m
cyan string \u001B[36m
white string \u001B[37m
gray string \u001B[90m
brightRed string \u001B[91m
brightGreen string \u001B[92m
brightYellow string \u001B[93m
brightBlue string \u001B[94m
brightMagenta string \u001B[95m
brightCyan string \u001B[96m
brightWhite string \u001B[97m
rgb function (r: number, g: number, b: number) => \u001B[38;2;${r};${g}${b}m

font.bgColor

Name Type Value
black string \u001B[40m
red string \u001B[41m
green string \u001B[42m
yellow string \u001B[43m
blue string \u001B[44m
magenta string \u001B[45m
cyan string \u001B[46m
white string \u001B[47m
gray string \u001B[100m
brightRed string \u001B[101m
brightGreen string \u001B[102m
brightYellow string \u001B[103m
brightBlue string \u001B[104m
brightMagenta string \u001B[105m
brightCyan string \u001B[106m
brightWhite string \u001B[107m
rgb function (r: number, g: number, b: number) => \u001B[48;2;${r};${g}${b}m

cursor

Const object

Properties:

Name Type Value Description
show string \u001B[?25h Show the cursor
hide string \u001B[?25l Hide the cursor
save string isAppleTerminal ? '\u001B7' : \u001Bs Save current cursor position
restore string isAppleTerminal ? \u001B8 : \u001Bu Restore cursor position if saved before
eraseForward string \u001B[0K Erase from current cursor position to end of the line
eraseBackward string \u001B[1K Erase from beginning of the line to current cursor position
eraseLine string \u001B[2K Erase entire line
eraseDown string \u001B[0J Erase from current cursor position to end of screen
eraseUp string \u001B[1J Erase from beginning of the screen to current cursor position
forward function (n: number) => string Move the cursor n columns forward
backward function (n: number) => string Move the cursor n columns backward
up function (n: number) => string Move the cursor n rows up
down function (n: number) => string Move the cursor n rows down
nextLine function (n: number) => string Move the cursor to beginning of the line n rows down
previsousLine function (n: number) => string Move the cursor to beginning of the line n rows up
move function (x: number,y: number) => string Move the cursor to column x, row y relative to the current cursor position
to function (x: number,y?: number) => string Move the cursor to column x, row y in screen (current view-port). The position starts x: 0, y: 0 from top-left of the screen.

screen

Const object

Properties:

Name Type Value Description
clear string \u001Bc Clear current screen
erase string \u001B[2J Erase entire current screen (the cursor position stays as-is)
eraseWhole string \u001B[3J Erase whole screen including scroll-back buffer (the cursor position stays as-is)
scrollUp function (n: number) => \u001B[${n}S Move entire screen up for n rows, insert new line at bottom
scrollDown function (n: number) => \u001B[${n}T Insert n new lines at the top of screen
setMode function (mode: string) => \u001B[?${mode}h Set mode
resetMode function (mode: string) => \u001B[?${mode}l Reset mode
normalBuffer string \u001B[?47l Switch to normal screen buffer
alternateBuffer string \u001B[?47h Switch to alternate screen buffer
rmcup string \u001B[?1049l Switch to normal screen buffer, clear memory before switching
smcup string \u001B[?1049h Switch to alternate screen buffer, clear memory before switching

beep

Const : \u0007

Readme

Keywords

none

Package Sidebar

Install

npm i ansi-code

Weekly Downloads

1

Version

1.0.2

License

MIT

Unpacked Size

52.4 kB

Total Files

14

Last publish

Collaborators

  • yuhsak