<div dir="ltr">I think I was being biased towards the expandtab-way of text editing, in my previous mails on this topic. Thinking from the point of view of a keep-tabs-as-tabs text editor, another solution becomes possible, which I describe below:<div>

<br></div><div>This is how the user documentation would look like:</div><div>--- snip ---</div><div>The list bullet char should be followed by one or more spaces or a tab character.</div><div><br></div><div>For multi-paragraph list items, the subsequent paragraphs should be indented to vertically align with the first paragraph of the list item, using either spaces or a tab. If you are using tabs for indentation, you should use the same number of tab characters to indent all paragraphs of the list item, including the first paragraph.</div>

<div>--- snip ---</div><div><br></div><div>The parser would operate as follows:</div><div>--- snip ---</div><div><div>- Let t be the number of tab characters occurring after the bullet character of a list item</div><div>
- If t &gt; 0, then</div>
<div>  - First, look for t tab characters (with optional interspersed spaces) as indentation for subsequent paragraphs</div><div>  - If previous step didn&#39;t match, look for tabs+spaces as indentation using the modulo-4 method</div>

<div>- If t = 0, then</div><div><div>  - Look for tabs+spaces as indentation using the modulo-4 method</div></div><div>--- snip ---<br></div></div><div><br></div><div>Advantage:</div><div>- If the user doesn&#39;t mix space-indentation and tab-indentation, it would work for almost all cases (see below for the not-working case), irrespective of the tabstop setting he uses</div>

<div>- If the user uses space-indentation in some parts of the list and tab-indentation in other parts of the list, things are only as bad as the modulo-4 method</div><div><br></div><div>Disadvantage:</div><div>- Even if the user doesn&#39;t mix space-indentation and tab-indentation, it doesn&#39;t work for the case where the (number of spaces before the bullet char) = (tabstop - 1). For example, with tabstop=4 (_ being tab and . being space):</div>

<div><br></div><div><span style="font-family:&#39;courier new&#39;,monospace">...*____list item para 1</span><br></div><div><span style="font-family:&#39;courier new&#39;,monospace"><br></span></div><div><span style="font-family:&#39;courier new&#39;,monospace">________list item para 2</span></div>

<div><br></div><div>will be parsed unintuitively. This is why the user documentation above says: &quot;If you are using tabs for indentation, you should use the same number of tab characters to indent all paragraphs of the list item, including the first paragraph.&quot;</div>

<div><br></div><div>What are your thoughts on this option?</div><div><br></div><div>roop.</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Sep 30, 2013 at 7:56 PM, Roopesh Chander <span dir="ltr">&lt;<a href="mailto:roop@forwardbias.in" target="_blank">roop@forwardbias.in</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="im"><br><div class="gmail_quote">On Mon, Sep 30, 2013 at 7:54 PM, Roopesh Chander <span dir="ltr">&lt;<a href="mailto:roop@forwardbias.in" target="_blank">roop@forwardbias.in</a>&gt;</span> wrote:<br>


<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>To summarize:</div><div>- Marked always replaces &#39;\t&#39; with 4 spaces</div><div>- Maruku and Kramdown keep the &#39;\t&#39; intact</div>



<div>- Everyone else does the <span style="color:rgb(80,0,80)">&quot;4-(column_number modulo 4)&quot; method</span></div></blockquote></div><br></div>Not Marked. I meant Maruku. Sorry about the typo.</div><div class="gmail_extra">


</div></div>
</blockquote></div><br></div>