The latest version of options is 1.2.1.2-2.
options
Version 1.2.1 revision 1 uploaded by HerbertValerioRiedel.
Package meta
- Synopsis
- A powerful and easy-to-use command-line option parser.
- Description
The
options
package lets library and application developers easily work with command-line options.The following example is a full program that can accept two options,
--message
and--quiet
:import Control.Applicative import Options data MainOptions = MainOptions { optMessage :: String , optQuiet :: Bool } instance Options MainOptions where defineOptions = pure MainOptions <*> simpleOption "message" "Hello world!" "A message to show the user." <*> simpleOption "quiet" False "Whether to be quiet." main :: IO () main = runCommand $ \opts args -> do if optQuiet opts then return () else putStrLn (optMessage opts)
$ ./hello Hello world! $ ./hello --message='ciao mondo' ciao mondo $ ./hello --quiet $
In addition, this library will automatically create documentation options such as
--help
and--help-all
:$ ./hello --help Help Options: -h, --help Show option summary. --help-all Show all help options. Application Options: --message :: text A message to show the user. default: "Hello world!" --quiet :: bool Whether to be quiet. default: false
- Author
- John Millikin <john@john-millikin.com>
- Bug reports
- n/a
- Category
- Console
- Copyright
- n/a
- Homepage
- https://john-millikin.com/software/haskell-options/
- Maintainer
- John Millikin <john@john-millikin.com>
- Package URL
- n/a
- Stability
- stable