Look for the new syntax inside text

This commit is contained in:
Lukas Stancik
2026-04-04 07:49:24 +00:00
parent 1fd81fb64c
commit 1178b48284
+9 -1
View File
@@ -32,7 +32,7 @@ use crate::subtokenize::Subresult;
use crate::tokenizer::Tokenizer; use crate::tokenizer::Tokenizer;
/// Characters that can start something in text. /// Characters that can start something in text.
const MARKERS: [u8; 16] = [ const MARKERS: [u8; 17] = [
b'!', // `label_start_image` b'!', // `label_start_image`
b'$', // `raw_text` (math (text)) b'$', // `raw_text` (math (text))
b'&', // `character_reference` b'&', // `character_reference`
@@ -49,6 +49,7 @@ const MARKERS: [u8; 16] = [
b'w', // `gfm_autolink_literal` (`www.` kind) b'w', // `gfm_autolink_literal` (`www.` kind)
b'{', // `mdx_expression_text` b'{', // `mdx_expression_text`
b'~', // `attention` (gfm strikethrough) b'~', // `attention` (gfm strikethrough)
b':', // `task` (custom task)
]; ];
/// Start of text. /// Start of text.
@@ -163,6 +164,13 @@ pub fn before(tokenizer: &mut Tokenizer) -> State {
); );
State::Retry(StateName::MdxExpressionTextStart) State::Retry(StateName::MdxExpressionTextStart)
} }
Some(b':') => {
tokenizer.attempt(
State::Next(StateName::TextBefore),
State::Next(StateName::TextBeforeData),
);
State::Retry(StateName::TaskStart)
}
_ => State::Retry(StateName::TextBeforeData), _ => State::Retry(StateName::TextBeforeData),
} }
} }