# pretty-remarkable

> Plugin for prettifying markdown with Remarkable using custom renderer rules.

Latest version **1.0.0** (published 2018-07-05) · MIT license · 0 weekly downloads

## Install

```sh
npm install pretty-remarkable
pnpm add pretty-remarkable
yarn add pretty-remarkable
bun add pretty-remarkable
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.0.0 |
| Published | 2018-07-05 |
| First published | 2015-04-27 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Node | >=4.0 |
| Dependencies | 1 |
| Unpacked size | 24.3 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | Jon Schlinkert |
| Maintainers | jonschlinkert |
| Keywords | beautify, format, markdown, marked, md, plugin, prettify, pretty, remarkable |

## Links

- npm: https://www.npmjs.com/package/pretty-remarkable
- Repository: https://github.com/jonschlinkert/pretty-remarkable
- Issues: https://github.com/jonschlinkert/pretty-remarkable/issues
- npm.io page: https://npm.io/package/pretty-remarkable

## Dependencies (1)

- [markdown-utils](https://npm.io/package/markdown-utils.md) ^1.0.0

## Alternatives

- [@mdxeditor/editor](https://npm.io/package/@mdxeditor/editor.md) — 962.4K weekly downloads
- [mmdb-lib](https://npm.io/package/mmdb-lib.md) — 680.9K weekly downloads
- [playcanvas](https://npm.io/package/playcanvas.md) — 36.2K weekly downloads
- [@glw907/cairn-cms](https://npm.io/package/@glw907/cairn-cms.md) — 967 weekly downloads
- [markdown-to-confluence](https://npm.io/package/markdown-to-confluence.md) — 103 weekly downloads

## Recent versions

- 1.0.0 (latest) — 2018-07-05
- 0.4.1 — 2017-04-04
- 0.4.0 — 2016-10-21
- 0.3.10 — 2016-09-27
- 0.3.9 — 2016-07-07
- 0.3.8 — 2016-07-02
- 0.3.7 — 2016-06-30
- 0.3.6 — 2016-05-03
- 0.3.4 — 2016-04-27
- 0.3.2 — 2016-04-26
- 0.3.1 — 2016-04-23
- 0.3.0 — 2016-04-23
- 0.2.2 — 2016-04-17
- 0.2.1 — 2016-03-23
- 0.2.0 — 2015-12-16
- … 9 more at https://npm.io/package/pretty-remarkable/versions

## README

# pretty-remarkable [![NPM version](https://img.shields.io/npm/v/pretty-remarkable.svg?style=flat)](https://www.npmjs.com/package/pretty-remarkable) [![NPM monthly downloads](https://img.shields.io/npm/dm/pretty-remarkable.svg?style=flat)](https://npmjs.org/package/pretty-remarkable) [![NPM total downloads](https://img.shields.io/npm/dt/pretty-remarkable.svg?style=flat)](https://npmjs.org/package/pretty-remarkable) [![Linux Build Status](https://img.shields.io/travis/jonschlinkert/pretty-remarkable.svg?style=flat&label=Travis)](https://travis-ci.org/jonschlinkert/pretty-remarkable)

> Plugin for prettifying markdown with Remarkable using custom renderer rules.

Please consider following this project's author, [Jon Schlinkert](https://github.com/jonschlinkert), and consider starring the project to show your :heart: and support.

- [Install](#install)
- [Usage](#usage)
- [Examples](#examples)
- [Formatting](#formatting)
  * [Tables](#tables)
  * [Unordered lists](#unordered-lists)
  * [Ordered lists](#ordered-lists)
- [About](#about)

_(TOC generated by [verb](https://github.com/verbose/verb) using [markdown-toc](https://github.com/jonschlinkert/markdown-toc))_

## Install

Install with [npm](https://www.npmjs.com/):

```sh
$ npm install --save pretty-remarkable
```

## Usage

```js
var prettify = require('pretty-remarkable');
```

## Examples

```js
var prettify = require('pretty-remarkable');
var Remarkable = require('remarkable');
var md = new Remarkable();

