unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
* Unread handling
@ 2019-11-10 23:16 Johan Parin
  2019-11-11  8:14 ` David Edmondson
  2019-11-11 15:57 ` Teemu Likonen
  0 siblings, 2 replies; 12+ messages in thread
From: Johan Parin @ 2019-11-10 23:16 UTC (permalink / raw)
  To: notmuch


I'm probably doing something wrong but I find myself frustrated with the
handling of unread in the emacs-mua.

In notmuch-search I found the default bold face for unread of
notmuch-search-unread-face not enough to make them stand out so I tried
something like

  (setq notmuch-search-line-faces
      '(("unread" . '(:foreground "SkyeBlue"))

which ought to work according to the doc, but did not work. Fortunately
however it works to define a new face with defface and use that.

  (setq notmuch-search-line-faces
        '(("unread" . my/notmuch-unread-face)))

So that problem solved.

My real frustration lies in the thread view. Typically threads will be
partially read and I want to read only unread messages.

I find the show view confusing because I don't clearly see the message
boundaries. Also I always need to start with C-u M-RET to get an
overview of the thread. In this view the unread stand out a bit due to
the colorization of the unread tag, which is typically visible. I still
would like to be able to colorize the entire line or the author here,
for unread. Is it possible?

I'm trying instead to use the tree view, this seems to me the more
natural way to view threads. So I immediately do `Z' whenever I enter a
thread. I would like to have the option to enter tree view automatically
for a thread from the search buffer. Is it possible?

In tree view however, again I would like to colorize the unread
messages. Haven't found a way to do this and reading notmuch-tree.el it
seems it's not possible. Is there a way? Since I like to keep my window
to 80 chars the tag display is outside the visible area and I find
myself doing C-e to find the unread tags. This is very inconvenient.

Also I would like to navigate to the next unread message, and would
prefer the `n' binding to do that instead of go to next message. Haven't
found a binding for that.

Finally when entering the tree view I would like the first unread
message to automatically be shown.

I guess the above can be summarized as, I would like to have the option
to have a gnus-ish way of viewing threads.

Again, I'm probably doing something wrong and / or am missing some
possibilities here, it would be very interesting to hear others work
flow for thread reading.


/Johan

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

* Re: Unread handling
  2019-11-10 23:16 Unread handling Johan Parin
@ 2019-11-11  8:14 ` David Edmondson
  2019-11-12 13:17   ` William Casarin
  2019-11-11 15:57 ` Teemu Likonen
  1 sibling, 1 reply; 12+ messages in thread
From: David Edmondson @ 2019-11-11  8:14 UTC (permalink / raw)
  To: Johan Parin, notmuch

On Monday, 2019-11-11 at 00:16:17 +01, Johan Parin wrote: 

> I'm probably doing something wrong but I find myself frustrated 
> with the handling of unread in the emacs-mua. 
> 
> In notmuch-search I found the default bold face for unread of 
> notmuch-search-unread-face not enough to make them stand out so 
> I tried something like 
> 
>   (setq notmuch-search-line-faces 
>       '(("unread" . '(:foreground "SkyeBlue")) 

   (setq notmuch-search-line-faces 
       '(("unread" :foreground "SkyeBlue")))

(And I don't have a “SkyeBlue”, just “SkyBlue”.) 

> which ought to work according to the doc, but did not 
> work. Fortunately however it works to define a new face with 
> defface and use that. 
> 
>   (setq notmuch-search-line-faces 
>         '(("unread" . my/notmuch-unread-face))) 
> 
> So that problem solved. 
> 
> My real frustration lies in the thread view. Typically threads 
> will be partially read and I want to read only unread messages. 
> 
> I find the show view confusing because I don't clearly see the 
> message boundaries. Also I always need to start with C-u M-RET 
> to get an overview of the thread. In this view the unread stand 
> out a bit due to the colorization of the unread tag, which is 
> typically visible. I still would like to be able to colorize the 
> entire line or the author here, for unread. Is it possible? 

The single-line summary of the message is drawn using 
notmuch-message-summary-face, which you can customise. This would 
be the same for all messages in the thread, though (no distinction 
for “unread”).

You could perhaps abuse notmuch-tag-formats to force unread 
message header lines to stand out more.
 
> I'm trying instead to use the tree view, this seems to me the 
> more natural way to view threads. So I immediately do `Z' 
> whenever I enter a thread. I would like to have the option to 
> enter tree view automatically for a thread from the search 
> buffer. Is it possible? 

“Z” in search mode should take you directly to tree mode.
 
> In tree view however, again I would like to colorize the unread 
> messages. Haven't found a way to do this and reading 
> notmuch-tree.el it seems it's not possible. Is there a way? 
> Since I like to keep my window to 80 chars the tag display is 
> outside the visible area and I find myself doing C-e to find the 
> unread tags. This is very inconvenient. 
> 
> Also I would like to navigate to the next unread message, and 
> would prefer the `n' binding to do that instead of go to next 
> message. Haven't found a binding for that. 
> 
> Finally when entering the tree view I would like the first 
> unread message to automatically be shown. 

I'm not a tree mode user, so I'm not familiar with it.
 
> I guess the above can be summarized as, I would like to have the 
> option to have a gnus-ish way of viewing threads. 

Tree mode is the closest, I think.
 
> Again, I'm probably doing something wrong and / or am missing 
> some possibilities here, it would be very interesting to hear 
> others work flow for thread reading. 

notmuch doesn't generally obsess about the “unread” tag quite as 
much as the “inbox” tag. Maybe you are used to orienting yourself 
around “unread” (which is important in Gnus, I'd agree) and 
thinking about how to look at “inbox” instead would help?

dme.
-- 
I was better off when I was on your side, and I was holding on.

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

* Re: Unread handling
  2019-11-10 23:16 Unread handling Johan Parin
  2019-11-11  8:14 ` David Edmondson
@ 2019-11-11 15:57 ` Teemu Likonen
  2019-11-12 18:45   ` Johan Parin
  1 sibling, 1 reply; 12+ messages in thread
From: Teemu Likonen @ 2019-11-11 15:57 UTC (permalink / raw)
  To: Johan Parin, notmuch

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

Johan Parin [2019-11-11T00:16:17+01] wrote:

> My real frustration lies in the thread view. Typically threads will be
> partially read and I want to read only unread messages.

> I'm trying instead to use the tree view, this seems to me the more
> natural way to view threads. So I immediately do `Z' whenever I enter
> a thread. I would like to have the option to enter tree view
> automatically for a thread from the search buffer. Is it possible?

It seems to me that using search term tag:unread will help you. Try this
in the *hello* buffer:

    z tag:unread

You'll go directly to tree view and unread messages will show with
normal colours and read messages with grey colour. Commands "n" and "p"
will skip over read messages ("N" and "P" won't). You can configure
saved searches to start with tree view.

-- 
///  OpenPGP key: 4E1055DC84E9DFF613D78557719D69D324539450
//  https://keys.openpgp.org/search?q=tlikonen@iki.fi
/  https://keybase.io/tlikonen  https://github.com/tlikonen

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 694 bytes --]

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

* Re: Unread handling
  2019-11-11  8:14 ` David Edmondson
@ 2019-11-12 13:17   ` William Casarin
  2019-11-12 13:35     ` David Edmondson
  2019-11-12 13:53     ` Teemu Likonen
  0 siblings, 2 replies; 12+ messages in thread
From: William Casarin @ 2019-11-12 13:17 UTC (permalink / raw)
  To: David Edmondson, Johan Parin; +Cc: notmuch

David Edmondson <dme@dme.org> writes:
> On Monday, 2019-11-11 at 00:16:17 +01, Johan Parin wrote: 
>> I'm trying instead to use the tree view, this seems to me the 
>> more natural way to view threads. So I immediately do `Z' 
>> whenever I enter a thread. I would like to have the option to 
>> enter tree view automatically for a thread from the search 
>> buffer. Is it possible? 
>
> “Z” in search mode should take you directly to tree mode.

true, but it opens tree mode for the entire search result. I find myself
doing `c i z Ctrl-v` to open the tree view for a specific thread, but
perhaps it would make sense if there was a default keybind for this.

Cheers,
Will

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

* Re: Unread handling
  2019-11-12 13:17   ` William Casarin
@ 2019-11-12 13:35     ` David Edmondson
  2019-11-12 14:01       ` William Casarin
  2019-11-12 13:53     ` Teemu Likonen
  1 sibling, 1 reply; 12+ messages in thread
From: David Edmondson @ 2019-11-12 13:35 UTC (permalink / raw)
  To: William Casarin, Johan Parin; +Cc: notmuch

On Tuesday, 2019-11-12 at 05:17:46 -08, William Casarin wrote: 

> David Edmondson <dme@dme.org> writes: 
>> On Monday, 2019-11-11 at 00:16:17 +01, Johan Parin wrote:  
>>> I'm trying instead to use the tree view, this seems to me the 
>>> more natural way to view threads. So I immediately do `Z' 
>>> whenever I enter a thread. I would like to have the option to 
>>> enter tree view automatically for a thread from the search 
>>> buffer. Is it possible?  
>> 
>> “Z” in search mode should take you directly to tree mode. 
> 
> true, but it opens tree mode for the entire search result. I 
> find myself doing `c i z Ctrl-v` to open the tree view for a 
> specific thread, but perhaps it would make sense if there was a 
> default keybind for this. 

Hmm, yes, that's a bit annoying.

I'd suggest 'z' as a good binding, but obviously it's already 
used. What would make sense?

dme.
-- 
So clap your hands together, make beats with cutlery.

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

* Re: Unread handling
  2019-11-12 13:17   ` William Casarin
  2019-11-12 13:35     ` David Edmondson
@ 2019-11-12 13:53     ` Teemu Likonen
  2019-11-12 13:59       ` William Casarin
  1 sibling, 1 reply; 12+ messages in thread
From: Teemu Likonen @ 2019-11-12 13:53 UTC (permalink / raw)
  To: William Casarin, David Edmondson, Johan Parin; +Cc: notmuch

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

William Casarin [2019-11-12T05:17:46-08] wrote:

> I find myself doing `c i z Ctrl-v` to open the tree view for a
> specific thread, but perhaps it would make sense if there was a
> default keybind for this.

Seems like the same as pressing Enter to select a thread and then Z to
see the thread it in tree view. No?

-- 
///  OpenPGP key: 4E1055DC84E9DFF613D78557719D69D324539450
//  https://keys.openpgp.org/search?q=tlikonen@iki.fi
/  https://keybase.io/tlikonen  https://github.com/tlikonen

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 694 bytes --]

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

* Re: Unread handling
  2019-11-12 13:53     ` Teemu Likonen
@ 2019-11-12 13:59       ` William Casarin
  2019-11-12 14:54         ` Teemu Likonen
  0 siblings, 1 reply; 12+ messages in thread
From: William Casarin @ 2019-11-12 13:59 UTC (permalink / raw)
  To: Teemu Likonen, David Edmondson, Johan Parin; +Cc: notmuch

Teemu Likonen <tlikonen@iki.fi> writes:

> William Casarin [2019-11-12T05:17:46-08] wrote:
>
>> I find myself doing `c i z Ctrl-v` to open the tree view for a
>> specific thread, but perhaps it would make sense if there was a
>> default keybind for this.
>
> Seems like the same as pressing Enter to select a thread and then Z to
> see the thread it in tree view. No?

Yes, but this has performance implications on large threads. Pressing
Enter will load all of the messages. Opening tree view with the thread
id is much faster, as it only loads the messages when you click them
from what I can tell.

Cheers,
Will

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

* Re: Unread handling
  2019-11-12 13:35     ` David Edmondson
@ 2019-11-12 14:01       ` William Casarin
  0 siblings, 0 replies; 12+ messages in thread
From: William Casarin @ 2019-11-12 14:01 UTC (permalink / raw)
  To: David Edmondson, Johan Parin; +Cc: notmuch

David Edmondson <dme@dme.org> writes:

> On Tuesday, 2019-11-12 at 05:17:46 -08, William Casarin wrote: 
>
>> David Edmondson <dme@dme.org> writes: 
>>> On Monday, 2019-11-11 at 00:16:17 +01, Johan Parin wrote:  
>>>> I'm trying instead to use the tree view, this seems to me the 
>>>> more natural way to view threads. So I immediately do `Z' 
>>>> whenever I enter a thread. I would like to have the option to 
>>>> enter tree view automatically for a thread from the search 
>>>> buffer. Is it possible?  
>>> 
>>> “Z” in search mode should take you directly to tree mode. 
>> 
>> true, but it opens tree mode for the entire search result. I 
>> find myself doing `c i z Ctrl-v` to open the tree view for a 
>> specific thread, but perhaps it would make sense if there was a 
>> default keybind for this. 
>
> Hmm, yes, that's a bit annoying.
>
> I'd suggest 'z' as a good binding, but obviously it's already 
> used. What would make sense?

C-u Z perhaps?

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

* Re: Unread handling
  2019-11-12 13:59       ` William Casarin
@ 2019-11-12 14:54         ` Teemu Likonen
  2019-11-12 15:11           ` Teemu Likonen
  0 siblings, 1 reply; 12+ messages in thread
From: Teemu Likonen @ 2019-11-12 14:54 UTC (permalink / raw)
  To: William Casarin, David Edmondson, Johan Parin; +Cc: notmuch

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

William Casarin [2019-11-12T05:59:09-08] wrote:

> Teemu Likonen <tlikonen@iki.fi> writes:
>> Seems like the same as pressing Enter to select a thread and then Z
>> to see the thread it in tree view. No?
>
> Yes, but this has performance implications on large threads. Pressing
> Enter will load all of the messages. Opening tree view with the thread
> id is much faster, as it only loads the messages when you click them
> from what I can tell.

Ah, I see. I have "notmuch-show-only-matching-messages" variable non-nil
and my daily searches have some limiting terms like "tag:unread" or
"date:90days.." so RET (notmuch-search-show-thread) command won't show
very large number of messages.

But indeed, a command like "notmuch-search-show-thread-tree" (M-RET, C-u
RET, C-RET...) would be useful: open current thread directly in tree
view and with current search terms.

-- 
///  OpenPGP key: 4E1055DC84E9DFF613D78557719D69D324539450
//  https://keys.openpgp.org/search?q=tlikonen@iki.fi
/  https://keybase.io/tlikonen  https://github.com/tlikonen

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 694 bytes --]

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

