mn-translit


Namemn-translit JSON
Version 1.0.1 PyPI version JSON
download
home_pageNone
SummaryMongolian Latin-Cyrillic transliteration library following MNS 5217:2012 standard
upload_time2025-10-25 15:30:13
maintainerNone
docs_urlNone
authorNone
requires_python!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,>=2.7
licenseMIT
keywords mongolian transliteration cyrillic latin mns-5217
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 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

```bash
pip install mn-translit
```

Or install from source:

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

## Usage

### Text Transliteration

```python
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

```python
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:

```bash
python tests/test_translit.py
```

Or with Python 2.7:

```bash
python2 tests/test_translit.py
```

## Development

### Setting up for development

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

### Running tests

```bash
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

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "mn-translit",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,>=2.7",
    "maintainer_email": null,
    "keywords": "mongolian, transliteration, cyrillic, latin, mns-5217",
    "author": null,
    "author_email": "Battseren Badral <bbattseren88@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/ad/fb/22d5ae23947bc55686971992162279a5e61707567c9120f53b2ea0c8a53f/mn_translit-1.0.1.tar.gz",
    "platform": null,
    "description": "# mn-translit\n\nMongolian Latin-Cyrillic transliteration following MNS 5217:2012 standard with proper Mongolian number grammar.\n\n## Python Version Support\n\n- Python 2.7\n- Python 3.4+\n\n## Installation\n\n```bash\npip install mn-translit\n```\n\nOr install from source:\n\n```bash\ngit clone https://github.com/yourusername/mn-translit.git\ncd mn-translit\npip install -e .\n```\n\n## Usage\n\n### Text Transliteration\n\n```python\nfrom mn_translit import latin_to_cyrillic, cyrillic_to_latin\n\n# Latin to Cyrillic\nprint(latin_to_cyrillic(\"Sain baina uu?\"))\n# Output: \u0421\u0430\u0439\u043d \u0431\u0430\u0439\u043d\u0430 \u0443\u0443?\n\n# With automatic number conversion\nprint(latin_to_cyrillic(\"I have 21 books\", trans_num=True))\n# Output: \u0418 \u0445\u0430\u0432\u044d \u0445\u043e\u0440\u0438\u043d \u043d\u044d\u0433 \u0431\u043e\u043e\u043a\u0441\n\nprint(latin_to_cyrillic(\"Year 2024\", trans_num=True))\n# Output: \u0415\u0430\u0440 \u0445\u043e\u0451\u0440 \u043c\u044f\u043d\u0433\u0430 \u0445\u043e\u0440\u0438\u043d \u0434\u04e9\u0440\u04e9\u0432\n\n# Cyrillic to Latin\nprint(cyrillic_to_latin(\"\u041c\u043e\u043d\u0433\u043e\u043b\"))\n# Output: Mongol\n```\n\n### Number Conversion\n\n```python\nfrom mn_translit import number_to_words, words_to_number\n\n# Number to words (proper Mongolian grammar)\nprint(number_to_words(21))\n# Output: \u0445\u043e\u0440\u0438\u043d \u043d\u044d\u0433\n\nprint(number_to_words(111))\n# Output: \u0437\u0443\u0443\u043d \u0430\u0440\u0430\u0432 \u043d\u044d\u0433\n\nprint(number_to_words(230))\n# Output: \u0445\u043e\u0451\u0440 \u0437\u0443\u0443\u043d \u0433\u0443\u0447\u0438\u043d\n\nprint(number_to_words(2024))\n# Output: \u0445\u043e\u0451\u0440 \u043c\u044f\u043d\u0433\u0430 \u0445\u043e\u0440\u0438\u043d \u0434\u04e9\u0440\u04e9\u0432\n\n# Words to number\nprint(words_to_number(\"\u043c\u044f\u043d\u0433\u0430\"))\n# Output: 1000\n\nprint(words_to_number(\"\u0445\u043e\u0440\u0438\u043d \u043d\u044d\u0433\"))\n# Output: 21\n\nprint(words_to_number(\"\u0445\u043e\u0451\u0440 \u0437\u0443\u0443\u043d \u0433\u0443\u0447\u0438\u043d\"))\n# Output: 230\n```\n\n## Character Mapping\n\n### Basic Mapping\n\n| Latin | Cyrillic | Latin | Cyrillic |\n|-------|----------|-------|----------|\n| a     | \u0430        | n     | \u043d        |\n| e     | \u044d        | o     | \u043e        |\n| i     | \u0438        | u     | \u0443        |\n| \u00f6     | \u04e9        | \u00fc     | \u04af        |\n\n### Digraphs\n\n| Latin | Cyrillic | Latin | Cyrillic |\n|-------|----------|-------|----------|\n| kh    | \u0445        | ts    | \u0446        |\n| ch    | \u0447        | sh    | \u0448        |\n| zh    | \u0436        | ya    | \u044f        |\n| ye    | \u0435        | yo    | \u0451        |\n| yu    | \u044e        |       |          |\n\n### Diphthongs\n\n| Latin | Cyrillic | Example |\n|-------|----------|---------|\n| ai    | \u0430\u0439       | sainai \u2192 \u0441\u0430\u0439\u043d\u0430\u0439 |\n| ei    | \u044d\u0439       | erdei \u2192 \u044d\u0440\u0434\u044d\u0439 |\n| ii    | \u0438\u0439       | kharii \u2192 \u0445\u0430\u0440\u0438\u0439 |\n| oi    | \u043e\u0439       | oilgokh \u2192 \u043e\u0439\u043b\u0433\u043e\u0445 |\n\n## Number System\n\n### Major Scales\n\n- 100 \u2192 \u0437\u0443\u0443\u043d\n- 1,000 \u2192 \u043c\u044f\u043d\u0433\u0430\n- 10,000 \u2192 \u0442\u04af\u043c\n- 100,000 \u2192 \u0431\u0443\u043c\n- 1,000,000 \u2192 \u0441\u0430\u044f\n- 1,000,000,000 \u2192 \u0442\u044d\u0440\u0431\u0443\u043c\n- 1,000,000,000,000 \u2192 \u0438\u0445 \u043d\u0430\u044f\u0434\n\n### Examples\n\n- 21 \u2192 \u0445\u043e\u0440\u0438\u043d \u043d\u044d\u0433\n- 31 \u2192 \u0433\u0443\u0447\u0438\u043d \u043d\u044d\u0433\n- 41 \u2192 \u0434\u04e9\u0447\u0438\u043d \u043d\u044d\u0433\n- 51 \u2192 \u0442\u0430\u0432\u0438\u043d \u043d\u044d\u0433\n- 61 \u2192 \u0436\u0430\u0440\u0430\u043d \u043d\u044d\u0433\n- 71 \u2192 \u0434\u0430\u043b\u0430\u043d \u043d\u044d\u0433\n- 81 \u2192 \u043d\u0430\u044f\u043d \u043d\u044d\u0433\n- 91 \u2192 \u0435\u0440\u044d\u043d \u043d\u044d\u0433\n- 111 \u2192 \u0437\u0443\u0443\u043d \u0430\u0440\u0430\u0432 \u043d\u044d\u0433\n- 230 \u2192 \u0445\u043e\u0451\u0440 \u0437\u0443\u0443\u043d \u0433\u0443\u0447\u0438\u043d\n\n## Testing\n\nRun the test suite to verify all functionality:\n\n```bash\npython tests/test_translit.py\n```\n\nOr with Python 2.7:\n\n```bash\npython2 tests/test_translit.py\n```\n\n## Development\n\n### Setting up for development\n\n```bash\ngit clone https://github.com/yourusername/mn-translit.git\ncd mn-translit\npip install -e .\n```\n\n### Running tests\n\n```bash\npython tests/test_translit.py\n```\n\n### Publishing to PyPI\n\nThis package uses GitHub Actions for automated publishing. To publish a new version:\n\n1. Update version in `mn_translit/__init__.py`\n2. Create a new release on GitHub\n3. The GitHub Action will automatically run tests and publish to PyPI\n\n**Note:** You need to set up `PYPI_API_TOKEN` secret in your GitHub repository settings.\n\n## License\n\nMIT License\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Mongolian Latin-Cyrillic transliteration library following MNS 5217:2012 standard",
    "version": "1.0.1",
    "project_urls": {
        "Bug Reports": "https://github.com/btseee/mn-translit/issues",
        "Homepage": "https://github.com/btseee/mn-translit",
        "Source": "https://github.com/btseee/mn-translit"
    },
    "split_keywords": [
        "mongolian",
        " transliteration",
        " cyrillic",
        " latin",
        " mns-5217"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "7cba9fc5b544a71a9719e862419e8416d2f8df855507f5806368cc92568e3fd6",
                "md5": "25a17a7c15d7e85aa7d170370ef61b76",
                "sha256": "4ab40036fd6425dacf9c4af4ec8fb0c96b6e9e31a508b14840c4118ea956ced1"
            },
            "downloads": -1,
            "filename": "mn_translit-1.0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "25a17a7c15d7e85aa7d170370ef61b76",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,>=2.7",
            "size": 6891,
            "upload_time": "2025-10-25T15:30:12",
            "upload_time_iso_8601": "2025-10-25T15:30:12.633754Z",
            "url": "https://files.pythonhosted.org/packages/7c/ba/9fc5b544a71a9719e862419e8416d2f8df855507f5806368cc92568e3fd6/mn_translit-1.0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "adfb22d5ae23947bc55686971992162279a5e61707567c9120f53b2ea0c8a53f",
                "md5": "f0985f80ee744c9d100a3b23c977b17e",
                "sha256": "ad565aadea4a05a8035adcd446d8ccfff44b1d0da95c5269416b03bc77a7c5b6"
            },
            "downloads": -1,
            "filename": "mn_translit-1.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "f0985f80ee744c9d100a3b23c977b17e",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,>=2.7",
            "size": 7911,
            "upload_time": "2025-10-25T15:30:13",
            "upload_time_iso_8601": "2025-10-25T15:30:13.486754Z",
            "url": "https://files.pythonhosted.org/packages/ad/fb/22d5ae23947bc55686971992162279a5e61707567c9120f53b2ea0c8a53f/mn_translit-1.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-10-25 15:30:13",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "btseee",
    "github_project": "mn-translit",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "mn-translit"
}
        
Elapsed time: 1.13601s