[Top][All Lists]

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

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

From: Pascal J. Bourguignon
Subject: Re: Why emacsclient -e "(current-word nil t)" does not print ?
Date: Tue, 21 Jul 2009 17:24:51 +0200
User-agent: Gnus/5.101 (Gnus v5.10.10) Emacs/22.2 (gnu/linux)

Wang Lei <address@hidden> writes:

>>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)".

Ok, in this case, it's normal that you get "t" since that the word
that is before the cursor (just before the closing parenthesis) when
you type C-x C-e.

>>$ emacsclient -e '(list emacs-version (buffer-name) (current-word))'
>>("22.2.1" "" "FilterFunction")
> Mine. In urxvt and emacs shell mode:
> $emacsclient -e '(list emacs-version (buffer-name) (current-word))'
> ("" " *server*" nil)
> It looks like the output really depends on the version.

Yes.  But as mentionned by Miles, you can write a more complex
expression to select the buffer where you want to work:

$ emacsclient -e '(mapcar (function buffer-name)  (buffer-list))'
("some" "buffer" "names" ...)

$ emacsclient -e '(with-current-buffer "index" (current-word nil t))'

> 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.

(You could, but you must know what buffer you want.)

Why do it from the exterior?  Stay with emacs.  Write an emacs command.

    (defun search-with-sdcv ()
       (let ((word (current-word nil t)))
          (when word
             (shell-command (format "sdcv %S" word) "*sdcv output*" "*sdcv 

Then  you may even bind that command to a key:

    (global-set-key (kbd "<F12>") 'search-with-sdcv)

so you just have one key to type to initiate that search from emacs,
without leaving emacs.

__Pascal Bourguignon__

reply via email to

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