Hugh Lawson <[EMAIL PROTECTED]> writes: > David Kastrup <[EMAIL PROTECTED]> writes: > >> Hugh Lawson <[EMAIL PROTECTED]> writes: >> >> > Debian sarge >> > Emacs 21.4.1 >> > >> > browse-url works fine if firefox is already running. >> > >> > But suppose firefox isn't running. >> > >> > If I do 'M-x browse-url' and fill in the url, then firefox pops up for >> > a second and then disappears. The same thing happens with links I >> > click on in Emacs. >> > >> > I think I can imagine a shell script to deal with this, but surely >> > there is something alread in Emacs. >> >> The definition of browse-url-generic in browse-url.el needs to get >> replaced with: >> >> (defun browse-url-generic (url &optional new-window) >> ;; new-window ignored >> "Ask the WWW browser defined by `browse-url-generic-program' to load URL. >> Default to the URL around or before point. A fresh copy of the >> browser is started up in a new process with possible additional arguments >> `browse-url-generic-args'. This is appropriate for browsers which >> don't offer a form of remote control." >> (interactive (browse-url-interactive-arg "URL: ")) >> (if (not browse-url-generic-program) >> (error "No browser defined (`browse-url-generic-program')")) >> (apply 'call-process browse-url-generic-program nil >> 0 nil >> (append browse-url-generic-args (list url)))) > > > I don't understand how this solves my problem. If mozilla-firefox > is open and running. all is well. If it isn't then there is a > problem.
Emacs has several possibilities to start processes. Starting with call-process and 0 as third argument detaches the process completely from Emacs. Starting the process with start-process, in contrast, leaves the process associated with Emacs. If the process detaches itself from the tty, Emacs assumes that it is finished and kills the process group. This is what happens with new Firefoxes that try to escape the Emacs tty. This is why you need an Elisp function that will use call-process instead of start-process for starting Firefox if it is supposed to survive detaching. -- David Kastrup, Kriemhildstr. 15, 44793 Bochum _______________________________________________ Help-gnu-emacs mailing list Help-gnu-emacs@gnu.org http://lists.gnu.org/mailman/listinfo/help-gnu-emacs