Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Refactor to work on `char`s | Titus Wormer | 2022-07-28 | 4 | -31/+52 |
| | | | | | | | | | | | | | | | 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. | ||||
* | Refactor to drastically improve perf around whitespace | Titus Wormer | 2022-07-26 | 3 | -51/+53 |
| | |||||
* | Refactor to simplify tokenizer | Titus Wormer | 2022-07-26 | 1 | -3/+3 |
| | |||||
* | Refactor to not pass codes around | Titus Wormer | 2022-07-25 | 4 | -65/+51 |
| | |||||
* | Remove no longer needed field in `State::Ok` | Titus Wormer | 2022-07-25 | 4 | -10/+8 |
| | |||||
* | Refactor to remove need for cloning codes | Titus Wormer | 2022-07-25 | 1 | -1/+1 |
| | |||||
* | Improve performance w/ a single feed loop | Titus Wormer | 2022-07-25 | 1 | -1/+1 |
| | |||||
* | Refactor to use a single shared edit map | Titus Wormer | 2022-07-22 | 1 | -5/+3 |
| | |||||
* | Refactor to remove unneeded tuples in every states | Titus Wormer | 2022-07-22 | 4 | -60/+37 |
| | |||||
* | Refactor to pass ints instead of vecs around | Titus Wormer | 2022-07-22 | 4 | -12/+12 |
| | |||||
* | Refactor to improve performance by passing markers around | Titus Wormer | 2022-07-21 | 2 | -69/+31 |
| | |||||
* | Refactor to move `index` field to `point` | Titus Wormer | 2022-07-21 | 1 | -9/+2 |
| | |||||
* | Refactor to move some event fields to `link` | Titus Wormer | 2022-07-21 | 1 | -3/+1 |
| | |||||
* | Refactor to improve cloning in `document` | Titus Wormer | 2022-07-20 | 1 | -53/+49 |
| | |||||
* | Refactor to use less vecs for events | Titus Wormer | 2022-07-20 | 1 | -7/+8 |
| | |||||
* | Refactor to remove cloning in `edit_map` | Titus Wormer | 2022-07-19 | 1 | -4/+4 |
| | |||||
* | Remove an unneeded `HashMap` | Titus Wormer | 2022-07-19 | 1 | -2/+2 |
| | |||||
* | Replace use of `HashSet` with `vec` | Titus Wormer | 2022-07-19 | 1 | -4/+7 |
| | |||||
* | Refactor to improve performance when constructs are turned off | Titus Wormer | 2022-07-18 | 2 | -49/+73 |
| | |||||
* | Add support for turning off constructs | Titus Wormer | 2022-07-18 | 2 | -0/+2 |
| | |||||
* | Fix final bug with laziness | Titus Wormer | 2022-07-18 | 1 | -8/+1 |
| | |||||
* | Add docs and refactor list | Titus Wormer | 2022-07-15 | 1 | -45/+29 |
| | |||||
* | Add docs and refactor document content type | Titus Wormer | 2022-07-15 | 1 | -259/+268 |
| | |||||
* | Add missing docs to tokenizer | Titus Wormer | 2022-07-15 | 1 | -6/+3 |
| | |||||
* | Fix annoying bug around virtual spaces in containers | Titus Wormer | 2022-07-15 | 1 | -3/+2 |
| | |||||
* | Fix interrupting sibling list items | Titus Wormer | 2022-07-14 | 1 | -5/+24 |
| | |||||
* | Add support for container state | Titus Wormer | 2022-07-14 | 1 | -9/+30 |
| | | | | | | * Fix to parse list item continuation based on how big the initial list item prefix was * Fix list items that start with blank lines | ||||
* | Fix a bunch of container things | Titus Wormer | 2022-07-14 | 1 | -154/+178 |
| | | | | | | | | * Fix a lot of container code * Fix to prevent code (indented) from interrupting a lazy container * Fix compiling when combining tight paragraphs, empty list items, and html * Fix list items starting w/ blank lines causing loose lists * Fix crash when looking for a previous blank line | ||||
* | Fix lists in lists and some other bugs | Titus Wormer | 2022-07-13 | 1 | -4/+4 |
| | |||||
* | Fix to close containers before several (blank) line endings | Titus Wormer | 2022-07-13 | 1 | -7/+17 |
| | |||||
* | Fix some issues around empty lists | Titus Wormer | 2022-07-12 | 1 | -0/+3 |
| | |||||
* | Fix a lot of list things | Titus Wormer | 2022-07-12 | 1 | -5/+18 |
| | | | | | | | | * Add `ListItem`, `ListOrdered`, and `ListUnordered` tokens * Add support for multiline list items * Add support for tight lists * Fix bug where 10 digit long list item values worked * Fix skip bug when skipping over nested events | ||||
* | Add initial support for lists | Titus Wormer | 2022-07-12 | 1 | -10/+21 |
| | |||||
* | Add support for lazy lines | Titus Wormer | 2022-07-11 | 1 | -154/+53 |
| | |||||
* | Fix block quote bugs | Titus Wormer | 2022-07-11 | 1 | -2/+6 |
| | |||||
* | Fix bug around forcibly closed flow exits | Titus Wormer | 2022-07-08 | 1 | -0/+15 |
| | |||||
* | Fix interrupting when exiting containers | Titus Wormer | 2022-07-08 | 1 | -0/+3 |
| | |||||
* | Fix container bug due to attempts | Titus Wormer | 2022-07-08 | 1 | -14/+36 |
| | |||||
* | Add improved container enter/exit mechanism | Titus Wormer | 2022-07-08 | 1 | -66/+122 |
| | |||||
* | Fix closing of flow when exiting containers | Titus Wormer | 2022-07-08 | 1 | -13/+32 |
| | |||||
* | Add support for concrete constructs | Titus Wormer | 2022-07-08 | 1 | -7/+8 |
| | |||||
* | Refactor to move token types to `token` | Titus Wormer | 2022-07-07 | 2 | -12/+10 |
| | |||||
* | Add basic support for block quotes | Titus Wormer | 2022-07-07 | 3 | -47/+447 |
| | |||||
* | Refactor code style | Titus Wormer | 2022-07-05 | 3 | -7/+6 |
| | |||||
* | Add support for unicode punctuation | Titus Wormer | 2022-07-04 | 1 | -1/+1 |
| | |||||
* | Update list of todos | Titus Wormer | 2022-07-04 | 1 | -1/+1 |
| | |||||
* | Add support for attention (emphasis, strong) | Titus Wormer | 2022-07-04 | 1 | -7/+11 |
| | |||||
* | Make paragraphs really fast | Titus Wormer | 2022-07-01 | 1 | -22/+24 |
| | | | | | | | | | | | | | | | | | | The approach that `micromark-js` takes is as follows: to parse a paragraph, check whether each line starts with something else. If it does, exit, otherwise continue. That is slow, because our actual flow parser does similar things: the work was being done twice. To fix this, this commit introduces parsing each line of a paragraph separately. And finally, when done with flow, combining adjacent paragraphs. This same mechanism is reused for setext headings. Additionally, this commit adds support for interrupting things (or not). E.g., HTML (flow, complete) cannot interrupt paragraphs. Definitions cannot interrupt paragraphs, and connect be interrupted either, but they can follow each other. | ||||
* | Add support for trimming whitespace around string, text | Titus Wormer | 2022-06-30 | 2 | -14/+25 |
| | | | | | | | | | | | | | This commit introduces trimming initial and final whitespace around the whole string or text, or around line endings inside that string or text. * Add `register_resolver_before`, to run resolvers earlier than others, used for labels * Add resolver to merge `data` events, which are the most frequent token that occurs, and can happen adjacently. In `micromark-js` this sped up parsing a lot * Fix a bug where a virtual space was not seen as an okay event * Refactor to enable all turned off whitespace tests | ||||
* | Refactor some docs, fix some grammar | Titus Wormer | 2022-06-30 | 1 | -2/+3 |
| |