Added Russian numbering

This commit is contained in:
AI 2025-03-15 15:45:50 +03:00
parent 1b2714e1a7
commit e6bcb7b86c

View File

@ -257,6 +257,10 @@ pub enum NumberingKind {
LowerLatin, LowerLatin,
/// Uppercase Latin letters (A, B, C, etc.). Items beyond Z use base-26. /// Uppercase Latin letters (A, B, C, etc.). Items beyond Z use base-26.
UpperLatin, UpperLatin,
/// Lowercase Russian letters (а, б, в, etc.). Items beyond я use base-28. Excluding some letters (ё, й, ъ, ы, ь)
LowerRussian,
/// Uppercase Russian letters (А, Б, В, etc.). Items beyond Я use base-28. Excluding some letters (Ё, Й, Ъ, Ы, Ь)
UpperRussian,
/// Lowercase Roman numerals (i, ii, iii, etc.). /// Lowercase Roman numerals (i, ii, iii, etc.).
LowerRoman, LowerRoman,
/// Uppercase Roman numerals (I, II, III, etc.). /// Uppercase Roman numerals (I, II, III, etc.).
@ -323,6 +327,8 @@ impl NumberingKind {
'1' => NumberingKind::Arabic, '1' => NumberingKind::Arabic,
'a' => NumberingKind::LowerLatin, 'a' => NumberingKind::LowerLatin,
'A' => NumberingKind::UpperLatin, 'A' => NumberingKind::UpperLatin,
'а' => NumberingKind::LowerRussian,
'А' => NumberingKind::UpperRussian,
'i' => NumberingKind::LowerRoman, 'i' => NumberingKind::LowerRoman,
'I' => NumberingKind::UpperRoman, 'I' => NumberingKind::UpperRoman,
'α' => NumberingKind::LowerGreek, 'α' => NumberingKind::LowerGreek,
@ -354,6 +360,8 @@ impl NumberingKind {
Self::Arabic => '1', Self::Arabic => '1',
Self::LowerLatin => 'a', Self::LowerLatin => 'a',
Self::UpperLatin => 'A', Self::UpperLatin => 'A',
Self::LowerRussian => 'а',
Self::UpperRussian => 'А',
Self::LowerRoman => 'i', Self::LowerRoman => 'i',
Self::UpperRoman => 'I', Self::UpperRoman => 'I',
Self::LowerGreek => 'α', Self::LowerGreek => 'α',
@ -412,6 +420,20 @@ impl NumberingKind {
], ],
n, n,
), ),
Self::LowerRussian => zeroless(
[
'а', 'б', 'в', 'г', 'д', 'е', 'ж', 'з', 'и', 'к', 'л', 'м', 'н', 'о',
'п', 'р', 'с', 'т', 'у', 'ф', 'х', 'ц', 'ч', 'ш', 'щ', 'э', 'ю', 'я',
],
n,
),
Self::UpperRussian => zeroless(
[
'А', 'Б', 'В', 'Г', 'Д', 'Е', 'Ж', 'З', 'И', 'К', 'Л', 'М', 'Н', 'О',
'П', 'Р', 'С', 'Т', 'У', 'Ф', 'Х', 'Ц', 'Ч', 'Ш', 'Щ', 'Э', 'Ю', 'Я',
],
n,
),
Self::HiraganaAiueo => zeroless( Self::HiraganaAiueo => zeroless(
[ [
'あ', 'い', 'う', 'え', 'お', 'か', 'き', 'く', 'け', 'こ', 'さ', 'あ', 'い', 'う', 'え', 'お', 'か', 'き', 'く', 'け', 'こ', 'さ',