[neomutt-devel] new architecture for mutt OK for use now?

Yubin Ruan ablacktshirt at gmail.com
Tue Mar 13 05:04:31 CET 2018

On Mon, Mar 12, 2018 at 12:23:18PM +0000, Richard Russon wrote:
> Hi Yubin,
> Thanks for getting in touch.
> > I was looking at the /dev.html page and see that there is a idea for new
> > architecture for mutt at https://github.com/neomutt/arch
> Ah, yes.  One of my crazy ideas :-)
> I also have details notes for turning NeoMutt into an MVC app
> (model-view-controller).

Can you share that? Though I am still not so familar with the old code, taking
a look at a new architecture will do no harm.
> [...]
> We've been separating, refactoring, testing and documenting functions.
> > there are so many features that I want to add for Mutt
> Great!
> > so I started to look at the Neomutt project.
> NeoMutt started because Mutt was too slow to accept change.
> We *want* new features!
> We *encourage* change for the better :-)

On top of my head there are several features that I want most for mutt/neomutt:

  - Stable imap connection. I used to try to connect the mail server (Gmail)
    directly with the builtin imap in mutt, but when composing a long email
    which takes a little bit more time, the connection will be broken and I
    have to refresh and connect again. Maybe that is because I was behind a
    proxy (most of the time), but anyway that is frustrating. I turned to
    using offlineimap to sync my emails periodically such that my daily
    workflow goes smoothly. But sync-ing all those emails take times and space
    (several gigabytes now!), and this just does not work when you are in a
    new machine and just want to check some of your mails. Besides, being able
    to fetch emails with a stable imap connection will allow new users to pick
    up mutt more easily.

    Currently I have no idea how to deal with this feature. If anyone have
    any idea, please let me know.

  - Being able to show inline pictures (or maybe some other type of
    attachment). Yes, I know, I know, I know most of the time people
    (including myself) only use plain-text emails. But there are always some
    friends sending me fancy emails with pictures that require me to open my
    browser to view. It will be great if we can integrated that whole bunch of
    .mailcap things into mutt such that people can work in one single
    software[1]. I know emacs have that feature and I know that will require
    the terminal support viewing inline pictures. For that, I even think
    of making a GUI version of mutt, just like Gvim of vim.

    This will be a great amount of work, though. Maybe we should apply for the
    Google Summer of Code next year and have some students to help doing that.
    Or maybe other people have other ideas and we can talk.

  - The sorting mechanism can be better. Now we can sort by thread, and then
    have a sub-sort method to sort by date (last-date-received or what). It
    will be great if we can have a sub-sort method to sort by subject. This
    can be easily fixed, though. Let me check again later and then I will open
    an issue for that or a pull request.

Definitely I can provides more ideas, but for now I cann't remember that much.
And the multipart/alternative feature is still in progress. I am looking
forward to the review!

[1]: Some people may throw me a unix bible and say "do one thing at a time,
and use pipe to chain those together". Well, now we are in the 21th century...
Just think about Git, the fancy VCS, and think about how many features are
being added into it everyday, and how many workflow you can go through with
those features.


More information about the neomutt-devel mailing list