unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
* [ANNOUNCE] mutt with notmuch support
@ 2012-01-03 12:39 Karel Zak
  2012-01-03 14:46 ` Tim Gray
                   ` (4 more replies)
  0 siblings, 5 replies; 13+ messages in thread
From: Karel Zak @ 2012-01-03 12:39 UTC (permalink / raw)
  To: notmuch


This is not another curses front-end for notmuch, this is mutt :-)

I have forked mutt to seriously integrate notmuch to this excellent e-mail
client. I don't want to use symlinks or any other hacks to emulate virtual
folders. My wish is mutt linked with libnotmuch.

Features:

 * in .muttrc defined virtual folders by notmuch queries

 * on-the-fly generate virtual folder from queries

 * add / remove / modify labels (notmuch tags)

 * support for INBOX --> archive use case

 * support <tag-prefix> (key ';') mutt functionality to work with set of messages

 * all is implemented by regular mutt commands, so all is usable in user
   defined macros


More information:

 https://github.com/karelzak/mutt-kz/wiki

 https://raw.github.com/karelzak/mutt-kz/master/README.notmuch


TODO:

 * add <entire-thread> command to display all e-mails that belongs to the same
   thread as the current message. This command will be useful when you have a 
   new email in your INBOX and you want to see the rest of the archived thread.

-- 
 Karel Zak  <kzak@redhat.com>
 http://karelzak.blogspot.com

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [ANNOUNCE] mutt with notmuch support
  2012-01-03 12:39 [ANNOUNCE] mutt with notmuch support Karel Zak
@ 2012-01-03 14:46 ` Tim Gray
  2012-01-03 18:45 ` Darren McGuicken
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 13+ messages in thread
From: Tim Gray @ 2012-01-03 14:46 UTC (permalink / raw)
  To: notmuch

On Jan 03, 2012 at 01:39 PM +0100, Karel Zak wrote:
>
>This is not another curses front-end for notmuch, this is mutt :-)
>
>I have forked mutt to seriously integrate notmuch to this excellent e-mail
>client. I don't want to use symlinks or any other hacks to emulate virtual
>folders. My wish is mutt linked with libnotmuch.

Fantastic.  I was hoping someone would get around to doing this.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [ANNOUNCE] mutt with notmuch support
  2012-01-03 12:39 [ANNOUNCE] mutt with notmuch support Karel Zak
  2012-01-03 14:46 ` Tim Gray
@ 2012-01-03 18:45 ` Darren McGuicken
  2012-01-03 19:59   ` Karel Zak
  2012-01-09 23:26   ` Jeremy Nickurak
  2012-01-03 19:06 ` Xavier Maillard
                   ` (2 subsequent siblings)
  4 siblings, 2 replies; 13+ messages in thread
From: Darren McGuicken @ 2012-01-03 18:45 UTC (permalink / raw)
  To: Karel Zak, notmuch

On Tue, Jan 03, 2012 at 01:39:38PM +0100, Karel Zak wrote:
> This is not another curses front-end for notmuch, this is mutt :-)

Outstanding!  Assuming this mail makes it to the list, I can confirm that it works well for me!  Although I will have to find and dust off an old .muttrc...

