babel-plugin-string-minify
v1.0.4
Published
Remove indentation from multiline template strings
Downloads
11
Maintainers
Readme
babel-plugin-dedent
Removes indentation from multiline template strings. Works with both tabs and spaces.
Not using Babel? Here's a runtime version of this plugin.
Installation
$ npm install babel babel-plugin-dedent
$ babel --plugins dedent script.js
Babel v6
v2.x.x of this plugin is required. Older versions are not compatible with Babel v6.
Usage
Indentation will be removed from all strings tagged with dedent
tag (you can also use dedent
as a function, if you need to use your own tag).
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 ignored.
expect(
dedent`
\tLine #1
\tLine #2
\tLine #3
`
).to.equal('\tLine #1\n\tLine #2\n\tLine #3');
License
Copyright (c) 2015 - 2017 Martin Kolárik. Released under the MIT license.