help.py display tweak + help aliased to ?

Display tweak resolves difference in display between Telnet and Webclient where coloration of command in format_help_list was not persisting across new lines.
Also updates depreciated markup
This commit is contained in:
BlauFeuer 2017-02-12 14:51:30 -05:00 committed by GitHub
parent 27f57f7a1b
commit 5e93d41664

View file

@ -20,7 +20,7 @@ COMMAND_DEFAULT_CLASS = class_from_module(settings.COMMAND_DEFAULT_CLASS)
# limit symbol import for API # limit symbol import for API
__all__ = ("CmdHelp", "CmdSetHelp") __all__ = ("CmdHelp", "CmdSetHelp")
_DEFAULT_WIDTH = settings.CLIENT_DEFAULT_WIDTH _DEFAULT_WIDTH = settings.CLIENT_DEFAULT_WIDTH
_SEP = "{C" + "-" * _DEFAULT_WIDTH + "{n" _SEP = "|C" + "-" * _DEFAULT_WIDTH + "|n"
class CmdHelp(Command): class CmdHelp(Command):
@ -36,6 +36,7 @@ class CmdHelp(Command):
topics related to the game. topics related to the game.
""" """
key = "help" key = "help"
aliases = ['?']
locks = "cmd:all()" locks = "cmd:all()"
arg_regex = r"\s|$" arg_regex = r"\s|$"
@ -89,14 +90,14 @@ class CmdHelp(Command):
""" """
string = _SEP + "\n" string = _SEP + "\n"
if title: if title:
string += "{CHelp for {w%s{n" % title string += "|CHelp for |w%s|n" % title
if aliases: if aliases:
string += " {C(aliases: %s{C){n" % ("{C,{n ".join("{w%s{n" % ali for ali in aliases)) string += " |C(aliases: %s|C)|n" % ("|C,|n ".join("|w%s|n" % ali for ali in aliases))
if help_text: if help_text:
string += "\n%s" % dedent(help_text.rstrip()) string += "\n%s" % dedent(help_text.rstrip())
if suggested: if suggested:
string += "\n\n{CSuggested:{n " string += "\n\n|CSuggested:|n "
string += "%s" % fill("{C,{n ".join("{w%s{n" % sug for sug in suggested)) string += "%s" % fill("|C,|n ".join("|w%s|n" % sug for sug in suggested))
string.strip() string.strip()
string += "\n" + _SEP string += "\n" + _SEP
return string return string
@ -111,15 +112,15 @@ class CmdHelp(Command):
""" """
string = "" string = ""
if hdict_cmds and any(hdict_cmds.values()): if hdict_cmds and any(hdict_cmds.values()):
string += "\n" + _SEP + "\n {CCommand help entries{n\n" + _SEP string += "\n" + _SEP + "\n |CCommand help entries|n\n" + _SEP
for category in sorted(hdict_cmds.keys()): for category in sorted(hdict_cmds.keys()):
string += "\n {w%s{n:\n" % (str(category).title()) string += "\n |w%s|n:\n" % (str(category).title())
string += "{G" + fill(", ".join(sorted(hdict_cmds[category]))) + "{n" string += "|G" + fill("|C, |G".join(sorted(hdict_cmds[category]))) + "|n"
if hdict_db and any(hdict_db.values()): if hdict_db and any(hdict_db.values()):
string += "\n\n" + _SEP + "\n\r {COther help entries{n\n" + _SEP string += "\n\n" + _SEP + "\n\r |COther help entries|n\n" + _SEP
for category in sorted(hdict_db.keys()): for category in sorted(hdict_db.keys()):
string += "\n\r {w%s{n:\n" % (str(category).title()) string += "\n\r |w%s|n:\n" % (str(category).title())
string += "{G" + fill(", ".join(sorted([str(topic) for topic in hdict_db[category]]))) + "{n" string += "|G" + fill(", ".join(sorted([str(topic) for topic in hdict_db[category]]))) + "|n"
return string return string
def check_show_help(self, cmd, caller): def check_show_help(self, cmd, caller):