string-width

Get the visual width of a string - the number of columns required to display it

Some Unicode characters are fullwidtharrow-up-right and use double the normal width. ANSI escape codesarrow-up-right are stripped and doesn't affect the width.

Useful to be able to measure the actual width of command-line output.

Install

$ npm install string-width

Usage

import stringWidth from 'string-width';

stringWidth('a');
//=> 1

stringWidth('');
//=> 2

stringWidth('\u001B[1m古\u001B[22m');
//=> 2

API

stringWidth(string, options?)

string

Type: string

The string to be counted.

options

Type: object

ambiguousIsNarrow

Type: boolean Default: false

Count ambiguous width charactersarrow-up-right as having narrow width (count of 1) instead of wide width (count of 2).


Get professional support for this package with a Tidelift subscriptionarrow-up-right Tidelift helps make open source sustainable for maintainers while giving companies assurances about security, maintenance, and licensing for their dependencies.

Last updated