remarkable-header-ids

0.2.0 • Public • Published

remarkable-header-ids NPM version NPM downloads Build Status

Autogenerate unique ids for text headers (h1,...h6)

Install

Install with npm:

$ npm install --save remarkable-header-ids

Usage

const HeaderIdsPlugin = require("remarkable-header-ids");
const Remarkable = require("remarkable");
 
const markdownParser = new Remarkable().use(
  HeaderIdsPlugin()
);

Options

Params

Option name Type defaultValue Note
levels number[] [1, 2, 3, 4, 5, 6]
anchorClassName string "header-anchor"
anchorText string "#" When anchorText is empty, the anchor will not be rendered at all
headerId (slug: string) => string slug => "heading-#" + slug

Example

const Remarkable = require("remarkable");
const HeaderIdsPlugin = require("remarkable-header-ids");
 
const parser = new Remarkable().use(
  HeaderIdsPlugin({
    levels: [2], // only transform h2
    anchorClassName: "this-is-anchor-in-header",
    anchorText: "AnchorText",
    headerId: (slug) =>
      `header-that-has-this-anchor-${slug}`,
  })
);

About

Contributing

Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.

Please read the contributing guide for avice on opening issues, pull requests, and coding standards.

Tests

Test content is located inside the test directory. For more info regarding the internals of test suite, check out test/parse.js.

to run the test, execute npm test from the root directory. This script will render into test/parsed.html.

Author

Farzad Yousefzadeh

License

Copyright © 2020, github/farskid. Released under the MIT license.

Package Sidebar

Install

npm i remarkable-header-ids

Weekly Downloads

68

Version

0.2.0

License

MIT

Unpacked Size

6.8 kB

Total Files

5

Last publish

Collaborators

  • farskid