UNPKG

pretty-ansi

Version:

Convert ANSI escape sequences to human readable text

58 lines (38 loc) 1.98 kB
# pretty-ansi [![version][version-badge]][version-url] [![license][license-badge]][license-url] [![packagephobia][packagephobia-badge]][packagephobia-url] [![coverage][coverage-badge]][coverage-url] Convert ANSI escape sequences to human readable text. --- This utility converts [ANSI escape sequences](https://en.wikipedia.org/wiki/ANSI_escape_code) to human readable text. It supports color, style and cursor control escapes and works with vanilla sequences as well as the output from libraries like `chalk`, `colors`, `ansi-escapes`, `ansi-styles` or `terminal-kit`. ## Install ```bash npm add -D pretty-ansi ``` ## Usage For example, it can be useful to test the output of a command line tool: ```js import assert from "node:assert"; import test from "node:test"; import prettyAnsi from "pretty-ansi"; test("command output", () => { const commandOutput = "\u001b[3;32mSuccess!\u001b[0m"; assert.strictEqual(prettyAnsi(commandOutput), "<italic, green>Success!</>"); }); ``` ## Notes Currently only 16 colors are all supported. Keep in mind that the escape sequences are not validated. Unrecognized sequence will print as `<ESC>[a1b2c3`, or as `<?>` in case this is a color or style sequence. ## Related [`jest-serializer-ansi-escapes`](https://github.com/mrazauskas/jest-serializer-ansi-escapes) — Jest snapshot serializer for ANSI escape sequences. ## License [MIT][license-url] [version-badge]: https://badgen.net/npm/v/pretty-ansi [version-url]: https://npmjs.com/package/pretty-ansi [license-badge]: https://badgen.net/github/license/mrazauskas/pretty-ansi [license-url]: https://github.com/mrazauskas/pretty-ansi/blob/main/LICENSE.md [packagephobia-badge]: https://badgen.net/packagephobia/install/pretty-ansi [packagephobia-url]: https://packagephobia.com/result?p=pretty-ansi [coverage-badge]: https://badgen.net/codacy/coverage/3a26cda9352643b589953c686f921c40 [coverage-url]: https://app.codacy.com/gh/mrazauskas/pretty-ansi/coverage/dashboard