Return-Path: X-Original-To: notmuch@notmuchmail.org Delivered-To: notmuch@notmuchmail.org Received: from localhost (localhost [127.0.0.1]) by olra.theworths.org (Postfix) with ESMTP id 317C2431FBC for ; Wed, 14 Nov 2012 04:41:55 -0800 (PST) X-Virus-Scanned: Debian amavisd-new at olra.theworths.org X-Spam-Flag: NO X-Spam-Score: -1.098 X-Spam-Level: X-Spam-Status: No, score=-1.098 tagged_above=-999 required=5 tests=[DKIM_ADSP_CUSTOM_MED=0.001, FREEMAIL_FROM=0.001, NML_ADSP_CUSTOM_MED=1.2, RCVD_IN_DNSWL_MED=-2.3] autolearn=disabled Received: from olra.theworths.org ([127.0.0.1]) by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id xs4c041P7VDE for ; Wed, 14 Nov 2012 04:41:54 -0800 (PST) Received: from mail2.qmul.ac.uk (mail2.qmul.ac.uk [138.37.6.6]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by olra.theworths.org (Postfix) with ESMTPS id 8D058431FAF for ; Wed, 14 Nov 2012 04:41:54 -0800 (PST) Received: from smtp.qmul.ac.uk ([138.37.6.40]) by mail2.qmul.ac.uk with esmtp (Exim 4.71) (envelope-from ) id 1TYcHq-0004ph-3Y; Wed, 14 Nov 2012 12:41:46 +0000 Received: from 93-97-24-31.zone5.bethere.co.uk ([93.97.24.31] helo=localhost) by smtp.qmul.ac.uk with esmtpsa (TLSv1:AES128-SHA:128) (Exim 4.69) (envelope-from ) id 1TYcHp-00054o-Or; Wed, 14 Nov 2012 12:41:45 +0000 From: Mark Walters To: Damien Cassou , notmuch mailing list Subject: Re: [PATCH v2] emacs: display tags in notmuch-show with links In-Reply-To: <1352565719-12397-1-git-send-email-damien.cassou@gmail.com> References: <1352565719-12397-1-git-send-email-damien.cassou@gmail.com> User-Agent: Notmuch/0.14+81~g9730584 (http://notmuchmail.org) Emacs/23.4.1 (i486-pc-linux-gnu) Date: Wed, 14 Nov 2012 12:41:44 +0000 Message-ID: <878va4xson.fsf@qmul.ac.uk> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Sender-Host-Address: 93.97.24.31 X-QM-SPAM-Info: Sender has good ham record. :) X-QM-Body-MD5: 6a3e55d12f903cfd16324f16569f6d36 (of first 20000 bytes) X-SpamAssassin-Score: -1.8 X-SpamAssassin-SpamBar: - X-SpamAssassin-Report: The QM spam filters have analysed this message to determine if it is spam. We require at least 5.0 points to mark a message as spam. This message scored -1.8 points. Summary of the scoring: * -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at http://www.dnswl.org/, * medium trust * [138.37.6.40 listed in list.dnswl.org] * 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider * (markwalters1009[at]gmail.com) * 0.5 AWL AWL: From: address is in the auto white-list X-QM-Scan-Virus: ClamAV says the message is clean X-BeenThere: notmuch@notmuchmail.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: "Use and development of the notmuch mail system." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 14 Nov 2012 12:41:55 -0000 Hi I have read this patch and am broadly happy with it. In particular I do not think I have any "design concerns" with this version: I think picking the tags from the visible messages is fine and this version avoids the query and the thread-id stuff. On the loading library issues I defer to Adam and Tomi. I do have a couple of comments on the current version though. First the patch is very big. I would prefer it split into several pieces something like: 1) Add tags to the headerline but not clickable 2) Add the header-button library if appropriate 3) Add notmuch-tagger and change headerline to buttonize the tags 4) Add the tests. The first would be small and uncontroversial I think, for the second it would not really be code review just "do we want to do it this way" as is being discussed in the other thread. The third obviously has the meat of the series and 4 is relatively innocuous. Possibly you could also split the add clickable buttons to tags in the buffer and add clickable buttons to headerline tags as two separate steps. One advantage of the split is that it would be easy to see who had reviewed which bits. For example I have not read the header-button-library bit or the tests but have looked at the rest. My other comment is on your comments in notmuch-tagger > +(defun notmuch-tagger-present-tags (tags &optional headerline) > + "Return a property list which nicely presents all TAGS. > + > +If HEADERLINE is non-nil the returned list will be ready for > +inclusion in the buffer's header-line. HEADERLINE must be nil in > +all other cases." I find it odd to say what it returns if HEADERLINE is non-nil and then say otherwise HEADERLINE must be nil. Could you say what it returns in the nil case? Something along them lines of "if HEADERLINE is non-nil the returned will be ready for inclusion in the buffer's header-line (i.e., will use header-buttons if available). Otherwise it returns a list?? ready for inclusion in a buffer." Best wishes Mark