mirror of
https://github.com/TriM-Organization/LiteyukiBot-TriM.git
synced 2026-06-13 16:12:33 +00:00
猜成语:修复无法移出简单词库的bug
插件管理:修复插件列表文字模式无法呼出的bug
This commit is contained in:
@@ -105,6 +105,7 @@ disable = "disable"
|
||||
Args["page", int, 1]["num", int, 10],
|
||||
Option(
|
||||
"-m|--markdown",
|
||||
default=False,
|
||||
action=store_true,
|
||||
help_text="以 Markdown 交互形式显示列表",
|
||||
),
|
||||
@@ -369,47 +370,7 @@ async def _(result: Arparma, event: T_MessageEvent, bot: T_Bot, npm: Matcher):
|
||||
page = clamp(result.subcommands["list"].args["page"], 1, total)
|
||||
markdown_mode = result.subcommands["list"].options["markdown"].value
|
||||
|
||||
if not markdown_mode:
|
||||
# 文字显示模式
|
||||
reply = " - {} | {} -\n".format(
|
||||
ulang.get("npm.loaded_plugins"),
|
||||
ulang.get("npm.page", PAGE=page, TOTAL=total),
|
||||
)
|
||||
for pi in range(
|
||||
(page - 1) * num_per_page,
|
||||
min(page * num_per_page, len(loaded_plugin_list)),
|
||||
):
|
||||
# 遍历插件,通过插件编号
|
||||
storePlugin = loaded_plugin_list[pi]
|
||||
store_plugin = await get_store_plugin(storePlugin.name)
|
||||
session_enable = get_plugin_session_enable(event, storePlugin.name)
|
||||
|
||||
if store_plugin:
|
||||
show_name = store_plugin.name
|
||||
elif storePlugin.metadata:
|
||||
show_name = storePlugin.metadata.name
|
||||
else:
|
||||
show_name = storePlugin.name
|
||||
ulang.get("npm.no_description")
|
||||
|
||||
reply += "{}. {}".format(pi + 1, show_name)
|
||||
|
||||
if not get_plugin_can_be_toggle(storePlugin.name):
|
||||
reply += " [{}{}]".format(ulang.get('npm.cannot'), ulang.get(
|
||||
"npm.disable" if session_enable else "npm.enable"
|
||||
))
|
||||
|
||||
if not plugin_db.where_one(
|
||||
InstalledPlugin(), "module_name = ?", storePlugin.name
|
||||
):
|
||||
|
||||
reply += " [{}{}]".format(ulang.get('npm.cannot'), ulang.get("npm.uninstall"))
|
||||
|
||||
reply += "\n>\t{}\n".format(storePlugin.name)
|
||||
|
||||
await npm.send(reply)
|
||||
|
||||
else:
|
||||
if markdown_mode:
|
||||
# 已加载插件 | 总计10 | 第1/3页
|
||||
reply = (
|
||||
f"# {ulang.get('npm.loaded_plugins')} | "
|
||||
@@ -521,7 +482,47 @@ async def _(result: Arparma, event: T_MessageEvent, bot: T_Bot, npm: Matcher):
|
||||
reply += f"\n{btn_prev} {page}/{total} {btn_next}"
|
||||
img_bytes = await md_to_pic(reply)
|
||||
await UniMessage.send(UniMessage.image(raw=img_bytes))
|
||||
else:
|
||||
|
||||
# 文字显示模式
|
||||
reply = " - {} | {} -\n".format(
|
||||
ulang.get("npm.loaded_plugins"),
|
||||
ulang.get("npm.page", PAGE=page, TOTAL=total),
|
||||
)
|
||||
for pi in range(
|
||||
(page - 1) * num_per_page,
|
||||
min(page * num_per_page, len(loaded_plugin_list)),
|
||||
):
|
||||
# 遍历插件,通过插件编号
|
||||
storePlugin = loaded_plugin_list[pi]
|
||||
store_plugin = await get_store_plugin(storePlugin.name)
|
||||
session_enable = get_plugin_session_enable(event, storePlugin.name)
|
||||
|
||||
if store_plugin:
|
||||
show_name = store_plugin.name
|
||||
elif storePlugin.metadata:
|
||||
show_name = storePlugin.metadata.name
|
||||
else:
|
||||
show_name = storePlugin.name
|
||||
ulang.get("npm.no_description")
|
||||
|
||||
reply += "{}. {}".format(pi + 1, show_name)
|
||||
|
||||
if not get_plugin_can_be_toggle(storePlugin.name):
|
||||
reply += " [{}{}]".format(ulang.get('npm.cannot'), ulang.get(
|
||||
"npm.disable" if session_enable else "npm.enable"
|
||||
))
|
||||
|
||||
if not plugin_db.where_one(
|
||||
InstalledPlugin(), "module_name = ?", storePlugin.name
|
||||
):
|
||||
|
||||
reply += " [{}{}]".format(ulang.get('npm.cannot'), ulang.get("npm.uninstall"))
|
||||
|
||||
reply += "\n>\t{}\n".format(storePlugin.name)
|
||||
|
||||
await npm.send(reply)
|
||||
|
||||
else:
|
||||
if await SUPERUSER(bot, event):
|
||||
btn_enable_global = md.btn_cmd(
|
||||
|
||||
@@ -315,7 +315,7 @@ handle_update_idiom = on_alconna(
|
||||
Option(
|
||||
"-e|--explanation",
|
||||
default="",
|
||||
args=Args["explanation", str, "未提供该成语的解释说明"],
|
||||
args=Args["explanation", str, ""],
|
||||
),
|
||||
Option(
|
||||
"-d|--hard",
|
||||
@@ -341,16 +341,12 @@ async def _(
|
||||
):
|
||||
|
||||
if not (idiom := result.main_args["idiom"]):
|
||||
await handle_update_idiom.finish("请在命令后带上你要增加的成语")
|
||||
await handle_update_idiom.finish("用法:新成语 <成语> [-e|--explanation <释义>] [-d|--hard]")
|
||||
|
||||
existance = idiom in HANDLE_LEGAL_PHRASES
|
||||
|
||||
try:
|
||||
explanation = (
|
||||
result.options["explanation"].args["explanation"]
|
||||
if result.options["explanation"].args["explanation"]
|
||||
else None
|
||||
)
|
||||
explanation = result.options["explanation"].args["explanation"] or None
|
||||
except:
|
||||
explanation = None
|
||||
|
||||
@@ -370,17 +366,26 @@ async def _(
|
||||
indent=4,
|
||||
sort_keys=True,
|
||||
)
|
||||
if (not (hard := result.options["hard"].value)) and (
|
||||
idiom not in HANDLE_COMMON_PHRASES
|
||||
):
|
||||
HANDLE_COMMON_PHRASES.append(idiom)
|
||||
json.dump(
|
||||
HANDLE_COMMON_PHRASES,
|
||||
handle_common_idiom_path.open("w", encoding="utf-8"),
|
||||
ensure_ascii=False,
|
||||
indent=4,
|
||||
sort_keys=True,
|
||||
)
|
||||
if hard := result.options["hard"].value:
|
||||
if idiom in HANDLE_COMMON_PHRASES:
|
||||
HANDLE_COMMON_PHRASES.remove(idiom)
|
||||
json.dump(
|
||||
HANDLE_COMMON_PHRASES,
|
||||
handle_common_idiom_path.open("w", encoding="utf-8"),
|
||||
ensure_ascii=False,
|
||||
indent=4,
|
||||
sort_keys=True,
|
||||
)
|
||||
else:
|
||||
if idiom not in HANDLE_COMMON_PHRASES:
|
||||
HANDLE_COMMON_PHRASES.append(idiom)
|
||||
json.dump(
|
||||
HANDLE_COMMON_PHRASES,
|
||||
handle_common_idiom_path.open("w", encoding="utf-8"),
|
||||
ensure_ascii=False,
|
||||
indent=4,
|
||||
sort_keys=True,
|
||||
)
|
||||
|
||||
HANDLE_ANSWER_PHRASES[idiom] = {
|
||||
"explanation": explanation,
|
||||
@@ -403,8 +408,9 @@ async def _(
|
||||
)
|
||||
|
||||
await handle_update_idiom.finish(
|
||||
"成功{}:{}\n当前词库总数:{}个,普通模式成语:{}个\n当前成语信息如下:{}".format(
|
||||
"成功{}:[{}词汇]{}\n当前词库总数:{}个,普通模式成语:{}个\n当前成语信息如下:{}".format(
|
||||
"修改" if existance else "新增",
|
||||
"困难" if hard else "普通",
|
||||
idiom,
|
||||
len(HANDLE_LEGAL_PHRASES),
|
||||
len(HANDLE_COMMON_PHRASES),
|
||||
|
||||
Reference in New Issue
Block a user