summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLaurenz <laurmaedje@gmail.com>2025-06-19 09:29:35 +0200
committerGitHub <noreply@github.com>2025-06-19 07:29:35 +0000
commitf32cd5b3e1e9b5c81f8fe72042212a7c7d3a43a7 (patch)
tree8a8ee660f99cc40fe8c3be70a6a2eb0edce48d20
parent64d0a564bf92b6540955d820149e62e7fab394c5 (diff)
Ensure that label repr is syntactically valid (#6456)
-rw-r--r--crates/typst-library/src/foundations/label.rs7
1 files changed, 6 insertions, 1 deletions
diff --git a/crates/typst-library/src/foundations/label.rs b/crates/typst-library/src/foundations/label.rs
index 2f5520b1..3b9b010c 100644
--- a/crates/typst-library/src/foundations/label.rs
+++ b/crates/typst-library/src/foundations/label.rs
@@ -79,7 +79,12 @@ impl Label {
impl Repr for Label {
fn repr(&self) -> EcoString {
- eco_format!("<{}>", self.resolve())
+ let resolved = self.resolve();
+ if typst_syntax::is_valid_label_literal_id(&resolved) {
+ eco_format!("<{resolved}>")
+ } else {
+ eco_format!("label({})", resolved.repr())
+ }
}
}