From a92f84bd58227c3f817a47f21b121fff5af8900b Mon Sep 17 00:00:00 2001 From: Griatch Date: Sat, 29 Oct 2022 17:06:13 +0200 Subject: [PATCH] Fix msg_contents to not interfere with extra brackets in input (and {-style colors). Resolve #2696 --- evennia/contrib/base_systems/color_markups/README.md | 4 ++-- evennia/objects/objects.py | 4 ++++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/evennia/contrib/base_systems/color_markups/README.md b/evennia/contrib/base_systems/color_markups/README.md index 5d92b1d021..821c776de5 100644 --- a/evennia/contrib/base_systems/color_markups/README.md +++ b/evennia/contrib/base_systems/color_markups/README.md @@ -41,7 +41,7 @@ COLOR_XTERM256_EXTRA_FG = color_markups.CURLY_COLOR_XTERM256_EXTRA_FG COLOR_XTERM256_EXTRA_BG = color_markups.CURLY_COLOR_XTERM256_EXTRA_BG COLOR_XTERM256_EXTRA_GFG = color_markups.CURLY_COLOR_XTERM256_EXTRA_GFG COLOR_XTERM256_EXTRA_GBG = color_markups.CURLY_COLOR_XTERM256_EXTRA_GBG -COLOR_ANSI_BRIGHT_BG_EXTRA_MAP = color_markups.CURLY_COLOR_ANSI_BRIGHT_BG_EXTRA_MAP +COLOR_ANSI_XTERM256_BRIGHT_BG_EXTRA_MAP = color_markups.CURLY_COLOR_ANSI_XTERM256_BRIGHT_BG_EXTRA_MAP ``` To add the `%c-` "mux/mush" style, add the following to your settings file, then @@ -54,5 +54,5 @@ COLOR_XTERM256_EXTRA_FG = color_markups.MUX_COLOR_XTERM256_EXTRA_FG COLOR_XTERM256_EXTRA_BG = color_markups.MUX_COLOR_XTERM256_EXTRA_BG COLOR_XTERM256_EXTRA_GFG = color_markups.MUX_COLOR_XTERM256_EXTRA_GFG COLOR_XTERM256_EXTRA_GBG = color_markups.MUX_COLOR_XTERM256_EXTRA_GBG -COLOR_ANSI_BRIGHT_BGS_EXTRA_MAP = color_markups.CURLY_COLOR_ANSI_BRIGHT_BGS_EXTRA_MAP +COLOR_ANSI_XTERM256_BRIGHT_BG_EXTRA_MAP = color_markups.MUX_COLOR_ANSI_XTERM256_BRIGHT_BG_EXTRA_MAP ``` diff --git a/evennia/objects/objects.py b/evennia/objects/objects.py index 32e96cd211..2fb2d6966c 100644 --- a/evennia/objects/objects.py +++ b/evennia/objects/objects.py @@ -760,6 +760,10 @@ class DefaultObject(ObjectDB, metaclass=TypeclassBase): exclude = make_iter(exclude) contents = [obj for obj in contents if obj not in exclude] + # escape existing { in the input to not interfere with mapping + inmessage = inmessage.replace("{", "{{") + inmessage = inmessage.replace("}", "}}") + for receiver in contents: # actor-stance replacements