notes/node_modules/preserve/.verb.md

59 lines
1.3 KiB
Markdown

# {%= name %} {%= badge("fury") %}
> {%= description %}
Useful for protecting tokens, like templates in HTML, from being mutated when the string is transformed in some way, like from a formatter/beautifier.
**Example without `preserve`**
Let's say you want to use [js-beautify] on a string of html with Lo-Dash/Underscore templates, such as: `<ul><li><%= name %></li></ul>`:
js-beautify will render the template unusable (and apply incorrect formatting because of the unfamiliar syntax from the Lo-Dash template):
```html
<ul>
<li>
<%=n ame %>
</li>
</ul>
```
**Example with `preserve`**
Correct.
```html
<ul>
<li><%= name %></li>
</ul>
```
For the record, this is just a random example, I've had very few issues with js-beautify in general. But with or without js-beautify, this kind of token mangling does happen sometimes when you use formatters, beautifiers or similar tools.
## Install
{%= include("install-npm", {save: true}) %}
## Run tests
```bash
npm test
```
## API
{%= apidocs("index.js") %}
## Contributing
Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue]({%= bugs.url %})
## Author
{%= include("author") %}
## License
{%= copyright() %}
{%= license() %}
***
{%= include("footer") %}
[js-beautify]: https://github.com/beautify-web/js-beautify