Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

UI and i18n Updates #2436

Draft
wants to merge 10 commits into
base: dev
Choose a base branch
from
Draft

Conversation

itsTheFae
Copy link
Contributor

@itsTheFae itsTheFae commented Nov 9, 2024

  • I have tested my changes against the dev branch (the latest developmental version), and this pull request is targeting that branch as a base
  • I have tested my changes on Python 3.8 or higher
  • I have ensured my code is formatted using Black

Description

The massive UI / i18n PR is here. As usual, there was some scope creep and this does need extra testing.
The short list of changes is thus:

  • Adds setalias command.
  • Adds several dev-only commands for project maintenance.
  • Adds option for Opus audio.
  • Adds option to remove embed footer.
  • Adds options to control message delete delay, with a short and long time.
  • Adds sub-command syntax for permissions.
  • Adds optional new command permissions mode to allow more complicated permissions.
  • Enables MusicBot to generate example options & perms files.
  • Enables MusicBot to generate missing options & perms files.
  • Enables MusicBot to move all writable directories using --write-dir CLI flag.
  • Removes the old, unused .travis.yml file.
  • Rename oauth2 username to avoid conflict with yt-dlp.
  • Replace docstring help with @command_helper decorator.
  • Replace JSON i18n with Gettext, with support for logs and discord.
  • Extend python logger class rather than virtually construct it. (this might fix py 3.13)
  • Extend Response objects from discord.Embed to make UseEmbeds option consistent.
  • Touch nearly every printed string in MusicBot to mark them for translation.
    Please see the ./i18n/readme.md file for more info on how translations work and how to use them.

While this PR removes all the existing ./config/i18n/ files, I have attempted to replace some of the existing translations using Machine Translation from Crowdin primarily.
I'm sure the translations could use some work. I left the crowdin.yml file in this PR as a template for setting up crowdin on the main repository (or forks), following this PR. I think it is a pretty good way to keep track of translations personally and would suggest it be set up on the main repo if maintainers are willing to allow/use it.

I hope these changes strike you as sensible and acceptable.

itsTheFae and others added 3 commits November 9, 2024 11:32
Adds setalias command.
Adds several dev-only commands for project maintenance. 
Adds option for Opus audio.
Adds option to remove embed footer.
Adds sub-command syntax for permissions.
Adds optional new permissions management.
Enables MusicBot to generate example config & perms files.
Removes cruft .travis.yml file.
Rename oauth2 username to avoid conflict with yt-dlp.
Replace docstring help with `command_helper` decorator.
Replace JSON i18n with gettext, with support for logs and discord.
Extend python logger class rather than virtually construct it. (this might fix 3.13)
Touch nearly every printed string in MusicBot. :)
This was referenced Nov 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants