Wordwrap a string with ANSI escape codes

wrap-ansi Build Status Coverage Status

Wordwrap a string with ANSI escape codes


$ npm install --save wrap-ansi


const chalk = require('chalk');
const wrapAnsi = require('wrap-ansi');

const input = 'The quick brown ' + chalk.red('fox jumped over ') +
    'the lazy ' + chalk.green('dog and then ran away with the unicorn.');

console.log(wrapAnsi(input, 20));


wrapAnsi(input, columns, [options])

Wrap words to the specified column width.


Type: string

String with ANSI escape codes. Like one styled by chalk.


Type: number

Number of columns to wrap the text to.


Type: boolean
Default: false

By default the wrap is soft, meaning long words may extend past the column width. Setting this to true will make it hard wrap at the column width.

  • slice-ansi - Slice a string with ANSI escape codes
  • chalk - Terminal string styling done right
  • jsesc - Generate ASCII-only output from Unicode strings. Useful for creating test fixtures.


MIT © Sindre Sorhus

Pincer is a project which aims to provide best library discovery tools for developers. We're growing day by day. We have only npm platform for now but we will add the others as much as we can.