0.1.2 • Published 8 years ago

reshape-beautify v0.1.2

Weekly downloads
104
License
MIT
Repository
github
Last release
8 years ago

Reshape Beautify

npm tests dependencies coverage

A reshape plugin that pretty-prints your html

Note: This project is in early development, and versioning is a little different. Read this for more details.

Installation

npm install reshape-beautify --save

Note: This project is compatible with node v6+ only

Usage

Add it as a reshape plugin:

const reshape = require('reshape')
const beautify = require('reshape-beautify')

reshape({ plugins: beautify(/* options */) })
  .process(htmlString)
  .then((res) => console.log(res.output()))

...and that's it! You can specify any options as listed below to customize the behavior.

This plugin will ensure that all tags are correctly indented. However, it will not make changes to any tag that contains a plain text node, because this could interfere with the way the content looks. For example, this crappy html:

 <head>
    <title>bad indentation</title>
<meta name='author' content='not me'>
      </head>
  <body><section>    <p>hi there</p>
     </section>
 </body>

Would be transformed as such:

<head>
  <title>bad indentation</title>
  <meta name='author' content='not me'>
</head>
<body>
  <section>
    <p>hi there</p>
  </section>
</body>

Wow, so clean! It will do the same for minified html:

<body><p>hi there</p><div class='wow'>this is minified</div></body>

Is transformed to:

<body>
  <p>hi there</p>
  <div class='wow'>this is minified</div>
</body>

However, if you have something like this:

<section>
    hello there!
 <span>this is great</span>
    </section>

We won't alter the spaces inside your section content, because this would change the way it looks on the page, so it would turn out exactly the same as the input.

Options

NameDescriptionDefault
indentNumber of spaces to indent your elements2

License & Contributing