aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib.rs (unfollow)
Commit message (Collapse)AuthorFilesLines
2022-10-11Add improved docs to public apiLibravatar Titus Wormer1-102/+330
2022-10-11Add support for proper positional info in swc treeLibravatar Titus Wormer1-4/+7
* Fix some positional info in SWC error messages * Add positional info in `to_document` on duplicate layouts * Add support for `path` on `Program` (`to_swc`, `to_document`, `jsx_rewrite`), for the path of a file on disk * Add support for `development` to `jsx-rewrite`, which when defined will embed info on where tags were written into the runtime code when they are not passed * Refactor to move some utilities to `micromark_swc_utils.rs`, `swc_utils.rs`
2022-10-06Refactor to split parse from compile optionsLibravatar Titus Wormer1-172/+263
2022-10-06Refactor to share identifier methodsLibravatar Titus Wormer1-1/+16
2022-09-29Add inline clippy configLibravatar Titus Wormer1-0/+3
2022-09-28Add support for turning mdast to hastLibravatar Titus Wormer1-2/+10
2022-09-26Add support for compiling to mdastLibravatar Titus Wormer1-14/+16
See: <https://github.com/syntax-tree/mdast>.
2022-09-19Add structs, enums for `mdast`Libravatar Titus Wormer1-8/+37
2022-09-19Add support for parsing MDX ESM, expressionsLibravatar Titus Wormer1-2/+178
This commit adds support for hooks that lets a user integrate another parser with `micromark-rs`, to parse ESM and expressions according to a particular grammar (such as a programming language, typically JavaScript). For an example integrating with SWC, see `tests/test_utils/mod.rs`. The integration occurs with two functions passed in `options`: `mdx_expression_parse` and `mdx_esm_parse`. The can signal back to micromark when they are successful, whether there is an error at the end (in which case micromark will try to parse more), or whether there is a syntax error (in which case micromark will crash).
2022-09-12Fix whitespace in GFM footnote definition identifiersLibravatar Titus Wormer1-10/+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-09Add mdx expression (flow, text)Libravatar Titus Wormer1-0/+18
2022-09-08Add support for mdx jsx (flow)Libravatar Titus Wormer1-0/+9
2022-09-07Add support for recoverable syntax errorsLibravatar Titus Wormer1-29/+74
2022-09-06Add initial states for MDX JSX (text)Libravatar Titus Wormer1-0/+29
2022-09-01Add support for GFM tagfilterLibravatar Titus Wormer1-0/+47
2022-08-31Add support for GFM tablesLibravatar Titus Wormer1-0/+13
2022-08-26Add support for math (flow)Libravatar Titus Wormer1-1/+13
2022-08-26Add support for math (text)Libravatar Titus Wormer1-45/+99
2022-08-25Add support for GFM footnotesLibravatar Titus Wormer1-16/+238
2022-08-22Add support for GFM task list itemLibravatar Titus Wormer1-0/+9
2022-08-22Add support for GFM strikethroughLibravatar Titus Wormer1-1/+60
2022-08-19Refactor to move more things to `util/`Libravatar Titus Wormer1-2/+0
2022-08-18Add support for GFM autolink literalsLibravatar Titus Wormer1-0/+21
2022-08-16Add `no_std + alloc`Libravatar Titus Wormer1-0/+5
2022-08-16Add support for frontmatterLibravatar Titus Wormer1-0/+12
2022-08-15Add derive of `Eq` where possibleLibravatar Titus Wormer1-1/+1
2022-08-15Refactor to move `content` to `construct`Libravatar Titus Wormer1-1/+0
2022-08-15Refactor to rename list construct to list itemLibravatar Titus Wormer1-3/+3
2022-08-12Refactor to improve docs of each functionLibravatar Titus Wormer1-1/+1
2022-08-11Remove boxes around resolversLibravatar Titus Wormer1-0/+1
2022-08-11Refactor to move some code to `event.rs`Libravatar Titus Wormer1-1/+1
2022-08-11Refactor to move some code to `state.rs`Libravatar Titus Wormer1-0/+1
2022-07-29Refactor to improve statesLibravatar Titus Wormer1-2/+2
* 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-1/+1
2022-07-28Refactor to work on `char`sLibravatar Titus Wormer1-8/+7
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-19Remove unneeded `rust` language flagsLibravatar Titus Wormer1-6/+6
2022-07-18Change to improve `default_line_ending` apiLibravatar Titus Wormer1-4/+4
2022-07-18Add support for turning off constructsLibravatar Titus Wormer1-9/+223
2022-07-18Refactor to move options to `lib/`Libravatar Titus Wormer1-1/+159
2022-07-07Refactor to move token types to `token`Libravatar Titus Wormer1-0/+1
2022-07-05Refactor to do some to dosLibravatar Titus Wormer1-2/+2
2022-07-04Add support for unicode punctuationLibravatar Titus Wormer1-0/+1
2022-06-21Add support for inferring line ending, configurableLibravatar Titus Wormer1-5/+6
* Rename `CompileOptions` to `Options` * Add support for an optional default line ending style * Add support for inferring the used line ending style
2022-06-13Add support for sanitizing urlsLibravatar Titus Wormer1-0/+1
* Add support for properly encoding characters in urls * Add support for sanitizing potentially dangerous urls * Add safe defaults, optionally live dangerously
2022-06-09Add basic subtokenization, string content in fenced codeLibravatar Titus Wormer1-0/+1