rehype-remark
rehype plugin to bridge or mutate to remark.
Tiny wrapper around hast-util-to-mdast
.
Note!
This plugin is ready for the new parser in remark (remarkjs/remark#536
). No change is needed: it works exactly the same now as it did before!
Install
npm:
npm install rehype-remark
Use
Say our example.js
looks as follows:
var unified = require('unified')
var createStream = require('unified-stream')
var parse = require('rehype-parse')
var rehype2remark = require('rehype-remark')
var stringify = require('remark-stringify')
var processor = unified().use(parse).use(rehype2remark).use(stringify)
process.stdin.pipe(createStream(processor)).pipe(process.stdout)
Now, when running the following in a terminal (2>/dev/null
is just to silence Curl’s debugging output):
curl https://example.com 2>/dev/null | node example.js
stdout(4) yields:
# Example Domain
This domain is for use in illustrative examples in documents. You may use this domain in literature without prior coordination or asking for permission.
[More information...](https://www.iana.org/domains/example)
API
origin.use(rehype2remark[, destination][, options])
rehype (hast) plugin to bridge or mutate to remark (mdast).
destination
If given (Unified
), runs the destination processor with the new mdast tree, then, after running discards that tree and continues on running the origin processor with the original hast tree (bridge-mode). Otherwise, passes the tree to further plugins (mutate-mode).
options
Options are passed to hast-util-to-mdast
. Note that options.document
defaults to true
in rehype-remark
, as this plugin is mostly used with blocks.
Security
Use of rehype-remark
can open you up to a cross-site scripting (XSS) attack if the tree is unsafe. Use rehype-sanitize
to make the tree safe.
Related
remark-rehype
— Transform Markdown (mdast) to HTML (hast)rehype-retext
— Transform HTML (hast) to natural language (nlcst)remark-retext
— Transform Markdown (mdast) to natural language (nlcst)
Contribute
See contributing.md
in rehypejs/.github
for ways to get started. See support.md
for ways to get help.
This project has a code of conduct. By interacting with this repository, organization, or community you agree to abide by its terms.