// register the plugin
md.use(prettify);
var result = md.render('\n\n\n# foo\n\n\nbar\n# baz');
//=> '# foo\n\nbar\n\n# baz'
```

Or create a function if you need to export it or need a more reusable format:

```js
var prettify = require('pretty-remarkable');
var Remarkable = require('remarkable');

function pretty(str, options) {
  return new Remarkable()
    .use(prettify)
    .render(str);
}

pretty('\n\n\n# foo\n\n\nbar\n# baz');
//=> '# foo\n\nbar\n\n# baz'
```

## Formatting

In addition to the formatting mentioned in the following sections:

* does not modify `code` or gfm code blocks
* ensures that an extra newline precedes gfm code blocks, since some text editors do not display proper hightlighting otherwise
* unless `options.condense` is false, condenses 3+ newlines down to two

### Tables

Normalizes table formatting.

**Example**

```markdown
Before
**A**|**B**|**C**
|---:|:---|---|
a |b |c
x |y |z
After
```

Is normalized to:

```markdown
Before

| **A** | **B** | **C** | 
| ---: | :--- | --- |
| a | b | c |
| x | y | z |

After
```

### Unordered lists

Normalizes unordered lists.

**Example**

```markdown
* a
* b
  * c
  * d
    * e
    * f
```

Is normalized to:

```markdown
* a
* b
  - c
  - d
    + e
    + f
```

### Ordered lists

Normalizes ordered lists.

**Example**

```markdown
1. foo
  a. aaa
  b. bbb
  c. ccc
1. bar
1. baz

```

Is normalized to:

```markdown
1. foo
  a. aaa
  b. bbb
  c. ccc
2. bar
3. baz

```

## About

<details>
<summary><strong>Contributing</strong></summary>

Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new).

</details>

<details>
<summary><strong>Running Tests</strong></summary>

Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command:

```sh
$ npm install && npm test
```

</details>

<details>
<summary><strong>Building docs</strong></summary>

_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_

To generate the readme, run the following command:

```sh
$ npm install -g verbose/verb#dev verb-generate-readme && verb
```

</details>

### Related projects

You might also be interested in these projects:

* [markdown-toc](https://www.npmjs.com/package/markdown-toc): Generate a markdown TOC (table of contents) with Remarkable. | [homepage](https://github.com/jonschlinkert/markdown-toc "Generate a markdown TOC (table of contents) with Remarkable.")
* [markdown-utils](https://www.npmjs.com/package/markdown-utils): Tiny helpers for creating consistenly-formatted markdown snippets. | [homepage](https://github.com/jonschlinkert/markdown-utils "Tiny helpers for creating consistenly-formatted markdown snippets.")
* [prettify-markdown](https://www.npmjs.com/package/prettify-markdown): Prettify, format or beautify your markdown. Whatever you want to call it, this does that… [more](https://github.com/jonschlinkert/prettify-markdown) | [homepage](https://github.com/jonschlinkert/prettify-markdown "Prettify, format or beautify your markdown. Whatever you want to call it, this does that. Used on hundreds of projects by verb.")
* [remarkable](https://www.npmjs.com/package/remarkable): Markdown parser, done right. 100% Commonmark support, extensions, syntax plugins, high speed - all in… [more](https://github.com/jonschlinkert/remarkable) | [homepage](https://github.com/jonschlinkert/remarkable "Markdown parser, done right. 100% Commonmark support, extensions, syntax plugins, high speed - all in one.")

### Author

**Jon Schlinkert**

* [LinkedIn Profile](https://linkedin.com/in/jonschlinkert)
* [GitHub Profile](https://github.com/jonschlinkert)
* [Twitter Profile](https://twitter.com/jonschlinkert)

### License

Copyright © 2018, [Jon Schlinkert](https://github.com/jonschlinkert).
Released under the [MIT License](LICENSE).

***

_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.6.0, on July 05, 2018._

---
_Source: https://npm.io/package/pretty-remarkable · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
