[neomutt-devel] Code Docs

Richard Russon rich at flatcap.org
Sat Jul 24 12:10:36 CEST 2021


Hi all,

The upstream Mutt code is mess.

When NeoMutt started, one of the first things I did was to document
every function.  Over two thousand of them.  Then I went through all the
structs.  It's important that once *someone* understands a thing,
everyone should benefit.

    https://neomutt.org/code/

Over time, we've split up NeoMutt into lots of Libraries in order to
group code by function and to break up dependencies.

    https://neomutt.org/code/pages.html

Recently, I've discovered how to group various functions, so I've
started to document the APIs that link up NeoMutt:

    https://neomutt.org/code/modules.html

You can quickly see all the code that implements a given API function.
My favourite being:

    https://neomutt.org/code/group__expando__api.html

The docs are built using Doxygen.  It parse the comments before each
function and links everything together.

    https://www.doxygen.nl/index.html
    https://github.com/neomutt/neomutt/blob/master/sidebar/sidebar.c#L76-L84

NeoMutt's code is still very complex, but it's getting more
understandable by the day.

Cheers,
    Rich / FlatCap
-- 
Buy FlatCap a Beer: https://www.paypal.me/russon
-------------- 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-devel-neomutt.org/attachments/20210724/ce5b7e25/attachment.sig>


More information about the neomutt-devel mailing list