mirror of
https://github.com/typst/typst
synced 2025-05-14 04:56:26 +08:00
79 lines
2.3 KiB
Rust
79 lines
2.3 KiB
Rust
// Spaces, Newlines, Brackets.
|
|
"" => []
|
|
" " => [S]
|
|
" " => [S]
|
|
"\t" => [S]
|
|
" \t" => [S]
|
|
"\n" => [N]
|
|
"\n " => [N, S]
|
|
" \n" => [S, N]
|
|
" \n " => [S, N, S]
|
|
"[" => [LB]
|
|
"]" => [RB]
|
|
|
|
// Header only tokens.
|
|
"[:]" => [LB, Colon, RB]
|
|
"[=]" => [LB, Equals, RB]
|
|
"[,]" => [LB, Comma, RB]
|
|
":" => [T(":")]
|
|
"=" => [T("=")]
|
|
"," => [T(",")]
|
|
r#"["hi"]"# => [LB, Quoted("hi"), RB]
|
|
r#""hi""# => [T(r#""hi""#)]
|
|
|
|
// Body only tokens.
|
|
"_" => [Underscore]
|
|
"*" => [Star]
|
|
"`" => [Backtick]
|
|
"[_]" => [LB, T("_"), RB]
|
|
"[*]" => [LB, T("*"), RB]
|
|
"[`]" => [LB, T("`"), RB]
|
|
|
|
// Comments.
|
|
"//line" => [LineComment("line")]
|
|
"/*block*/" => [BlockComment("block")]
|
|
"*/" => [StarSlash]
|
|
|
|
// Plain text.
|
|
"A" => [T("A")]
|
|
"Hello" => [T("Hello")]
|
|
"Hello-World" => [T("Hello-World")]
|
|
r#"A"B"# => [T(r#"A"B"#)]
|
|
"🌍" => [T("🌍")]
|
|
|
|
// Escapes.
|
|
r"\[" => [T("[")]
|
|
r"\]" => [T("]")]
|
|
r"\\" => [T(r"\")]
|
|
r"[\[]" => [LB, T("["), RB]
|
|
r"[\]]" => [LB, T("]"), RB]
|
|
r"[\\]" => [LB, T(r"\"), RB]
|
|
r"\:" => [T(":")]
|
|
r"\=" => [T("=")]
|
|
r"\/" => [T("/")]
|
|
r"[\:]" => [LB, T(":"), RB]
|
|
r"[\=]" => [LB, T("="), RB]
|
|
r"[\,]" => [LB, T(","), RB]
|
|
r"\*" => [T("*")]
|
|
r"\_" => [T("_")]
|
|
r"\`" => [T("`")]
|
|
r"[\*]" => [LB, T("*"), RB]
|
|
r"[\_]" => [LB, T("_"), RB]
|
|
r"[\`]" => [LB, T("`"), RB]
|
|
|
|
// Whitespace.
|
|
"Hello World" => [T("Hello"), S, T("World")]
|
|
"Hello World" => [T("Hello"), S, T("World")]
|
|
"Hello \t World" => [T("Hello"), S, T("World")]
|
|
|
|
// Newline.
|
|
"First\n" => [T("First"), N]
|
|
"First \n" => [T("First"), S, N]
|
|
"First\n " => [T("First"), N, S]
|
|
"First \n " => [T("First"), S, N, S]
|
|
"First\nSecond" => [T("First"), N, T("Second")]
|
|
"First\r\nSecond" => [T("First"), N, T("Second")]
|
|
"First \nSecond" => [T("First"), S, N, T("Second")]
|
|
"First\n Second" => [T("First"), N, S, T("Second")]
|
|
"First \n Second" => [T("First"), S, N, S, T("Second")]
|