package cmdliner
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=176579b437bb4c1b3c8a8cedbf1909f849a90ca434e7c4173096f232a7f408c4
md5=9c2490a6d1def1e6a8bb264f235682cb
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.6
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
>= "4.00.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
< "1.0.0"
-
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"
-
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