* Re: Unread handling
  2019-11-12 14:54         ` Teemu Likonen
@ 2019-11-12 15:11           ` Teemu Likonen
  2019-11-12 15:58             ` William Casarin
  0 siblings, 1 reply; 12+ messages in thread
From: Teemu Likonen @ 2019-11-12 15:11 UTC (permalink / raw)
  To: William Casarin, David Edmondson, Johan Parin; +Cc: notmuch

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

Teemu Likonen [2019-11-12T16:54:35+02] wrote:

> But indeed, a command like "notmuch-search-show-thread-tree" (M-RET,
> C-u RET, C-RET...) would be useful: open current thread directly in
> tree view and with current search terms.

But that is already there (without keybinding):

    (defun notmuch-tree-from-search-thread ()
      "Show the selected thread with notmuch-tree"
      (interactive)
      (notmuch-tree (notmuch-search-find-thread-id)
                    notmuch-search-query-string
                    nil
                    (notmuch-prettify-subject (notmuch-search-find-subject))
                    t))

-- 
///  OpenPGP key: 4E1055DC84E9DFF613D78557719D69D324539450
//  https://keys.openpgp.org/search?q=tlikonen@iki.fi
/  https://keybase.io/tlikonen  https://github.com/tlikonen

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 694 bytes --]

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

* Re: Unread handling
  2019-11-12 15:11           ` Teemu Likonen
@ 2019-11-12 15:58             ` William Casarin
  0 siblings, 0 replies; 12+ messages in thread
From: William Casarin @ 2019-11-12 15:58 UTC (permalink / raw)
  To: Teemu Likonen, David Edmondson, Johan Parin; +Cc: notmuch

Teemu Likonen <tlikonen@iki.fi> writes:

> Teemu Likonen [2019-11-12T16:54:35+02] wrote:
>
>> But indeed, a command like "notmuch-search-show-thread-tree" (M-RET,
>> C-u RET, C-RET...) would be useful: open current thread directly in
>> tree view and with current search terms.
>
> But that is already there (without keybinding):
>
>     (defun notmuch-tree-from-search-thread ()
>       "Show the selected thread with notmuch-tree"
>       (interactive)
>       (notmuch-tree (notmuch-search-find-thread-id)
>                     notmuch-search-query-string
>                     nil
>                     (notmuch-prettify-subject (notmuch-search-find-subject))
>                     t))

oh!! This is exactly what I was looking for. Just need to bind this.

Thanks,
Will

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

* Re: Unread handling
  2019-11-11 15:57 ` Teemu Likonen
@ 2019-11-12 18:45   ` Johan Parin
  0 siblings, 0 replies; 12+ messages in thread
From: Johan Parin @ 2019-11-12 18:45 UTC (permalink / raw)
  To: notmuch


Teemu Likonen <tlikonen@iki.fi> writes:
>
> It seems to me that using search term tag:unread will help you. Try this
> in the *hello* buffer:
>
>     z tag:unread
>
> You'll go directly to tree view and unread messages will show with
> normal colours and read messages with grey colour. Commands "n" and
> "p" will skip over read messages ("N" and "P" won't). You can
> configure saved searches to start with tree view.

Yes this is very good. Actually what I do now is

s tag:unread date:-2d..

which gives me almost what I want. Only downside is, completely unread
threads don't show up in the search view. Sometimes I want to go back
and read a read thread. But this can be solved by using flagged (or some
other tag). So now I have:

s ((tag:unread date:-2d..) or tag:flagged)

which works pretty well.

Thanks!

/Johan

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

end of thread, other threads:[~2019-11-12 18:45 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-10 23:16 Unread handling Johan Parin
2019-11-11  8:14 ` David Edmondson
2019-11-12 13:17   ` William Casarin
2019-11-12 13:35     ` David Edmondson
2019-11-12 14:01       ` William Casarin
2019-11-12 13:53     ` Teemu Likonen
2019-11-12 13:59       ` William Casarin
2019-11-12 14:54         ` Teemu Likonen
2019-11-12 15:11           ` Teemu Likonen
2019-11-12 15:58             ` William Casarin
2019-11-11 15:57 ` Teemu Likonen
2019-11-12 18:45   ` Johan Parin

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