summaryrefslogtreecommitdiff
path: root/ATRI/plugins/help
diff options
context:
space:
mode:
authorYuki-Asuuna <[email protected]>2022-02-18 14:34:43 +0800
committerYuki-Asuuna <[email protected]>2022-02-18 14:34:43 +0800
commita9b698b4a08bff4a0747adca71a9b55808be4bff (patch)
tree09ed0c3dd6f87d64a0c64d9c1e0da3ea56d33675 /ATRI/plugins/help
parent6c5be4553599a0cac62d449a72fc911aa1d6c123 (diff)
downloadATRI-a9b698b4a08bff4a0747adca71a9b55808be4bff.tar.gz
ATRI-a9b698b4a08bff4a0747adca71a9b55808be4bff.tar.bz2
ATRI-a9b698b4a08bff4a0747adca71a9b55808be4bff.zip
feat: 优化服务列表输出 & 去除scheduler Warning & 补充requirements.txt
Change-Id: I978daa50a7a60e9e551bd6a22d543ab24b6898da
Diffstat (limited to 'ATRI/plugins/help')
-rw-r--r--ATRI/plugins/help/data_source.py21
1 files changed, 12 insertions, 9 deletions
diff --git a/ATRI/plugins/help/data_source.py b/ATRI/plugins/help/data_source.py
index de07678..da9432a 100644
--- a/ATRI/plugins/help/data_source.py
+++ b/ATRI/plugins/help/data_source.py
@@ -1,4 +1,7 @@
import os
+import json
+
+from tabulate import tabulate
from ATRI import __version__
from ATRI.rule import to_bot
@@ -6,7 +9,6 @@ from ATRI.service import Service, SERVICES_DIR, ServiceTools
from ATRI.config import BotSelfConfig
from ATRI.exceptions import ReadFileError
-
SERVICE_INFO_FORMAT = """
服务名:{service}
说明:{docs}
@@ -15,7 +17,6 @@ SERVICE_INFO_FORMAT = """
Tip: @bot 帮助 [服务] [命令] 以查看对应命令详细信息
""".strip()
-
COMMAND_INFO_FORMAT = """
命令:{cmd}
类型:{cmd_type}
@@ -56,13 +57,15 @@ class Helper(Service):
@staticmethod
def service_list() -> str:
files = os.listdir(SERVICES_DIR)
- temp_list = list()
- for i in files:
- service = i.replace(".json", "")
- temp_list.append(service)
-
- services = "、".join(map(str, temp_list))
- repo = f"咱搭载了以下服务~\n{services}\n@bot 帮助 [服务] -以查看对应服务帮助"
+ services = list()
+ for f in files:
+ prefix = f.replace(".json", "")
+ f = os.path.join(SERVICES_DIR, f)
+ with open(f, "r", encoding="utf-8") as r:
+ service = json.load(r)
+ services.append([prefix, "√" if service["enabled"] else "×", "√" if service["only_admin"] else "×"])
+ table = tabulate(services, headers=["服务名称", "开启状态", "仅支持管理员"], tablefmt="plain", showindex=True)
+ repo = f"咱搭载了以下服务~\n{table}\n@bot 帮助 [服务] -以查看对应服务帮助"
return repo
@staticmethod