_            _    _        _         _
      /\ \         /\ \ /\ \     /\_\      / /\
      \_\ \       /  \ \\ \ \   / / /     / /  \
      /\__ \     / /\ \ \\ \ \_/ / /     / / /\ \__
     / /_ \ \   / / /\ \ \\ \___/ /     / / /\ \___\
    / / /\ \ \ / / /  \ \_\\ \ \_/      \ \ \ \/___/
   / / /  \/_// / /   / / / \ \ \        \ \ \
  / / /      / / /   / / /   \ \ \   _    \ \ \
 / / /      / / /___/ / /     \ \ \ /_/\__/ / /
/_/ /      / / /____\/ /       \ \_\\ \/___/ /
\_\/       \/_________/         \/_/ \_____\/
sbcl-clingon 0.5.0-0.379fc41
Dependencies: sbcl-bobbin@1.0.1-0.b454e82 sbcl-cl-reexport@0.1-2.03ad7a0 sbcl-split-sequence@2.0.1 sbcl-with-user-abort@0.1-0.60693b4
Channel: guix
Location: gnu/packages/lisp-xyz.scm (gnu packages lisp-xyz)
Home page: https://github.com/dnaeon/clingon
Licenses: FreeBSD
Synopsis: Command-line option parsing library for Common Lisp
Description:

clingon is a command-line option parsing library for Common Lisp. Its features include:

  • Support for subcommands

  • Support for command aliases

  • Support for short and long options

  • Related options may be grouped into categories

  • Short options may be collapsed into a single argument, as in -xyz

  • Long options support the notations --long-opt arg and --long-opt=arg

  • Automatic generation of help/usage information for commands and subcommands

  • Out-of-the-box support for --version and --help

  • Support for various kinds of options including string, integer, boolean, switch, enum, list, counter, filepath, etc.

  • Subcommands can look up global options defined in parent commands

  • Support for required options

  • Options can be initialized via environment variables

  • Single interface for creating options using CLINGON:MAKE-OPTION

  • Generate documentation for your command-line application

  • Support for pre-hook and post-hook actions for commands, which allow invoking functions before and after the respective handler of the command is executed

  • Support for Bash and Zsh completions

  • Extensibility, so if you don't find something you need you can extend it by developing a new option kind, or even a new mechanism for initializing options, e.g., by looking up an external key/value store

Total results: 1