summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornz366 <firewaxx@proton.me>2024-09-26 20:47:55 +0600
committerGitHub <noreply@github.com>2024-09-26 14:47:55 +0000
commit820750ce21be96e5250bc71a099cf23f7257b943 (patch)
tree9ba489db654c4f66506ce3c2d64b449960851a61
parente00e3e4fbfb9432061d176fb0a3e6b4bf2430fc6 (diff)
Add Bengali Numerals (#4997)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
-rw-r--r--crates/typst/src/model/numbering.rs5
-rw-r--r--tests/suite/model/numbering.typ5
2 files changed, 10 insertions, 0 deletions
diff --git a/crates/typst/src/model/numbering.rs b/crates/typst/src/model/numbering.rs
index 3afde1f8..ed2081b9 100644
--- a/crates/typst/src/model/numbering.rs
+++ b/crates/typst/src/model/numbering.rs
@@ -299,6 +299,8 @@ pub enum NumberingKind {
EasternArabicPersian,
/// Devanagari numerals.
DevanagariNumber,
+ /// Bengali numerals.
+ BengaliNumber,
/// Circled numbers (①, ②, ③, etc.), up to 50.
CircledNumber,
/// Double-circled numbers (⓵, ⓶, ⓷, etc.), up to 10.
@@ -324,6 +326,7 @@ impl NumberingKind {
'\u{0661}' => NumberingKind::EasternArabic,
'\u{06F1}' => NumberingKind::EasternArabicPersian,
'\u{0967}' => NumberingKind::DevanagariNumber,
+ '\u{09E7}' => NumberingKind::BengaliNumber,
'①' => NumberingKind::CircledNumber,
'⓵' => NumberingKind::DoubleCircledNumber,
_ => return None,
@@ -349,6 +352,7 @@ impl NumberingKind {
Self::EasternArabic => '\u{0661}',
Self::EasternArabicPersian => '\u{06F1}',
Self::DevanagariNumber => '\u{0967}',
+ Self::BengaliNumber => '\u{09E7}',
Self::CircledNumber => '①',
Self::DoubleCircledNumber => '⓵',
}
@@ -561,6 +565,7 @@ impl NumberingKind {
Self::EasternArabic => decimal('\u{0660}', n),
Self::EasternArabicPersian => decimal('\u{06F0}', n),
Self::DevanagariNumber => decimal('\u{0966}', n),
+ Self::BengaliNumber => decimal('\u{09E6}', n),
Self::CircledNumber => zeroless::<50>(
|x| {
[
diff --git a/tests/suite/model/numbering.typ b/tests/suite/model/numbering.typ
index 93c9e1b3..d0cbe247 100644
--- a/tests/suite/model/numbering.typ
+++ b/tests/suite/model/numbering.typ
@@ -45,6 +45,11 @@
#t(pat: "\u{0967}", 10, "१०")
#t(pat: "\u{0967}", 123456789, "१२३४५६७८९")
+// Bengali.
+#t(pat: "\u{09E7}", 1, "১")
+#t(pat: "\u{09E7}", 10, "১০")
+#t(pat: "\u{09E7}", 123456789, "১২৩৪৫৬৭৮৯")
+
// Circled number.
#t(pat: "①", 1, "①")
#t(pat: "①", 50, "㊿")