No. It should back up to the previous lexeme and start there. <br><br>Robby<br><br>On Tuesday, August 2, 2011, Jon Rafkind &lt;<a href="mailto:rafkind@cs.utah.edu">rafkind@cs.utah.edu</a>&gt; wrote:<br>&gt; On 08/01/2011 06:40 PM, Matthew Flatt wrote:<br>
&gt;&gt; At Mon, 01 Aug 2011 18:13:11 -0600, Jon Rafkind wrote:<br>&gt;&gt;&gt; How do I deal with partial lexemes when using the color:text colorer? It<br>&gt;&gt;&gt; seems that if my lexer cannot produce a valid token then it will throw<br>
&gt;&gt;&gt; an error and the color thread will keep calling `get-token&#39; in a busy loop.<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; Is there some magic thing I can return from `get-token&#39; to tell the<br>&gt;&gt;&gt; colorer that it should not progress to the next position?<br>
&gt;&gt; A coloring lexer&#39;s job is to never fail. It should instead categorize<br>&gt;&gt; bad input as &#39;error and be ready to continue.<br>&gt;&gt;<br>&gt;&gt; Continuing can mean categorizing all further input as &#39;error, but it&#39;s<br>
&gt;&gt; usually better to continue in some other way.<br>&gt;&gt;<br>&gt;<br>&gt; It seems the colorer re-tokenizes the entire input stream each time I<br>&gt; enter a character. Is that the expected behavior?<br>&gt; _________________________________________________<br>
&gt;  For list-related administrative tasks:<br>&gt;  <a href="http://lists.racket-lang.org/listinfo/users">http://lists.racket-lang.org/listinfo/users</a><br>&gt;