Skip to main content

Create multilingual interfaces for your tkinter applications

Project description

ci Tests Build Docs Coverage Status
pypi Version License Python Versions
qa security: bandit mypy: checked code style: black

tkinter-msgcat

Create multilingual interfaces for your tkinter applications.

tkinter-msgcat leverages Tk's msgcat to provide a per-instance message catalog which holds all the translations, while allowing them to be kept in separate files away from code.

⏬ Installation

tkinter-msgcat requires Python 3.7+

pip install tkinter-msgcat

✨ Getting Started

  1. For storing the translation files I recommend this folder hierarchy:

      project (or src/project)
      ├── __init__.py
      └── msgs
          ├── __init__.py
          ├── hi.msg
          └── mr.msg
    

    This layout is recommended by Tcl.

  2. Add some translations in the .msg files, in this case hi.msg:

    ::msgcat::mcset hi "Hello" "नमस्ते"
    
  3. Create a Tkinter window or instance, technically.

  4. Let's put tkinter-msgcat into action!

    from pathlib import Path
    from tkmsgcat import *
    
    msgsdir = Path(__file__).parent / "msgs"
    load(msgsdir)
    locale("hi")
    get("Hello")  # "नमस्ते" 🥳
    

🤝 Contributing

All contributions are welcome and acknowledged. Please read the contributor's guide.

© License

The code in this project is released under the 3-Clause BSD 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

tkinter_msgcat-0.1.0.tar.gz (12.9 kB view details)

Uploaded Source

Built Distribution

tkinter_msgcat-0.1.0-py3-none-any.whl (7.8 kB view details)

Uploaded Python 3

File details

Details for the file tkinter_msgcat-0.1.0.tar.gz.

File metadata

  • Download URL: tkinter_msgcat-0.1.0.tar.gz
  • Upload date:
  • Size: 12.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.11.2 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for tkinter_msgcat-0.1.0.tar.gz
Algorithm Hash digest
SHA256 817e010688245b4d9edee1322ccb3ee70b9444a59814434bc421fa4cdbb9ca67
MD5 0e5333b793aa0b190864a30da9d7e4a9
BLAKE2b-256 19a7405483695fc8113acb47ab675064ed751f1bf2f7a92618bf567904f96709

See more details on using hashes here.

File details

Details for the file tkinter_msgcat-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: tkinter_msgcat-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 7.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.11.2 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for tkinter_msgcat-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5616e4ba83a5c5751b7c68ca4cef77651ac85566955106b99d3f06e6f6f30fd9
MD5 f3a7b5d5a3cf966d3bec45df874d097e
BLAKE2b-256 34d6b20db654ce69aa1ec249691bdc35f6d09054357e35f4813fe4e80352431f

See more details on using hashes here.

Supported by

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