The current design is intimidating for users and too complicated for most people. Reconsider a design that makes it better to use and properly implement all help command related things in the HelpFormatter (e.g. the i18n attributes and the help attributes dictionary)
A new design should have the following checklist.
formatter=NoneThis is just an initial checklist. Feel free to use this issue as a wish list of what you want to happen.
Maybe add emoji pagination functionality.
I know this is a thing that you can make yourself, however it would be nice to see this in the actual lib itself
Maybe add emoji pagination functionality.
I think this would be best as an opt-in in the ext directory rather than in HelpFormatter proper.
One of the issues I had with HelpFormatter was that most of the work is done by one long method, format. In order to customize the behavior, I had to copy and paste the default implementation of that entire method, rather than overriding a few methods. Additionally, I wanted to customize how subcommands were formatted, and that's controlled by _add_subcommands_to_page, which is marked private.
@bryanforbes I see your point
A few things I've run into when trying to format help for a couple of bots I've written:
Command.signature returns a formatted string that HelpFormatter.get_command_signature(). That should probably be done in HelpFormatter so it can be overridden at the bot level.HelpFormatter.format() into some override-able methods like:format_bot_commands(commands: Iterable[Tuple[str, Command]]) -> Noneformat_command(command: Command) -> Noneformat_group(group: Group) -> Noneformat(): HelpFormatter.filter_command_list(*, sorted: bool = False, key: Optional[Callable[..., bool]] = None).HelpFormatter.get_beginning_note() to compliment HelpFormatter.get_ending_note().I would honestly hope that it would be made more self explanatory. Because "some functions" doesn't help, what functions? no documentation? no examples? I tried to work with it but gave up because of those questions. It basically was no easy way, you basically had to rewrite the whole full thing from what i could pick up.
Most helpful comment
Maybe add emoji pagination functionality.
I know this is a thing that you can make yourself, however it would be nice to see this in the actual lib itself