Package Exports
- posthtml-markdownit
- posthtml-markdownit/lib/index.js
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 (posthtml-markdownit) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Introduction
This plugin converts Markdown to HTML using markdown-it.
Before:
<markdown>
# Heading 1
---
Paragraph with some text
*Italic*
__Bold__
- List item 1
- List item 2
- List item 3
</markdown>After:
<h1>Heading 1</h1>
<hr>
<p>Paragraph with some text</p>
<p><em>Italic</em>
<strong>Bold</strong></p>
<ul>
<li>List item 1</li>
<li>List item 2</li>
<li>List item 3</li>
</ul>Install
$ npm i -D posthtml-markdownitUsage
const posthtml = require('posthtml')
const markdown = require('posthtml-markdownit')
posthtml([
markdown()
])
.process('<markdown># Test</markdown>')
.then(result => console.log(result.html))
// <h1>Test</h1>Importing files
You can import and render Markdown files:
Before:
<markdown src="./README.md">
# Imported
</markdown>After:
<!-- contents of README.md here -->
<h1>Imported</h1>Syntax
Tags
Both <markdown> and <md> tags are suported.
Before:
<md>
# Heading 1
</md>After:
<h1>Heading 1</h1>By default, the tags are removed. See the tag attribute if you need a wrapping tag around your Markdown content.
Attributes
You can also use markdown or md attributes on any element:
Before:
<div md>
# Heading 1
</div>After:
<h1>Heading 1</h1>tag
You can use a tag attribute to wrap the resulting markup in a tag:
Before:
<md tag="section">
# Heading 1
</md>After:
<section>
<h1>Heading 1</h1>
</section>inline
You can mark the content to be rendered inline. This is helpful if you're including a file that will be used as an inline element and don't want the enclosing p tags.
Before:
<p class="example">
<markdown src="./example.md" inline>
Imported
</markdown>
</p>After:
<p class="example">Imported</p>Instead of:
<p class="example">
<p>Imported</p>
</p>Options
root
Type: string
Default: ./
A path relative to which markdown files are imported.
encoding
Type: string
Default: utf8
Encoding for imported Markdown files.
markdownit
Type: object
Default: {}
Options passed to markdown-it. See the available options.
plugins
Type: array
Default: []
Plugins for markdown-it.
Example:
markdown({
plugins: [{
plugin: require('markdown-it-emoji'),
options: {} // Options for markdown-it-emoji
}]
})