From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Lowell Kirsh Newsgroups: gmane.emacs.help Subject: Re: elisp macros problem Date: Sun, 25 Jul 2004 18:35:18 -0700 Organization: Department of Computer Science, UBC Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Message-ID: References: NNTP-Posting-Host: deer.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-Trace: sea.gmane.org 1090805837 32251 80.91.224.253 (26 Jul 2004 01:37:17 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Mon, 26 Jul 2004 01:37:17 +0000 (UTC) Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Mon Jul 26 03:37:11 2004 Return-path: Original-Received: from lists.gnu.org ([199.232.76.165]) by deer.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 1BouQR-0006Ce-00 for ; Mon, 26 Jul 2004 03:37:11 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.33) id 1BouTR-0002IB-HC for geh-help-gnu-emacs@m.gmane.org; Sun, 25 Jul 2004 21:40:17 -0400 Original-Path: shelby.stanford.edu!newsfeed.stanford.edu!nntp.cs.ubc.ca!cs.ubc.ca!not-for-mail Original-Newsgroups: gnu.emacs.help,comp.lang.lisp Original-Lines: 32 Original-NNTP-Posting-Host: cascade.cs.ubc.ca Original-X-Trace: mughi.cs.ubc.ca 1090805719 2589 142.103.7.7 (26 Jul 2004 01:35:19 GMT) Original-X-Complaints-To: usenet@cs.ubc.ca Original-NNTP-Posting-Date: Mon, 26 Jul 2004 01:35:19 +0000 (UTC) User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040322 X-Accept-Language: en-us, en In-Reply-To: Original-Xref: shelby.stanford.edu gnu.emacs.help:124445 comp.lang.lisp:144193 Original-To: help-gnu-emacs@gnu.org X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: main.gmane.org gmane.emacs.help:19781 X-Report-Spam: http://spam.gmane.org/gmane.emacs.help:19781 Why does this not work: (defmacro my-add-hooks (hooks &rest body) `(dolist (hook ,hooks) (my-add-hook hook ,@body))) ?? Lowell Lowell Kirsh wrote: > I am defining an emacs lisp macro to do: > > (my-add-hook 'lisp > ...) > > which should give: > > (add-hook 'lisp-mode-hook > (lambda () ...)) > > I have: > > (defmacro my-add-hook (hook &rest body) > (let ((tempvar (make-symbol "cat"))) > `(flet ((,tempvar (sym str) > (make-symbol (concat (symbol-name sym) str)))) > (add-hook (cat ,hook "-mode-hook") (lambda () ,@body))))) > > Does anyone know what's wrong with this and why it doesn't work? > > Lowell