An open API service indexing awesome lists of open source software.

https://github.com/martinkolarik/dedent-js

Remove indentation from multiline strings
https://github.com/martinkolarik/dedent-js

javascript

Last synced: 10 months ago
JSON representation

Remove indentation from multiline strings

Awesome Lists containing this project

README

          

# dedent-js

Removes indentation from multiline strings. Works with both tabs and spaces.

Using Babel? [Here's a Babel plugin](https://github.com/MartinKolarik/babel-plugin-dedent) that removes indentation during compile time.

## Installation

```
$ npm install dedent-js
```

## Usage

```js
// Dedent can be also used as a function.
expect(dedent`Line #1
Line #2
Line #3`).to.equal('Line #1\nLine #2\nLine #3');

// Leading/trailing line break is removed.
expect(
dedent`
Line #1
Line #2
Line #3
`
).to.equal('Line #1\nLine #2\nLine #3');

// No more than one leading/trailing line break is removed.
expect(
dedent`

Line #1
Line #2
Line #3

`
).to.equal('\nLine #1\nLine #2\nLine #3\n');

// Only the "base" indentation is removed.
expect(
dedent`
Line #1
Line #2
Line #3
`
).to.equal('Line #1\n\tLine #2\n\t\tLine #3');

// The last line is ignored if it doesn't contain anything else than whitespace.
expect(
function () {
return dedent`
Line #1
Line #2
Line #3
`;
}()
).to.equal('Line #1\nLine #2\nLine #3');

// Escaped characters are NOT ignored.
expect(
dedent`
\tLine #1
\tLine #2
\tLine #3
`
).to.equal('Line #1\nLine #2\nLine #3');
```

## License
Copyright (c) 2015 Martin Kolárik. Released under the MIT license.