Skip to main content

Mongolian Latin-Cyrillic transliteration library following MNS 5217:2012 standard

Project description

mn-translit

Mongolian Latin-Cyrillic transliteration following MNS 5217:2012 standard with proper Mongolian number grammar.

Python Version Support

  • Python 2.7
  • Python 3.4+

Installation

pip install mn-translit

Or install from source:

git clone https://github.com/yourusername/mn-translit.git
cd mn-translit
pip install -e .

Usage

Text Transliteration

from mn_translit import latin_to_cyrillic, cyrillic_to_latin

# Latin to Cyrillic
print(latin_to_cyrillic("Sain baina uu?"))
# Output: Сайн байна уу?

# With automatic number conversion
print(latin_to_cyrillic("I have 21 books", trans_num=True))
# Output: И хавэ хорин нэг боокс

print(latin_to_cyrillic("Year 2024", trans_num=True))
# Output: Еар хоёр мянга хорин дөрөв

# Cyrillic to Latin
print(cyrillic_to_latin("Монгол"))
# Output: Mongol

Number Conversion

from mn_translit import number_to_words, words_to_number

# Number to words (proper Mongolian grammar)
print(number_to_words(21))
# Output: хорин нэг

print(number_to_words(111))
# Output: зуун арав нэг

print(number_to_words(230))
# Output: хоёр зуун гучин

print(number_to_words(2024))
# Output: хоёр мянга хорин дөрөв

# Words to number
print(words_to_number("мянга"))
# Output: 1000

print(words_to_number("хорин нэг"))
# Output: 21

print(words_to_number("хоёр зуун гучин"))
# Output: 230

Character Mapping

Basic Mapping

Latin Cyrillic Latin Cyrillic
a а n н
e э o о
i и u у
ö ө ü ү

Digraphs

Latin Cyrillic Latin Cyrillic
kh х ts ц
ch ч sh ш
zh ж ya я
ye е yo ё
yu ю

Diphthongs

Latin Cyrillic Example
ai ай sainai → сайнай
ei эй erdei → эрдэй
ii ий kharii → харий
oi ой oilgokh → ойлгох

Number System

Major Scales

  • 100 → зуун
  • 1,000 → мянга
  • 10,000 → түм
  • 100,000 → бум
  • 1,000,000 → сая
  • 1,000,000,000 → тэрбум
  • 1,000,000,000,000 → их наяд

Examples

  • 21 → хорин нэг
  • 31 → гучин нэг
  • 41 → дөчин нэг
  • 51 → тавин нэг
  • 61 → жаран нэг
  • 71 → далан нэг
  • 81 → наян нэг
  • 91 → ерэн нэг
  • 111 → зуун арав нэг
  • 230 → хоёр зуун гучин

Testing

Run the test suite to verify all functionality:

python tests/test_translit.py

Or with Python 2.7:

python2 tests/test_translit.py

Development

Setting up for development

git clone https://github.com/yourusername/mn-translit.git
cd mn-translit
pip install -e .

Running tests

python tests/test_translit.py

Publishing to PyPI

This package uses GitHub Actions for automated publishing. To publish a new version:

  1. Update version in mn_translit/__init__.py
  2. Create a new release on GitHub
  3. The GitHub Action will automatically run tests and publish to PyPI

Note: You need to set up PYPI_API_TOKEN secret in your GitHub repository settings.

License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mn_translit-1.0.2.tar.gz (7.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mn_translit-1.0.2-py3-none-any.whl (6.9 kB view details)

Uploaded Python 3

File details

Details for the file mn_translit-1.0.2.tar.gz.

File metadata

  • Download URL: mn_translit-1.0.2.tar.gz
  • Upload date:
  • Size: 7.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.18

File hashes

Hashes for mn_translit-1.0.2.tar.gz
Algorithm Hash digest
SHA256 b9f5db02a3b0d0c771964634144511bac02d913bdfc83544b7527e7f051428ec
MD5 109fba6138850d5509a0cebbba3f143c
BLAKE2b-256 20fe0738f70d776b859813ecbfa74e0b23256e68020dff9a810d7bc735d95015

See more details on using hashes here.

File details

Details for the file mn_translit-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: mn_translit-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 6.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.18

File hashes

Hashes for mn_translit-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c925e0552b440ca5079652618cfbca6822b2f794ea49a49fb8e955ddb4f4f6dc
MD5 76c368fe3681fff477b729673d4962c2
BLAKE2b-256 877eff3032e8af0c42945d23cf6ab0e77590b82ba921933866290fe710483303

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page