Giter Club home page Giter Club logo

node-terminal's Introduction

Terminal

Terminal is a small package that can be used with node.js to control terminal output. The package can move the cursor in the terminal and output colored text. It can colorize a message with a simple straightforward markup syntax.

Examples

Some examples from the examples directory.

Colors

Control colored output. See also examples/colors.js. Colors may vary depending on the terminal settings.

Simple color changing:

terminal.color('magenta').write('Unicorn');

This will output Unicorn in magenta (or purple). To change the background color to magenta:

terminal.color('magenta', 'background').write('Unicorn');

Color formatting

Terminal supports formatting strings with colors using a simple syntax. Outputting Unicorn in magenta (like the example above) would look like this:

terminal.colorize('%mUnicorn');

// And changing the background color to magenta
terminal.colorize('%5Unicorn');

Using this syntax we can create Rainbows easily in one line:

terminal.colorize('%rR%ma%ci%bn%yb%go%rw\n');

// Or with background colors
terminal.colorize('%w%1  R  %2  A  %3  I  %4  N  %5  B  %6  O  %7  W  %n ');

The colorize function accepts the following modifiers:

                  text      text            background
      ------------------------------------------------
      %k %K %0    black     dark grey       black
      %r %R %1    red       bold red        red
      %g %G %2    green     bold green      green
      %y %Y %3    yellow    bold yellow     yellow
      %b %B %4    blue      bold blue       blue
      %m %M %5    magenta   bold magenta    magenta
      %p %P       magenta (think: purple)
      %c %C %6    cyan      bold cyan       cyan
      %w %W %7    white     bold white      white

      %F     Blinking, Flashing
      %U     Underline
      %8     Reverse
      %_,%9  Bold

      %n,%N  Resets the color
      %%     A single %

Colored ouput can be reset with the reset function:

terminal.color('red').write('This is red,').reset().write(' and this is not');

License

Terminal is licensed under The MIT License

node-terminal's People

Contributors

mattijs avatar kilianc avatar southern avatar

Stargazers

Robby Valles avatar

Watchers

Robby Valles avatar James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.