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
- Host: GitHub
- URL: https://github.com/martinkolarik/dedent-js
- Owner: MartinKolarik
- License: mit
- Created: 2015-09-19T20:03:39.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2020-01-10T22:49:57.000Z (over 6 years ago)
- Last Synced: 2025-09-06T08:51:36.055Z (10 months ago)
- Topics: javascript
- Language: JavaScript
- Homepage:
- Size: 6.84 KB
- Stars: 55
- Watchers: 1
- Forks: 6
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
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.