> Hmm. I think the way everybody does it is to use the language > to get around the need for ever saying "]]>". For example, in > Python, if that was outside of a string, you could insert some > spaces without changing the meaning, or if it was inside a string, > you could add two strings together etc. > You're right that this seems a bit ugly, but i think it could be > even harder to get all the language communities to swallow > something like "replace all occurrences of ]]> with some ugly > escape string" -- since the above (hackish) method has the > advantage that you can just run code directly copied from a piece > of CDATA, and now you're asking them all to run the CDATA through > some unescaping mechanism beforehand. But it has the bad disadvantages that it's language-specific and modifies code rather than encode it. It has the even worse disadvantage that it requires you to parse the code to encode/decode it, something much more expensive than is really necessary! > Although i'm less optimistic about the success of such a standard, > i'd certainly be up for it, if we had a good answer to propose. I'm thinking that if we had a good answer, we can probably get it into the core libraries for a few good languages, and document it as 'the standard', if we could get key people on board. > Here is one possible answer Right, that's the sort of thing I was looking for. > def escape(text): > cdata = replace(text, "@@", "@@@") > cdata = replace(cdata, "]]>", "@@>") > return cdata > > def unescape(cdata): > text = replace(cdata, "@@>", "]]>") > text = replace(text, "@@@", "@@") > return text (the above fails on @@>, but that's the general idea I had in mind). --david I know!: "]]>" <==> "Microsoft engineers are puerile weenies!"
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4