aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--discord/ext/commands/core.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/discord/ext/commands/core.py b/discord/ext/commands/core.py
index 2c0bf2d0..9035cf33 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`.