aboutsummaryrefslogtreecommitdiffstats
path: root/src/util (unfollow)
Commit message (Collapse)AuthorFilesLines
2022-08-01Refactor to pass more `&str`s, work on more bytesLibravatar Titus Wormer1-0/+5
2022-07-29Refactor to improve statesLibravatar Titus Wormer5-76/+91
* 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-29Refactor to work on bytes (`u8`)Libravatar Titus Wormer1-26/+18
2022-07-28Refactor to use `debug_assert`Libravatar Titus Wormer1-1/+1
2022-07-28Refactor to work on `char`sLibravatar Titus Wormer6-188/+167
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-22Refactor to use a single shared edit mapLibravatar Titus Wormer1-9/+6
2022-07-22Refactor to remove unneeded tuples in every statesLibravatar Titus Wormer2-2/+2
2022-07-21Refactor performance around links in subtokenizeLibravatar Titus Wormer1-28/+35
2022-07-21Refactor to move `index` field to `point`Libravatar Titus Wormer1-2/+2
2022-07-21Refactor to move some event fields to `link`Libravatar Titus Wormer1-3/+5
2022-07-20Refactor to improve allocation around stringsLibravatar Titus Wormer4-82/+65
2022-07-20Refactor to use less vecs for eventsLibravatar Titus Wormer1-42/+28
2022-07-19Refactor to remove cloning in `edit_map`Libravatar Titus Wormer1-19/+25
2022-07-19Use `edit_map` in `subtokenize`Libravatar Titus Wormer1-14/+1
2022-07-19Remove another unneeded `HashMap`Libravatar Titus Wormer1-40/+38
2022-07-18Fix dead link in docsLibravatar Titus Wormer1-3/+3
2022-07-18Fix edge case in identifier normalizationLibravatar Titus Wormer1-1/+9
2022-07-15Fix to use single array for character referencesLibravatar Titus Wormer1-7/+4
2022-07-14Add support for container stateLibravatar Titus Wormer2-7/+15
* Fix to parse list item continuation based on how big the initial list item prefix was * Fix list items that start with blank lines
2022-07-13Fix lists in lists and some other bugsLibravatar Titus Wormer1-6/+0
2022-07-12Fix some issues around empty listsLibravatar Titus Wormer1-1/+4
2022-07-12Fix a lot of list thingsLibravatar Titus Wormer1-7/+34
* 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
2022-07-11Add tests for matching identifiers w/ turkish `i`Libravatar Titus Wormer1-1/+0
2022-07-07Refactor to move token types to `token`Libravatar Titus Wormer1-4/+5
2022-07-07Refactor to use `char::REPLACEMENT_CHARACTER`Libravatar Titus Wormer2-2/+2
2022-07-07Fix some small to dosLibravatar Titus Wormer1-3/+5
2022-07-07Add basic support for block quotesLibravatar Titus Wormer3-0/+46
2022-07-07Fix shifting jumps in tail of edit mapLibravatar Titus Wormer1-1/+3
2022-07-05Refactor to do some to dosLibravatar Titus Wormer1-2/+4
2022-07-05Refactor code styleLibravatar Titus Wormer5-64/+161
2022-07-04Add support for unicode punctuationLibravatar Titus Wormer1-1/+1
2022-07-04Update list of todosLibravatar Titus Wormer1-2/+1
2022-07-04Fix opening/closing tag order of nested attentionLibravatar Titus Wormer1-12/+29
2022-07-01Refactor to clean and document `edit_map`Libravatar Titus Wormer1-2/+19
2022-06-29Add support for sharing identifiers, references before definitionsLibravatar Titus Wormer1-18/+1
2022-06-28Add some more crosslinks to docsLibravatar Titus Wormer1-3/+2
2022-06-28Fix jumps in `edit_map`Libravatar Titus Wormer2-0/+145
* Use resolve more often (e.g., heading (atx, setext)) * Fix to link whole phrasing (e.g., one big chunk of text in heading (atx, setext), titles, labels) * Replace `ChunkText`, `ChunkString`, with `event.content_type: Option<ContentType>` * Refactor to externalize `edit_map` from `label`
2022-06-24Add link, images (resource)Libravatar Titus Wormer1-1/+1
This is still some messy code that needs cleaning up, but it adds support for links and images, of the resource kind (`[a](b)`). References (`[a][b]`) are parsed and will soon be supported, but need matching. * Fix bug to pad percent-encoded bytes when normalizing urls * Fix bug with escapes counting as balancing in destination * Add `space_or_tab_one_line_ending`, to parse whitespace including up to one line ending (but not a blank line) * Add `ParserState` to share codes, definitions, etc
2022-06-22Add docs on normalizing identifiers, matchingLibravatar Titus Wormer1-2/+33
2022-06-22Add support for normalizing identifiersLibravatar Titus Wormer3-0/+40
2022-06-21Add docs for `subtokenize`Libravatar Titus Wormer2-9/+0
2022-06-20Add support for line endings in stringLibravatar Titus Wormer2-0/+9
2022-06-16Add support for hard break (trailing)Libravatar Titus Wormer1-1/+1
2022-06-15Add docs on sanitizing urls to autolinkLibravatar Titus Wormer1-2/+2
2022-06-14Add examples to some docsLibravatar Titus Wormer2-2/+22
2022-06-14Reorganize to split utilLibravatar Titus Wormer5-0/+361