@yozora/tokenizer-list
v2.4.0
Published
Readme
@yozora/tokenizer-list produces List nodes containing ListItem children. See documentation for details.
Install
npm install --save @yozora/tokenizer-listUsage
@yozora/tokenizer-list is built into @yozora/parser, @yozora/parser-gfm-ex, and @yozora/parser-gfm.
With DefaultParser
A tokenizer must be registered with an IParser before use.
import { DefaultParser } from '@yozora/core-parser'
import ParagraphTokenizer from '@yozora/tokenizer-paragraph'
import TextTokenizer from '@yozora/tokenizer-text'
import ListTokenizer from '@yozora/tokenizer-list'
const parser = new DefaultParser()
.useFallbackTokenizer(new ParagraphTokenizer())
.useFallbackTokenizer(new TextTokenizer())
.useTokenizer(new ListTokenizer())
parser.parse(`
- a
- b
- c
- d
- e
- f
- g
1. This is an ordered list item
a. This is another type of ordered list item
`)With @yozora/parser
import YozoraParser from '@yozora/parser'
const parser = new YozoraParser()
parser.parse(`
- a
- b
- c
- d
- e
- f
- g
1. This is an ordered list item
a. This is another type of ordered list item
`)With @yozora/parser-gfm
import GfmParser from '@yozora/parser-gfm'
const parser = new GfmParser()
parser.parse(`
- a
- b
- c
- d
- e
- f
- g
1. This is an ordered list item
a. This is another type of ordered list item
`)With @yozora/parser-gfm-ex
import GfmExParser from '@yozora/parser-gfm-ex'
const parser = new GfmExParser()
parser.parse(`
- a
- b
- c
- d
- e
- f
- g
1. This is an ordered list item
a. This is another type of ordered list item
`)Options
| Name | Type | Required | Default |
| :---------------------------------- | :----------- | :------- | :----------------------------------- |
| name | string | No | "@yozora/tokenizer-list" |
| priority | number | No | TokenizerPriority.CONTAINING_BLOCK |
| enableTaskListItem | boolean | No | false |
| emptyItemCouldNotInterruptedTypes | NodeType[] | No | [ParagraphType] |
name: Unique tokenizer name. Generated tokens retain it so the parser can dispatch later phases to the same tokenizer.priority: Processing priority. Tokenizers with higher values run first. During block matching, a higher-priority tokenizer can interrupt a lower-priority tokenizer.enableTaskListItem: Enable GFM task list items.emptyItemCouldNotInterruptedTypes: Node types that an empty list item cannot interrupt.
