zed/crates/markdown
spotikhanov a653e8adda
Remove ENABLE_MATH option from pulldown_cmark to fix links which contain dollar sign (#22647)
This pr closes #21466 issue by disabling math in pulldown_cmark Parser.

The dollar sign symbol is used in pulldown_cmark Math extension, see
"Math in links" section for more details:
https://pulldown-cmark.github.io/pulldown-cmark/specs/math.html

I've tried another approach at first, without disabling math extension: 

```
let iterator = TextMergeWithOffset::new(Parser::new_ext(text, options));
```

instead of current implementation

```
Parser::new_ext(text, options).into_offset_iter()
```

This way pulldown_cmark merges consecutive text events and this helps to
correctly parse links from plain text:
https://svelte.dev/docs/svelte/$state

But in this case the dollar sign still breaks markdown links:
\[https://svelte.dev/docs/svelte/$state](https://svelte.dev/docs/svelte/$state)

So in the end I disabled the math extension, it fixes both link formats.
See markdown/examples/markdown.rs to reproduce.

Release Notes:
- N/A
2025-01-07 21:21:18 +00:00
..
examples Remove ENABLE_MATH option from pulldown_cmark to fix links which contain dollar sign (#22647) 2025-01-07 21:21:18 +00:00
src Remove ENABLE_MATH option from pulldown_cmark to fix links which contain dollar sign (#22647) 2025-01-07 21:21:18 +00:00
Cargo.toml
LICENSE-GPL Add xtask for finding crates with missing licenses (#11776) 2024-05-13 18:52:12 -04:00