diff --git a/evennia/utils/text2html.py b/evennia/utils/text2html.py index 72ffc14c75..dcffd5ac31 100644 --- a/evennia/utils/text2html.py +++ b/evennia/utils/text2html.py @@ -97,8 +97,7 @@ class TextToHTMLparser(object): re_blink = re.compile("(?:%s)(.*?)(?=%s|%s)" % (blink.replace("[", r"\["), fgstop, bgstop)) re_inverse = re.compile("(?:%s)(.*?)(?=%s|%s)" % (inverse.replace("[", r"\["), fgstop, bgstop)) re_string = re.compile( - r"(?P[<&>])|(?P[\t]+)|(?P +)|" - r"(?P^ )|(?P\r\n|\r|\n)", + r"(?P[<&>])|(?P[\t]+)|(?P\r\n|\r|\n)", re.S | re.M | re.I, ) re_url = re.compile( @@ -109,20 +108,16 @@ class TextToHTMLparser(object): def _sub_bgfg(self, colormatch): # print("colormatch.groups()", colormatch.groups()) - bgcode, prespace, fgcode, text, postspace = colormatch.groups() + bgcode, fgcode, text = colormatch.groups() if not fgcode: ret = r"""%s%s%s""" % ( self.bg_colormap.get(bgcode, self.fg_colormap.get(bgcode, "err")), - prespace and " " * len(prespace) or "", - postspace and " " * len(postspace) or "", text, ) else: ret = r"""%s%s%s""" % ( self.bg_colormap.get(bgcode, self.fg_colormap.get(bgcode, "err")), self.fg_colormap.get(fgcode, self.bg_colormap.get(fgcode, "err")), - prespace and " " * len(prespace) or "", - postspace and " " * len(postspace) or "", text, ) return ret @@ -316,11 +311,7 @@ class TextToHTMLparser(object): elif cdict["lineend"]: return "
" elif cdict["tab"]: - text = cdict["tab"].replace("\t", " " + " " * (self.tabstop - 1)) - return text - elif cdict["space"] or cdict["spacestart"]: - text = cdict["space"] - text = " " if len(text) == 1 else " " + text[1:].replace(" ", " ") + text = cdict["tab"].replace("\t", " " * (self.tabstop)) return text return None