Skip to content

Remark plugin for selecting and storing code blocks from markdown.

License

Notifications You must be signed in to change notification settings

mrzmmr/remark-code-blocks

Repository files navigation

remark-code-blocks

Remark plugin to extract code nodes from markdown.

Travis Coverage Status

Install

npm i -S remark-code-blocks

Usage

const toVfile = require('to-vfile')
const unified = require('unified')
const parser = require('remark-parser')
const stringify = require('remark-stringify')
const codeblocks = require('remark-code-blocks')

unified()
    .use(parser)
    .use(stringify)
    .use(codeblocks, { /* options */ })
    .process(toVfile('./example.md'))
    .then(file => {
        /* file.data.codeblocks = [ ... ] */
    })

or use the standalone function which takes a tree as its first argument.

const toVfile = require('to-vfile')
const unified = require('unified')
const parser = require('remark-parser')
const { codeblocks } = require('remark-code-blocks')

const tree = unified().use(parser).parse(toVfile('./example.md'))
const code = codeblocks(tree, { /* options */ })

API

.use(codeblocks[, options])

Use as a plugin to extract code nodes.

The results are stored in file.data in a codeblocks property by default. You can override the name of the property using options.name.

.codeblocks(tree[, options])

Also exports a standalone function.

Options

lang

Type: string Default: all

Specify a language and only extract code nodes with that language. Otherwise all code nodes are extracted.

name

Type: string Default: codeblocks

Specify the name of the property in file.data

formatter

Type: function Default: none

Add a function to run over the nodes values before storing them in file.data

License

MIT © Paul Zimmer

About

Remark plugin for selecting and storing code blocks from markdown.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published