12

GitHub - sindresorhus/yoctocolors: The smallest and fastest command-line colorin...

 3 years ago
source link: https://github.com/sindresorhus/yoctocolors
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

yoctocolors rainbow

The smallest and fastest command-line coloring package on the internet. Trust me.

The only thing that matters is micro-benchmark performance! zap

Check out Chalk if you want something more mature and comprehensive.

Features

  • 4x faster and 5x smaller than nanocolors
  • Cat friendly
  • An additional color
  • Tree-shakeable, not stirred
  • Actively maintained (at least for another week)
  • No dependencies

Install

npm install yoctocolors

Usage

import * as colors from 'yoctocolors';

console.log(colors.red('Yo!'));

This package does not do color support detection. Check out supports-color if you need that. Node.js will hopefully get built-in support for color support detection at some point.

Styles

Modifiers

  • reset - Reset the current style.
  • bold - Make the text bold.
  • dim - Make the text have lower opacity.
  • italic - Make the text italic. (Not widely supported)
  • underline - Put a horizontal line above the text. (Not widely supported)
  • overline - Put a horizontal line below the text. (Not widely supported)
  • inverse- Invert background and foreground colors.
  • hidden - Print the text but make it invisible.
  • strikethrough - Put a horizontal line through the center of the text. (Not widely supported)

Colors

  • black
  • red
  • green
  • yellow
  • blue
  • magenta
  • cyan
  • white
  • gray

Background colors

  • bgBlack
  • bgRed
  • bgGreen
  • bgYellow
  • bgBlue
  • bgMagenta
  • bgCyan
  • bgWhite
  • bgGray

Prior art

Benchmark

❯ ./test/simple-benchmark.js
nanocolors    31508276 ops/sec
picocolors    32524769 ops/sec
yoctocolors   132894792 ops/sec

Benchmark from nanocolors

See this discussion.

What is yocto?

It's the smallest official unit prefix in the metric system. Much smaller than nano.

Related

  • yoctodelay - Delay a promise a given amount of time
  • chalk - Terminal string styling

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK