From: Daniel Schoepe <daniel.schoepe@googlemail.com>
To: Michal Sojka <sojkam1@fel.cvut.cz>, notmuch@notmuchmail.org
Subject: Re: [PATCH v4 1/2] emacs: User-defined sections in notmuch-hello
Date: Sat, 09 Jul 2011 01:13:43 +0200 [thread overview]
Message-ID: <87mxgo2wns.fsf@gilead.invalid> (raw)
In-Reply-To: <87box48jkc.fsf@steelpick.2x.cz>
[-- Attachment #1: Type: text/plain, Size: 2754 bytes --]
On Sat, 09 Jul 2011 01:00:03 +0200, Michal Sojka <sojkam1@fel.cvut.cz> wrote:
> Yes, this is definitely a good idea. My last comment to the patch is
> that I do not like the use of plists in customization interface. It is
> especially weird in the case of boolean options like hide-if-empty,
> because they actually have three states: disabled, off and on. And this
> make not a lot of sense.
>
> I think that the customization interface is much better arranged when it
> is modified like in the patch below (it is against v3).
>
> [..]
> - :type
> - (let ((opts
> - '((:title (string :tag "Title for this section"))
> - (:make-query (string :tag "Filter for each tag"))
> - (:make-count (string :tag "Different query to generate counts"))
> - (:hide-tags (repeat :tag "Tags that will be hidden" string))
> - (:initially-hidden (boolean :tag "Hide this on startup?"))
> - (:hide-empty-tags (boolean :tag "Hide tags with no matching messages"))
> - (:hide-if-empty (boolean :tag "Hide if empty")))))
> - `(list (const :tag "" notmuch-hello-insert-tags-section)
> - (plist :inline t :options ,opts))))
> + :type '(list (const :tag "" notmuch-hello-insert-tags-section)
> + (string :tag "Title for this section")
> + (string :tag "Filter for each tag")
> + (string :tag "Different filter to generate counts")
> + (repeat :tag "Tags that will be hidden" string)
> + (boolean :tag "Hide this on startup?")
> + (boolean :tag "Hide tags with no matching messages")
> + (boolean :tag "Hide if empty")))
>
> -(defun notmuch-hello-insert-tags-section (&rest options)
> +(defun notmuch-hello-insert-tags-section (title &optional filter filter-count hide-tags initially-hidden
> + hide-empty-searches hide-if-empty)
This would make customization via elisp somewhat more cumbersome though,
because then one has to specify all preceding optional arguments to set
an option near the end of the argument list. Also, it gets harder to
decipher which value belongs to which option.
An alternative would be to force specifying all possible options in the
customization interface while still producing a plist as a
result. Something along these lines should work:
:type '(list (const :tag "" notmuch-hello-insert-tags-section)
(const :tag "" :make-query)
(string :tag "Filter for this tag")
...)
I guess the format instructions for the elements would have to be
tweaked a bit more to avoid excessive spacing due to the many hidden
elements.
Cheers,
Daniel
[-- Attachment #2: Type: application/pgp-signature, Size: 835 bytes --]
next prev parent reply other threads:[~2011-07-08 23:13 UTC|newest]
Thread overview: 57+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <id:"1309379221-5617-1-git-send-email-daniel.schoepe@googlemail.com">
2011-07-07 22:53 ` [PATCH v4 0/2] emacs: User-defined sections in notmuch-hello Daniel Schoepe
2011-07-07 22:53 ` [PATCH v4 1/2] " Daniel Schoepe
2011-07-08 23:00 ` Michal Sojka
2011-07-08 23:13 ` Daniel Schoepe [this message]
2011-07-09 5:35 ` Michal Sojka
2011-07-09 17:07 ` Daniel Schoepe
2011-07-07 22:53 ` [PATCH v4 2/2] emacs: Tests for user-defined sections Daniel Schoepe
2011-07-09 18:03 ` [PATCH v5 0/2] emacs: User-defined sections in notmuch-hello Daniel Schoepe
2011-07-09 18:03 ` [PATCH v5 1/2] " Daniel Schoepe
2011-07-09 18:03 ` [PATCH v5 2/2] emacs: Tests for user-defined sections Daniel Schoepe
2011-07-11 10:32 ` [PATCH] emacs: NEWS entry " Daniel Schoepe
2011-08-14 16:55 ` [PATCH v5 0/2] emacs: User-defined sections in notmuch-hello Daniel Schoepe
2011-08-15 8:40 ` Michal Sojka
2011-10-10 13:39 ` [PATCH v6 " Daniel Schoepe
2011-10-10 13:39 ` [PATCH v6 1/2] " Daniel Schoepe
2011-11-24 13:54 ` David Bremner
2011-11-24 14:01 ` Daniel Schoepe
2011-11-24 15:43 ` Michal Sojka
2011-11-28 4:06 ` Dmitry Kurochkin
2011-11-28 7:57 ` Michal Sojka
2011-12-14 3:11 ` Dmitry Kurochkin
2011-12-14 12:55 ` Dmitry Kurochkin
2012-01-22 0:39 ` Daniel Schoepe
2012-01-22 0:54 ` [PATCH v7 " Daniel Schoepe
2012-01-22 0:54 ` [PATCH v7 2/2] emacs: Tests for user-defined sections Daniel Schoepe
2012-01-23 23:07 ` Dmitry Kurochkin
2012-01-28 21:30 ` Daniel Schoepe
2012-01-28 21:44 ` [PATCH v8 0/2] emacs: User-defined sections in notmuch-hello Daniel Schoepe
2012-01-28 21:44 ` [PATCH v8 1/2] " Daniel Schoepe
2012-01-28 21:44 ` [PATCH v8 2/2] emacs: Tests for user-defined sections Daniel Schoepe
2012-01-28 22:48 ` [PATCH v7 " Dmitry Kurochkin
2012-01-28 22:54 ` Daniel Schoepe
2011-10-10 13:39 ` [PATCH v6 " Daniel Schoepe
2011-10-13 14:09 ` [PATCH] emacs-hello: Do not calculate the count of the messages in Michal Sojka
2012-01-16 11:33 ` David Edmondson
2012-01-16 12:39 ` Daniel Schoepe
2012-01-16 10:59 ` [PATCH v6 0/2] emacs: User-defined sections in notmuch-hello David Edmondson
2012-01-16 11:13 ` Daniel Schoepe
2012-02-17 7:48 ` [PATCH v9 " Dmitry Kurochkin
2012-02-17 7:48 ` [PATCH v9 1/2] " Dmitry Kurochkin
2012-02-17 7:48 ` [PATCH v9 2/2] emacs: Tests for user-defined sections Dmitry Kurochkin
2012-02-17 14:48 ` [PATCH v10 0/2] emacs: User-defined sections in notmuch-hello Dmitry Kurochkin
2012-02-17 14:48 ` [PATCH v10 1/2] " Dmitry Kurochkin
2012-03-01 12:36 ` David Bremner
2012-03-01 14:57 ` Michal Sojka
2012-03-01 15:00 ` Dmitry Kurochkin
2012-03-07 19:53 ` Pieter Praet
2012-03-07 20:04 ` Daniel Schoepe
2012-03-07 20:11 ` David Bremner
2012-02-17 14:48 ` [PATCH v10 2/2] emacs: Tests for user-defined sections Dmitry Kurochkin
2012-02-18 22:10 ` [PATCH v10 0/2] emacs: User-defined sections in notmuch-hello Michal Sojka
2012-02-18 22:12 ` [PATCH] emacs-hello: Do not calculate the count of the messages in hidden sections Michal Sojka
2012-03-01 22:18 ` Mark Walters
2012-03-02 0:34 ` Daniel Schoepe
2012-03-02 0:36 ` Daniel Schoepe
2012-03-05 2:00 ` Dmitry Kurochkin
2012-03-10 14:23 ` David Bremner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://notmuchmail.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87mxgo2wns.fsf@gilead.invalid \
--to=daniel.schoepe@googlemail.com \
--cc=notmuch@notmuchmail.org \
--cc=sojkam1@fel.cvut.cz \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://yhetil.org/notmuch.git/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).