diff options
Diffstat (limited to 'ATRI/plugins/code_runner')
-rw-r--r-- | ATRI/plugins/code_runner/__init__.py | 10 | ||||
-rw-r--r-- | ATRI/plugins/code_runner/data_source.py | 21 |
2 files changed, 15 insertions, 16 deletions
diff --git a/ATRI/plugins/code_runner/__init__.py b/ATRI/plugins/code_runner/__init__.py index 77240ec..26fcce5 100644 --- a/ATRI/plugins/code_runner/__init__.py +++ b/ATRI/plugins/code_runner/__init__.py @@ -5,13 +5,17 @@ from nonebot.params import CommandArg, ArgPlainText from nonebot.adapters.onebot.v11 import MessageEvent, Message, MessageSegment, unescape from nonebot.adapters.onebot.v11.helpers import Cooldown +from ATRI.service import Service + from .data_source import CodeRunner +plugin = Service("在线跑代码").document("在线运行代码").main_cmd("/code") + _flmt_notice = choice(["慢...慢一..点❤", "冷静1下", "歇会歇会~~"]) -code_runner = CodeRunner().on_command("/code", "在线运行一段代码,获取帮助:/code.help") +code_runner = plugin.on_command("/code", "在线运行一段代码,获取帮助:/code.help") @code_runner.handle([Cooldown(5, prompt=_flmt_notice)]) @@ -37,7 +41,7 @@ async def _(event: MessageEvent, opt: str = ArgPlainText("opt")): await code_runner.finish(Message(content)) -code_runner_helper = CodeRunner().cmd_as_group("help", "使用说明") +code_runner_helper = plugin.cmd_as_group("help", "使用说明") @code_runner_helper.handle() @@ -45,7 +49,7 @@ async def _(): await code_runner_helper.finish(CodeRunner().help()) -code_supp_list = CodeRunner().cmd_as_group("list", "查看支持的语言") +code_supp_list = plugin.cmd_as_group("list", "查看支持的语言") @code_supp_list.handle() diff --git a/ATRI/plugins/code_runner/data_source.py b/ATRI/plugins/code_runner/data_source.py index d5df230..8b4ffca 100644 --- a/ATRI/plugins/code_runner/data_source.py +++ b/ATRI/plugins/code_runner/data_source.py @@ -1,6 +1,5 @@ -from ATRI.rule import is_in_service -from ATRI.service import Service from ATRI.utils import request +from ATRI.message import MessageBuilder from ATRI.exceptions import RequestError @@ -34,20 +33,16 @@ SUPPORTED_LANGUAGES = { } -class CodeRunner(Service): - def __init__(self): - Service.__init__( - self, "在线跑代码", "在线跑代码", rule=is_in_service("在线跑代码"), main_cmd="/code" - ) - +class CodeRunner: @staticmethod def help() -> str: return ( - "/code {语言}\n" - "{代码}\n" - "For example:\n" - "/code python\n" - "print('hello world')" + MessageBuilder("/code {语言}") + .text("{代码}") + .text("For example:") + .text("/code python") + .text("print('hello world')") + .done() ) @staticmethod |