[neomutt-users] Limit is sometimes applied automatically when returning to index

Igor Serebryany igor47 at moomers.org
Wed Nov 30 00:10:00 CET 2022


Just to close the loop here, my patch to partially fix this got
accepted:
https://github.com/neomutt/neomutt/pull/3558

There's still a related bug about the cursor position getting lost when
new mail arrives, which might be fixed here:
https://github.com/neomutt/neomutt/pull/3560

But it's already way better to have the limit pattern not reapplied
whenever new email comes in. You might have to build mutt from source to
get these features, but it's not too hard, just a bit of dependency
whack-a-mole.

--igor

On Mon, Nov 07, 2022 at 05:37:17PM -0600, Igor Serebryany wrote:
> Digging in a little more, it looks like there's already an open issue
> about this (since Dec 2020):
> https://github.com/neomutt/neomutt/issues/2763
> 
> I'll comment more there.
> 
> --igor
> 
> On Mon, Oct 31, 2022 at 02:01:32PM -0500, Igor Serebryany wrote:
> > Just to test this out, I built neomutt from source, so now my version
> > details are below. Same issue.
> > 
> > NeoMutt 20220429
> > Copyright (C) 1996-2022 Michael R. Elkins and others.
> > NeoMutt comes with ABSOLUTELY NO WARRANTY; for details type 'neomutt -vv'.
> > NeoMutt is free software, and you are welcome to redistribute it
> > under certain conditions; type 'neomutt -vv' for details.
> > 
> > System: Linux 5.4.0-70-generic (x86_64)
> > ncurses: ncurses 6.2.20200212 (compiled with 6.2.20200212)
> > libidn: 1.33 (compiled with 1.33)
> > GPGME: 1.13.1-unknown
> > GnuTLS: 3.6.13
> > libnotmuch: 5.2.0
> > storage: tokyocabinet
> > 
> > Configure options: --build=x86_64-linux-gnu --prefix=/usr {{--includedir=/include}} {{--mandir=/share/man}} {{--infodir=/share/info}} --sysconfdir=/etc --localstatedir=/var --disable-silent-rules {{--libdir=/lib/x86_64-linux-gnu}} {{--libexecdir=/lib/x86_64-linux-gnu}} --disable-maintainer-mode --disable-dependency-tracking --mandir=/usr/share/man --libexecdir=/usr/libexec --with-mailpath=/var/mail --gpgme --lua --notmuch --with-ui --gnutls --idn --mixmaster --sasl --tokyocabinet
> > 
> > Compilation CFLAGS: -g -O2 -std=c99 -D_ALL_SOURCE=1 -D_GNU_SOURCE=1 -D__EXTENSIONS__ -I/usr/include -I/usr/include/lua5.2 -DNCURSES_WIDECHAR
> > 
> > Default options:
> >   +attach_headers_color +compose_to_sender +compress +cond_date +debug
> >   +encrypt_to_self +forgotten_attachments +forwref +ifdef +imap +index_color
> >   +initials +limit_current_thread +multiple_fcc +nested_if +new_mail +nntp +pop
> >   +progress +quasi_delete +regcomp +reply_with_xorig +sensible_browser +sidebar
> >   +skip_quoted +smtp +status_color +timeout +tls_sni +trash
> > 
> > Compile options:
> >   -autocrypt +fcntl -flock -fmemopen +futimens +getaddrinfo +gnutls +gpgme -gss
> >   +hcache -homespool +idn +inotify -locales_hack +lua +mixmaster +nls +notmuch
> >   -openssl +pgp +regex +sasl +smime -sqlite +sun_attachment
> > 
> > --igor
> > 
> > On Mon, Oct 31, 2022 at 12:19:02PM -0500, Igor Serebryany wrote:
> > > Thanks for sending this, I signed up for the mailing list to ask about
> > > this same issue! Would also appreciate any pointers, I do believe the
> > > limit re-apply happens when new mail is received, and it's very
> > > confusing to have a message I was just looking at suddenly be gone from
> > > the index.
> > > 
> > > A common use case:
> > > * I filter to just 'New' mail
> > > * I view one of those messages
> > > * I return to the index
> > > 
> > > Now, the message I just viewed is no longer 'New', and so it's not in
> > > the index any more. Also, this usually causes my cursor to jump to the
> > > first message (which kinda makes sense, it *should* be on the message I
> > > just viewed but it's no longer there).
> > > 
> > > Version details (On Ubuntu 20.04):
> > > 
> > > NeoMutt 20191207
> > > Copyright (C) 1996-2016 Michael R. Elkins and others.
> > > NeoMutt comes with ABSOLUTELY NO WARRANTY; for details type 'neomutt
> > > -vv'.
> > > NeoMutt is free software, and you are welcome to redistribute it
> > > under certain conditions; type 'neomutt -vv' for details.
> > > 
> > > System: Linux 5.4.0-70-generic (x86_64)
> > > ncurses: ncurses 6.2.20200212 (compiled with 6.2.20200212)
> > > libidn: 1.33 (compiled with 1.33)
> > > GPGme: 1.13.1-unknown
> > > libnotmuch: 5.2.0
> > > hcache backends: tokyocabinet
> > > 
> > > --igor
> > > 
> > > On Mon, Oct 31, 2022 at 05:02:33PM +0000, Andy Smith wrote:
> > > > Hi,
> > > > 
> > > > I just upgraded my system to Debian 11 from Debian 9, and I'm seeing
> > > > changed behaviour in NeoMutt which is quite confusing.
> > > > 
> > > > It's a little hard to explain but, if I have the folder limited to New
> > > > messages and I view one of them, then sometimes when I return to the
> > > > index the limit is re-applied immediately so the message I just viewed
> > > > is hidded (as it's no longer new).
> > > > 
> > > > This doesn't always happen. I suspect it happens when new mail arrives
> > > > in the folder while I was viewing the message.
> > > > 
> > > > It's quite confusing as I "lose" the message I was just looking at, and
> > > > my position in the folder can jump about quite a bit when this happens.
> > > > 
> > > > This did not happen with the version of NeoMutt I was using in Debian 9.
> > > > There, any new messages would appear but the limit would not be
> > > > re-applied on returning to the index unless I forced that with l ~N <cr>.
> > > > The message I had just viewed would be visible but shown as read.
> > > > 
> > > > Is there any setting to return to this previous behaviour?
> > > > 
> > > > My config and version details appear below.
> > > > 
> > > > Cheers,
> > > > Andy
> > > > 
> > > > set mbox_type=Maildir
> > > > set timeout=5
> > > > set nomark_old
> > > > set spoolfile=/home/andy/Maildir/
> > > > set folder=/home/andy/Maildir/
> > > > set abort_nosubject=no
> > > > set alias_file=~/.mutt/aliases
> > > > set editor="vim"
> > > > set bounce_delivered=no
> > > > set include=yes
> > > > set mark_old=no
> > > > set menu_scroll=no
> > > > set move=no
> > > > set pager_context=0
> > > > set pager_index_lines=5
> > > > set pager_stop=yes
> > > > set pager_format="%4C %Z %.20n: %s%* %[!%F %T %Z] – (%P)"
> > > > set record=~/Maildir/.sent-mail/
> > > > set realname="Andy Smith"
> > > > set from="andy at strugglers.net"
> > > > set use_from=yes
> > > > set reverse_alias=yes
> > > > set reverse_name=yes
> > > > set sort=threads
> > > > set sort_aux=last-date-received
> > > > set sort_re=yes
> > > > set tilde
> > > > set mailcap_sanitize
> > > > set delete=yes
> > > > set postpone=yes
> > > > set charset=utf8
> > > > set bounce_delivered=no
> > > > set query_command="lbdbq %s"
> > > > set read_inc=100
> > > > set write_bcc=no
> > > > set ignore_list_reply_to=yes
> > > > set index_format="%4C %Z %{%b %d} %-15.15F (%4c) %s"
> > > > set envelope_from
> > > > set header_cache=~/.mutt/hcache
> > > > set smart_wrap
> > > > set wrap_search=yes
> > > > unset markers
> > > > alternative_order text/plain text/enriched text
> > > > set xterm_set_titles=yes
> > > > set xterm_title="%v: %f [Msgs:%M/%m New:%n%?t? Tagged:%t?] (%s/%S)"
> > > > 
> > > > mailboxes /home/andy/postponed `find $HOME/Maildir -type d -name cur | sed -e s:/cur$:: | sort | xargs`
> > > > 
> > > > ignore *
> > > > unignore from: date: subject: to: cc: reply-to:
> > > > unignore priority: importance:
> > > > unignore organization: organisation:
> > > > unignore user-agent: x-agent: x-mailer: x-newsreader:
> > > > unignore x-mailing-list: x-editor:
> > > > unignore newsgroups: posted-to: posted-and-mailed:
> > > > unignore x-also-posted-to: x-newsgroups:
> > > > unignore rt-originator: x-mailfrom: x-rt-originator:
> > > > unignore x-bitfolk-domain:
> > > > unhdr_order *
> > > > 
> > > > hdr_order \
> > > > 	Date: \
> > > > 	From: \
> > > > 	X-MailFrom: \
> > > > 	X-RT-Originator: \
> > > > 	To: \
> > > > 	Subject:
> > > > 
> > > > bind	generic	<F98>		first-entry
> > > > bind	generic	<F121>		last-entry
> > > > 
> > > > bind	index	<pagedown>	next-page
> > > > bind	index	<pageup>	previous-page
> > > > bind	index	<F98>		first-entry
> > > > bind	index	<F121>		last-entry
> > > > 
> > > > bind	editor	<F98>		bol
> > > > bind	editor	<F121>		eol
> > > > 
> > > > bind	pager	<F98>		top
> > > > bind	pager	<F121>		bottom
> > > > 
> > > > open-hook \\.gz$ "gzip -cd %f > %t"
> > > > close-hook \\.gz$ "gzip --best --rsyncable -c %t > %f"
> > > > append-hook \\.gz$ "gzip --best --rsyncable -c %t >> %f"
> > > > 
> > > > macro index <F5> ":source ~/.muttrc\n" \
> > > > 	"Reload the muttrc"
> > > > macro pager <F5> ":source ~/.muttrc\n" \
> > > > 	"Reload the muttrc"
> > > > 
> > > > auto_view text/html
> > > > auto_view text/x-vcard
> > > > 
> > > > $ neomutt -v
> > > > NeoMutt 20201127
> > > > Copyright (C) 1996-2020 Michael R. Elkins and others.
> > > > NeoMutt comes with ABSOLUTELY NO WARRANTY; for details type 'neomutt -vv'.
> > > > NeoMutt is free software, and you are welcome to redistribute it
> > > > under certain conditions; type 'neomutt -vv' for details.
> > > > 
> > > > System: Linux 5.10.0-19-amd64 (x86_64)
> > > > ncurses: ncurses 6.2.20201114 (compiled with 6.2.20201114)
> > > > libidn: 1.33 (compiled with 1.33)
> > > > GPGME: 1.14.0-unknown
> > > > GnuTLS: 3.7.1
> > > > libnotmuch: 5.3.0
> > > > storage: tokyocabinet
> > > > 
> > > > Configure options: --build=i686-linux-gnu --prefix=/usr {--includedir=${prefix}/include} {--mandir=${prefix}/share/man}
> > > > {--infodir=${prefix}/share/info} --sysconfdir=/etc --localstatedir=/var --disable-option-checking --disable-silent-rules
> > > >  {--libdir=${prefix}/lib/i386-linux-gnu} {--libexecdir=${prefix}/lib/i386-linux-gnu} --disable-maintainer-mode --disable
> > > > -dependency-tracking --mandir=/usr/share/man --libexecdir=/usr/libexec --with-mailpath=/var/mail --gpgme --lua --notmuch
> > > >  --with-ui --gnutls --gss --idn --mixmaster --sasl --tokyocabinet --sqlite --autocrypt
> > > > 
> > > > Compilation CFLAGS: -g -O2 -ffile-prefix-map=/build/neomutt-8uPELd/neomutt-20201127+dfsg.1=. -fstack-protector-strong -W
> > > > format -Werror=format-security -std=c99 -D_ALL_SOURCE=1 -D_GNU_SOURCE=1 -D__EXTENSIONS__ -D_FILE_OFFSET_BITS=64 -I/usr/i
> > > > nclude -I/usr/include/lua5.4 -DNCURSES_WIDECHAR -isystem /usr/include/mit-krb5
> > > > 
> > > > Default options:
> > > >   +attach_headers_color +compose_to_sender +compress +cond_date +debug
> > > >   +encrypt_to_self +forgotten_attachments +forwref +ifdef +imap +index_color
> > > >   +initials +limit_current_thread +multiple_fcc +nested_if +new_mail +nntp +pop
> > > >   +progress +quasi_delete +regcomp +reply_with_xorig +sensible_browser +sidebar
> > > >   +skip_quoted +smtp +status_color +timeout +tls_sni +trash
> > > > 
> > > > Compile options:
> > > >   +autocrypt +bkgdset +color +curs_set +fcntl -flock -fmemopen +futimens
> > > >   +getaddrinfo +gnutls +gpgme +gss +hcache -homespool +idn +inotify
> > > >   -locales_hack +lua +meta +mixmaster +nls +notmuch -openssl +pgp +regex +sasl
> > > >   +smime +sqlite +start_color +sun_attachment +typeahead
> > > > MAILPATH="/var/mail"
> > > > MIXMASTER="mixmaster"
> > > > PKGDATADIR="/usr/share/neomutt"
> > > > SENDMAIL="/usr/sbin/sendmail"
> > > > SYSCONFDIR="/etc"
> > 
> > 
> 
> 


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <https://mailman.neomutt.org/pipermail/neomutt-users-neomutt.org/attachments/20221129/9b83cd4a/attachment.sig>


More information about the neomutt-users mailing list