Skip to content

Synchronise tags to flags#148

Open
paretje wants to merge 1 commit into
karelzak:masterfrom
paretje:flags
Open

Synchronise tags to flags#148
paretje wants to merge 1 commit into
karelzak:masterfrom
paretje:flags

Conversation

@paretje

@paretje paretje commented Sep 9, 2016

Copy link
Copy Markdown

Currently, flags are synced to tags, but the reverse isn't true. If you mark a mail as unread "the mutt way", you'll be able to find this mail using tag:unread, however if you remove the tag unread, the flags aren't adjusted, and it's still marked unread in mutt.

This functionality is provided by notmuch, but means that any mail has to be synced to disc when the labels are modified, which conflicts with the way synchronisation to disk works in mutt.

To solve this properly, it's best to just check if the changes performed in the tags involve some flags handled by mutt, and if so, update the header in mutt. When mutt syncs to disc, the flags will be adjusted on disc as well.

Some remarks:

  • The parsing code is currently duplicated. I'll fix this.
  • The labels are currently hard-coded. It seems like notmuch doesn't allow customisation of these labels, but mutt-kz does for unread. Would you prefer if I added and used configuration variables for the other labels?
  • The draft and passed labels are currently ignored, as they aren't handled by mutt.

@flatcap

flatcap commented Sep 21, 2016

Copy link
Copy Markdown
Contributor

hi @paretje
Sorry for not commenting sooner.

You haven't been forgotten. Your patch is wanted.

NotMuch is still being developed, but @karelzak is a busy man.
I'm the maintainer of the NeoMutt project.
I'd like to take your patch, help you develop it and feed it back to mutt-kz when done.

@flatcap

flatcap commented Sep 21, 2016

Copy link
Copy Markdown
Contributor

Pulled into branch: devel/notmuch-sync-flags

@karelzak

karelzak commented Oct 4, 2016

Copy link
Copy Markdown
Owner

Sounds good, but as suggested by @flatcap it would be better to continue in neomutt.

flatcap pushed a commit to neomutt/neomutt that referenced this pull request Oct 6, 2016
Currently, flags are synced to tags, but the reverse isn't true. If you
mark a mail as unread "the mutt way", you'll be able to find this mail
using tag:unread, however if you remove the tag unread, the flags aren't
adjusted, and it's still marked unread in mutt.

This functionality is provided by notmuch, but means that any mail has
to be synced to disc when the labels are modified, which conflicts with
the way synchronisation to disk works in mutt.

To solve this properly, it's best to just check if the changes performed
in the tags involve some flags handled by mutt, and if so, update the
header in mutt. When mutt syncs to disc, the flags will be adjusted on
disc as well.

Some remarks:

- The parsing code is currently duplicated. I'll fix this.
- The labels are currently hard-coded. It seems like notmuch doesn't
  allow customisation of these labels, but mutt-kz does for unread.
- The draft and passed labels are currently ignored, as they aren't
  handled by mutt.

Closes: karelzak/mutt-kz#148
@flatcap

flatcap commented Oct 6, 2016

Copy link
Copy Markdown
Contributor

Thanks, merged into NeoMutt.

flatcap pushed a commit to neomutt/neomutt that referenced this pull request Oct 6, 2016
Currently, flags are synced to tags, but the reverse isn't true. If you
mark a mail as unread "the mutt way", you'll be able to find this mail
using tag:unread, however if you remove the tag unread, the flags aren't
adjusted, and it's still marked unread in mutt.

This functionality is provided by notmuch, but means that any mail has
to be synced to disc when the labels are modified, which conflicts with
the way synchronisation to disk works in mutt.

To solve this properly, it's best to just check if the changes performed
in the tags involve some flags handled by mutt, and if so, update the
header in mutt. When mutt syncs to disc, the flags will be adjusted on
disc as well.

Some remarks:

- The parsing code is currently duplicated. I'll fix this.
- The labels are currently hard-coded. It seems like notmuch doesn't
  allow customisation of these labels, but mutt-kz does for unread.
- The draft and passed labels are currently ignored, as they aren't
  handled by mutt.

Closes: karelzak/mutt-kz#148
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants