Internationalization for Pycord
Project description
pycord-i18n
Internationalization for Pycord
Key Features
- Translated responses
- Command name, description & option localization
- Based on user & server locale (no need for storage!)
Installation
To install this extension, run the corresponding command:
# linux / macOS
python3 -m pip install pycord-i18n
# windows
python -m pip install pycord-i18n
Usage
-
Setup your internationalization files just like sample-german.json. Note that all fields are optional and you can use whichever file format you want as long as you pass the translations into I18n in the given format.
-
Load your files:
import json
with open("sample-german.json", "r") as f:
german = json.load(f)
...
- Create an I18n object:
from pycord.i18n import I18n, _
i18n = I18n(bot, de=german)
# de is the locale code for German
# response translations will be based on the guild's locale, you can make the bot consider the user's locale too by using the following:
i18n = I18n(bot, consider_user_locale=True, de=german)
# all valid locales: da, de, en_GB, en_US, es_ES, fr, hr, it, lt, hu, nl, no, pl, pt_BR, ro, fi, sv_SE, vi, tr, cs, el, bg, ru, uk, hi, th, zh_CN, ja, zh_TW, ko
- Internationalize your commands:
@i18n.localize # command name and description localization
@bot.slash_command()
async def hello(ctx):
await ctx.respond(_("Hello, this sentence is in English"))
# "_()" does the translation
# if you don't want to use `@localize` on every command, simply use the following method after adding the commands to the bot:
i18n.localize_commands()
Changelog
v1.2.1
- Fixed an issue with Pycord v2.5 compatibility
v1.2.0
- Added formatting support
v1.1.0
- Added option localization support
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pycord-i18n-1.2.1.tar.gz.
File metadata
- Download URL: pycord-i18n-1.2.1.tar.gz
- Upload date:
- Size: 4.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.10.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3d2f5d2d53421d8efb00021ec6c27546aa7b243a8451159d6bb89c368739b9c7
|
|
| MD5 |
3864dd61253af2fabc75e6dd1e97df4a
|
|
| BLAKE2b-256 |
9e91fb127364195cf7365ebf82f0d4223adee5c40ca69e92266ad72629406692
|
File details
Details for the file pycord_i18n-1.2.1-py3-none-any.whl.
File metadata
- Download URL: pycord_i18n-1.2.1-py3-none-any.whl
- Upload date:
- Size: 5.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.10.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0e561b26d6a08e4d90a8bf20c2ca287ffa28353b7c44f9827d975847cc71c55f
|
|
| MD5 |
c9ddd86e9cd4cccbf5a4170b0d34be7b
|
|
| BLAKE2b-256 |
03faab5214a99e41be9ebbda442d706d5e80cadfaf948694718f56b53e4cac23
|