Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

rehype-postfix-footnote-anchors

Package Overview
Dependencies
Maintainers
1
Versions
12
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

rehype-postfix-footnote-anchors

  • 2.0.0
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
17
decreased by-29.17%
Maintainers
1
Weekly downloads
 
Created
Source

rehype-postfix-footnote-anchors Build Status Coverage Status

This rehype plugin appends a custom postfix to footnotes, or changes the anchors/IDs to/from footnotes.

When you render several pieces of Markdown to HTML in a same webpage you might want to make sure that footnotes will not conflict between each piece of rendered HTML.

For instance:

  • foo[^foo]
    
    [^foo]: Footnote :)
    
  • bar[^foo]
    
    [^foo]: Conflict?
    

Rendering both of these will have the note next to bar link to Footnote :) instead of Conflict?, and Conflict? will have a link to go back to foo instead of bar.

This plugin plays well with remark-numbered-footnotes. Using remark-numbered-footnotes increases the risks of conflicts, hence the interest of postfixing footnote anchors.

Installation

npm:

npm install rehype-postfix-footnote-anchors

Usage

Dependencies:

const unified = require('unified')
const remarkParse = require('remark-parse')
const rehypePostfixFoonotes = require('rehype-postfix-footnote-anchors')
const stringify = require('rehype-stringify')
const remark2rehype = require('remark-rehype')

Usage:

unified()
  .use(reParse, {footnotes: true})
  .use(remark2rehype)
  .use(rehypePostfixFoonotes, postfix)
  .use(stringify)

Configuration

In the above Usage example, postfix can be one of two things:

  • a string: postfix = '-my-postfix'

    postfix will be appended to the existing footnotes identifiers

  • a function: postfix = (identifier: string): string => 'foo' + identifier + 'bar'

    postfix will be called with the footnote identifier and should return a string

License

MIT © Zeste de Savoir

Keywords

FAQs

Package last updated on 03 Feb 2020

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc