For what it&#39;s worth, Xcode differentiates these cases by inserting a temporary closing paren that is gray instead of black. You can make it permanent by arrowing over it, typing it yourself, tabbing over it, or just moving the cursor outside the matching parens. When it becomes permanent it is black like the other text and you have to delete it individually, but while it is still gray it will be deleted automatically if you delete the opening paren.<div>
<br></div><div>I sort of like this behavior, and the visual difference gets rid of any potential confusion.<span></span><br><div><br>On Saturday, November 24, 2012, Robby Findler  wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On Sat, Nov 24, 2012 at 8:53 AM, Laurent &lt;<a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;laurent.orseau@gmail.com&#39;)">laurent.orseau@gmail.com</a>&gt; wrote:<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; On Sat, Nov 24, 2012 at 3:11 PM, Nadeem Abdul Hamid &lt;<a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;nadeem@acm.org&#39;)">nadeem@acm.org</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; On Sat, Nov 24, 2012 at 4:03 AM, Laurent &lt;<a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;laurent.orseau@gmail.com&#39;)">laurent.orseau@gmail.com</a>&gt; wrote:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; If you can, I think it would be a good idea to remove the paren pair if<br>
&gt;&gt;&gt; the user deletes the opening paren he just typed by mistake. Undo should do<br>
&gt;&gt;&gt; the same (which apparently it does not currently; missing<br>
&gt;&gt;&gt; &#39;begin/end-edit-sequence&#39; ?).<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; Yeah, the undo behavior I&#39;ve fixed. The first scenario you mention might<br>
&gt;&gt; be tricky - how do you distinguish between typing an open paren and then<br>
&gt;&gt; immediately deleting it vs. typing an open paren, making a bunch of other<br>
&gt;&gt; edits, and then coming back and deleting the open paren?<br>
&gt;<br>
&gt;<br>
&gt; I think it would already be good enough to only consider the case  where the<br>
&gt; user types the paren and wants to remove them immediately (e.g., he placed<br>
&gt; them in the wrong place, or wanted square brackets instead, or just changed<br>
&gt; his mind).<br>
&gt; In the case of meanwhile edits, I don&#39;t think the user would bother deleting<br>
&gt; the closing paren himself.<br>
<br>
I think that hidden state like this can lead to confusing behavior.<br>
Probably you want to have deleting a paren do the same thing,<br>
regardless of what the character most recently typed was.<br>
<br>
Robby<br>
_________________________<br>
  Racket Developers list:<br>
  <a href="http://lists.racket-lang.org/dev" target="_blank">http://lists.racket-lang.org/dev</a><br>
</blockquote></div></div>