Skip to main content

Minimal pair generator and phonetics tool

Project description

grzegorz

grzegorz is a linguistics tool which primarily concerns minimal pairs. For a detailed history of the project's development, check the Changelog

Overview

NOTE: throughout the documentation, "IPA" is used as an abbreviation for International Phonetic Alphabet transcription.

Getting started

Requirements

  • python3
  • pip

Installation

Make sure the pip installation directory (default: ${HOME}/.local/bin) is on your ${PATH}. If not, add it (to your .bashrc or .zshrc preferably):

export PATH="${HOME}/.local/bin:${PATH}"

From PyPi

$ pip install grzegorz

From source

Clone this repository and run pip:

$ git clone https://github.com/xylous/grzegorz grzegorz
$ cd grzegorz
$ pip install .

Usage

Check the "overview" section

Roadmap

  • fetch a wordlist of most used words in a given language
  • fetch the International Phonetic Alphabet spelling for a given wordlist
  • generate minimal pairs
    • look for phoneme differences
      • optimise: look for interesting differences
      • optimise: ignore stressed syllables
    • look for chroneme differences
    • look for syllable stress differences
  • Anki integration
    • create Anki flashcards from the generated minimal pairs
    • export a deck containing the created flashcards
    • add audio pronunciations for every flashcard
  • print phonetical analysis of a word:
    • given its IPA
    • given its language
  • check if two words form a minimal pair, given their IPAs
  • search and print the IPA of a word in a given language (on the English Wiktionary)
  • minimise side effects of functions, delegate commands to wrappers around class functions
  • documentation
    • technical docs for usage as a binary
    • "tutorial" for usage as a binary
    • technical docs for usage as a library
    • "tutorial" for usage as a library

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

But, honestly, the greatest contribution you can make is to add International Phonetic Alphabet (IPA) spellings to words on the English Wiktionary, which is the source for all the spellings that grzegorz uses. The more IPA spellings there are, the higher the number of words that can be used, the more possibilities for minimal pairs.

License

GPLv3

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

grzegorz-0.6.2.tar.gz (29.0 kB view details)

Uploaded Source

Built Distribution

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

grzegorz-0.6.2-py3-none-any.whl (33.7 kB view details)

Uploaded Python 3

File details

Details for the file grzegorz-0.6.2.tar.gz.

File metadata

  • Download URL: grzegorz-0.6.2.tar.gz
  • Upload date:
  • Size: 29.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for grzegorz-0.6.2.tar.gz
Algorithm Hash digest
SHA256 1360f4881ac2276f036a8e5733d7379c7da804fb1da26abe7711e27afff9f24d
MD5 217e3e23322fc795a4b656e70f5d4951
BLAKE2b-256 91142cb6beb9723e96ffdce44a522ddc5bf85e9c0166e8273c00d73f50903595

See more details on using hashes here.

File details

Details for the file grzegorz-0.6.2-py3-none-any.whl.

File metadata

  • Download URL: grzegorz-0.6.2-py3-none-any.whl
  • Upload date:
  • Size: 33.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for grzegorz-0.6.2-py3-none-any.whl
Algorithm Hash digest
SHA256 bffdebc588c0e9cdbbf86e95f7acb2d7afe66f98c552b8e640eea6405aed7efd
MD5 47ddcc7f0e41c2b98681da412491c3cc
BLAKE2b-256 8a00c9dce7920a8bb2552544d84d48a2ef78c5075d87a845072d6446a6b5bc47

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