cmdlib

a library for command line parsing & online help

Latest on Hackage:0.3.6@rev:1

This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow stackage.org to host generated Haddocks.

BSD-3-Clause licensed by Petr Rockai
Maintained by [email protected]

A commandline parsing library, based on getopt. Comes with a powerful attribute system. Supports complex interfaces with many options and commands, with option & command grouping, with simple and convenient API. Even though quite powerful, it strives to keep simple things simple. The library uses System.Console.GetOpt as its backend.

In comparison to the other commandline handling libraries:

Compared to cmdargs, cmdlib has a pure attribute system and is based on GetOpt for help formatting & argument parsing. Cmdlib may also be more extendable due to typeclass design, and can use user-supplied types for option arguments.

Cmdargs >= 0.4 can optionally use a pure attribute system, although this is clearly an add-on and the API is a second-class citizen in relation to the impure version.

GetOpt and parseargs both require explicit flag representation, so they live a level below cmdlib. GetOpt is in fact used as a backend by cmdlib.