[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Detach Icedove from xterm itself called from terminal.



Le 30/11/2011 14:29, Clive Standbridge a écrit :
Paul Isambert wrote:
Hello there,


When started from gnome-terminal, Icedove stays attached to it. I can
detach it by executing "icedove&". The problem is, I can't seem to do
that recursively, i.e. from the terminal call another terminal which
calls "icedove&". The following works: "xterm -e 'icedove'" (with
Icedove attached to xterm), but "xterm -e 'icedove&'" doesn't (xterm
starts and closes immediately).

Any idea?

Hi Paul,

First, about the error. Given the -e option, xterm runs the next
argument instead of the shell that it would run by default. So it's
trying to run an executable called 'icedove&', can't find it, and
exits.

The '&' is shell syntax; you need to run a shell in the xterm. The
shell would need to both run the icedove command in the background,
and produce an interactive prompt. I don't know if there is a
straightforward way of doing that. The best I can think of is

   xterm -e bash --rcfile<(echo icedove \&)

or if you want the usual initialisation files to run, you could do

   xterm -e bash --rcfile<(cat /etc/bash.bashrc ~/.bashrc; echo icedove \&)

or use a dedicated rcfile:

   xterm -e bash --rcfile ~/.my-icedove-rcfile

where ~/.my-icedove-rcfile contains

   . /etc/bash.bashrc
   . ~/.bashrc
   icedove&


There are a couple of things I haven't figured out:
This does not to allow you to bring the icedove to the foreground.
Nor does it seem to show stdout/stderr from icedove in the xterm, which
I guess you want.

Thanks Clive for your help. Unfortunately Icedove stays attached to the uppermost terminal (which I want to close too, perhaps that wasn't clear). Even with the simplest form:

  bash --rcfile <(echo icedove \&)

when I close the terminal, it closes Icedove.

But at least I have learnt something!

Best,
Paul


Reply to: