emacsclient -eval "(вставить \" что-то \ ")" не работает для меня - PullRequest
4 голосов
/ 10 мая 2010

Я недавно обновился до Ubuntu 10.04, который поставляется с Emacs 23. Мне нужен Jabref для отправки ссылок на Emacs.

Однако, несмотря на то, что я установил плагин Jabref для передачи цитат через emacsclient, он не работает.

Я провел тестирование и прочитал некоторые из Emacs Lisp Intro.

Некоторые команды работают, например, если я набираю (в консоли):

  emacsclient --eval "(switch-to-buffer \"*sratch*\")"

окна emacs переключаются на этот буфер. Однако, если я выполню команду вставки:

  emacsclient --eval "(insert \"do you see me?\")"

текст не вставлен в текущий буфер.

Emacs 23 что-то изменил в insert?

Ответы [ 2 ]

4 голосов
/ 10 мая 2010

Yo вставляется в сервер буфер, вы, скорее всего, хотите:

emacsclient --eval '(with-current-buffer "*scratch*" (insert "do you see me?"))'
2 голосов
/ 10 мая 2010

Emacs23 что-то изменило в emacsclient и на сервере.

Выражение вычисляется в буфере "* server *" (с начальным пробелом) ... Поэтому перед вставкой необходимо изменить буфер:

  emacsclient --eval "(with-current-buffer \"*scratch*\" (insert \"foo\"))"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...