An open API service indexing awesome lists of open source software.

https://github.com/jstransformers/jstransformer-markdown-it

Markdown-It support for JSTransformers.
https://github.com/jstransformers/jstransformer-markdown-it

Last synced: 3 months ago
JSON representation

Markdown-It support for JSTransformers.

Awesome Lists containing this project

README

          

# jstransformer-markdown-it

[markdown-it](https://github.com/markdown-it/markdown-it) support for [JSTransformers](http://github.com/jstransformers).

[![Build Status](https://img.shields.io/travis/jstransformers/jstransformer-markdown-it/master.svg)](https://travis-ci.org/jstransformers/jstransformer-markdown-it)
[![Coverage Status](https://img.shields.io/codecov/c/github/jstransformers/jstransformer-markdown-it/master.svg)](https://codecov.io/gh/jstransformers/jstransformer-markdown-it)
[![Dependency Status](https://img.shields.io/david/jstransformers/jstransformer-markdown-it/master.svg)](http://david-dm.org/jstransformers/jstransformer-markdown-it)
[![NPM version](https://img.shields.io/npm/v/jstransformer-markdown-it.svg)](https://www.npmjs.org/package/jstransformer-markdown-it)

## Installation

npm install jstransformer-markdown-it

## API

```js
var md = require('jstransformer')(require('jstransformer-markdown-it'));

md.render('# Hello World!').body;
//=> '

Hello World!

'
```

### Inline rendering

markdown-it supports rendering a Markdown string in an inline fashion (i.e. without wrapping `

`):

```js
var md = require('markdown-it')();
md.renderInline(src);
```

In jstransformer-markdown-it, this can be achieved through the `inline` option:

```js
var md = require('jstransformer')(require('jstransformer-markdown-it'));
md.render('**strong**').body;
//=> '

strong

\n'
md.render('**strong**', { inline: true }).body;
//=> 'strong'
```

### Plugins

Plugins in markdown-it are applied with the `.use` function:

```js
var md = require('markdown-it')();
md.use(require('plugin1'));
md.use(plugin2);
md.use(plugin3, opts, ...);
md.use(require('plugin4'), opts, ...);
```

jstransformer-markdown-it allows doing the same through the `plugins` option:

```js
var md = require('jstransformer')(require('jstransformer-markdown-it'));

md.render(markdown, {
plugins: [
'plugin1',
plugin2,
[plugin3, opts, ...],
['plugin4', opts, ...]
]
}).body;
```

If an element of the `plugins` array is a string, it is `require`d. If an element is an array, the first element will represent the plugin, while the rest are treated as options to that plugin.

### Rules

markdown-it allows enabling and disabling specific rules through `md.disable` and `.enable` functions:

```js
var md = require('markdown-it')();
md.disable([ 'link', 'image' ]);
md.disable('backticks');
md.disable('might-not-exist', true);
md.enable('might-not-exist2', true);
```

In jstransformer-markdown-it, the same thing can be done with the `enable` and `disable` options, with slightly modified syntax:

```js
var md = require('jstransformer')(require('jstransformer-markdown-it'))

md.render(markdown, {
disable: [
'link',
'image',
'backticks',
['might-not-exist', true]
],
enable: [
['might-not-exist2', true]
]
}).body;
```

## License

MIT