mirror of
https://github.com/Cog-Creators/Red-DiscordBot.git
synced 2025-11-06 03:08:55 -05:00
* Framework for internationalised command help * Translator for class docstring of cog * Remove references to old context module * Use CogManagerUI as PoC * Replace all references to RedContext * Rename CogI18n object to avoid confusion * Update docs * Update i18n docs. * Store translators in list instead of dict * Change commands module to package, updated refs in cogs * Updated docs and more references in cogs * Resolve syntax error * Update from merge
59 lines
1.2 KiB
ReStructuredText
59 lines
1.2 KiB
ReStructuredText
.. i18n framework reference
|
|
|
|
.. role:: python(code)
|
|
:language: python
|
|
|
|
==============================
|
|
Internationalization Framework
|
|
==============================
|
|
|
|
-----------
|
|
Basic Usage
|
|
-----------
|
|
|
|
.. code-block:: python
|
|
|
|
from redbot.core import commands
|
|
from redbot.core.i18n import Translator, cog_i18n
|
|
|
|
_ = Translator("ExampleCog", __file__)
|
|
|
|
@cog_i18n(_)
|
|
class ExampleCog:
|
|
"""description"""
|
|
|
|
@commands.command()
|
|
async def mycom(self, ctx):
|
|
"""command description"""
|
|
await ctx.send(_("This is a test command"))
|
|
|
|
--------
|
|
Tutorial
|
|
--------
|
|
|
|
After making your cog, generate a :code:`messages.pot` file
|
|
|
|
The process of generating this will depend on the operating system
|
|
you are using
|
|
|
|
In a command prompt in your cog's package (where yourcog.py is),
|
|
create a directory called "locales".
|
|
Then do one of the following:
|
|
|
|
Windows: :code:`python <your python install path>\Tools\i18n\pygettext.py -D -n -p locales`
|
|
|
|
Mac: ?
|
|
|
|
Linux: :code:`pygettext3 -D -n -p locales`
|
|
|
|
This will generate a messages.pot file with strings to be translated, including
|
|
docstrings.
|
|
|
|
-------------
|
|
API Reference
|
|
-------------
|
|
|
|
.. automodule:: redbot.core.i18n
|
|
:members:
|
|
:special-members: __call__
|