@yozora/parser
A markdown parser with rich built-in tokenizers.
See @yozora/parser documentation for details.
Install
-
npm
npm install --save @yozora/parser
-
yarn
yarn add @yozora/parser
Usage
-
Basic
import YozoraParser from '@yozora/parser' const parser = new YozoraParser() // parse markdown source content. parser.parse('source markdown content') // parse markdown source content with custom options. parser.parse( 'source markdown content', // markdown source contents, `string|Iterable<string>` {}, // ParseOptions, optional. ) // parse multiple markdown source content pieces. parser.parse(['source', 'contents'])
-
Use withing generator:
import YozoraParser from '@yozora/parser' const parser = new YozoraParser() /** * String stream is supported through the iterator API. */ function* source () { yield 'hello', yield 'world', } parser.parse(source())
Options
-
Constructor Options
Name Type Required Description blockFallbackTokenizer
BlockFallbackTokenizer
false
Fallback tokenizer on processing block structure phase inlineFallbackTokenizer
InlineFallbackTokenizer
false
Fallback tokenizer on processing inline structure phase defaultParseOptions
ParseOptions
false
Default options for parse()
-
ParseOptions
Name Type Required Description shouldReservePosition
boolean
false
Whether it is necessary to reserve the position in the Node produced presetDefinitions
Array<Omit<Definition, 'type'>
false
Preset definitions presetFootnoteDefinitions
Array<Omit<FootnoteDefinition, 'type'>
false
Preset footnote definition
Overview
-
Built-in tokenizers
-
All tokenizers for processing tokens defined Github Flavor Markdown:
-
Additional tokenizers
Tokenizer Description @yozora/tokenizer-admonition Resolve admonitions @yozora/tokenizer-footnote Resolve footnotes @yozora/tokenizer-footnote-definition Resolve footnote definitions @yozora/tokenizer-footnote-reference Resolve footnote references @yozora/tokenizer-inline-math Resolve inline formulas @yozora/tokenizer-math Resolve block formulas
-