Add missing example to readme
This commit is contained in:
parent
9e252ca2e8
commit
4f0b884867
1 changed files with 43 additions and 0 deletions
43
readme.md
43
readme.md
|
@ -32,6 +32,16 @@ npm install remark-directive
|
||||||
Say we have the following file, `example.md`:
|
Say we have the following file, `example.md`:
|
||||||
|
|
||||||
```markdown
|
```markdown
|
||||||
|
:::main{#readme}
|
||||||
|
|
||||||
|
Lorem:br
|
||||||
|
ipsum.
|
||||||
|
|
||||||
|
::hr{.red}
|
||||||
|
|
||||||
|
A :i[lovely] language know as :abbr[HTML]{title="HyperText Markup Language"}.
|
||||||
|
|
||||||
|
:::
|
||||||
```
|
```
|
||||||
|
|
||||||
And our script, `example.js`, looks as follows:
|
And our script, `example.js`, looks as follows:
|
||||||
|
@ -42,22 +52,55 @@ var report = require('vfile-reporter')
|
||||||
var unified = require('unified')
|
var unified = require('unified')
|
||||||
var parse = require('remark-parse')
|
var parse = require('remark-parse')
|
||||||
var directive = require('remark-directive')
|
var directive = require('remark-directive')
|
||||||
|
var remark2rehype = require('remark-rehype')
|
||||||
|
var format = require('rehype-format')
|
||||||
var stringify = require('rehype-stringify')
|
var stringify = require('rehype-stringify')
|
||||||
|
var visit = require('unist-util-visit')
|
||||||
|
var h = require('hastscript')
|
||||||
|
|
||||||
unified()
|
unified()
|
||||||
.use(parse)
|
.use(parse)
|
||||||
.use(directive)
|
.use(directive)
|
||||||
|
.use(htmlDirectives)
|
||||||
.use(remark2rehype)
|
.use(remark2rehype)
|
||||||
|
.use(format)
|
||||||
.use(stringify)
|
.use(stringify)
|
||||||
.process(vfile.readSync('example.md'), function (err, file) {
|
.process(vfile.readSync('example.md'), function (err, file) {
|
||||||
console.error(report(err || file))
|
console.error(report(err || file))
|
||||||
console.log(String(file))
|
console.log(String(file))
|
||||||
})
|
})
|
||||||
|
|
||||||
|
// This plugin is just an example! You can handle directives however you please!
|
||||||
|
function htmlDirectives() {
|
||||||
|
return transform
|
||||||
|
|
||||||
|
function transform(tree) {
|
||||||
|
visit(tree, ['textDirective', 'leafDirective', 'containerDirective'], ondirective)
|
||||||
|
}
|
||||||
|
|
||||||
|
function ondirective(node) {
|
||||||
|
var data = node.data || (node.data = {})
|
||||||
|
var hast = h(node.name, node.attributes)
|
||||||
|
|
||||||
|
data.hName = hast.tagName
|
||||||
|
data.hProperties = hast.properties
|
||||||
|
}
|
||||||
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
Now, running `node example` yields:
|
Now, running `node example` yields:
|
||||||
|
|
||||||
|
```txt
|
||||||
|
example.md: no issues found
|
||||||
|
```
|
||||||
|
|
||||||
```html
|
```html
|
||||||
|
example.md: no issues found
|
||||||
|
<main id="readme">
|
||||||
|
<p>Lorem<br>ipsum.</p>
|
||||||
|
<hr class="red">
|
||||||
|
<p>A <i>lovely</i> language know as <abbr title="HyperText Markup Language">HTML</abbr>.</p>
|
||||||
|
</main>
|
||||||
```
|
```
|
||||||
|
|
||||||
## API
|
## API
|
||||||
|
|
Loading…
Add table
Reference in a new issue