package cmdliner
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=ecb65e2cfd984ec07e97a78f334a80cda41fb8f8bb5e37c41fd33e6a0e2e69ef
md5=5089b4b69993ddc5ce4aac0e30d0c641
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.4
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" & < "5.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
>= "0.3.5-2"
-
elpi
>= "1.3.1"
-
equinoxe
< "0.2.0"
- erlang
-
ezxenstore
< "0.4.3"
- facteur
-
fat-filesystem
< "0.15.1"
- 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