ARCHITECTURE.md | 11 +- Cargo.lock | 11 +- Cargo.toml | 6 +- crates/markdown-it/Cargo.toml | 35 + crates/markdown-it/LICENSE | 28 + crates/markdown-it/README.md | 32 + crates/markdown-it/examples/ferris/README.md | 21 + crates/markdown-it/examples/ferris/block_rule.rs | 72 + crates/markdown-it/examples/ferris/core_rule.rs | 64 + crates/markdown-it/examples/ferris/inline_rule.rs | 61 + crates/markdown-it/examples/ferris/main.rs | 31 + crates/markdown-it/src/common/mod.rs | 11 + crates/markdown-it/src/common/ruler.rs | 393 ++ crates/markdown-it/src/common/sourcemap.rs | 143 + crates/markdown-it/src/common/typekey.rs | 81 + crates/markdown-it/src/common/utils.rs | 467 ++ crates/markdown-it/src/examples/ferris/block_rule.rs | 7 + crates/markdown-it/src/examples/ferris/core_rule.rs | 7 + crates/markdown-it/src/examples/ferris/inline_rule.rs | 7 + crates/markdown-it/src/examples/ferris/mod.rs | 15 + crates/markdown-it/src/examples/mod.rs | 4 + crates/markdown-it/src/examples/testreadme.rs | 2 + crates/markdown-it/src/generics/inline/code_pair.rs | 142 + crates/markdown-it/src/generics/inline/emph_pair.rs | 390 ++ crates/markdown-it/src/generics/inline/full_link.rs | 440 ++ crates/markdown-it/src/generics/inline/mod.rs | 4 + crates/markdown-it/src/generics/mod.rs | 12 + crates/markdown-it/src/lib.rs | 29 + crates/markdown-it/src/parser/block/builtin/block_parser.rs | 23 + crates/markdown-it/src/parser/block/builtin/mod.rs | 9 + crates/markdown-it/src/parser/block/mod.rs | 127 + crates/markdown-it/src/parser/block/rule.rs | 13 + crates/markdown-it/src/parser/block/state.rs | 272 + crates/markdown-it/src/parser/core/mod.rs | 6 + crates/markdown-it/src/parser/core/root.rs | 21 + crates/markdown-it/src/parser/core/rule.rs | 55 + crates/markdown-it/src/parser/extset.rs | 232 + crates/markdown-it/src/parser/inline/builtin/inline_parser.rs | 80 + crates/markdown-it/src/parser/inline/builtin/mod.rs | 12 + crates/markdown-it/src/parser/inline/builtin/skip_text.rs | 140 + crates/markdown-it/src/parser/inline/mod.rs | 162 + crates/markdown-it/src/parser/inline/rule.rs | 15 + crates/markdown-it/src/parser/inline/state.rs | 244 + crates/markdown-it/src/parser/linkfmt.rs | 100 + crates/markdown-it/src/parser/main.rs | 90 + crates/markdown-it/src/parser/mod.rs | 45 + crates/markdown-it/src/parser/node.rs | 229 + crates/markdown-it/src/parser/renderer.rs | 154 + crates/markdown-it/src/plugins/cmark/block/blockquote.rs | 168 + crates/markdown-it/src/plugins/cmark/block/code.rs | 69 + crates/markdown-it/src/plugins/cmark/block/fence.rs | 164 + crates/markdown-it/src/plugins/cmark/block/heading.rs | 87 + crates/markdown-it/src/plugins/cmark/block/hr.rs | 55 + crates/markdown-it/src/plugins/cmark/block/lheading.rs | 104 + crates/markdown-it/src/plugins/cmark/block/list.rs | 370 ++ crates/markdown-it/src/plugins/cmark/block/mod.rs | 10 + crates/markdown-it/src/plugins/cmark/block/paragraph.rs | 68 + crates/markdown-it/src/plugins/cmark/block/reference.rs | 374 ++ crates/markdown-it/src/plugins/cmark/inline/autolink.rs | 87 + crates/markdown-it/src/plugins/cmark/inline/backticks.rs | 28 + crates/markdown-it/src/plugins/cmark/inline/emphasis.rs | 40 + crates/markdown-it/src/plugins/cmark/inline/entity.rs | 85 + crates/markdown-it/src/plugins/cmark/inline/escape.rs | 57 + crates/markdown-it/src/plugins/cmark/inline/image.rs | 34 + crates/markdown-it/src/plugins/cmark/inline/link.rs | 35 + crates/markdown-it/src/plugins/cmark/inline/mod.rs | 9 + crates/markdown-it/src/plugins/cmark/inline/newline.rs | 81 + crates/markdown-it/src/plugins/cmark/mod.rs | 34 + crates/markdown-it/src/plugins/extra/beautify_links.rs | 39 + crates/markdown-it/src/plugins/extra/heading_anchors.rs | 69 + crates/markdown-it/src/plugins/extra/linkify.rs | 135 + crates/markdown-it/src/plugins/extra/mod.rs | 44 + crates/markdown-it/src/plugins/extra/smartquotes.rs | 567 ++ crates/markdown-it/src/plugins/extra/strikethrough.rs | 20 + crates/markdown-it/src/plugins/extra/syntect.rs | 74 + crates/markdown-it/src/plugins/extra/tables.rs | 456 ++ crates/markdown-it/src/plugins/extra/typographer.rs | 124 + crates/markdown-it/src/plugins/html/html_block.rs | 151 + crates/markdown-it/src/plugins/html/html_inline.rs | 50 + crates/markdown-it/src/plugins/html/mod.rs | 29 + crates/markdown-it/src/plugins/html/utils/blocks.rs | 68 + crates/markdown-it/src/plugins/html/utils/mod.rs | 2 + crates/markdown-it/src/plugins/html/utils/regexps.rs | 46 + crates/markdown-it/src/plugins/mod.rs | 20 + crates/markdown-it/src/plugins/sourcepos.rs | 52 + crates/markdown-it/tests/commonmark.rs | 6557 +++++++++++++++++++++ crates/markdown-it/tests/extras.rs | 202 + crates/markdown-it/tests/fixtures/README.md | 28 + crates/markdown-it/tests/fixtures/commonmark/bad.txt | 0 crates/markdown-it/tests/fixtures/commonmark/good.txt | 7834 +++++++++++++++++++++++++ crates/markdown-it/tests/fixtures/commonmark/spec.txt | 9756 ++++++++++++++++++++++++++++++++ crates/markdown-it/tests/fixtures/deno.lock | 72 + crates/markdown-it/tests/fixtures/markdown-it/markdown-it-rs.txt | 6 + crates/markdown-it/tests/fixtures/markdown-it/smartquotes.txt | 192 + crates/markdown-it/tests/fixtures/markdown-it/tables.txt | 808 +++ crates/markdown-it/tests/fixtures/markdown-it/typographer-extra.txt | 14 + crates/markdown-it/tests/fixtures/markdown-it/typographer.txt | 110 + crates/markdown-it/tests/fixtures/package.json | 6 + crates/markdown-it/tests/fixtures/testgen.js | 99 + crates/markdown-it/tests/linkify.rs | 170 + crates/markdown-it/tests/markdown-it-smartquotes.rs | 214 + crates/markdown-it/tests/markdown-it-typographer.rs | 157 + crates/markdown-it/tests/markdown-it.rs | 828 +++ crates/markdown-it/tests/pathological.rs | 140 + crates/markdown-it/tests/sourcemaps.rs | 376 ++ src/lib.rs | 14 + 106 files changed, 36030 insertions(+), 13 deletions(-)