Package Exports
- rehype-format
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (rehype-format) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
rehype-format

Format HTML with rehype.
Installation
npm:
npm install rehype-format
Usage
Say we have the following file, index.html
:
<!doCTYPE HTML><html>
<head>
<title>Hello!</title>
<meta charset=utf8>
</head>
<body><section> <p>hi there</p>
</section>
</body>
</html>
And our script, example.js
, looks as follows:
var vfile = require('to-vfile');
var report = require('vfile-reporter');
var rehype = require('rehype');
var format = require('rehype-format');
rehype().use(format).process(vfile.readSync('index.html'), function (err, file) {
console.error(report(err || file));
console.log(String(file));
});
Now, running node example
yields:
index.html: no issues found
<!DOCTYPE html>
<html>
<head>
<title>Hello!</title>
<meta charset="utf8">
</head>
<body>
<section>
<p>hi there</p>
</section>
</body>
</html>
API
rehype().use(format[, options])
Format white-space in the processed tree.
- Collapse all white-space (to a single space or newline);
- Remove unneeded white-space;
- Inject needed newlines and indentation;
- Indent previously collapsed newlines properly.
All superfluous white-space is removed. However, as newlines are kept (and later properly indented), your code will still line-wrap as expected.
options
indent
(number
,string
, default:2
) — Indentation per level. When number, uses that amount of spaces. Whenstring
, uses that per indentation level.indentInitial
(boolean
, default:true
) — Whether to indent the first level (usually, in thehtml
element, thus not indentinghead
andbody
).blanks
(Array.<string>
, default:[]
) — List of tag-names, which, when next to each other, are joined by a blank line (\n\n
). For example, when['head', 'body']
is given, a blank line is added between these two.