package cmdliner
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=9c19893cffb5d3c3469ee0cce85e3eeeba17d309b33b9ace31aba06f68f0bf7a
md5=46d7553b95f623f811df2a844fb448fb
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.7
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 (2)
-
ocamlbuild
build
-
ocaml
>= "3.12.1" & < "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" | = "0.9.9"
-
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
-
coq-serapi
< "8.7.1+0.4.8"
- 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"
- nebula
-
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