MXP not escaping single quote character when generating link.
See original GitHub issueBrief summary of issue / Description of requested feature:
The single quote can’t be escaped, and isn’t automatically escaped when included as part of a MXP response. Trying to substitute '
yields '
as it escapes the &
character instead.
Steps to reproduce the issue / Reasons for adding feature:
say |lc' Aye!|lt|gAll in favor?|n|le
say |lcget lady's coin purse|lt|gpick up the item that the merchant dropped|n|le
- Notice no effect when clicking on links with MXP-enabled client or webclient
Error output / Expected result of feature
You say, "<SEND HREF='' Aye!'>All in favor?</SEND>"
You say, "<SEND HREF='get lady's coin purse'>pick up the item that the merchant dropped</SEND>"
Expected escape of single quote as an HTML entity when within single quotes or use of double quotes when no double quote exists in the HREF:
You say, "<SEND HREF='' Aye!'>All in favor?</SEND>"
You say, "<SEND HREF='get lady's coin purse'>pick up the item that the merchant dropped</SEND>"
or
You say, "<SEND HREF="' Aye!">All in favor?</SEND>"
You say, "<SEND HREF="get lady's coin purse">pick up the item that the merchant dropped</SEND>"
Extra information, such as Evennia revision/repo/branch, operating system and ideas for how to solve / implement:
current
The raw links are visible by forcing @option mxp=on
in a non-MXP client.
Issue Analytics
- State:
- Created 7 years ago
- Comments:8 (8 by maintainers)
Top GitHub Comments
My bad, the environment wasn’t as clean as I thought it was. Running with a clean game dir and applying the
\\"e;
in the replacement seems to have resolved the issue so that(and other combinations of " or ’ in the cmd) now appears to work. I have not tested with the RPsystem though.
I was probably having the same problem with a test environment. Anyway, I can close this now! I tested on 4 different game folders, one of them a vanilla+RP system, another a vanilla, and two different game folders in various levels of development, one of them on a different computer. Now, the MXP link does nothing if you do escape the double quote. We’ll just call that “expected behavior” and leave it at that.