mirror of
https://github.com/typst/typst
synced 2025-05-13 20:46:23 +08:00
Add Devanagari numbering (#4850)
This commit is contained in:
parent
c644dce81b
commit
51df7aee76
@ -297,6 +297,8 @@ pub enum NumberingKind {
|
||||
EasternArabic,
|
||||
/// The variant of Eastern Arabic numerals used in Persian and Urdu.
|
||||
EasternArabicPersian,
|
||||
/// Devanagari numerals.
|
||||
DevanagariNumber,
|
||||
/// Circled numbers (①, ②, ③, etc.), up to 50.
|
||||
CircledNumber,
|
||||
/// Double-circled numbers (⓵, ⓶, ⓷, etc.), up to 10.
|
||||
@ -321,6 +323,7 @@ impl NumberingKind {
|
||||
'가' => NumberingKind::KoreanSyllable,
|
||||
'\u{0661}' => NumberingKind::EasternArabic,
|
||||
'\u{06F1}' => NumberingKind::EasternArabicPersian,
|
||||
'\u{0967}' => NumberingKind::DevanagariNumber,
|
||||
'①' => NumberingKind::CircledNumber,
|
||||
'⓵' => NumberingKind::DoubleCircledNumber,
|
||||
_ => return None,
|
||||
@ -345,6 +348,7 @@ impl NumberingKind {
|
||||
Self::KoreanSyllable => '가',
|
||||
Self::EasternArabic => '\u{0661}',
|
||||
Self::EasternArabicPersian => '\u{06F1}',
|
||||
Self::DevanagariNumber => '\u{0967}',
|
||||
Self::CircledNumber => '①',
|
||||
Self::DoubleCircledNumber => '⓵',
|
||||
}
|
||||
@ -556,6 +560,7 @@ impl NumberingKind {
|
||||
),
|
||||
Self::EasternArabic => decimal('\u{0660}', n),
|
||||
Self::EasternArabicPersian => decimal('\u{06F0}', n),
|
||||
Self::DevanagariNumber => decimal('\u{0966}', n),
|
||||
Self::CircledNumber => zeroless::<50>(
|
||||
|x| {
|
||||
[
|
||||
|
@ -102,6 +102,11 @@
|
||||
#assert.eq(numbering("\u{0661}", 1475), "١٤٧٥")
|
||||
#assert.eq(numbering("\u{06F1}", 1475), "۱۴۷۵")
|
||||
|
||||
--- numbering-devanagari-number ---
|
||||
#assert.eq(numbering("\u{0967}", 1), "१")
|
||||
#assert.eq(numbering("\u{0967}", 10), "१०")
|
||||
#assert.eq(numbering("\u{0967}", 123456789), "१२३४५६७८९")
|
||||
|
||||
--- numbering-negative ---
|
||||
// Error: 17-19 number must be at least zero
|
||||
#numbering("1", -1)
|
||||
@ -112,4 +117,4 @@
|
||||
|
||||
--- numbering-double-circled-number ---
|
||||
#assert.eq(numbering("⓵", 1), "⓵")
|
||||
#assert.eq(numbering("⓵", 10), "⓾")
|
||||
#assert.eq(numbering("⓵", 10), "⓾")
|
||||
|
Loading…
x
Reference in New Issue
Block a user