From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Cecil Westerhof Newsgroups: gmane.emacs.help Subject: Re: Need help with macros Date: Wed, 06 Jan 2010 20:25:13 +0100 Organization: Decebal Computing Message-ID: <871vi3ghnq.fsf@Traian.DecebalComp> References: <874omzi6n9.fsf@Traian.DecebalComp> <87r5q3rrcs.fsf@hubble.informatimago.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1262807054 19002 80.91.229.12 (6 Jan 2010 19:44:14 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 6 Jan 2010 19:44:14 +0000 (UTC) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Wed Jan 06 20:44:07 2010 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1NSbnY-0003aL-DA for geh-help-gnu-emacs@m.gmane.org; Wed, 06 Jan 2010 20:44:04 +0100 Original-Received: from localhost ([127.0.0.1]:45534 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NSbnY-0002I1-TJ for geh-help-gnu-emacs@m.gmane.org; Wed, 06 Jan 2010 14:44:04 -0500 Original-Path: news.stanford.edu!usenet.stanford.edu!news.tele.dk!news.tele.dk!small.news.tele.dk!newsfeed.xs4all.nl!newsfeed6.news.xs4all.nl!xs4all!post.news.xs4all.nl!not-for-mail Original-Newsgroups: gnu.emacs.help X-Homepage: http://www.decebal.nl/ User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.3 (gnu/linux) Cancel-Lock: sha1:+qbddZZ1/pVWkSiyCdBr4yUY9AM= Original-Lines: 51 Original-NNTP-Posting-Host: 84.53.123.169 Original-X-Trace: 1262805914 news.xs4all.nl 22935 decebal/[::ffff:84.53.123.169]:11449 Original-X-Complaints-To: abuse@xs4all.nl Original-Xref: news.stanford.edu gnu.emacs.help:176003 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: , Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:71090 Archived-At: pjb@informatimago.com (Pascal J. Bourguignon) writes: >> I am trying to make some useful functionality for Gnus. I think that I >> should use a macro for that. I made the following macro (the two message >> statements are just for debugging): >> (defmacro gnus-group-jump-bind (key-binding group-to-jump-to) >> (message "#%s#%s#" key-binding (type-of key-binding)) > > I would avoid using the character # in lisp output, since it is > meaningful (readable). > > (let ((print-circle t)) > (let* ((a "hello") > (b (list a a))) > (print b))) > prints: > (#1="hello" #1#) > > (read-from-string "(#1=\"hello\" #1#)") > --> ((#1="hello" #1#) . 16) I do not really understand what happens here -but I am a newbie with lisp, so that is not that strange-, but I will not use the '#' anymore. > In a preceding message, I used "%S" instead. You should try it! I find the '#' termination more clear, but I can get used to this. Better safe as sorry. >> (message "#%s#%s#" group-to-jump-to (type-of group-to-jump-to)) >> (define-key gnus-group-mode-map key-binding >> (lambda () >> (interactive) >> (gnus-group-jump-to-group group-to-jump-to)))) > > gnus-group-jump-bind has no need to be a macro. As a macro it is > wrong. Use defun! I could not get the defun working, that is why I thought it had to be done with a macro. The macro first also did not work. The macro works now. I'll rewrite the macro to a defun. I do have a lot of questions. I am glad that you and others are so helpful. ;-) -- Cecil Westerhof Senior Software Engineer LinkedIn: http://www.linkedin.com/in/cecilwesterhof