Metadata-Version: 2.4
Name: kyrgyz-normalizer
Version: 0.2.0
Summary: Кыргызча текст нормализатор TTS системасы үчүн / Kyrgyz text normalizer for TTS systems
Author: Kyrgyz Normalizer Contributors
License-Expression: MIT
Project-URL: Homepage, https://github.com/AlibekovNurtilek/kyrgyz-normalizer
Project-URL: Issues, https://github.com/AlibekovNurtilek/kyrgyz-normalizer/issues
Keywords: kyrgyz,normalizer,tts,nlp,text-processing,кыргызча
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Text Processing :: Linguistic
Requires-Python: >=3.7
Description-Content-Type: text/markdown
License-File: LICENSE
Dynamic: license-file

# kyrgyz-normalizer

Кыргызча текст нормализатор — TTS системасы үчүн.

Сандарды, даталарды, убакытты, акча бирдиктерин, аббревиатураларды жана башка форматтарды кыргыз тилинде сөзгө айландырат.

## Орнотуу / Installation

```bash
pip install kyrgyz-normalizer
```

## Колдонуу / Usage

```python
from kyrgyz_normalizer import normalize

# Сандар
normalize("2024-жылы 15 км жол курулду")
# → "эки миң жыйырма төртүнчү жылы он беш километр жол курулду"

# Акча
normalize("Баасы 1500 сом")
# → "Баасы бир миң беш жүз сом"

# Даталар
normalize("01.02.2024")
# → "эки миң жыйырма төртүнчү жыл биринчи февраль"

# Убакыт
normalize("Саат 12:30да башталат")
# → "Саат он эки отузда башталат"

# Аббревиатуралар
normalize("КР Президенти БУУнун жыйынында")
# → "кыргыз республикасы Президенти бириккен улуттар уюмунун жыйынында"
```

### KyrgyzTextNormalizer классы

```python
from kyrgyz_normalizer import KyrgyzTextNormalizer

normalizer = KyrgyzTextNormalizer()

# Негизги нормализация
normalizer.normalize("$500 доллар")

# Санды сөзгө
normalizer.number_to_words(2024)  # "эки миң жыйырма төрт"

# Иреттик сан
normalizer.number_to_ordinal(5)  # "бешинчи"

# Римские цифры
normalizer.roman_to_number("XIV")  # 14
```

### CLI колдонуу / CLI Usage

```bash
# Бир текстти нормализациялоо
kyrgyz-normalizer "Баасы 1500 сом"

# Интерактивдүү режим
kyrgyz-normalizer
```

## Мүмкүнчүлүктөр / Features

- Сандарды сөзгө айландыруу (0 — триллиондорго чейин)
- Иреттик сандар (биринчи, экинчи, ...)
- Даталар (01.02.2024, 2024-08-15, 30 Ноябрь 2025)
- Убакыт (12:30, саат 15.00, 18:30да)
- Акча бирдиктери (сом, $, €, ₽, ...)
- Өлчөм бирдиктери (км, кг, м², ГБ, ...)
- Кыргызча аббревиатуралар (КР, БУУ, ЖЧК, ...)
- Англисче аббревиатуралар (IT, AI, GPS, ...)
- Телефон номерлери (+996, 0XXX)
- Римские цифры (XIV → он төртүнчү)
- Математикалык амалдар (5+3=8)
- Сингармонизм (кыргыз тилинин үндөшүүк закону)
- Пайыздар, бөлчөктөр, диапазондор

## Лицензия / License

MIT
