Commit message (Collapse) | Author | Files | Lines | ||
---|---|---|---|---|---|
2022-11-25 | Fix double setext heading underlines | 1 | -1/+1 | ||
Related-to: GH-22. | |||||
2022-10-26 | Fix container close after unclosed fenced code, w/ eol | 1 | -6/+20 | ||
Closes GH-16 Co-authored-by: Christian Murphy <christian.murphy.42@gmail.com> | |||||
2022-10-13 | Replace some unused code with assertions | 1 | -8/+10 | ||
2022-09-14 | Fix to prefer flow over definitions, setext headings | 1 | -2/+3 | ||
An undocumented part of CommonMark is how to deal with things in definition labels or definition titles (which both can span multiple lines). Can flow (or containers?) interrupt them? They can according to the `cmark` reference parser, so this was implemented here. This adds a new `Content` content type, which houses zero or more definitions, and then zero-or-one paragraphs. Content can be followed by a setext heading underline, which either turns into a setext heading when the content ends in a paragraph, or turns into the start of the following paragraph when it is followed by content that starts with a paragraph, or turns into a stray paragraph. | |||||
2022-09-12 | Fix whitespace in GFM footnote definition identifiers | 1 | -1/+10 | ||
* Fix a crash on line endings in footnote definitions * Fix to match spaces and tabs in identifiers to `cmark-gfm` * Fix order of one attribute | |||||
2022-09-07 | Add support for recoverable syntax errors | 1 | -6/+15 | ||
2022-08-31 | Add support for GFM tables | 1 | -3/+13 | ||
2022-08-25 | Add support for GFM footnotes | 1 | -6/+33 | ||
2022-08-22 | Fix lazy paragraph after definition | 1 | -9/+59 | ||
2022-08-16 | Add `no_std + alloc` | 1 | -0/+1 | ||
2022-08-16 | Add support for frontmatter | 1 | -2/+18 | ||
2022-08-15 | Refactor to proof docs, grammars | 1 | -2/+2 | ||
2022-08-15 | Refactor to move `content` to `construct` | 1 | -0/+0 | ||
2022-08-15 | Refactor to move some things to `parser` | 1 | -23/+2 | ||
2022-08-15 | Refactor to rename list construct to list item | 1 | -3/+3 | ||
2022-08-12 | Refactor to improve entering | 1 | -4/+4 | ||
2022-08-12 | Refactor to improve docs of each function | 1 | -11/+9 | ||
2022-08-11 | Refactor attempts to remove unneeded state name | 1 | -11/+15 | ||
2022-08-11 | Refactor to handle definitions when parsing | 1 | -30/+7 | ||
2022-08-11 | Remove boxes around resolvers | 1 | -3/+0 | ||
2022-08-11 | Refactor to move some code to `event.rs` | 1 | -50/+48 | ||
2022-08-11 | Refactor to move some code to `state.rs` | 1 | -30/+30 | ||
2022-08-11 | Refactor internal docs, code style of tokenizer | 1 | -16/+26 | ||
2022-08-11 | Add improved container exit injection | 1 | -104/+69 | ||
2022-08-10 | Refactor some code for document parsing | 1 | -215/+177 | ||
2022-08-10 | Add `State::Retry` | 1 | -10/+10 | ||
2022-08-10 | Rename `State::Fn` to `State::Next` | 1 | -19/+19 | ||
2022-08-09 | Refactor to share some code | 1 | -92/+13 | ||
2022-08-09 | Add peeking to unindented flow lines | 1 | -1/+1 | ||
2022-08-09 | Add support for passing `ok`, `nok` as separate states to attempts | 1 | -22/+20 | ||
2022-08-09 | Rewrite algorithm to not pass around boxed functions | 1 | -190/+372 | ||
* Pass state names from an enum around instead of boxed functions * Refactor to simplify attempts a lot * Use a subtokenizer for the the `document` content type | |||||
2022-08-02 | Refactor to remove most closures | 1 | -140/+139 | ||
2022-07-29 | Refactor to improve states | 1 | -4/+3 | ||
* Remove custom kind wrappers, use plain bytes instead * Remove `Into`s, use the explicit expected types instead * Refactor to use `slice.as_str` in most places * Remove unneeded unique check before adding a definition * Use a shared CDATA prefix in constants * Inline byte checks into matches * Pass bytes back from parser instead of whole parse state * Refactor to work more often on bytes * Rename custom `size` to `len` | |||||
2022-07-29 | Refactor to work on bytes (`u8`) | 1 | -12/+5 | ||
2022-07-28 | Refactor to use `debug_assert` | 1 | -1/+1 | ||
2022-07-28 | Refactor to work on `char`s | 1 | -9/+30 | ||
Previously, a custom char implementation was used. This was easier to work with, as sometimes “virtual” characters are injected, or characters are ignored. This replaces that with working on actual `char`s. In the hope of in the future working on `u8`s, even. This simplifies the state machine somewhat, as only `\n` is fed, regardless of whether it was a CRLF, CR, or LF. It also feeds `' '` instead of virtual spaces. The BOM, if present, is now available as a `ByteOrderMark` event. | |||||
2022-07-26 | Refactor to drastically improve perf around whitespace | 1 | -6/+7 | ||
2022-07-26 | Refactor to simplify tokenizer | 1 | -3/+3 | ||
2022-07-25 | Refactor to not pass codes around | 1 | -41/+27 | ||
2022-07-25 | Remove no longer needed field in `State::Ok` | 1 | -4/+2 | ||
2022-07-25 | Refactor to remove need for cloning codes | 1 | -1/+1 | ||
2022-07-25 | Improve performance w/ a single feed loop | 1 | -1/+1 | ||
2022-07-22 | Refactor to use a single shared edit map | 1 | -5/+3 | ||
2022-07-22 | Refactor to remove unneeded tuples in every states | 1 | -40/+17 | ||
2022-07-22 | Refactor to pass ints instead of vecs around | 1 | -4/+4 | ||
2022-07-21 | Refactor to move `index` field to `point` | 1 | -9/+2 | ||
2022-07-21 | Refactor to move some event fields to `link` | 1 | -3/+1 | ||
2022-07-20 | Refactor to improve cloning in `document` | 1 | -53/+49 | ||
2022-07-20 | Refactor to use less vecs for events | 1 | -7/+8 | ||
2022-07-19 | Refactor to remove cloning in `edit_map` | 1 | -4/+4 | ||