Improve help formatting
This commit is contained in:
parent
b7831cfeb2
commit
147ea92102
1 changed files with 15 additions and 7 deletions
|
|
@ -3,7 +3,7 @@ from typing import List, Optional
|
||||||
|
|
||||||
from .client import Client
|
from .client import Client
|
||||||
from .command import *
|
from .command import *
|
||||||
from .message import LiveMessage
|
from .message import LiveMessage, Message
|
||||||
from .room import Room
|
from .room import Room
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
@ -13,7 +13,7 @@ __all__ = ["Bot"]
|
||||||
class Bot(Client):
|
class Bot(Client):
|
||||||
PING_REPLY: str = "Pong!"
|
PING_REPLY: str = "Pong!"
|
||||||
HELP_GENERAL: Optional[str] = None
|
HELP_GENERAL: Optional[str] = None
|
||||||
HELP_SPECIFIC: Optional[str] = None
|
HELP_SPECIFIC: Optional[List[str]] = None
|
||||||
|
|
||||||
def __init__(self) -> None:
|
def __init__(self) -> None:
|
||||||
super().__init__()
|
super().__init__()
|
||||||
|
|
@ -49,9 +49,6 @@ class Bot(Client):
|
||||||
aliases: List[str] = []
|
aliases: List[str] = []
|
||||||
) -> None:
|
) -> None:
|
||||||
nicks = [room.session.nick] + aliases
|
nicks = [room.session.nick] + aliases
|
||||||
print()
|
|
||||||
print(nicks)
|
|
||||||
print()
|
|
||||||
data = CommandData.from_string(message.content)
|
data = CommandData.from_string(message.content)
|
||||||
|
|
||||||
if data is not None:
|
if data is not None:
|
||||||
|
|
@ -62,6 +59,17 @@ class Bot(Client):
|
||||||
async def on_send(self, room: Room, message: LiveMessage) -> None:
|
async def on_send(self, room: Room, message: LiveMessage) -> None:
|
||||||
await self.process_commands(room, message)
|
await self.process_commands(room, message)
|
||||||
|
|
||||||
|
# Help util
|
||||||
|
|
||||||
|
def format_help(self, room: Room, lines: List[str]) -> str:
|
||||||
|
text = "\n".join(lines)
|
||||||
|
params = {
|
||||||
|
"nick": room.session.nick,
|
||||||
|
"mention": room.session.mention,
|
||||||
|
"atmention": room.session.atmention,
|
||||||
|
}
|
||||||
|
return text.format(**params)
|
||||||
|
|
||||||
# Botrulez
|
# Botrulez
|
||||||
|
|
||||||
def register_botrulez(self,
|
def register_botrulez(self,
|
||||||
|
|
@ -92,7 +100,7 @@ class Bot(Client):
|
||||||
args: ArgumentData
|
args: ArgumentData
|
||||||
) -> None:
|
) -> None:
|
||||||
if self.HELP_GENERAL is not None:
|
if self.HELP_GENERAL is not None:
|
||||||
await message.reply(self.HELP_GENERAL)
|
await message.reply(self.format_help(room, [self.HELP_GENERAL]))
|
||||||
|
|
||||||
async def cmd_help_specific(self,
|
async def cmd_help_specific(self,
|
||||||
room: Room,
|
room: Room,
|
||||||
|
|
@ -100,4 +108,4 @@ class Bot(Client):
|
||||||
args: SpecificArgumentData
|
args: SpecificArgumentData
|
||||||
) -> None:
|
) -> None:
|
||||||
if self.HELP_SPECIFIC is not None:
|
if self.HELP_SPECIFIC is not None:
|
||||||
await message.reply(self.HELP_SPECIFIC)
|
await message.reply(self.format_help(room, self.HELP_SPECIFIC))
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue