typst/tests/suite/model/numbering.typ
2024-09-02 13:12:57 +00:00

121 lines
2.4 KiB
Typst

// Test integrated numbering patterns.
--- numbering-symbol-and-roman ---
#for i in range(0, 9) {
numbering("*", i)
[ and ]
numbering("I.a", i, i)
[ for #i \ ]
}
--- numbering-latin ---
#for i in range(0, 4) {
numbering("A", i)
[ for #i \ ]
}
... \
#for i in range(26, 30) {
numbering("A", i)
[ for #i \ ]
}
... \
#for i in range(702, 706) {
numbering("A", i)
[ for #i \ ]
}
--- numbering-hebrew ---
#set text(lang: "he")
#for i in range(9, 21, step: 2) {
numbering("א.", i)
[ עבור #i \ ]
}
--- numbering-chinese ---
#set text(lang: "zh", font: ("Linux Libertine", "Noto Serif CJK SC"))
#for i in range(9, 21, step: 2){
numbering("一", i)
[ and ]
numbering("壹", i)
[ for #i \ ]
}
--- numbering-japanese-iroha ---
#set text(lang: "ja", font: ("Linux Libertine", "Noto Serif CJK JP"))
#for i in range(0, 4) {
numbering("イ", i)
[ (or ]
numbering("い", i)
[) for #i \ ]
}
... \
#for i in range(47, 51) {
numbering("イ", i)
[ (or ]
numbering("い", i)
[) for #i \ ]
}
... \
#for i in range(2256, 2260) {
numbering("イ", i)
[ for #i \ ]
}
--- numbering-korean ---
#set text(lang: "ko", font: ("Linux Libertine", "Noto Serif CJK KR"))
#for i in range(0, 4) {
numbering("가", i)
[ (or ]
numbering("ㄱ", i)
[) for #i \ ]
}
... \
#for i in range(47, 51) {
numbering("가", i)
[ (or ]
numbering("ㄱ", i)
[) for #i \ ]
}
... \
#for i in range(2256, 2260) {
numbering("ㄱ", i)
[ for #i \ ]
}
--- numbering-japanese-aiueo ---
#set text(lang: "jp", font: ("Linux Libertine", "Noto Serif CJK JP"))
#for i in range(0, 9) {
numbering("あ", i)
[ and ]
numbering("I.あ", i, i)
[ for #i \ ]
}
#for i in range(0, 9) {
numbering("ア", i)
[ and ]
numbering("I.ア", i, i)
[ for #i \ ]
}
--- numbering-arabic-indic ---
#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)
--- numbering-circled-number ---
#assert.eq(numbering("①", 1), "①")
#assert.eq(numbering("①", 50), "㊿")
--- numbering-double-circled-number ---
#assert.eq(numbering("⓵", 1), "⓵")
#assert.eq(numbering("⓵", 10), "⓾")