simple-cmd-args

Simple command args parsing and execution

https://github.com/juhp/simple-cmd-args

Version on this page:0.1.0.1
LTS Haskell 22.14:0.1.8
Stackage Nightly 2024-03-28:0.1.8
Latest on Hackage:0.1.8

See all snapshots simple-cmd-args appears in

BSD-3-Clause licensed by Jens Petersen
Maintained by [email protected]
This version can be pinned in stack with:simple-cmd-args-0.1.0.1@sha256:a566bd36ac436059850468ff70a7024fa0e94f34bb3f4d2a30b6555e94fa256d,1388

Module documentation for 0.1.0.1

simple-cmd-args

Hackage BSD license Stackage Lts Stackage Nightly Build status

A thin layer over optparse-applicative that avoids type plumbing for commands by using Parser (IO ()). It also supports with subcommands.

Usage

import SimpleCmdArgs
import Control.Applicative (some)
import SimpleCmd (cmd_)

main =
  simpleCmdArgs Nothing "my example tool" "Longer description..." $
  subcommands
    [ Subcommand "echo" (putStrLn <$> strArg "NAME") "Print name"
    , Subcommand "ls" (cmd_ "ls" <$> some (strArg "FILE...")) "Touch FILE"
    ]

See more examples.

Changes

Changelog

simple-cmd-args uses PVP Versioning.

0.1.0.1

  • fix and improve haddock documentation

0.1.0

  • Initial release with subcommands and option Mod functions