aamaricci / SciFortran

A library of fortran modules and routines for scientific calculations (*in a way* just like scipy for python)
GNU Lesser General Public License v3.0
169 stars 39 forks source link

Setup API docs generation via FORD #19

Closed beddalumia closed 1 year ago

beddalumia commented 1 year ago

Preliminary support for API docs generation via FORD

For now we set uncommon UTF-8 characters as [pre]docmark[_alt] symbols, so to (almost)^ deactivate docstring generation: better nothing than a total mess.

^ We say almost cause there is some bug / misunderstanding on how to override default dockmark_alt and predockmark_alt symbols, so we still get some noise.

Gradually we'd want to parse and standardize the comments across all the modules (currently there are many different styles, so whatever marker set we choose, the output is very messy). There is no need to conform to the defaults of FORD, but some convention has to be taken (and followed).

Even without docstrings the generated html provides already significant value: all procedures/types/interfaces are searchable, without the usual noise that grep or similar tools generate (as calls and references are picked too), all dependencies / call-graphs / inheritance-graphs / etc. are generated and nicely displayed in the resulting html, which can be easily uploaded in a github page (and an action for that has been already set up).

Some well-defined refactoring has been made to the source code, with the aim to ease the parsing for FORD (as well as improving the codebase itself).

Specifically: