And nicer looking interactive help menu for discord.py
Project description
discord-pretty-help
An embed version of the built-in help command for discord.py
Inspired by the DefaultHelpCommand that discord.py uses, but revised for embeds and additional sorting on individual pages that can be "scrolled" through.
Installation
pip install discord-pretty-help
Usage
Example of how to use it:
from discord.ext import commands
from pretty_help import PrettyHelp
bot = commands.Bot(command_prefix="!", help_command=PrettyHelp())
Added Optional Args
color
- Set the default embed colordelete_invoke
- Delete the message that invoked the help command. Requires message delete permission. Defaults isFalse
ending_note
- Set the footer of the embed. Ending notes are fed acommands.Context
(ctx
) and aPrettyHelp
(help
) instance for more advanced customization.image_url
- The url of the image to be used on the embedindex_title
- Set the index page name default is "Categories"menu
- The menu to use for navigating pages. Uses apretty_help.PrettyMenu()
instance. Default ispretty_help.AppMenu()
no_category
- Set the name of the page with commands not part of a category. Default is "No Category"sort_commands
- Sort commands and categories alphabeticallyshow_index
- Show the index page or notthumbnail_url
- The url of the thumbnail to be used on the embed
Menus
pretty_help.EmojiMenu
- Uses Emojis to navigate
active_time
- Set the time (in seconds) that the message will be active. Default is 30sdelete_after_timeout
- Delete the message afteractive_time
instead of removing reactions. DefaultFalse
page_left
- The emoji to use to page leftpage_right
- The emoji to use to page rightremove
- The emoji to use to remove the help message
pretty_help.AppMenu
- Uses Application Interactions (buttons) for navigating
timeout
- The duration the interaction will be active for. Defaults toNone
.ephemeral
- Send as an ephemeral message. Defaults toFalse
.
By default, the help will just pick a random color on every invoke. You can change this using the color
argument:
Example of using a different menu and customization:
from discord.ext import commands
from pretty_help import EmojiMenu, PrettyHelp
# ":discord:743511195197374563" is a custom discord emoji format. Adjust to match your own custom emoji.
menu = EmojiMenu(page_left="\U0001F44D", page_right="👎", remove=":discord:743511195197374563", active_time=5)
# Custom ending note
ending_note = "The ending note from {ctx.bot.user.name}\nFor command {help.clean_prefix}{help.invoked_with}"
bot = commands.Bot(command_prefix="!")
bot.help_command = PrettyHelp(menu=menu, ending_note=ending_note)
The basic help
command will break commands up by cogs. Each cog will be a different page. Those pages can be navigated.
Changelog
[2.0.0]
- Subcommands in pages are indicated with a 🔗, previously it was unclear they were sub commands of the page title
- Support Application commands
- Support for GroupCogs
- Navigation using discord interactions e.g. Buttons and select menus
Notes:
- discord.py must already be installed to use this
manage-messages
permission is recommended so reactions can be removed automatically
Forks for other discord.py based libraries (could be out of date):
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
File details
Details for the file discord_pretty_help-2.0.3.tar.gz
.
File metadata
- Download URL: discord_pretty_help-2.0.3.tar.gz
- Upload date:
- Size: 11.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.4.2 CPython/3.11.2 Windows/10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6f0084d566825a095972a42c28615f21059d2467f6358e3dbfb561c84d219948 |
|
MD5 | df75bb20ca55d1a2541909f1811e6c4e |
|
BLAKE2b-256 | 589bc489c67c76b62ed30857afb80e33efb003f7edaf9e0d71adba58449f2d76 |
File details
Details for the file discord_pretty_help-2.0.3-py3-none-any.whl
.
File metadata
- Download URL: discord_pretty_help-2.0.3-py3-none-any.whl
- Upload date:
- Size: 13.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.4.2 CPython/3.11.2 Windows/10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a8b9178878f6da29fbe63bf0965a431470934b16062b40a4f80f21d9f026493c |
|
MD5 | c55eca7c3c557d87819b3d666944dca4 |
|
BLAKE2b-256 | 185ce59a86afae3719dc4bc19a15eaaeb2e306858b33ee970daf4024ad04ab24 |