misc(seautils): bunch of miscellaneous changes
This commit is contained in:
parent
46f189a297
commit
c06db07f08
1 changed files with 9 additions and 9 deletions
|
@ -30,8 +30,8 @@ def md(soup: BeautifulSoup, **options) -> Any | str:
|
||||||
return MarkdownConverter(**options).convert_soup(soup)
|
return MarkdownConverter(**options).convert_soup(soup)
|
||||||
|
|
||||||
def format_rfc_text(text: str, number: int) -> str:
|
def format_rfc_text(text: str, number: int) -> str:
|
||||||
one = re.sub(r"\(\.\/rfc(\d+)", r"(https://www.rfc-editor.org/rfc/rfc\1.html", text)
|
one: str = re.sub(r"\(\.\/rfc(\d+)", r"(https://www.rfc-editor.org/rfc/rfc\1.html", text)
|
||||||
two = re.sub(r"\((#(?:section|page)-\d+(?:.\d+)?)\)", f"(https://www.rfc-editor.org/rfc/rfc{number}.html\1)", one)
|
two: str = re.sub(r"\((#(?:section|page)-\d+(?:.\d+)?)\)", f"(https://www.rfc-editor.org/rfc/rfc{number}.html\1)", one)
|
||||||
three: str = re.sub(r"\n{3,}", "\n\n", two)
|
three: str = re.sub(r"\n{3,}", "\n\n", two)
|
||||||
return three
|
return three
|
||||||
|
|
||||||
|
@ -41,23 +41,23 @@ class SeaUtils(commands.Cog):
|
||||||
__author__ = ["SeaswimmerTheFsh"]
|
__author__ = ["SeaswimmerTheFsh"]
|
||||||
__version__ = "1.0.0"
|
__version__ = "1.0.0"
|
||||||
|
|
||||||
def __init__(self, bot: Red):
|
def __init__(self, bot: Red) -> None:
|
||||||
self.bot = bot
|
self.bot = bot
|
||||||
|
|
||||||
def format_help_for_context(self, ctx: commands.Context) -> str:
|
def format_help_for_context(self, ctx: commands.Context) -> str:
|
||||||
pre_processed = super().format_help_for_context(ctx) or ""
|
pre_processed = super().format_help_for_context(ctx=ctx) or ""
|
||||||
n = "\n" if "\n\n" not in pre_processed else ""
|
n = "\n" if "\n\n" not in pre_processed else ""
|
||||||
text = [
|
text = [
|
||||||
f"{pre_processed}{n}",
|
f"{pre_processed}{n}",
|
||||||
f"Cog Version: **{self.__version__}**",
|
f"Cog Version: **{self.__version__}**",
|
||||||
f"Author: {cf.humanize_list(self.__author__)}"
|
f"Author: {cf.humanize_list(items=self.__author__)}"
|
||||||
]
|
]
|
||||||
return "\n".join(text)
|
return "\n".join(text)
|
||||||
|
|
||||||
def format_src(self, obj: Any) -> str:
|
def format_src(self, obj: Any) -> str:
|
||||||
"""A large portion of this code is repurposed from Zephyrkul's RTFS cog.
|
"""A large portion of this code is repurposed from Zephyrkul's RTFS cog.
|
||||||
https://github.com/Zephyrkul/FluffyCogs/blob/master/rtfs/rtfs.py"""
|
https://github.com/Zephyrkul/FluffyCogs/blob/master/rtfs/rtfs.py"""
|
||||||
obj = inspect.unwrap(obj)
|
obj = inspect.unwrap(func=obj)
|
||||||
src: Any = getattr(obj, "__func__", obj)
|
src: Any = getattr(obj, "__func__", obj)
|
||||||
if isinstance(obj, (commands.Command, app_commands.Command)):
|
if isinstance(obj, (commands.Command, app_commands.Command)):
|
||||||
src = obj.callback
|
src = obj.callback
|
||||||
|
@ -67,11 +67,11 @@ class SeaUtils(commands.Cog):
|
||||||
src = obj.fget
|
src = obj.fget
|
||||||
elif isinstance(obj, (cached_property, CachedSlotProperty)):
|
elif isinstance(obj, (cached_property, CachedSlotProperty)):
|
||||||
src = obj.function
|
src = obj.function
|
||||||
return inspect.getsource(src)
|
return inspect.getsource(object=src)
|
||||||
|
|
||||||
@commands.command(aliases=["source", "src", "code", "showsource"])
|
@commands.command(aliases=["source", "src", "code", "showsource"])
|
||||||
@commands.is_owner()
|
@commands.is_owner()
|
||||||
async def showcode(self, ctx: commands.Context, *, object: str): # pylint: disable=redefined-builtin
|
async def showcode(self, ctx: commands.Context, *, object: str) -> None: # pylint: disable=redefined-builtin
|
||||||
"""Show the code for a particular object."""
|
"""Show the code for a particular object."""
|
||||||
try:
|
try:
|
||||||
if object.startswith("/") and (obj := ctx.bot.tree.get_command(object[1:])):
|
if object.startswith("/") and (obj := ctx.bot.tree.get_command(object[1:])):
|
||||||
|
@ -195,7 +195,7 @@ class SeaUtils(commands.Cog):
|
||||||
embed.description = warning + cf.box(text=ns_stdout.decode())
|
embed.description = warning + cf.box(text=ns_stdout.decode())
|
||||||
await ctx.send(embed=embed)
|
await ctx.send(embed=embed)
|
||||||
else:
|
else:
|
||||||
await ctx.send(content= warning + cf.box(text=ns_stdout.decode()))
|
await ctx.send(content = warning + cf.box(text=ns_stdout.decode()))
|
||||||
except (FileNotFoundError):
|
except (FileNotFoundError):
|
||||||
await ctx.maybe_send_embed(message=cf.error("Neither `dig` nor `nslookup` are installed on the system. Unable to resolve DNS query."))
|
await ctx.maybe_send_embed(message=cf.error("Neither `dig` nor `nslookup` are installed on the system. Unable to resolve DNS query."))
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue