mirror of
https://github.com/nonebot/nonebot2.git
synced 2025-02-22 02:25:56 +08:00
Fix #98
This commit is contained in:
parent
3d030fdd03
commit
76f1dfc2a5
@ -19,7 +19,11 @@ class ArgumentParser(ArgumentParser):
|
|||||||
self.session = kwargs.pop('session', None)
|
self.session = kwargs.pop('session', None)
|
||||||
super().__init__(*args, **kwargs)
|
super().__init__(*args, **kwargs)
|
||||||
|
|
||||||
def _print_message(self, *args, **kwargs):
|
def _session_finish(self, message):
|
||||||
|
if self.session and isinstance(self.session, CommandSession):
|
||||||
|
self.session.finish(message)
|
||||||
|
|
||||||
|
def _print_message(self, message, file=None):
|
||||||
# do nothing
|
# do nothing
|
||||||
pass
|
pass
|
||||||
|
|
||||||
@ -27,18 +31,11 @@ class ArgumentParser(ArgumentParser):
|
|||||||
raise ParserExit(status=status, message=message)
|
raise ParserExit(status=status, message=message)
|
||||||
|
|
||||||
def parse_args(self, args=None, namespace=None):
|
def parse_args(self, args=None, namespace=None):
|
||||||
def finish(msg):
|
try:
|
||||||
if self.session and isinstance(self.session, CommandSession):
|
return super().parse_args(args=args, namespace=namespace)
|
||||||
self.session.finish(msg)
|
except ParserExit as e:
|
||||||
|
if e.status == 0:
|
||||||
if not args:
|
# --help
|
||||||
finish(self.usage)
|
self._session_finish(self.usage or self.format_help())
|
||||||
else:
|
else:
|
||||||
try:
|
self._session_finish('参数不足或不正确,请使用 --help 参数查询使用帮助')
|
||||||
return super().parse_args(args=args, namespace=namespace)
|
|
||||||
except ParserExit as e:
|
|
||||||
if e.status == 0:
|
|
||||||
# --help
|
|
||||||
finish(self.usage)
|
|
||||||
else:
|
|
||||||
finish('参数不足或不正确,请使用 --help 参数查询使用帮助')
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user