Skip to main content
Version: 1.x.x

@yozora/tokenizer-footnote

Npm VersionNpm DownloadNpm LicenseModule formats: cjs, esmNode.js VersionTested with JestCode Style: prettier

github flavor markdown spec

Installโ€‹

npm install --save @yozora/tokenizer-footnote

Usageโ€‹

tip

@yozora/tokenizer-footnote has been integrated into @yozora/parser, so you can use YozoraParser directly.

import YozoraParser from '@yozora/parser'

const parser = new YozoraParser()

// parse source markdown content
parser.parse(`
^[inline footnote]

^[footnote with *emphasis* and $x^2+y^2$ and `inline code`]
`)

Optionsโ€‹

NameTypeRequiredDefault
namestringfalse"@yozora/tokenizer-footnote"
prioritynumberfalseTokenizerPriority.LINKS
  • name: The unique name of the tokenizer, used to bind the token it generates, to determine the tokenizer that should be called in each life cycle of the token in the entire matching / parsing phase.

  • priority: Priority of the tokenizer, determine the order of processing, high priority priority execution. interruptable. In addition, in the match-block stage, a high-priority tokenizer can interrupt the matching process of a low-priority tokenizer.

    Exception: Delimiters of type full are always processed before other type delimiters.

Typesโ€‹

@yozora/tokenizer-footnote produce Footnote type nodes. See @yozora/ast for full base types.

import type { YastParent } from '@yozora/ast'

export const FootnoteType = 'footnote'
export type FootnoteType = typeof FootnoteType

/**
* Footnote represents content relating to the document that is outside its flow.
* @see https://github.com/syntax-tree/mdast#footnote
*/
export type Footnote = YastParent<FootnoteType>

Live Examplesโ€‹