[TxMt] os forking doesn't work from a TextMate command?

Gerd Knops gerti at bitart.com
Fri Sep 16 18:04:47 UTC 2005


On Fri, Sep 16, at 10:31 AM, Kumar McMillan wrote:

> Does anyone have an idea why using Python's os.fork() to start a
> daemon process from within TextMate doesn't work?  Why would I want to
> do this, you ask?  It seems the most logical way to browse local
> Python documentation (via pydoc).  The doc commands that already exist
> are great if you know exactly what you're looking for, but I still
> find myself starting up the doc server every now and again to go
> poking around.  My thought was to run a command "Browse Python
> Documentation" or whatever from TextMate that opens a web browser to
> the local server.  If the server isn't running then it needs to start
> lazily.  This works great from the shell.  From within TextMate the
> server starts fine but the process doesn't appear to be properly
> forked because TextMate just hangs like it's waiting.  The script is
> attached for reference.

Try the double-fork trick, that works in most of those situations. By  
double fork I mean the forked child process exists immediately after  
forking another process which does the actual work. This dis- 
associates the prent from the 'grandchild'. You may also have to  
close the open file descriptors (STDIN, STDOUT, STDERR) in the child.

Gerd





More information about the textmate mailing list