Anne van Kesteren

Comment system improvements

Over the last few days I have made some improvements to the comment system, discovered a bug in Opera, made the comment system less accessible for browsers like Opera, that convert entities before submitting, which is just plain evil to do in the XML world. Maybe that is a reason why The Moose got into trouble with WordPress, who knows.

The improved error messages are now consistent with the tags versus elements discussion and if you didn't enter any block level elements you get a special warning instead of element ALL may not contain raw character data. I won't list the available elements besides the comment form, since trial and error will get you there. Actually, most is allowed, so... You may add element and attribute requests in this thread.

I would also like to say that this weblog isn't about usability, it isn't about asking questions to other people who comment when you are new and (perhaps/probably/positively) don't understand the comment system. I don't really care if you can't enter a comment the first time because you don't understand how it works, I don't really care about other people telling me that, since this isn't a commercial site. Besides, I don't really trust software to convert every instance to correct semantic markup, thus I will stick with what works today and in the future.

The exception is Opera, which has tremendous XML support. It already crashed on SCRIPT elements in XML mode and now converts entities on submit. So you enter &lt; and Opera passes < to the server, fun! (And no, I haven't taken the time to submit a bug, since the bug database wasn't accessible enough to look if there was a similar bug already and I don't have time to create test cases and such)

I'm also working on improving the search within WordPress since it sucks, as we all know. Some people even switched to Google searching because of WordPress search functions... I should note that my beta search already works (not online yet), but I always hardcode stuff so it won't work for most people. Perhaps Arthur can use it, since he stole most of my templates (eh, all).


  1. Hold on a sec, I asked you for help and you promptly emailed me all your templates. It was a great help, because the template-system in Wordpress gave me a fair amount of headache.

    Thanks for the help though, I really, really appreciate it! ;-)

    Posted by Arthur! at

  2. And I would like to add that I am a bit of a configuraholic:

    configuraholic (kn fig' yr hl' c) n. 1. A person who can't stop twiddling with system settings until his computer no longer works and who then must be rescued by the system administration staff.

    Posted by Arthur! at

  3. I can confirm Opera's problem. Initially, I suspected you of editing one of my comments on the fly (Speedy van der Gonzaales!), but indeed, Opera converts entities on submit. That need not be completelt true, because when I write "ampersand Oslash semicolon" on the Opera forum, it does NOT convert the entity. It's still in the code. So you are right that an entity is converted, but since it isn't universal, I would withheld judgment until a test testcase is testily tested. I will submit one for you to Opera BTS, and point them to this discussion.

    The reason why I tentatively confirm this tentacle is that in one of my comments, I encoded a HOWGH self-closed tag (like a meta). It was viewable in the preview, but was lost after the post was published. Could be my beloved WordPress, for all we know!!!!!!! :]


    Posted by Moose at

  4. You forget that the Opera forums send their pages as text/html, which is not really the same.

    Posted by Anne at

  5. Indeed. I stand corrected...

    Posted by Moose at

  6. WFM with Opera 7.50 and 7.51 in my own forum application that supports application/xhtml+xml.

    Posted by mawic at

  7. I use Opera, maybe that's what happened those three times I commented and blew apart an entry...

    Posted by Mike P. at

  8. Anne, I have a request for another element (I mentioned it somewhere in another comment sometime):

    The span element with the xml:lang attribute please, for this:

    <span xml:lang="nl">Anne van Kesteren</span>
    <span xml:lang="af">Charl van Niekerk</span>
    <span xml:lang="af">Ek hou van ordentlike bronskrif.</span>
    <span xml:lang="nl">Goeden dag!</span>
    , etc. etc.

    If I was you I would even require the xml:lang on the span element, because otherwise there is no reason to use it?

    Or am I getting the thing wrong now?

    Posted by Charl van Niekerk at

  9. Just something quick about my previous comment, to clarify:

    I mean the language of text can change inside a paragraph, like this:

    <p xml:lang="en"><span xml:lang="nl">Goeden dag, Anne.</span>And the rest of the paragraph is in English for some reason.</p>

    PS: I love your new error messages, however I had to switch to Firefox just to comment.

    Posted by Charl van Niekerk at

  10. Charl, I will take a look at it. Having REQUIRED attributes seems like fun. Currently all attributes are optional.

    To all, the validator now says in which line you have made an error, I hope that will improve the commeting process a bit.

    For Opera users: you can always double-encode your entities to get the desired result, but working around bugs is always evil, of course.

    Posted by Anne at

  11. I've reported the entity-replacement bug to Opera: bug 144785.

    Posted by Asbjørn Ulsberg at