[Top][All Lists]

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

Re: running emacs in perl script

From: Adam Hardy
Subject: Re: running emacs in perl script
Date: Sun, 08 Feb 2004 22:14:02 +0100
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.5) Gecko/20031021

On 02/08/2004 05:34 PM Barry Margolin wrote:
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]");

you're right. It works fine now on the command line or in x, with that adjustment.

I'm a total non-perl programmer. The use of 'print' as opposed to system() was completely arbitrary. Thanks alot.

GNU Emacs 21.3.1 on Linux 2.4.20 Debian

reply via email to

[Prev in Thread] Current Thread [Next in Thread]