From ba0990f189ec7120d8be949c081998d721bbe5e6 Mon Sep 17 00:00:00 2001 From: damaxwell Date: Sat, 5 Aug 2023 02:02:38 -0800 Subject: [PATCH] Period and slash are ordinary characters in math (#1855) --- crates/typst-library/src/math/fragment.rs | 2 +- tests/ref/math/class.png | Bin 5306 -> 6491 bytes tests/typ/math/class.typ | 4 ++++ tests/typ/math/matrix-alignment.typ | 5 ++++- 4 files changed, 9 insertions(+), 2 deletions(-) diff --git a/crates/typst-library/src/math/fragment.rs b/crates/typst-library/src/math/fragment.rs index 8baea9132..8e0510746 100644 --- a/crates/typst-library/src/math/fragment.rs +++ b/crates/typst-library/src/math/fragment.rs @@ -216,7 +216,7 @@ impl GlyphFragment { pub fn with_id(ctx: &MathContext, c: char, id: GlyphId, span: Span) -> Self { let class = match c { ':' => Some(MathClass::Relation), - '⋯' | '⋱' | '⋰' | '⋮' => Some(MathClass::Normal), + '.' | '/' | '⋯' | '⋱' | '⋰' | '⋮' => Some(MathClass::Normal), _ => unicode_math_class::class(c), }; let mut fragment = Self { diff --git a/tests/ref/math/class.png b/tests/ref/math/class.png index f339c4f1ce957db2a44eca8f3caa3e4e3beced7a..7365dc3e1226f760379d8abfdb0f74d8a1e290dc 100644 GIT binary patch literal 6491 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 P*W{k6u1cjcCgQ&UDu<+f literal 5306 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 diff --git a/tests/typ/math/class.typ b/tests/typ/math/class.typ index 188e7d90a..0c9fa32b4 100644 --- a/tests/typ/math/class.typ +++ b/tests/typ/math/class.typ @@ -31,3 +31,7 @@ $ a dotsq b \ #let normal = math.class.with("normal") #let pluseq = $class("binary", normal(+) normal(=))$ $ a pluseq 5 $ + +--- +// Test exceptions. +$ sqrt(3)\/2 quad d_0.d_1d_2 dots $ \ No newline at end of file diff --git a/tests/typ/math/matrix-alignment.typ b/tests/typ/math/matrix-alignment.typ index fd149dd88..0b3aa4564 100644 --- a/tests/typ/math/matrix-alignment.typ +++ b/tests/typ/math/matrix-alignment.typ @@ -42,10 +42,13 @@ $ mat( --- // Test #460 equations. +#let stop = { + math.class("punctuation",$.$) +} $ mat(&a+b,c;&d, e) $ $ mat(&a+b&,c;&d&, e) $ $ mat(&&&a+b,c;&&&d, e) $ -$ mat(.&a+b&.,c;.....&d&....., e) $ +$ mat(stop &a+b&stop,c;...stop stop&d&...stop stop, e) $ --- // Test #454 equations.