help-gnu-emacs
[Top][All Lists]
Advanced

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

Re: Why emacsclient -e "(current-word nil t)" does not print ?


From: Wang Lei
Subject: Re: Why emacsclient -e "(current-word nil t)" does not print ?
Date: Tue, 21 Jul 2009 22:56:16 +0800

>What is the "it" that should print 't'?

In my (current-word nil t) C-x C-e shows "t" in minibuffer.
This "it" means this expression "(current-word nil t)".

>$ emacsclient -e '(list emacs-version (buffer-name) (current-word))'
>("22.2.1" "Main.cc" "FilterFunction")

Mine. In urxvt and emacs shell mode:
$emacsclient -e '(list emacs-version (buffer-name) (current-word))'
("23.1.50.1" " *server*" nil)

It looks like the output really depends on the version.

> Anyway, it proves what i have thought is wrong.
Here, I wanted to say I have tried to write a external program, that
gets the emacs' current word with emacsclient and send it to sdcv to
search. This is part of the whole function, the rest is to get it from
selection or prompt for. But now, it looks like i can not integrate
the emacs-part.

On 7/21/09, Pascal J. Bourguignon <pjb@informatimago.com> wrote:
> Wang Lei <wanglei.198112@gmail.com> writes:
>
>> On 7/21/09, Pascal J. Bourguignon <pjb@informatimago.com> wrote:
>>> Wang Lei <wanglei.198112@gmail.com> writes:
>>>
>>>> On 7/21/09, Pascal J. Bourguignon <pjb@informatimago.com> wrote:
>>>>> Wang Lei <wanglei.198112@gmail.com> writes:
>>>>>
>>>>>> Hi, all.
>>>>>>
>>>>>> I'm doing a piece of code. What needs get the output of
>>>>>> emacsclient -e "(current-word nil t)"
>>>>>>
>>>>>> and send it to an external command. But there was NO output. I don't
>>>>>> understand.
>>>>>>
>>>>>> Could someone explain that?
>>>>>
>>>>> That's because -e prints the result only when it's not nil.
>>>>> Try:
>>>>>
>>>>>     emacsclient -e "(or (current-word nil t) :nil)"
>>>>>
>>>> Actually, what am i interested is the "current word", in this line,
>>>> it's should print 't'. In emacs it does print 't'. But with
>>>> emacsclient, nothing.
>>>>
>>>> Is this normal?
>>>
>>> Perhaps.   I cannot parse your sentence starting with "Actually".
>>>
>> I mean "in fact", sorry for my poor english. ;)
>
> Yes, I understand the meaning of the word "Actually", but it's the
> whole sentence that I don't understand:
>
>     Actually, what am i interested is the "current word", in this
>     line, it's should print 't'.
>
> What is the "it" that should print 't'?
>
> "current word" is two words, "current" and "word"...  Which of those
> two words are you interested in?  The current word, or the word
> "current", or the word "word"?  Or do you mean that "this line" refers
> to another line?
>
>
>
>>> Did you read what I wrote above?  I won't repeat it.
>>>
>> Yes, I read and tried. It return :nil.
>
> So this shows that there is no current word, since current-word
> returns nil, which my expression explicitely substitute with :nil.
>
>
>>> Otherwise, if you use emacsclient from within emacs (eg. from the M-x
>>> shell) you will obviously get different results.  Once you hit RET,
>>> emacs changes the position of the cursor, so the current word is not
>>> the same as when you hit RET, and current-word will return nil.
>>>
>> Yes. Maybe this is the reason, or maybe as Miles Bader said, it is in
>> the *server* buffer and it is empty.
>>
>> Anyway, it proves what i have thought is wrong.
>
> I can confirm that with my version of emacs, I get the current buffer
> and the current word:
>
> $ emacsclient -e '(list emacs-version (buffer-name) (current-word))'
> ("22.2.1" "Main.cc" "FilterFunction")
>
>
>>> And I don't see how current-word could return t.  At best, it could
>>> return "t", if you had the cursor on a single letter 't'.
>>>
>> I meant, in emacs C-x C-e, it returns "t".
>
> With my emacs,
>
> On a line alone, (current-word) C-x C-e  shows «"current-word"» in the mini
> buffer.
>
> On a line alone, (current-word) SPC t C-b C-x C-e shows «"t"» in the mini
> buffer.
>
> On a line alone, (current-word) SPC SPC t C-b C-b C-x C-e shows
> «"current-word"» in the mini buffer.
>
>
> --
> __Pascal Bourguignon__
>


-- 
Regards
Lei




reply via email to

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