[Top][All Lists]

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

Re: Calling emacsclient

From: William Gardella
Subject: Re: Calling emacsclient
Date: Wed, 14 Nov 2012 12:22:08 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.2 (gnu/linux)

Hi again, I had some further notes/thoughts for clarification.

Thorsten Jolitz <address@hidden> writes:

> I have another problem not yet solved - I want to call an Emacsclient
> with a file to open and some code to evaluate. Using the "-c" and
> "--eval" options in one call gives an error for me, and this seems to be
> in accordance with the manual that says its either the one or the other. 
> However, if I try two sequential calls instead, it works somehow, but
> not as intended. These two calls directly after another
> ,--------------------------
> | (call 'emacsclient
> |    "-c" "my/dir/my-file")
> `--------------------------
> ,---------------------------
> | (call 'emacsclient
> |    "--eval"
> |    "(message \"CALL 1\")")
> `---------------------------
> open a new emacs-frame showing a 'my-file' buffer, but in the *Messages*
> buffer there is no CALL 1 message. But when I kill the Emacsclient-frame
> with C-x C-c, CALL 1 is shown as return value in the calling external
> program and now appears in the *Messages* buffer too. It seems the
> second call is waiting for the first call to terminate.

This is actually expected behavior, by the way.  In an interactive emacs
environment such as an emacsclient frame, `standard-output' is the
*Messages* buffer.  In a batch arrangement, such as emacsclient --eval,
`standard-output' is the calling shell or program's standard output.  So
I'm guessing that your second call actually completes normally, but you
don't see it until you close the frame.

There is a syntax for using --eval inside an existing interactive
emacsclient frame.  One cannot combine -t and -e.  Try emacsclient -te
'(message "boop") and check your *Messages* buffer.

What is the Lisp-like program composing these calls, by the way?  Is
this scsh or something?


I use grml (

reply via email to

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