diff options
| author | Laurenz <laurmaedje@gmail.com> | 2025-03-07 09:22:42 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-03-07 08:22:42 +0000 |
| commit | e1a9166e1d6a24076796efaf4eec073567bfb037 (patch) | |
| tree | c7003c65733ef0443ed99584fe2f3b4cc876cc67 | |
| parent | 6271cdceae146efe75942ebde7712a942627c42f (diff) | |
Hotfix for labels on symbols (#6015)
| -rw-r--r-- | crates/typst-realize/src/lib.rs | 5 | ||||
| -rw-r--r-- | tests/ref/issue-5930-symbol-label.png | bin | 0 -> 243 bytes | |||
| -rw-r--r-- | tests/suite/symbols/symbol.typ | 4 |
3 files changed, 8 insertions, 1 deletions
diff --git a/crates/typst-realize/src/lib.rs b/crates/typst-realize/src/lib.rs index 50685a96..151ae76b 100644 --- a/crates/typst-realize/src/lib.rs +++ b/crates/typst-realize/src/lib.rs @@ -326,7 +326,10 @@ fn visit_math_rules<'a>( // Symbols in non-math content transparently convert to `TextElem` so we // don't have to handle them in non-math layout. if let Some(elem) = content.to_packed::<SymbolElem>() { - let text = TextElem::packed(elem.text).spanned(elem.span()); + let mut text = TextElem::packed(elem.text).spanned(elem.span()); + if let Some(label) = elem.label() { + text.set_label(label); + } visit(s, s.store(text), styles)?; return Ok(true); } diff --git a/tests/ref/issue-5930-symbol-label.png b/tests/ref/issue-5930-symbol-label.png Binary files differnew file mode 100644 index 00000000..e8127aa0 --- /dev/null +++ b/tests/ref/issue-5930-symbol-label.png diff --git a/tests/suite/symbols/symbol.typ b/tests/suite/symbols/symbol.typ index 6d2513c1..5bc2cafa 100644 --- a/tests/suite/symbols/symbol.typ +++ b/tests/suite/symbols/symbol.typ @@ -151,3 +151,7 @@ --- symbol-sect-deprecated --- // Warning: 5-9 `sect` is deprecated, use `inter` instead $ A sect B = A inter B $ + +--- issue-5930-symbol-label --- +#emoji.face<lab> +#context test(query(<lab>).first().text, "😀") |
