Metadata-Version: 2.4
Name: g2p2
Version: 0.2.2
Classifier: Programming Language :: Rust
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Text Processing :: Linguistic
Classifier: License :: OSI Approved :: MIT License
Requires-Dist: g2p2-group-germanic==0.2.2 ; extra == 'af'
Requires-Dist: g2p2-group-african==0.2.2 ; extra == 'african'
Requires-Dist: g2p2-models==0.2.2 ; extra == 'all'
Requires-Dist: g2p2-group-semitic==0.2.2 ; extra == 'am'
Requires-Dist: g2p2-group-semitic==0.2.2 ; extra == 'ar'
Requires-Dist: g2p2-group-indic==0.2.2 ; extra == 'as'
Requires-Dist: g2p2-group-turkic==0.2.2 ; extra == 'az'
Requires-Dist: g2p2-group-turkic==0.2.2 ; extra == 'ba'
Requires-Dist: g2p2-group-slavic==0.2.2 ; extra == 'be'
Requires-Dist: g2p2-group-slavic==0.2.2 ; extra == 'bg'
Requires-Dist: g2p2-group-indic==0.2.2 ; extra == 'bn'
Requires-Dist: g2p2-group-other==0.2.2 ; extra == 'bo'
Requires-Dist: g2p2-group-celtic==0.2.2 ; extra == 'br'
Requires-Dist: g2p2-group-slavic==0.2.2 ; extra == 'bs'
Requires-Dist: g2p2-group-romance==0.2.2 ; extra == 'ca'
Requires-Dist: g2p2-group-celtic==0.2.2 ; extra == 'celtic'
Requires-Dist: g2p2-group-cjk==0.2.2 ; extra == 'cjk'
Requires-Dist: g2p2-group-slavic==0.2.2 ; extra == 'cs'
Requires-Dist: g2p2-group-celtic==0.2.2 ; extra == 'cy'
Requires-Dist: g2p2-group-germanic==0.2.2 ; extra == 'da'
Requires-Dist: g2p2-group-germanic==0.2.2 ; extra == 'de'
Requires-Dist: g2p2-group-other-euro==0.2.2 ; extra == 'el'
Requires-Dist: g2p2-group-germanic==0.2.2 ; extra == 'en'
Requires-Dist: g2p2-group-romance==0.2.2 ; extra == 'es'
Requires-Dist: g2p2-group-other-euro==0.2.2 ; extra == 'et'
Requires-Dist: g2p2-group-other-euro==0.2.2 ; extra == 'eu'
Requires-Dist: g2p2-group-iranian==0.2.2 ; extra == 'fa'
Requires-Dist: g2p2-group-other-euro==0.2.2 ; extra == 'fi'
Requires-Dist: g2p2-group-germanic==0.2.2 ; extra == 'fo'
Requires-Dist: g2p2-group-romance==0.2.2 ; extra == 'fr'
Requires-Dist: g2p2-group-germanic==0.2.2 ; extra == 'germanic'
Requires-Dist: g2p2-group-romance==0.2.2 ; extra == 'gl'
Requires-Dist: g2p2-group-indic==0.2.2 ; extra == 'gu'
Requires-Dist: g2p2-group-african==0.2.2 ; extra == 'ha'
Requires-Dist: g2p2-group-pacific==0.2.2 ; extra == 'haw'
Requires-Dist: g2p2-group-semitic==0.2.2 ; extra == 'he'
Requires-Dist: g2p2-group-indic==0.2.2 ; extra == 'hi'
Requires-Dist: g2p2-group-slavic==0.2.2 ; extra == 'hr'
Requires-Dist: g2p2-group-romance==0.2.2 ; extra == 'ht'
Requires-Dist: g2p2-group-other-euro==0.2.2 ; extra == 'hu'
Requires-Dist: g2p2-group-other-euro==0.2.2 ; extra == 'hy'
Requires-Dist: g2p2-group-sea==0.2.2 ; extra == 'id'
Requires-Dist: g2p2-group-indic==0.2.2 ; extra == 'indic'
Requires-Dist: g2p2-group-iranian==0.2.2 ; extra == 'iranian'
Requires-Dist: g2p2-group-germanic==0.2.2 ; extra == 'is'
Requires-Dist: g2p2-group-romance==0.2.2 ; extra == 'it'
Requires-Dist: g2p2-group-cjk==0.2.2 ; extra == 'ja'
Requires-Dist: g2p2-group-sea==0.2.2 ; extra == 'jw'
Requires-Dist: g2p2-group-other-euro==0.2.2 ; extra == 'ka'
Requires-Dist: g2p2-group-turkic==0.2.2 ; extra == 'kk'
Requires-Dist: g2p2-group-sea==0.2.2 ; extra == 'km'
Requires-Dist: g2p2-group-indic==0.2.2 ; extra == 'kn'
Requires-Dist: g2p2-group-cjk==0.2.2 ; extra == 'ko'
Requires-Dist: g2p2-group-romance==0.2.2 ; extra == 'la'
Requires-Dist: g2p2-group-germanic==0.2.2 ; extra == 'lb'
Requires-Dist: g2p2-group-african==0.2.2 ; extra == 'ln'
Requires-Dist: g2p2-group-sea==0.2.2 ; extra == 'lo'
Requires-Dist: g2p2-group-other-euro==0.2.2 ; extra == 'lt'
Requires-Dist: g2p2-group-other-euro==0.2.2 ; extra == 'lv'
Requires-Dist: g2p2-group-african==0.2.2 ; extra == 'mg'
Requires-Dist: g2p2-group-pacific==0.2.2 ; extra == 'mi'
Requires-Dist: g2p2-group-slavic==0.2.2 ; extra == 'mk'
Requires-Dist: g2p2-group-indic==0.2.2 ; extra == 'ml'
Requires-Dist: g2p2-group-other==0.2.2 ; extra == 'mn'
Requires-Dist: g2p2-group-indic==0.2.2 ; extra == 'mr'
Requires-Dist: g2p2-group-sea==0.2.2 ; extra == 'ms'
Requires-Dist: g2p2-group-semitic==0.2.2 ; extra == 'mt'
Requires-Dist: g2p2-group-sea==0.2.2 ; extra == 'my'
Requires-Dist: g2p2-group-indic==0.2.2 ; extra == 'ne'
Requires-Dist: g2p2-group-germanic==0.2.2 ; extra == 'nl'
Requires-Dist: g2p2-group-germanic==0.2.2 ; extra == 'nn'
Requires-Dist: g2p2-group-germanic==0.2.2 ; extra == 'no'
Requires-Dist: num2words2>=1.0.18 ; extra == 'numbers'
Requires-Dist: g2p2-group-romance==0.2.2 ; extra == 'oc'
Requires-Dist: g2p2-group-other==0.2.2 ; extra == 'other'
Requires-Dist: g2p2-group-other-euro==0.2.2 ; extra == 'other-euro'
Requires-Dist: g2p2-group-indic==0.2.2 ; extra == 'pa'
Requires-Dist: g2p2-group-pacific==0.2.2 ; extra == 'pacific'
Requires-Dist: g2p2-group-slavic==0.2.2 ; extra == 'pl'
Requires-Dist: g2p2-group-iranian==0.2.2 ; extra == 'ps'
Requires-Dist: g2p2-group-romance==0.2.2 ; extra == 'pt'
Requires-Dist: g2p2-group-romance==0.2.2 ; extra == 'ro'
Requires-Dist: g2p2-group-romance==0.2.2 ; extra == 'romance'
Requires-Dist: g2p2-group-slavic==0.2.2 ; extra == 'ru'
Requires-Dist: g2p2-group-indic==0.2.2 ; extra == 'sa'
Requires-Dist: g2p2-group-indic==0.2.2 ; extra == 'sd'
Requires-Dist: g2p2-group-sea==0.2.2 ; extra == 'sea'
Requires-Dist: g2p2-group-semitic==0.2.2 ; extra == 'semitic'
Requires-Dist: g2p2-group-indic==0.2.2 ; extra == 'si'
Requires-Dist: g2p2-group-slavic==0.2.2 ; extra == 'sk'
Requires-Dist: g2p2-group-slavic==0.2.2 ; extra == 'sl'
Requires-Dist: g2p2-group-slavic==0.2.2 ; extra == 'slavic'
Requires-Dist: g2p2-group-african==0.2.2 ; extra == 'sn'
Requires-Dist: g2p2-group-african==0.2.2 ; extra == 'so'
Requires-Dist: g2p2-group-other-euro==0.2.2 ; extra == 'sq'
Requires-Dist: g2p2-group-slavic==0.2.2 ; extra == 'sr'
Requires-Dist: g2p2-group-sea==0.2.2 ; extra == 'su'
Requires-Dist: g2p2-group-germanic==0.2.2 ; extra == 'sv'
Requires-Dist: g2p2-group-african==0.2.2 ; extra == 'sw'
Requires-Dist: g2p2-group-indic==0.2.2 ; extra == 'ta'
Requires-Dist: g2p2-group-indic==0.2.2 ; extra == 'te'
Requires-Dist: g2p2-group-iranian==0.2.2 ; extra == 'tg'
Requires-Dist: g2p2-group-sea==0.2.2 ; extra == 'th'
Requires-Dist: g2p2-group-turkic==0.2.2 ; extra == 'tk'
Requires-Dist: g2p2-group-sea==0.2.2 ; extra == 'tl'
Requires-Dist: g2p2-group-turkic==0.2.2 ; extra == 'tr'
Requires-Dist: g2p2-group-turkic==0.2.2 ; extra == 'tt'
Requires-Dist: g2p2-group-turkic==0.2.2 ; extra == 'turkic'
Requires-Dist: g2p2-group-slavic==0.2.2 ; extra == 'uk'
Requires-Dist: g2p2-group-indic==0.2.2 ; extra == 'ur'
Requires-Dist: g2p2-group-turkic==0.2.2 ; extra == 'uz'
Requires-Dist: g2p2-group-sea==0.2.2 ; extra == 'vi'
Requires-Dist: g2p2-group-germanic==0.2.2 ; extra == 'yi'
Requires-Dist: g2p2-group-african==0.2.2 ; extra == 'yo'
Requires-Dist: g2p2-group-cjk==0.2.2 ; extra == 'yue'
Requires-Dist: g2p2-group-cjk==0.2.2 ; extra == 'zh'
Provides-Extra: af
Provides-Extra: african
Provides-Extra: all
Provides-Extra: am
Provides-Extra: ar
Provides-Extra: as
Provides-Extra: az
Provides-Extra: ba
Provides-Extra: be
Provides-Extra: bg
Provides-Extra: bn
Provides-Extra: bo
Provides-Extra: br
Provides-Extra: bs
Provides-Extra: ca
Provides-Extra: celtic
Provides-Extra: cjk
Provides-Extra: cs
Provides-Extra: cy
Provides-Extra: da
Provides-Extra: de
Provides-Extra: el
Provides-Extra: en
Provides-Extra: es
Provides-Extra: et
Provides-Extra: eu
Provides-Extra: fa
Provides-Extra: fi
Provides-Extra: fo
Provides-Extra: fr
Provides-Extra: germanic
Provides-Extra: gl
Provides-Extra: gu
Provides-Extra: ha
Provides-Extra: haw
Provides-Extra: he
Provides-Extra: hi
Provides-Extra: hr
Provides-Extra: ht
Provides-Extra: hu
Provides-Extra: hy
Provides-Extra: id
Provides-Extra: indic
Provides-Extra: iranian
Provides-Extra: is
Provides-Extra: it
Provides-Extra: ja
Provides-Extra: jw
Provides-Extra: ka
Provides-Extra: kk
Provides-Extra: km
Provides-Extra: kn
Provides-Extra: ko
Provides-Extra: la
Provides-Extra: lb
Provides-Extra: ln
Provides-Extra: lo
Provides-Extra: lt
Provides-Extra: lv
Provides-Extra: mg
Provides-Extra: mi
Provides-Extra: mk
Provides-Extra: ml
Provides-Extra: mn
Provides-Extra: mr
Provides-Extra: ms
Provides-Extra: mt
Provides-Extra: my
Provides-Extra: ne
Provides-Extra: nl
Provides-Extra: nn
Provides-Extra: no
Provides-Extra: numbers
Provides-Extra: oc
Provides-Extra: other
Provides-Extra: other_euro
Provides-Extra: pa
Provides-Extra: pacific
Provides-Extra: pl
Provides-Extra: ps
Provides-Extra: pt
Provides-Extra: ro
Provides-Extra: romance
Provides-Extra: ru
Provides-Extra: sa
Provides-Extra: sd
Provides-Extra: sea
Provides-Extra: semitic
Provides-Extra: si
Provides-Extra: sk
Provides-Extra: sl
Provides-Extra: slavic
Provides-Extra: sn
Provides-Extra: so
Provides-Extra: sq
Provides-Extra: sr
Provides-Extra: su
Provides-Extra: sv
Provides-Extra: sw
Provides-Extra: ta
Provides-Extra: te
Provides-Extra: tg
Provides-Extra: th
Provides-Extra: tk
Provides-Extra: tl
Provides-Extra: tr
Provides-Extra: tt
Provides-Extra: turkic
Provides-Extra: uk
Provides-Extra: ur
Provides-Extra: uz
Provides-Extra: vi
Provides-Extra: yi
Provides-Extra: yo
Provides-Extra: yue
Provides-Extra: zh
Summary: Zero-dependency grapheme-to-phoneme for the 100 Whisper languages (Rust core)
Keywords: g2p,grapheme-to-phoneme,phonemizer,ipa,whisper,phonetics
Author: jqueguiner
License: MIT OR Apache-2.0
Requires-Python: >=3.8
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
Project-URL: Repository, https://github.com/jqueguiner/g2p2

# g2p2

Zero-dependency grapheme-to-phoneme for the **100 Whisper languages**, with a
Rust core exposed to Python.

```bash
pip install g2p2
```

```python
from g2p2 import Model

m = Model.load("fr.g2p")
print(m.phonemize("bonjour"))            # bɔ̃ʒuʁ
print(m.phonemize_many(["chat", "eau"])) # ['ʃa', 'o']
```

Model blobs (`*.g2p`) are built from WikiPron / epitran / LLM data — see the
[main repo](https://github.com/jqueguiner/g2p2). Download a language's `.g2p`
from the GitHub releases or build with `cargo run -p xtask -- build-all`.

## API

- `Model.load(path) -> Model` — load a `.g2p` file
- `Model.from_bytes(bytes) -> Model` — load from raw bytes
- `Model.phonemize(word) -> str` — IPA for one word
- `Model.phonemize_many(words) -> list[str]` — IPA for many

License: MIT OR Apache-2.0.

