<HTML><BODY style="word-wrap: break-word; -khtml-nbsp-mode: space; -khtml-line-break: after-white-space; "><DIV><DIV>On Jun 23, 2005, at 9:37 PM, hadley wickham wrote:</DIV><BR class="Apple-interchange-newline"><BLOCKQUOTE type="cite"><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">If you look at test-minimal, you'll see _italic \_ _ is not italic. <SPAN class="Apple-converted-space"> </SPAN></DIV></BLOCKQUOTE><DIV><FONT class="Apple-style-span" color="#0000DD"><BR class="khtml-block-placeholder"></FONT></DIV>According to the markdown syntax:</DIV><DIV>"But if you surround an * or _ with spaces, it’ll be treated as a literal asterisk or underscore."</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>So, according to this, the above example should NOT be italic. In fact, running "Markdown Preview" shows it to not be italic. That's the purpose of my regular expression, to fix this. Alas, as you point out, it does not work well with backslash escaping.<BR></DIV><DIV><FONT class="Apple-style-span" color="#0000DD"><BR></FONT><BLOCKQUOTE type="cite"><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">I'm really not sure what you're trying to do with your regular</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">expressions - they don't look like they would cope properly with</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">backslash escaping (and indeed they don't)</DIV></BLOCKQUOTE><DIV><FONT class="Apple-style-span" color="#0000DD"><BR class="khtml-block-placeholder"></FONT></DIV>The purpose of my expression is to consider as italic whatever is between "a star or underscore not followed by a space" and "the same symbol not preceded by a space or a backslash". Granted, it should be changed so that the first star or underscore is also not preceded by an odd number of backslashes and the second symbol is not preceded by an even number of backslashes, I did forget to take those into account. But the command was not working properly in the first place. So neither the original version nor my version are correct, as far as I understand. Please correct me if I am wrong.</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV><BLOCKQUOTE type="cite"><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">What was the problem you were trying to fix?</DIV></BLOCKQUOTE><DIV><FONT class="Apple-style-span" color="#0000DD"><BR class="khtml-block-placeholder"></FONT></DIV>The problem was posted by Xavier Noria: <A href="http://thread.gmane.org/gmane.editors.textmate.general/4601">http://thread.gmane.org/gmane.editors.textmate.general/4601</A></DIV><DIV>This is his message:</DIV><DIV><BLOCKQUOTE type="cite"><BLOCKQUOTE type="cite"><DIV>Hello! Who is the maintainer of the bundle for Markdown? Looks like he is missing from the README in svn.</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>I noticed the regexp for emphasis</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>    match = "[*]([^\\\\*]|\\\\.)*?[*]";</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>causes the engine to beautify the bulleted list</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>    * normal *emph*.</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>with " normal " in italics instead of "emph". Do those TM regexps support some sort of precedence? Do they supoprt look-behind assertions?</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>In addition, the regexp for itemized lists looks too weak:</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>    begin = "^\\s*[*+-]";</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>According to the current spec it would be something like:</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>    begin = "^ {0,3}[*+-][ \\t]";</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>-- fxn</DIV></BLOCKQUOTE></BLOCKQUOTE></DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>In my response, I said, among other things (referring to test-minimal.markdown):</DIV><DIV><BLOCKQUOTE type="cite"><BLOCKQUOTE type="cite"><DIV>Also in that file, the 4th line or so is:</DIV><DIV>_italic \_ _</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>Now, if I understand correctly, this should not be italisized, right?</DIV></BLOCKQUOTE></BLOCKQUOTE></DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>But got no responses, so I assumed, and still do, that this statement is right. At least markdown seems to think so.<BR><BLOCKQUOTE type="cite"><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Hadley</DIV> <BR class="Apple-interchange-newline"></BLOCKQUOTE></DIV><BR><DIV> <DIV>Haris</DIV><DIV><BR class="khtml-block-placeholder"></DIV> </DIV><BR></BODY></HTML>