如何格式化默认帮助命令

时间:2020-11-04 16:16:09

标签: discord.py-rewrite

有人可以告诉我如何在discord.py中格式化默认帮助命令吗? 我已经知道如何更改描述,但是,我希望能够更改宽度并按字母顺序对它们进行排序。

感谢您的帮助 :)

1 个答案:

答案 0 :(得分:0)

您可以在默认帮助命令中覆盖某些功能。下面是一个有关如何初始设置的官方示例:

class MyHelpCommand(commands.MinimalHelpCommand):
    def get_command_signature(self, command):
        return '{0.clean_prefix}{1.qualified_name} {1.signature}'.format(self, command)

class MyCog(commands.Cog):
    def __init__(self, bot):
        self._original_help_command = bot.help_command
        bot.help_command = MyHelpCommand()
        bot.help_command.cog = self

    def cog_unload(self):
        self.bot.help_command = self._original_help_command

上面的示例覆盖了get_command_signature的实现。

如您所见,您应该创建一个新的HelpCommand类并更改功能。不需要更改的东西可以保持不变,您不必在其中复制粘贴现有代码。

要查看HelpCommandMinimalHelpCommand可以做什么(以覆盖方法),我建议滚动浏览相关的API Documentation

这样,如果您不喜欢默认帮助,可以直接更改它的行为并自行修复。在您的情况下,您需要先对命令列表进行排序,然后再将其添加到代码块中。

我建议快速浏览默认实现的功能,以了解您需要更改的内容。对于您来说,send_bot_helpsend_cog_helpsend_command_helpsend_group_help将需要对列表进行排序。

相关问题