summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYip Coekjan <69834864+Coekjan@users.noreply.github.com>2024-07-14 20:54:51 +0800
committerGitHub <noreply@github.com>2024-07-14 12:54:51 +0000
commit4d8976b619fbb2ab19c1e46fccbca4294c0c2d0b (patch)
treef52290d159293f651c05f2ef479e799c340218fd
parent98d98a4bfd4222de1f1ac4acc9793b9783a95397 (diff)
Fix lexer behavior on non-whitespace before ref (#4553)
-rw-r--r--crates/typst-syntax/src/lexer.rs2
-rw-r--r--tests/suite/model/ref.typ5
2 files changed, 6 insertions, 1 deletions
diff --git a/crates/typst-syntax/src/lexer.rs b/crates/typst-syntax/src/lexer.rs
index dd05e73f..993af080 100644
--- a/crates/typst-syntax/src/lexer.rs
+++ b/crates/typst-syntax/src/lexer.rs
@@ -474,7 +474,7 @@ impl Lexer<'_> {
Some('-') if !s.at(['-', '?']) => {}
Some('.') if !s.at("..") => {}
Some('h') if !s.at("ttp://") && !s.at("ttps://") => {}
- Some('@') if !s.at(is_id_start) => {}
+ Some('@') if !s.at(is_valid_in_label_literal) => {}
_ => break,
}
diff --git a/tests/suite/model/ref.typ b/tests/suite/model/ref.typ
index 200f40aa..d0881202 100644
--- a/tests/suite/model/ref.typ
+++ b/tests/suite/model/ref.typ
@@ -54,3 +54,8 @@ $ A = 1 $ <eq2>
// Error: 1-7 label occurs in the document and its bibliography
@arrgh
#bibliography("/assets/bib/works.bib")
+
+--- issue-4536-non-whitespace-before-ref ---
+// Test reference with non-whitespace before it.
+#figure[] <1>
+#test([(#ref(<1>))], [(@1)])