I've got a perl script which I use for ripping CDs. It gets the CDDB
entry off the net, saves the entry in a file and then asks if I want to
edit it with this command:
print `emacs \"/tmp/xmcd/$files[2]\"`;
This launches emacs with the file nicely in x-windows. However I often
want to run the script on an old box which runs x so slowly I never
bother and do everything on the command line.
But on the command line, this command above launches emacs in the
background I think. I'm not sure. I never see emacs, the script just
sits there with the cursor blinking, hanging below the command line.
If I do 'ps -eaf' I see an emacs process. But I can't get to it.
I think the problem is the backticks. That causes emacs to be run with
its stdout piped to the script. I'm not sure why you're doing that --
do you really want to print all of the output that emacs generates?
Something like this should be more appropriate:
system('emacs', "/tmp/xmcd/$files[2]");