From e08d643a7ff43e80904b451a00e7188d68e84c99 Mon Sep 17 00:00:00 2001 From: Rapptz Date: Mon, 4 Jan 2016 23:37:12 -0500 Subject: [PATCH] [commands] Add a way to remove commands. --- discord/ext/commands/core.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/discord/ext/commands/core.py b/discord/ext/commands/core.py index 2c0bf2d0e..9035cf33d 100644 --- a/discord/ext/commands/core.py +++ b/discord/ext/commands/core.py @@ -260,6 +260,25 @@ class GroupMixin: raise discord.ClientException('The alias {} is already an existing command or alias.'.format(alias)) self.commands[alias] = command + def remove_command(self, name): + """Remove a :class:`Command` or subclasses from the internal list + of commands. + + This could also be used as a way to remove aliases. + + Parameters + ----------- + name : str + The name of the command to remove. + + Returns + -------- + Command or subclass + The command that was removed. If the name is not valid then + `None` is returned instead. + """ + return self.commands.pop(name, None) + def command(self, *args, **kwargs): """A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_command`.