It ain't no drag.
CAL got a brand new bag.
Stable, open source, and not going away.
Why CAL
CAL is different from most argument parsers
-
CLI definition requires almost no knowledge of the library - there are no available options.
-
Help screens, manual pages and completion scripts are rendered from arrays of show elements and show macros - not from fixed templates.
-
CAL has separate modules for macro-based CLI definition, struct-based CLI definition, help screen rendering, manual page rendering, completion script generation and more.
-
The modular design makes it possible to maintain and customize modules independently.
-
CAL has excelent support for command hierachies in which state is passed from parents to children