LiteyukiBot-TriM/src/plugins/liteyuki_plugin_npm/manager.py

24 lines
1.0 KiB
Python
Raw Normal View History

2024-03-18 18:21:56 +08:00
import nonebot.plugin
from nonebot import on_command
2024-03-19 00:27:40 +08:00
from nonebot.permission import SUPERUSER
from src.utils.message import send_markdown
from src.utils.typing import T_Bot, T_MessageEvent
2024-03-18 18:21:56 +08:00
from src.utils.language import get_user_lang
list_plugins = on_command("list-plugin", aliases={"列出插件"}, priority=0, permission=SUPERUSER)
toggle_plugin = on_command("enable-plugin", aliases={"启用插件", "禁用插件", "disable-plugin"}, priority=0, permission=SUPERUSER)
2024-03-18 18:21:56 +08:00
@list_plugins.handle()
async def _(event: T_MessageEvent, bot: T_Bot):
2024-03-19 00:27:40 +08:00
lang = get_user_lang(str(event.user_id))
reply = f"# {lang.get('npm.loaded_plugins')} | {lang.get('npm.total', TOTAL=len(nonebot.get_loaded_plugins()))} \n***"
2024-03-18 18:21:56 +08:00
for plugin in nonebot.get_loaded_plugins():
2024-03-19 00:27:40 +08:00
# 检查是否有 metadata 属性
if plugin.metadata:
reply += f"\n- **{plugin.metadata.name}**".replace('_', r'\_')
2024-03-19 00:27:40 +08:00
else:
reply += f"\n- **{plugin.name}**".replace('_', r'\_')
await send_markdown(reply, bot, event=event)