[TxMt] os forking doesn't work from a TextMate command?
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.
More information about the textmate