From 22b35d978999103505c92de556fff2945f6ea432 Mon Sep 17 00:00:00 2001 From: AHReccese Date: Mon, 2 Feb 2026 13:10:43 -0500 Subject: [PATCH 1/6] feat: Add TAMIL_DIGITS to numeral system and mapping --- xnum/params.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/xnum/params.py b/xnum/params.py index 72879dc..4accfcb 100644 --- a/xnum/params.py +++ b/xnum/params.py @@ -75,6 +75,7 @@ MYANMAR_TAI_LAING_DIGITS = ['꧰', '꧱', '꧲', '꧳', '꧴', '꧵', '꧶', '꧷', '꧸', '꧹'] AHOM_DIGITS = ['𑜰', '𑜱', '𑜲', '𑜳', '𑜴', '𑜵', '𑜶', '𑜷', '𑜸', '𑜹'] WARANG_CITI_DIGITS = ['𑣠', '𑣡', '𑣢', '𑣣', '𑣤', '𑣥', '𑣦', '𑣧', '𑣨', '𑣩'] +TAMIL_DIGITS = ['௦', '௧', '௨', '௩', '௪', '௫', '௬', '௭', '௮', '௯'] NUMERAL_MAPS = { "english": ENGLISH_DIGITS, @@ -148,6 +149,7 @@ "myanmar_tai_laing": MYANMAR_TAI_LAING_DIGITS, "ahom": AHOM_DIGITS, "warang_citi": WARANG_CITI_DIGITS, + "tamil": TAMIL_DIGITS, } ALL_DIGIT_MAPS = {} @@ -230,6 +232,7 @@ class NumeralSystem(Enum): MYANMAR_TAI_LAING = "myanmar_tai_laing" AHOM = "ahom" WARANG_CITI = "warang_citi" + TAMIL = "tamil" AUTO = "auto" From be1e871177831ce3ca1bf71b8210ba0fe25f2b15 Mon Sep 17 00:00:00 2001 From: AHReccese Date: Mon, 2 Feb 2026 13:10:48 -0500 Subject: [PATCH 2/6] feat: Add TAMIL_DIGITS to conversion cases in tests --- tests/test_conversion.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/test_conversion.py b/tests/test_conversion.py index 96b5756..bab8e8d 100644 --- a/tests/test_conversion.py +++ b/tests/test_conversion.py @@ -91,6 +91,7 @@ NumeralSystem.MYANMAR_TAI_LAING: "꧰꧱꧲꧳꧴꧵꧶꧷꧸꧹", NumeralSystem.AHOM: "𑜰𑜱𑜲𑜳𑜴𑜵𑜶𑜷𑜸𑜹", NumeralSystem.WARANG_CITI: "𑣠𑣡𑣢𑣣𑣤𑣥𑣦𑣧𑣨𑣩", + NumeralSystem.TAMIL: "௦௧௨௩௪௫௬௭௮௯", } From f0c358d0b219950f5b41a7c08634e75310a8106c Mon Sep 17 00:00:00 2001 From: AHReccese Date: Mon, 2 Feb 2026 13:11:23 -0500 Subject: [PATCH 3/6] doc: Update CHANGELOG.md to include Tamil numeral system --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4e26151..06fc8cc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. ### Added - Ahom numeral system - Warang Citi numeral system +- Tamil numeral system ## [1.3] - 2026-01-28 ### Added - English full stop mode From b4874d1c818a9b5a74c866718e3843e562249d13 Mon Sep 17 00:00:00 2001 From: AHReccese Date: Mon, 2 Feb 2026 13:12:32 -0500 Subject: [PATCH 4/6] doc: Update README.md to include Tamil numeral system and clarify positional notation conversion --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index 6cd2b2d..4000e0c 100644 --- a/README.md +++ b/README.md @@ -157,6 +157,10 @@ It can automatically detect mixed numeral formats in a piece of text and convert - Myanmar Tai Laing - Ahom - Warang Citi +- Tamil + +> [!NOTE] +> XNum performs digit-by-digit conversion using positional notation. Traditional numeral forms with special symbols for 10, 100, or 1000 (e.g., Tamil ௰, ௱, ௲) are not covered. For most modern use cases, positional digit conversion is the expected behavior. ## Issues & bug reports From d3c80b84e2d6b36687432b0a50a644f8c52fef10 Mon Sep 17 00:00:00 2001 From: AHReccese Date: Mon, 2 Feb 2026 21:37:37 -0500 Subject: [PATCH 5/6] doc: Clarify positional notation conversion in README.md and note non-positional numeral systems --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 4000e0c..bc4287e 100644 --- a/README.md +++ b/README.md @@ -160,7 +160,9 @@ It can automatically detect mixed numeral formats in a piece of text and convert - Tamil > [!NOTE] -> XNum performs digit-by-digit conversion using positional notation. Traditional numeral forms with special symbols for 10, 100, or 1000 (e.g., Tamil ௰, ௱, ௲) are not covered. For most modern use cases, positional digit conversion is the expected behavior. +> XNum performs digit-by-digit conversion using positional notation. +> While most supported systems are positional, a small subset are non-positional and follow different numeric conventions. +> For them, XNum converts only individual digit symbols and does not interpret or generate non-positional number forms. ## Issues & bug reports From 0aa491aeee12e31200357defbec4f35554ff3df6 Mon Sep 17 00:00:00 2001 From: AmirHosein Rostami Date: Wed, 4 Feb 2026 19:40:56 -0500 Subject: [PATCH 6/6] `CHANGELOG.md` updated --- CHANGELOG.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c6fc4a9..1376380 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,8 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - Warang Citi numeral system - Bhaiksuki numeral system - Tamil numeral system +### Changed +- `README.md` updated ## [1.3] - 2026-01-28 ### Added - English full stop mode @@ -152,4 +154,4 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. [0.4]: https://github.com/openscilab/xnum/compare/v0.3...v0.4 [0.3]: https://github.com/openscilab/xnum/compare/v0.2...v0.3 [0.2]: https://github.com/openscilab/xnum/compare/v0.1...v0.2 -[0.1]: https://github.com/openscilab/xnum/compare/2ed44ad...v0.1 \ No newline at end of file +[0.1]: https://github.com/openscilab/xnum/compare/2ed44ad...v0.1