unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
From: Ioan-Adrian Ratiu <adi@adirat.com>
To: Jani Nikula <jani@nikula.org>,
	Mark Walters <markwalters1009@gmail.com>,
	notmuch@notmuchmail.org
Subject: Re: [PATCH] emacs: add tag jump menu
Date: Sun, 18 Sep 2016 19:45:49 +0300	[thread overview]
Message-ID: <87oa3lyx4y.fsf@adiPC.i-did-not-set--mail-host-address--so-tickle-me> (raw)
In-Reply-To: <87a8f5uruv.fsf@nikula.org>

On Sun, 18 Sep 2016, Jani Nikula <jani@nikula.org> wrote:
> On Sun, 18 Sep 2016, Ioan-Adrian Ratiu <adi@adirat.com> wrote:
>> On Sun, 18 Sep 2016, Mark Walters <markwalters1009@gmail.com> wrote:
>>> On Sun, 18 Sep 2016, Ioan-Adrian Ratiu <adi@adirat.com> wrote:
>>>> Hi
>>>>
>>>> I have implemented something similar in my tree and I really like the
>>>> idea. I have one issue though.
>>>>
>>>> On Sat, 17 Sep 2016, Mark Walters <markwalters1009@gmail.com> wrote:
>>>>> Add a "jump" style menu for doing tagging operations.
>>>>> ---
>>>>>
>>>>> Jani suggested something like this on irc today. This is a first cut
>>>>> to see if people like it. By default the tagging jump menu is bound to
>>>>> k (which works in search/show/tree mode), and has the following options
>>>>>
>>>>> a (Archive) -inbox -unread
>>>>> u (Mark Read) -unread
>>>>> d (Delete)  +deleted
>>>>>
>>>>> If you do ctrl-u k the it will do the reverse operation.
>>>>
>>>> I know C-u is default emacs behaviour but I find very cumbersone to do
>>>> C-u for unapplying the tag. What I do and want is to simply apply the
>>>> tag when pressing "d" then unapply it when pressing "d" again if the
>>>> mail/thread already contains the deleted tag (basically it's a toggle).
>>>
>>> I agree that C-u is a little cumbersome -- I think I would be happy for
>>> a toggle for single messages (with a single tag change), but for
>>> multiple messages like a thread I think it would be very unclear what it
>>> was doing.
>>
>> My workflow with the kind of code shown above is as follows:
>>
>> If in notmuch-search then pressing 'd' "deletes" everything selected,
>> including multiple messages in a region and if a thread was selected in
>> that region then the entire thread is deleted.
>
> You are not addressing the toggle case where some of the messages in
> those threads have the tag, and some do not. How should notmuch know
> whether you want to add or remove the deleted tag?

In my usecase when I toggle a tag to a thread in notmuch-search, it is
applied to all mails, obviously, and if I want to do per-mail tagging I
go into notmuch-show. To answer your question I'll give an example:

Suppose I have just some subset of a thread's mails tagged "+inbox" and
I toggle pressing "i", then all the mails in that thread are marked
"+inbox" and if I toggle again all are "-inbox". So removing a tag for a
subset of the thread's mails is just a matter of toggling twice.

I can always go in notmuch-show and do per-email tagging using toggles,
say after I removed the "inbox" tag in the example above by toggling
twice, I open the thread in notmuch-show and press "i" to toggle the tag
back on any specific email.

I'm using this for some time and it works really well :)

>
>> IMO this is the simplest and the clearest workflow.
>
> While working on Notmuch, one of the main lessons I've learned is that
> *everyone* has their own, personal email workflow. We need to try to
> give people discoverable and intuitive *mechanisms* on dealing with
> email, and let people build their own workflows that suit them.

Yes, I agree that it's better to provide mechanism than policy because
workflows are so different. Tag toggling is just another mechanism, it
can be customized, for example, when you toggle on a thread of which
some mails already are tagged, should it add or remove that tag? This
can be configured through a variable.

>
> (That said, I always try to encourage people to rethink their workflows
> when switching to Notmuch. But it's still *their* workflow.)
>
>
> BR,
> Jani.

  reply	other threads:[~2016-09-18 16:45 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-09-17 21:09 [PATCH] emacs: add tag jump menu Mark Walters
2016-09-18  7:00 ` Ioan-Adrian Ratiu
2016-09-18  9:08   ` Mark Walters
2016-09-18 12:13     ` David Bremner
2016-09-18 15:43       ` Jani Nikula
2016-09-18 14:30     ` Ioan-Adrian Ratiu
2016-09-18 15:53       ` Jani Nikula
2016-09-18 16:45         ` Ioan-Adrian Ratiu [this message]
2016-09-20 17:28   ` Amadeusz Żołnowski
2016-09-18 13:31 ` David Bremner
2016-09-20  3:04   ` Matt Armstrong
2016-09-18 14:06 ` Amadeusz Żołnowski

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=87oa3lyx4y.fsf@adiPC.i-did-not-set--mail-host-address--so-tickle-me \
    --to=adi@adirat.com \
    --cc=jani@nikula.org \
    --cc=markwalters1009@gmail.com \
    --cc=notmuch@notmuchmail.org \
    /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).