From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Philipp Stephani
Hello,
Insert into a fresh buffer (e.g. *scratch*):
#+begin_src emacs-lisp
`(progn
=C2=A0 =C2=A0(add-to-list 'rcirc-client-commands ,(concat "/"= (symbol-name command)))
=C2=A0 =C2=A0(defun ,(intern (concat "rcirc-cmd-" (symbol-name co= mmand)))
=C2=A0 =C2=A0 =C2=A0 =C2=A0(,@argument &optional process target)
=C2=A0 =C2=A0 =C2=A0,(concat docstring "\n\nNote: If PROCESS or TARGET= are nil, the values given"
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 "\nby `rcirc-buffer-p= rocess' and `rcirc-target' will be used.")
=C2=A0 =C2=A0 =C2=A0,interactive-form
=C2=A0 =C2=A0 =C2=A0(let ((process (or process (rcirc-buffer-process)))
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(target (or target rcirc-target)))=
=C2=A0 =C2=A0 =C2=A0 =C2=A0(ignore target) ; mark `target' variable as = ignorable
=C2=A0 =C2=A0 =C2=A0 =C2=A0,@body)))
#+end_src
(that's the body of the `defun-rcirc-command' macro in rcirc.el).= =C2=A0 Put
point after the starting backquote character, at the position of the
outermost opening paren.=C2=A0 Then (read (current-buffer)) errors with
| Debugger entered--Lisp error: (error "Loading `nil': old-style b= ackquotes detected!")
|=C2=A0 =C2=A0read(#<buffer *scratch*>)
|=C2=A0 =C2=A0[...]
I think raising this error is not justified, as there are no old-style
backquotes there AFAIK.=C2=A0
Als= o, the error message saying loading `nil'
failed is confusing, it took me a while to find out where I tried to
load `nil' (nowhere).
Finally, let me say that `read' raising such errors about old-style
backquotes, may it be justified or not, breaks "el-search" which = relies
heavily on `read' at diverse buffer positions to succeed.