Skip to content

Latest commit

 

History

History
76 lines (51 loc) · 2.85 KB

README.md

File metadata and controls

76 lines (51 loc) · 2.85 KB

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.