cout

0.0.6 • Public • Published

cout

License Dependencies Downloads Version

NPM

A basic JavaScript console utility with sprintf and colors support.

Install

sudo npm install --save cout

Usage

var cout = require('cout'),
//sprintf(..., ...) or use cout.kawari(..., ...)
sprintf = cout.kawari;
 
//configure (optional)
cout.config({
    cout: ['warn', 'error']
});
 
//will print on a single line (no color)
cout("Hello", "World", {hello: "world"}, ['hello', 'world'], 1,2,3).end();
//will print on newlines (can be changed through cout.config()) (no color)
cout("Hello", "World", {hello: "world"}, ['hello', 'world'], 1,2,3).endl();
 
//will print with new line color (see themes for color/level)
cout("Hello", "World", {hello: "world"}, ['hello', 'world'], 1,2,3).warn();
 
//you can customize the background and styles (see styles)
cout("Hello", "World", {hello: "world"}, ['hello', 'world'], 1,2,3).warn({bg: 'green', style: 'bold'});
 
//sprintf from the top level (to keep things simple internally)
cout(sprintf('...', '...')).warn();

Methods

  • end()
  • endl()
  • warn()
  • data()
  • debug()
  • error()
  • help()
  • info()
  • input()
  • prompt()
  • silly()
  • verbose()

Config

The following are the default values but can be changed

//configure
cout.config({
    ....options....
});
 
{
    //specify which level (Array or String) to display
    //by default '*' means display all levels
    //if you pass a level array and want to display end() and endl()
    //just add 'normal' to the array.
    cout: ['*'],
    //default theme/colors/levels
    theme: {
      data: 'grey',
      debug: 'blue',
      error: 'red',
      help: 'cyan',
      info: 'green',
      input: 'grey',
      prompt: 'grey',
      silly: 'rainbow',
      verbose: 'cyan',
      warn: 'yellow',
    },
    //used for pretty printing json/plain objects
    json:{
        space: 2
    },
    //specify the number of new lines.
    newline: '\n'
}
 
 

Styles

Usage

//use style key
{style: ...}
  • reset
  • bold
  • dim
  • italic
  • underline
  • inverse
  • hidden
  • strikethrough

Background color

Usage

//use bg key
{bg: ...}
  • black
  • red
  • green
  • yellow
  • blue
  • magenta
  • cyan
  • white

Time stamp

cout uses Moment.js for time stamps. See Moment.js' docs for formatting and locales.

Usage

Default: false

Acceptable types: Boolean, Plain Object

//boolean
true or false
 
timestamp:{
    //format the time
    format:'dddd',
    //change the locale
    locale: 'ja',
    //spacing: can be tabs or spaces
    space: '\n'
}
 

Changlog

0.0.1

  • Initial commit

0.0.2

  • Cleaned code and removed confusing debug statement.
  • Updated readme

0.0.3

  • Updated readme
  • Removed unnecessary comments.

0.0.4

  • Added node_modules to .gitignore

0.0.5

  • Added boolean support. You can now set {cout:...} to true or false.

0.0.6

  • Added time stamp support. You can pass a Boolean or configure the time stamp's locale and format by passing a plain Object.
  • Added 'normal' level for end() and endl() when using an array with levels.

Package Sidebar

Install

npm i cout

Weekly Downloads

4

Version

0.0.6

License

MIT

Last publish

Collaborators

  • iwatakeshi