I had to tweak your use of notmuch_database_find_message (I'm using 0.11_rc2) but otherwise it compiles fine.  Thanks so much for this.  Is the intent that this remains a fork, or will it find its way back into upstream?

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [ANNOUNCE] mutt with notmuch support
  2012-01-03 12:39 [ANNOUNCE] mutt with notmuch support Karel Zak
  2012-01-03 14:46 ` Tim Gray
  2012-01-03 18:45 ` Darren McGuicken
@ 2012-01-03 19:06 ` Xavier Maillard
  2012-01-03 23:31 ` Jan Pobrislo
  2012-02-27  8:09 ` Karel Zak
  4 siblings, 0 replies; 13+ messages in thread
From: Xavier Maillard @ 2012-01-03 19:06 UTC (permalink / raw)
  To: Karel Zak, notmuch


On Tue, 3 Jan 2012 13:39:38 +0100, Karel Zak <kzak@redhat.com> wrote:
> 
> This is not another curses front-end for notmuch, this is mutt :-)
> 
> I have forked mutt to seriously integrate notmuch to this excellent e-mail
> client. I don't want to use symlinks or any other hacks to emulate virtual
> folders. My wish is mutt linked with libnotmuch.

Not sure I will ever use it but this is really an awesome news ! Good
job.

/Xavier

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [ANNOUNCE] mutt with notmuch support
  2012-01-03 18:45 ` Darren McGuicken
@ 2012-01-03 19:59   ` Karel Zak
  2012-01-03 21:17     ` Jameson Graef Rollins
                       ` (2 more replies)
  2012-01-09 23:26   ` Jeremy Nickurak
  1 sibling, 3 replies; 13+ messages in thread
From: Karel Zak @ 2012-01-03 19:59 UTC (permalink / raw)
  To: Darren McGuicken; +Cc: notmuch

On Tue, Jan 03, 2012 at 06:45:46PM +0000, Darren McGuicken wrote:
> On Tue, Jan 03, 2012 at 01:39:38PM +0100, Karel Zak wrote:
> > This is not another curses front-end for notmuch, this is mutt :-)
> 
> Outstanding!  Assuming this mail makes it to the list, I can confirm
> that it works well for me!  Although I will have to find and dust
> off an old .muttrc...

You can create notmuch specific rc file and use it by

    mutt -F ~/.muttrc-notmuch

> I had to tweak your use of notmuch_database_find_message (I'm using
> 0.11_rc2) but otherwise it compiles fine.

