GMC/Terminal idea




So, I got an idea.

Right now, as of the version of gmc to be released today, the
applications launched from gmc will have their stdin, stdout and
stderr descriptors will all point to /dev/null

This is important for some setups, for example, login in tty1 (this is
shell) and start your X session from there.  If you launch a program
from gmc at that point it will use stdin that the X server is using
and will block the X server until you feed the proper data to it.

Now, what if the application is actually a text application?  We would
ideally want to see the output of this program in a terminal, right?

So, in the future, I would like to actually create a number of pipes
for stdin, stdout and stderr.  These will be monitored for any
activity (stderr we will probably just ignore until we get some
information from stdin/stdout though).

Once stdin or stdout become active, we can fork a gnome-terminal
listening to those sockets and to the stderr socket as well.

There are various ways of doing this:

      1. GMC monitors the pipes.  If activity is detected, we execute
         gnome-terminal with a new flag that will run from those file
         descriptors:

		gnome-terminal --use-standard-descriptors

      2. We modify GNOME-Terminal to be a corba server and we request
         gnome-terminal to launch the application for us (instead of
         having gmc do this).  A special flag will be passed,
         something like "lazy mode":

		gnome-terminal --lazy -c "command"

Both approached require changes to gnome-terminal to accomodate this,
but I think the features are worth having at some point (not this
week, but at some point :-).

Miguel.



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