diff --git a/docs/cog_guides/core.rst b/docs/cog_guides/core.rst index d3a3ed849..69e189549 100644 --- a/docs/cog_guides/core.rst +++ b/docs/cog_guides/core.rst @@ -1683,8 +1683,11 @@ Set the tagline to be used. The maximum tagline length is 2048 characters. This setting only applies to embedded help. If no tagline is specified, the default will be used instead. +You can use ``[p]`` in your tagline, which will be replaced by the bot's prefix. + **Examples:** - ``[p]helpset tagline Thanks for using the bot!`` + - ``[p]helpset tagline Use [p]invite to add me to your server.`` - ``[p]helpset tagline`` - Resets the tagline to the default. **Arguments:** diff --git a/redbot/core/commands/help.py b/redbot/core/commands/help.py index 75f05bc94..dcff3f041 100644 --- a/redbot/core/commands/help.py +++ b/redbot/core/commands/help.py @@ -308,6 +308,12 @@ class RedHelpFormatter(HelpFormatterABC): command2=f"{ctx.clean_prefix}help ", ) + @staticmethod + def format_tagline(ctx: Context, tagline: str): + if not tagline: + return + return tagline.replace("[p]", ctx.clean_prefix) + @staticmethod def get_command_signature(ctx: Context, command: commands.Command) -> str: parent = command.parent @@ -345,7 +351,7 @@ class RedHelpFormatter(HelpFormatterABC): description = command.description or "" - tagline = (help_settings.tagline) or self.get_default_tagline(ctx) + tagline = self.format_tagline(ctx, help_settings.tagline) or self.get_default_tagline(ctx) signature = _("Syntax: {command_signature}").format( command_signature=self.get_command_signature(ctx, command) ) @@ -569,7 +575,7 @@ class RedHelpFormatter(HelpFormatterABC): return description = obj.format_help_for_context(ctx) - tagline = (help_settings.tagline) or self.get_default_tagline(ctx) + tagline = self.format_tagline(ctx, help_settings.tagline) or self.get_default_tagline(ctx) if await self.embed_requested(ctx): emb = {"embed": {"title": "", "description": ""}, "footer": {"text": ""}, "fields": []} @@ -642,7 +648,7 @@ class RedHelpFormatter(HelpFormatterABC): return description = ctx.bot.description or "" - tagline = (help_settings.tagline) or self.get_default_tagline(ctx) + tagline = self.format_tagline(ctx, help_settings.tagline) or self.get_default_tagline(ctx) if await self.embed_requested(ctx): emb = {"embed": {"title": "", "description": ""}, "footer": {"text": ""}, "fields": []} @@ -763,7 +769,9 @@ class RedHelpFormatter(HelpFormatterABC): name=_("{ctx.me.display_name} Help Menu").format(ctx=ctx), icon_url=ctx.me.display_avatar, ) - tagline = help_settings.tagline or self.get_default_tagline(ctx) + tagline = self.format_tagline( + ctx, help_settings.tagline + ) or self.get_default_tagline(ctx) ret.set_footer(text=tagline) await ctx.send(embed=ret) else: @@ -776,7 +784,9 @@ class RedHelpFormatter(HelpFormatterABC): name=_("{ctx.me.display_name} Help Menu").format(ctx=ctx), icon_url=ctx.me.display_avatar, ) - tagline = help_settings.tagline or self.get_default_tagline(ctx) + tagline = self.format_tagline( + ctx, help_settings.tagline + ) or self.get_default_tagline(ctx) ret.set_footer(text=tagline) await ctx.send(embed=ret) else: @@ -795,7 +805,9 @@ class RedHelpFormatter(HelpFormatterABC): name=_("{ctx.me.display_name} Help Menu").format(ctx=ctx), icon_url=ctx.me.display_avatar, ) - tagline = help_settings.tagline or self.get_default_tagline(ctx) + tagline = self.format_tagline(ctx, help_settings.tagline) or self.get_default_tagline( + ctx + ) ret.set_footer(text=tagline) await ctx.send(embed=ret) else: diff --git a/redbot/core/core_commands.py b/redbot/core/core_commands.py index 6483de26a..3930ac794 100644 --- a/redbot/core/core_commands.py +++ b/redbot/core/core_commands.py @@ -4535,8 +4535,11 @@ class Core(commands.commands._RuleDropper, commands.Cog, CoreLogic): The maximum tagline length is 2048 characters. This setting only applies to embedded help. If no tagline is specified, the default will be used instead. + You can use `[\u200bp]` in your tagline, which will be replaced by the bot's prefix. + **Examples:** - `[p]helpset tagline Thanks for using the bot!` + - `[p]helpset tagline Use [\u200bp]invite to add me to your server.` - `[p]helpset tagline` - Resets the tagline to the default. **Arguments:**