Out of curiosity, why not simply use SSH control mastering?  You could even make that part of the "standard" remote notmuch script, without requiring the user to change anything in their ssh configuration.  This should be just as fast as a remote notmuch shell, but retains the ability to run multiple simultaneous operations and leverages all of the fancy session machinery already built in to ssh.  It seems to me that ssh already does what you want, and I'm curious what the advantage is to reinventing the wheel.<div>
<br><div class="gmail_quote">On Sat, Nov 20, 2010 at 6:38 PM, servilio <span dir="ltr"><<a href="mailto:servilio@gmail.com">servilio@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Hi Michal,<br>
<div class="im"><br>
On 20 November 2010 16:15, Michal Sojka <<a href="mailto:sojkam1@fel.cvut.cz">sojkam1@fel.cvut.cz</a>> wrote:<br>
> On Sat, 20 Nov 2010, servilio wrote:<br>
>> This implementation uses GNU readline for the prompt and command<br>
>> history, with the default file completion enabled. GLib is used to<br>
>> split the read line into an arguments list.<br>
><br>
> Hi,<br>
><br>
> I haven't tested it yet, but it seems to be exactly the piece of code I<br>
> wanted to have to speed up notmuch-hello when notmuch is used remotely<br>
> over ssh. Spawning new ssh for every saved search to get the count of<br>
> matched messages has a way too big overhead. Is this the use case you<br>
> had in mind when implementing this?<br>
<br>
</div>Great to see that you find it useful. Yes, the remote usage was in my<br>
mind, but it should enhance the local usage as well. We could also<br>
create a quicker test run using the shell.<br>
<br>
The disadvantage of using an interactive shell is that you can have<br>
only one operation running in the UI, and I see no way of<br>
interrumpting an operation unless you kill the process, but as<br>
starting a new shell shouldn't be a biggie, this might not be as<br>
limiting as might seem.<br>
<br>
The ideal would be for libnotmuch to be able to connect to a<br>
xapian-tcpsrv, but haven't had time to look at than, and an<br>
interactive shell seemed to be less time demanding to implement (and<br>
had the subjective promise of providing a lot of fun).<br>
<div class="im"><br>
> Currently, I have only one comment to the patch. For me, "repl" is a bit<br>
> unintuitive. I was thinking about "shell" as the name of subcommand for<br>
> this.<br>
<br>
</div>I agree, maybe "shell" or "interactive" would be more intuitive, but<br>
when I started "repl" was the only one I could think of.<br>
<font color="#888888"><br>
Servilio<br>
</font><div><div></div><div class="h5">_______________________________________________<br>
notmuch mailing list<br>
<a href="mailto:notmuch@notmuchmail.org">notmuch@notmuchmail.org</a><br>
<a href="http://notmuchmail.org/mailman/listinfo/notmuch" target="_blank">http://notmuchmail.org/mailman/listinfo/notmuch</a><br>
</div></div></blockquote></div><br></div>