[STUMP] need help about defun "gnus" command
Feng Shu <[email protected]>
| Newsgroups | gmane.comp.window-managers.stumpwm.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi:
I defun a emacsclient-eval function like this
#+begin_src lisp
(defun escape-instance-name (str)
(let (buf)
(map nil #'(lambda (ch)
(if (or (char= ch #\()
(char= ch #\))
(char= ch #\")
(char= ch #\ ))
(push #\_ buf)
(push ch buf)))
str)
(coerce (reverse buf) 'string)))
(defun emacsclient-eval (&optional expression create-frame frame-name file)
(let* ((expr-string (string-downcase (prin1-to-string expression)))
(name (or frame-name
(escape-instance-name expression))))
(run-or-raise
(concat "emacsclient --server-file=default "
(when create-frame (concat "-c -F '((name . \"" name "\"))' "))
(when expr-string (concat " --eval '" expr-string "'"))
file)
(list :instance name))))
#+end_src
this can work,
#+begin_src
(emacsclient-eval '(gnus))
#+end_src
but the follow command defun can't work, someone can help me? thanks!
#+begin_src
(defcommand gnus () ()
(emacsclient-eval '(gnus)))
#+end_src
-- feng shu