package cmdliner
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=a0e199c4930450e12edf81604eeceddeeb32d55c43438be689e60df282277a7e
md5=a5195004312cd99bacde7de232bab73b
Description
Cmdliner is a module for the declarative definition of command line interfaces.
It provides a simple and compositional mechanism to convert command line arguments to OCaml values and pass them to your functions. The module automatically handles syntax errors, help messages and UNIX man page generation. It supports programs with single or multiple commands and respects most of the POSIX and GNU conventions.
Cmdliner is made of a single independent module and distributed under the BSD3 license.
README
Cmdliner — Declarative definition of command line interfaces for OCaml
Release 0.9.5
Cmdliner is a module for the declarative definition of command line interfaces.
It provides a simple and compositional mechanism to convert command line arguments to OCaml values and pass them to your functions. The module automatically handles syntax errors, help messages and UNIX man page generation. It supports programs with single or multiple commands and respects most of the POSIX and GNU conventions.
Cmdliner is made of a single independent module and distributed under the BSD3 license.
Home page: http://erratique.ch/software/cmdliner
Contact: Daniel Bünzli <daniel.buenzl i@erratique.ch>
Installation
Cmdliner can be installed with opam
:
opam install cmdliner
If you don't use opam
consult the opam
file for build instructions.
Documentation
The documentation and API reference is automatically generated by ocamldoc
from the interfaces. It can be consulted online and there is a generated version in the doc
directory of the distribution.
Sample programs
If you installed Cmdliner with opam
sample programs are located in the directory opam config var cmdliner:doc
. These programs define the command line of some classic programs.
In the distribution sample programs are located in the test
directory of the distribution. They can be built with:
ocamlbuild -use-ocamlfind test/tests.otarget
The resulting binaries are in _build/test
.
Dependencies (3)
-
ocamlbuild
build
- ocamlfind
-
ocaml
>= "3.12.0" & < "4.06.0"
Dev Dependencies
None
-
acgtk
>= "1.5.1" & < "1.5.3"
-
alcotest
< "1.0.0"
-
alcotest-async
>= "1.3.0" & < "1.6.0"
-
alcotest-lwt
>= "1.3.0" & < "1.6.0"
-
alcotest-mirage
>= "1.3.0" & < "1.6.0"
-
alt-ergo
= "2.4.0"
-
altgr-ergo
= "2.4.0"
- aperf
-
awa
< "0.1.1"
-
aws-s3
>= "3.0.0" & < "4.6.0"
-
aws-s3-async
< "3.0.0"
-
bap
< "0.9.5"
-
bap-abi
< "2.2.0"
-
bap-api
< "2.2.0"
-
bap-beagle
< "2.3.0"
-
bap-bil
< "2.2.0"
- bap-byteweight-frontend
-
bap-cache
< "2.2.0"
- bap-callsites
-
bap-demangle
< "2.5.0"
-
bap-dump-symbols
< "2.2.0"
-
bap-frames
< "2.1.1"
-
bap-frontend
< "2.2.0"
- bap-fsi-benchmark
-
bap-ida-plugin
< "2.2.0"
-
bap-llvm
< "2.2.0"
-
bap-main
!= "2.4.0"
-
bap-mc
< "2.0.0"
-
bap-objdump
< "2.2.0"
-
bap-optimization
< "2.2.0"
- bap-phoenix
- bap-piqi
-
bap-plugins
< "2.2.0"
-
bap-std
< "1.4.0"
-
bap-symbol-reader
< "2.2.0"
-
bap-taint
< "1.4.0"
- bap-taint-propagator
-
bap-term-mapper
< "2.2.0"
- bap-trace
- bap-veri
- bap-warn-unused
-
bap-x86
< "2.2.0"
-
batsh
>= "0.0.4"
- benchpress
- benchpress-server
-
boltzgen
< "0.9.3"
- brozip
- bt
-
builder
< "0.3.1"
-
builder-web
< "0.2.0"
- bytepdf
-
ca-certs-nss
< "3.77"
- camels
-
capnp-rpc-unix
< "1.2.3"
-
caqti
= "1.7.0"
-
caqti-async
= "1.7.0"
-
caqti-lwt
= "1.7.0"
-
certify
< "0.2"
- charrua-unix
-
checkseum
>= "0.0.2" & < "0.2.0"
- cmdtui-lambda-term
- coclobas
-
cohttp
>= "0.13.0" & < "0.99.0"
-
cohttp-lwt-unix
!= "4.1.2" & < "5.2.0"
- cohttp-lwt-unix-nossl
- cohttp-lwt-unix-ssl
-
coin
< "0.1.2"
- conex
- conex-mirage-crypto
- conex-nocrypto
- confero
- craml
-
crunch
< "3.3.0"
-
current
< "0.6"
-
current_examples
< "0.6"
-
current_web
< "0.6"
- datakit
- datakit-bridge-github
- datakit-bridge-local-git
- datakit-ci
-
datakit-client
< "0.11.0"
- datakit-client-9p
- datakit-github
-
datakit-server
>= "0.10.0" & < "0.11.0"
-
decompress
>= "0.8" & < "1.0.0"
-
depext
< "1.0.2"
- depgraph
- dirsift
-
dkim
< "0.4.0"
-
dns
>= "0.6.0" & < "0.19.1"
-
dns-forward
< "0.9.0"
- dns-lwt-unix
-
dockerfile
>= "1.1.0" & < "3.0.0"
- dockerfile-cmd
-
dockerfile-opam
< "8.1.0"
- dog
-
dolmen_bin
< "0.7"
-
dream-cli
< "0.2.0"
-
dscheck
>= "0.2.0"
-
dune-deps
>= "1.1.0" & < "1.3.0"
-
dune-release
< "1.6.1"
-
earlybird
< "1.0.0"
-
elasticsearch-cli
>= "1.0"
-
electrod
>= "0.2.1"
- electrumAnalyzer
-
elpi
>= "1.3.1"
-
equinoxe
< "0.2.0"
- erlang
-
ezxenstore
< "0.4.3"
- facteur
-
fat-filesystem
< "0.15.1"
-
frenetic
>= "3.2.0" & < "5.0.0"
- fsevents-lwt
-
git
< "1.10.0" | >= "3.0.0" & != "3.7.1" & < "3.8.1"
-
git-unix
>= "1.10.0" & < "3.0.0"
-
github
>= "0.4.0" & < "1.1.0"
- gobba
-
happy-eyeballs-lwt
< "0.2.0"
- hlarp
-
hll
>= "2.7"
-
http-lwt-client
< "0.0.6"
-
hvsock
< "3.0.1"
-
hxd
< "0.3.2"
- igvxml
-
index
>= "1.3.0"
-
index-bench
< "1.3.2" | >= "1.4.2"
-
irmin
< "1.0.0"
- irmin-bench
- irmin-cli
-
irmin-pack
>= "2.3.0"
-
irmin-test
>= "2.3.0"
- irmin-tezos
-
irmin-unix
= "1.0.0" | >= "2.3.0"
- jitsu
-
js_of_ocaml
>= "2.5" & < "3.0"
-
js_of_ocaml-compiler
< "4.0.0"
- jsonxt
-
kafka
>= "0.3" & < "0.5"
- kafka_lwt
-
ketrew
< "3.1.0"
-
kinetic-client
>= "0.0.9"
- labrys
-
learn-ocaml
< "0.14.1"
-
learn-ocaml-client
< "0.14.1"
-
letsencrypt
< "0.3.0"
-
letsencrypt-app
< "0.5.0"
- llopt
-
mastodon-archive-viewer
< "0.4.0"
-
mbr-format
< "1.0.0"
-
merge-fmt
< "0.3"
- message-switch
-
minicaml
>= "0.2.2"
-
mirage
>= "0.10.0" & < "2.7.0" | >= "4.0.0" & < "4.5.0"
-
mirage-block-xen
< "2.0.0"
-
mirage-console
>= "2.1.2" & < "2.2.0"
- mirage-console-xen-cli
-
mirage-dns
>= "2.6.0" & < "3.0.0"
- mirage-seal
- mirari
- mirror
-
mkaudio
< "1.1.3"
-
mrmime
= "0.5.0"
- named-pipe
-
nbd
>= "0.9.2" & < "4.0.3"
-
obandit
>= "0.3.4"
-
obuilder
< "0.4"
- ocal
- ocaml-gist
- ocamlcodoc
-
ocamlformat
< "0.21.0"
-
ocamlformat-rpc
< "0.21.0"
- oci
-
ocp-browser
>= "1.1.6" & < "1.3.4"
-
ocp-indent
>= "1.2.0" & != "1.5.2" & < "1.6.0"
-
ocp-index
< "1.3.4"
- ocp-reloc
-
odds
< "1.1"
-
odig
< "0.0.2"
-
odoc
< "1.3.0"
-
omigrate
< "0.3.0"
-
opam-0install
< "0.4.3"
-
opam-0install-cudf
< "0.4.1"
- opam-build-revdeps
-
opam-bundle
< "0.4"
- opam-ci
-
opam-compiler
< "0.2.0"
-
opam-ed
< "0.3"
- opam-lib
- opam-package-upgrade
-
opam-publish
!= "0.3.0+transition" & < "2.1.0"
- opam-query
-
opam2web
>= "1.3.0" & < "2.0"
-
opass
>= "2.15"
- operf-macro
-
opium
>= "0.12.0"
-
ordma
>= "0.0.5"
- osbx
- oskel
- osx-fsevents
-
owi
>= "0.2"
- passmakercmd
-
pds
>= "4.13"
-
pkcs11-cli
< "1.0.1"
-
plotkicadsch
>= "0.2.0"
-
polly
< "0.4.1"
-
ppx_deriving_cmdliner
< "0.3.1"
- prelude
- prof_spacetime
-
prometheus-app
>= "0.4"
-
protocol-9p
< "0.12.1"
- protocol-9p-tool
-
protocol-9p-unix
< "0.12.1"
-
publish
< "0.3.4+transition"
-
qcow
< "0.10.2" | >= "0.11.0"
- qcow-format
- qcow-tool
-
qmp
< "0.20.0"
-
regenerate
< "0.2"
-
rosetta
< "0.3.0"
- rotor
-
rpc
>= "1.9.51" & < "5.9.0"
-
rpclib
>= "6.1.0" & < "8.1.1"
-
satyrographos
< "0.0.1.7"
-
shared-block-ring
< "3.0.1"
- sibylfs
- sid
- slack
- slack-backup
- slacko
- slipshow
- snabela
-
solo5-elftool
< "0.3.1"
- spin
- spotify-cli
- sslconf
- tallgeese
-
tar-format
>= "0.2.0" & < "0.7.1"
- telltime
-
tensorflow
>= "0.0.4"
- tezos-context-hash-irmin
-
tezos-node
>= "8.0" & < "13.0"
- timmy
-
tldr
>= "0.3.0"
- tlstunnel
-
topkg-care
< "0.9.0"
-
torch
< "v0.16.0"
- travis-senv
-
tuntap
>= "1.0.0" & != "1.4.1" & < "2.0.1"
- u2f
-
uring
< "0.3"
-
usbmux
< "1.3.2"
-
user-setup
>= "0.4"
-
uuuu
< "0.2.0"
- valentine
-
vchan
< "6.0.2"
-
vchan-unix
< "6.0.2"
-
vchan-xen
< "6.0.2"
- vecosek
- vhd-tool
- vimebac
- vpnkit
-
webauthn
< "0.2.0"
- xapi-idl
- xapi-inventory
- xapi-rrd-transport
- xe-unikernel-upload
- xen-block-driver
- xen-disk
- xen-evtchn
- xen-evtchn-unix
-
xen-gnt
>= "1.0.0"
- xenctrl
- xentropyd
-
yuscii
< "0.3.0"
Conflicts
None