Unfortunately, the latest package for Fedora is notmuch-0.5-4.fc15 ;-(

But I'm ready to accept patches to make it compatible with other
distros and the latest upstream.

> Thanks so much for this.
> Is the intent that this remains a fork, or will it find its way back
> into upstream?

Good question. It would be nice to merge the change into mutt upstream, 
but from my point of view the mutt upstream is not too active. The whole 
project seems in maintenance mode, I don't see any really active 
*development* there. We will see... it's probably too early to answer
the question.

    Karel

-- 
 Karel Zak  <kzak@redhat.com>
 http://karelzak.blogspot.com

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [ANNOUNCE] mutt with notmuch support
  2012-01-03 19:59   ` Karel Zak
@ 2012-01-03 21:17     ` Jameson Graef Rollins
  2012-01-03 22:18       ` Darren McGuicken
  2012-01-03 22:11     ` Darren McGuicken
  2012-01-04 18:07     ` Jameson Graef Rollins
  2 siblings, 1 reply; 13+ messages in thread
From: Jameson Graef Rollins @ 2012-01-03 21:17 UTC (permalink / raw)
  To: Karel Zak, Darren McGuicken; +Cc: notmuch

[-- Attachment #1: Type: text/plain, Size: 379 bytes --]

On Tue, 3 Jan 2012 20:59:51 +0100, Karel Zak <kzak@redhat.com> wrote:
> Unfortunately, the latest package for Fedora is notmuch-0.5-4.fc15 ;-(

Yikes that's old (0.11 is being released eminently).  There have been
quite a few important changes since then.  Is there no one actively
maintaining the fedora package?  Obviously there's not.  Anyone willing
to take this on?

jamie.

[-- Attachment #2: Type: application/pgp-signature, Size: 835 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [ANNOUNCE] mutt with notmuch support
  2012-01-03 19:59   ` Karel Zak
  2012-01-03 21:17     ` Jameson Graef Rollins
@ 2012-01-03 22:11     ` Darren McGuicken
  2012-01-04 18:07     ` Jameson Graef Rollins
  2 siblings, 0 replies; 13+ messages in thread
From: Darren McGuicken @ 2012-01-03 22:11 UTC (permalink / raw)
  To: Karel Zak; +Cc: notmuch

[-- Attachment #1: Type: text/plain, Size: 389 bytes --]

On Tue, 3 Jan 2012 20:59:51 +0100, Karel Zak <kzak@redhat.com> wrote:
> Unfortunately, the latest package for Fedora is notmuch-0.5-4.fc15 ;-(

Take a look at id:"8762i8hrb9.fsf@bookbinder.fernseed.info".  There is a
gmime patch which still applies cleanly to everything up to the current
git head and which will let you build your own Fedora package.  I'm
using it myself with no issues.

[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [ANNOUNCE] mutt with notmuch support
  2012-01-03 21:17     ` Jameson Graef Rollins
@ 2012-01-03 22:18       ` Darren McGuicken
  0 siblings, 0 replies; 13+ messages in thread
From: Darren McGuicken @ 2012-01-03 22:18 UTC (permalink / raw)
  To: Jameson Graef Rollins, Karel Zak; +Cc: notmuch

[-- Attachment #1: Type: text/plain, Size: 789 bytes --]

On Tue, 03 Jan 2012 13:17:04 -0800, Jameson Graef Rollins <jrollins@finestructure.net> wrote:
> On Tue, 3 Jan 2012 20:59:51 +0100, Karel Zak <kzak@redhat.com> wrote:
> > Unfortunately, the latest package for Fedora is notmuch-0.5-4.fc15 ;-(
> 
> Yikes that's old (0.11 is being released eminently).  There have been
> quite a few important changes since then.  Is there no one actively
> maintaining the fedora package?  Obviously there's not.  Anyone willing
> to take this on?

The problem is probably the use of gmime 2.5+ in Fedora.  We don't
currently seem to have a patchset which allows compilation across both
gmime <=2.4 and >=2.5, although we can do either/or.

There's also a build of 0.9 in koji:

http://koji.fedoraproject.org/koji/packageinfo?packageID=11257

[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [ANNOUNCE] mutt with notmuch support
  2012-01-03 12:39 [ANNOUNCE] mutt with notmuch support Karel Zak
                   ` (2 preceding siblings ...)
  2012-01-03 19:06 ` Xavier Maillard
@ 2012-01-03 23:31 ` Jan Pobrislo
  2012-02-27  8:09 ` Karel Zak
  4 siblings, 0 replies; 13+ messages in thread
From: Jan Pobrislo @ 2012-01-03 23:31 UTC (permalink / raw)
  To: notmuch

On Tue, 3 Jan 2012 13:39:38 +0100
Karel Zak <kzak@redhat.com> wrote:

> 
> This is not another curses front-end for notmuch, this is mutt :-)
> 
> I have forked mutt to seriously integrate notmuch to this excellent
> e-mail client. I don't want to use symlinks or any other hacks to
> emulate virtual folders. My wish is mutt linked with libnotmuch.

Good to hear!

First, I'll shamelessly plug in my set of scripts that do the dirty work by
using symlinked maildirs to interact with any maildir capable mail reader.
It's mainly intended to be interface from shell, calling out to mutt or any
mail reader only when necessary, so it's somewhat reverse paradigm to yours.

view @ http://webprojekty.cz/ccx/loggerhead/zmuch/files
bzr branch http://webprojekty.cz/ccx/bzr/zmuch

Sadly I had to take hiatus mid-rewrite of it, but several interesting points
came up when I was talking about it with cworth and others.

We agreed that we wanted to standardize several features currently present in
emacs UI, so we can share configuration among several implementations. Most
important of these were:

saved searches
--------------

This is the feature I started writing my scripts for. I wanted to refer by a
simple shorthand to complex queries. I know emacs UI has some notion of
remembered queries, but I haven't really bothered trying it out. I assume you
will want to represent these as separate mailboxes, maybe shown using the
sidebar patch, so one has quick overview what's new in which ML.

The way I do this is that command:

$ zmuch search :foss and not :notmuch

will expand to:

$ notmuch search ( to:lists.xmms.se or ( to:cairo-announce@cairographics.org
    or to:cairo@cairographics.org ) or ( to:notmuch@notmuchmail.org or
	to:notmuch-request@notmuchmail.org ) ) and not (
	to:notmuch@notmuchmail.org or to:notmuch-request@notmuchmail.org )

Which would be bit too much to type by hand, even for so few lists.
This would be using .notmuch-config with something like this:

[zmuch_searches]
xmms2=to:lists.xmms.se
cairo=to:cairo-announce@cairographics.org or to:cairo@cairographics.org
foss=:xmms2 or :cairo or :notmuch

Subset of this issue is the question: How to display overview of such saved
queries in a sensible manner? Mutt probably can't go beyond unread/total
number of messages for each query and that's actually what I have currently
implemented. Given the config:

[interesting]
query=is:unread and not ( is:spam or is:mute )

[zmuch_show]
selected=twisted;notmuch;gentoo-cs;cajovna;system;inbox

it would show number of interesting/total messages for each of the listed
saved query. Much nicer generalisation was then discussed on IRC, where you
could use regular saved search instead of separate [interesting] entry,
allowing you to have several such queries, eg. for displaying
unread/flagged/muted/total or anything your heart desires.

way to call notmuch
-------------------

This might be feature you'll be probably missing due to using libnotmuch
directly instead of calling out executable as emacs UI does, but I find it
really useful to be able to layer functionality unix-style. Not only you can
run remote notmuch via ssh, but also my saved search implementation does this
by expanding arguments passed to the notmuch executable and as such is usable
from any UI that has configurable executable to call instead of "notmuch".

colors
------

Again dunno how much this applies to mutt, as it has it's own coloring
paradigm, but I find it neat to be able to do something like this globally:

[tag_colors]
flagged=%F{red}
mute=%B%F{black}
spam=%F{magenta}
unread=%F{cyan}
replied=%F{yellow}
sent=%F{green}
attachment=%B

This is syntax that zsh uses for it's print/prompt formatting and is obviously
ANSI VT specific (%B is for bold/standout). GUI lovers will probably want #RGB
scheme too.


HTH bring up some good ideas and discussion.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [ANNOUNCE] mutt with notmuch support
  2012-01-03 19:59   ` Karel Zak
  2012-01-03 21:17     ` Jameson Graef Rollins
  2012-01-03 22:11     ` Darren McGuicken
@ 2012-01-04 18:07     ` Jameson Graef Rollins
  2012-01-05 14:44       ` Tim Gray
  2 siblings, 1 reply; 13+ messages in thread
From: Jameson Graef Rollins @ 2012-01-04 18:07 UTC (permalink / raw)
  To: Karel Zak, Darren McGuicken; +Cc: notmuch

[-- Attachment #1: Type: text/plain, Size: 882 bytes --]

On Tue, 3 Jan 2012 20:59:51 +0100, Karel Zak <kzak@redhat.com> wrote:
> > I had to tweak your use of notmuch_database_find_message (I'm using
> > 0.11_rc2) but otherwise it compiles fine.
> 
> Unfortunately, the latest package for Fedora is notmuch-0.5-4.fc15 ;-(
> 
> But I'm ready to accept patches to make it compatible with other
> distros and the latest upstream.

Hey, Karel.  I know there are a lot of people out here that are
interested in playing with mutt-kz.  However, notmuch 0.5 is really old
and is unfortunately an API version ago.  Until we can get notmuch
working with gmime 2.6, and get a much-needed update to the Fedora
package, would you mind developing against a compiled-from-source
version of notmuch from the latest release?  I think you could get a lot
of users in short order if mutt-kz could work on systems other than
Fedora.

jamie.

[-- Attachment #2: Type: application/pgp-signature, Size: 835 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [ANNOUNCE] mutt with notmuch support
  2012-01-04 18:07     ` Jameson Graef Rollins
@ 2012-01-05 14:44       ` Tim Gray
  0 siblings, 0 replies; 13+ messages in thread
From: Tim Gray @ 2012-01-05 14:44 UTC (permalink / raw)
  To: notmuch

[-- Attachment #1: Type: text/plain, Size: 728 bytes --]

On Jan 04, 2012 at 10:07 AM -0800, Jameson Graef Rollins wrote:
>Hey, Karel.  I know there are a lot of people out here that are
>interested in playing with mutt-kz.  However, notmuch 0.5 is really old
>and is unfortunately an API version ago.  Until we can get notmuch
>working with gmime 2.6, and get a much-needed update to the Fedora
>package, would you mind developing against a compiled-from-source
>version of notmuch from the latest release?  I think you could get a lot
>of users in short order if mutt-kz could work on systems other than
>Fedora.

Seconded.  Also, while mutt might be in maintenance mode, something like 
this might bump it into active mode if the mutt developer community was 
involved.

[-- Attachment #2: Type: application/pgp-signature, Size: 881 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [ANNOUNCE] mutt with notmuch support
  2012-01-03 18:45 ` Darren McGuicken
  2012-01-03 19:59   ` Karel Zak
@ 2012-01-09 23:26   ` Jeremy Nickurak
  1 sibling, 0 replies; 13+ messages in thread
From: Jeremy Nickurak @ 2012-01-09 23:26 UTC (permalink / raw)
  To: notmuch

FWIW, here's the patch I ended up using to play with this:

diff --git a/mutt_notmuch.c b/mutt_notmuch.c
index 2f21407..a07b1ba 100644
--- a/mutt_notmuch.c
+++ b/mutt_notmuch.c
@@ -636,11 +636,15 @@ char *nm_uri_from_query(CONTEXT *ctx, char *buf,
size_t bufsz)
 static notmuch_message_t *get_nm_message(notmuch_database_t *db, HEADER *hdr)
 {
        notmuch_message_t *msg;
+       notmuch_status_t r;
+
        char *id = nm_header_get_id(hdr);

        dprint(2, (debugfile, "nm: find message (%s)\n", id));

-       msg = id && db ? notmuch_database_find_message(db, id) : NULL;
+       if (id && db) {
+               r = notmuch_database_find_message(db, id, &msg);
+       }

        FREE(&id);
        return msg;

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* Re: [ANNOUNCE] mutt with notmuch support
  2012-01-03 12:39 [ANNOUNCE] mutt with notmuch support Karel Zak
                   ` (3 preceding siblings ...)
  2012-01-03 23:31 ` Jan Pobrislo
@ 2012-02-27  8:09 ` Karel Zak
  4 siblings, 0 replies; 13+ messages in thread
From: Karel Zak @ 2012-02-27  8:09 UTC (permalink / raw)
  To: notmuch; +Cc: Víctor Manuel Jáquez Leal

On Tue, Jan 03, 2012 at 01:39:38PM +0100, Karel Zak wrote:
> This is not another curses front-end for notmuch, this is mutt :-)
....
> More information:
> 
>  https://github.com/karelzak/mutt-kz/wiki
>
>  https://raw.github.com/karelzak/mutt-kz/master/README.notmuch

We have mailing list now:

   https://admin.fedoraproject.org/mailman/listinfo/mutt-kz

 Karel

-- 
 Karel Zak  <kzak@redhat.com>
 http://karelzak.blogspot.com

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2012-02-27  8:10 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-01-03 12:39 [ANNOUNCE] mutt with notmuch support Karel Zak
2012-01-03 14:46 ` Tim Gray
2012-01-03 18:45 ` Darren McGuicken
2012-01-03 19:59   ` Karel Zak
2012-01-03 21:17     ` Jameson Graef Rollins
2012-01-03 22:18       ` Darren McGuicken
2012-01-03 22:11     ` Darren McGuicken
2012-01-04 18:07     ` Jameson Graef Rollins
2012-01-05 14:44       ` Tim Gray
2012-01-09 23:26   ` Jeremy Nickurak
2012-01-03 19:06 ` Xavier Maillard
2012-01-03 23:31 ` Jan Pobrislo
2012-02-27  8:09 ` Karel Zak

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).