Actually, that&#39;s what I thought at first too, but then I thought you could still <br>1) Search for a let,<br>2) Select the var-expr list of the let,<br>3) If there is only 1 var-expr association per line, then something like (not tested) s/^([^\(]*)\((.*)\)([^\)]*)/\1[\2]\3/ should do it, provided you don&#39;t select the var-expr-list parentheses.<br>

4) Rinse and repeat.<br><br>Of course that fails if you have code like (let ((a 4)(b4)) ...)<br><br>Laurent<br><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Nov 22, 2012 at 8:10 PM, Eli Barzilay <span dir="ltr">&lt;<a href="mailto:eli@barzilay.org" target="_blank">eli@barzilay.org</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">Just now, Laurent wrote:<br>
&gt;     (Oh, and I should of course say that this depends on having a<br>
&gt;     very convenient way to deal with keyboard macros, something that<br>
&gt;     Emacs in its default configuration doesn&#39;t have.)<br>
&gt;<br>
&gt; Just in case that&#39;s of any help, the script-plugin has a<br>
&gt; regexp-replace-in-file script.  (<br>
&gt; <a href="http://planet.racket-lang.org/display.ss?package=script-plugin.plt&amp;owner=" target="_blank">http://planet.racket-lang.org/display.ss?package=script-plugin.plt&amp;owner=</a><br>
&gt; orseau )<br>
<br>
</div></div>(The specific case of converting parens is one where you don&#39;t want to<br>
use just a regexp replace...)<br>
<div class="HOEnZb"><div class="h5"><br>
--<br>
          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:<br>
                    <a href="http://barzilay.org/" target="_blank">http://barzilay.org/</a>                   Maze is Life!<br>
</div></div></blockquote></div><br></div>