Re: replacing with quot;
Le 2008-01-04 à 23:43, Waylan Limberg a écrit : 1. First of all, using the straight quote is not invalid html or xhtml, so why do we care? In fact, I can't seem to find one reference that explains why the html entity should be used in this case. You need to escape it inside the attributes (such as the title attribute or URLs), but outside attributes that's unnecessary. Perhaps the same escaping function is used for attributes and other text that need escaping. a href=... title=My quot;friendquot;.../a 2. If I'm not mistaken, having markdown output the html entity makes it imposable for smartypants to then convert straight quotes into curly quotes - which may be undesirable to some users. That's right. In fact, PHP Markdown use that trick to disable SmartyPants on escaped characters so you don't have to double-escape characters such as the dot or the backtick. For instance: I don't want an elipsis character\... and here I want a double backtick: \`` Pass that though the Markdown SmartyPants filter on John Gruber's Markdown Dingus and you'll see that you actually need to write: I don't want an elipsis character\\\... and here I want a double backtick: \\\`` to get the expected behaviour. So, my question is: Which implementation do you consider correct and why? I'd say both are correct since, within HTML or XML character data, a character entity is semantically equivalent to the litteral character it represents. But for the sake of compatibility with other processing tools, I'd avoid using an entity for strait quotes (or any other character for that matter) when it's not necessary. Michel Fortin [EMAIL PROTECTED] http://michelf.com/ ___ Markdown-Discuss mailing list Markdown-Discuss@six.pairlist.net http://six.pairlist.net/mailman/listinfo/markdown-discuss
Re: replacing with quot;
I agree with Michel, that it's better to not escape things where it's not necessary. If you want to fix it, the place to do is the method Document.normalizeEntities(), which is now called in two places: 1. in Element.toxml() separately for each attribute 2. in TextNode.toxml() for the whole thing The quickest fix would be to add an extra keyword parameter to this function: something like skip_quotes and call with this parameter in the second case. Note that , , and need to be replaced in both cases. - yuri On Jan 5, 2008 4:51 AM, Michel Fortin [EMAIL PROTECTED] wrote: So, my question is: Which implementation do you consider correct and why? I'd say both are correct since, within HTML or XML character data, a character entity is semantically equivalent to the litteral character it represents. But for the sake of compatibility with other processing tools, I'd avoid using an entity for strait quotes (or any other character for that matter) when it's not necessary. -- http://sputnik.freewisdom.org/ ___ Markdown-Discuss mailing list Markdown-Discuss@six.pairlist.net http://six.pairlist.net/mailman/listinfo/markdown-discuss
Re: replacing with quot;
Thanks for the feedback guys. I just wanted to make sure I wasn't missing anything before commiting the change. Oh, and Michel, thanks for the reminder about attributes. Python-markdown's dom should make that easy to do. On Jan 5, 2008 10:29 AM, Yuri Takhteyev [EMAIL PROTECTED] wrote: I agree with Michel, that it's better to not escape things where it's not necessary. If you want to fix it, the place to do is the method Document.normalizeEntities(), which is now called in two places: 1. in Element.toxml() separately for each attribute 2. in TextNode.toxml() for the whole thing The quickest fix would be to add an extra keyword parameter to this function: something like skip_quotes and call with this parameter in the second case. Note that , , and need to be replaced in both cases. - yuri On Jan 5, 2008 4:51 AM, Michel Fortin [EMAIL PROTECTED] wrote: So, my question is: Which implementation do you consider correct and why? I'd say both are correct since, within HTML or XML character data, a character entity is semantically equivalent to the litteral character it represents. But for the sake of compatibility with other processing tools, I'd avoid using an entity for strait quotes (or any other character for that matter) when it's not necessary. -- http://sputnik.freewisdom.org/ ___ Markdown-Discuss mailing list Markdown-Discuss@six.pairlist.net http://six.pairlist.net/mailman/listinfo/markdown-discuss -- Waylan Limberg [EMAIL PROTECTED] ___ Markdown-Discuss mailing list Markdown-Discuss@six.pairlist.net http://six.pairlist.net/mailman/listinfo/markdown-discuss