undent
TypeScript icon, indicating that this package has built-in type declarations

0.1.0 • Public • Published

undent

Remove indentation from multi-line strings.

build status coverage status monthly downloads npm version license

Installation

npm

npm install undent -g

Usage

import undent from 'undent';
//use as a function
const first = undent(`multi-line\n\tindented\nstring`); // "multi-line\n\t\nstring"

//use as a template literal tag
const second = undent`
    multi-line
        indented
    string
`; // "multi-line\n    indented\nstring"

The algorithm

undent finds the line with the least amount of indentation (excluding whitespace-only lines), and then removes that amount of indentation from every line.

For example:

const text = undent`
        two levels in
    one level in
                three levels in
`;
console.log(text);

prints

    two levels in
one level in
            three levels in

Features

  • remove leading indentation based on the smallest indentation found for all lines (excluding whitespace-only lines)
  • trim the end of every line
  • remove leading/trailing newlines
  • retain existing newline characters (\r or \r\n)

Changelog

Click here to view the changelog.

Readme

Keywords

none

Package Sidebar

Install

npm i undent

Weekly Downloads

2,651

Version

0.1.0

License

MIT

Unpacked Size

13 kB

Total Files

11

Last publish

Collaborators

  • triwav
  • twitchbronbron