Hi Everyone,

I'm shortly going to send a set of patches to commit the neomutt version
of the sidebar (with some fixes and cleanup).

First, let me say thanks to Rich for taking a large amount of time to
clean up, fix, and document the patch.  Also, for working to rebase the
patch on top of the mutt_window changes.  This resulted in a patch that,
while still large, isn't nearly as invasive as it was.

The patch has quite a history, and is duly controversial.  Many people
say they can't use Mutt without it, while others don't want it anywhere
near their screen.  I can understand the latter group's feelings, so
first let me note that Rich has made it a compile-time configurable
option, defaulting off.

While I would like to commit the current set of patches now, I am not
done with the changes I'd like to make before the next release.  There
are still several things that are goofy with the patch, and I plan on
fixing things over the next few weeks.  My current todo list is:

* Separate the "extended buffy" logic from the sidebar.  Right now,
  enabling the sidebar also automatically enables logic that counts the
  number of new/flagged/total messages.  Naturally there is a
  performance impact here.  I want to create a new boolean option and a
  new separate timeout that can be enabled/disabled orthogonally, and
  plan on defaulting the extended buffy logic to off.

* Separate this "extended buffy" logic from the "new mail" logic.  The
  sidebar changes currently (incorrectly) conflate this in a few places.
  The number of unread messages is different from whether a mailbox has
  "new" mail.  I also believe the old/new logic is not currently handled
  correctly, but need to look into it some more.

* Create a "new mail" sidebar format string, so the sidebar can be used
  to just show mailboxes with "new mail", without enabling the "extended
  buffy" logic.  Change the sidebar to use this by default.

* Disentangle the sidebar from directly manipulating the BUFFY pointers.
  Changing the sort order in the sidebar actually rearranges the
  mailboxes order.  Instead, the sidebar should just use an array, or
  create a container structure with its own pointers.

* Separate the new mbox PEEK code out from the sidebar #ifdefs.

* Figure out if the "realpath" code added is actually needed.  I nearly
  pulled this out, but decided to let it in for now and review it later.

I'm sure I'll find more stuff as I go, but this gives you an idea, and a
promise, that I'm not done working on this, even though I'd like to get
the current patches in the tree now.

-- 
Kevin J. McCarthy
GPG Fingerprint: 8975 A9B3 3AA3 7910 385C  5308 ADEF 7684 8031 6BDA

Attachment: signature.asc
Description: PGP signature

Reply via email to