package cmdliner

  1. Overview
  2. Docs
Declarative definition of command line interfaces for OCaml

Install

dune-project
 Dependency

Authors

Maintainers

Sources

cmdliner-1.0.4.tbz
sha256=5c2a93d44af8a38996a2c0f80fbd7970fe4751f104be470cafa069353fc004c0
md5=fe2213d0bc63b1e10a2d0aa66d2fc8d9

Description

Cmdliner allows the declarative definition of command line interfaces for OCaml.

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 has no dependencies and is distributed under the ISC license.

README

Cmdliner — Declarative definition of command line interfaces for OCaml

v1.0.4

Cmdliner allows the declarative definition of command line interfaces for OCaml.

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 has no dependencies and is distributed under the ISC 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 from the source interfaces. It can be consulted online or via odig doc cmdliner.

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 and run with:

topkg build --tests true && topkg test

Dependencies (1)

  1. ocaml >= "4.03.0"

Dev Dependencies

None

  1. acgtk < "2.1.0"
  2. albatross < "1.4.3"
  3. alcotest < "1.7.0"
  4. alcotest-async < "1.7.0"
  5. alt-ergo >= "2.4.0" & < "2.4.2"
  6. altgr-ergo >= "2.4.0" & < "2.4.2"
  7. apero-core
  8. apero-net
  9. archsat
  10. asak >= "0.2" & < "0.4"
  11. awa < "0.2.0"
  12. aws-s3 < "4.6.0"
  13. bap-abi < "2.2.0"
  14. bap-api < "2.2.0"
  15. bap-beagle < "2.3.0"
  16. bap-bil < "2.2.0"
  17. bap-byteweight-frontend
  18. bap-cache < "2.2.0"
  19. bap-callsites
  20. bap-demangle < "2.5.0"
  21. bap-dump-symbols < "2.2.0"
  22. bap-frames
  23. bap-frontend < "2.2.0"
  24. bap-fsi-benchmark
  25. bap-ida-plugin < "2.2.0"
  26. bap-llvm < "2.2.0"
  27. bap-main
  28. bap-objdump < "2.2.0"
  29. bap-optimization < "2.2.0"
  30. bap-phoenix
  31. bap-piqi
  32. bap-plugins < "2.2.0"
  33. bap-powerpc >= "2.2.0"
  34. bap-std
  35. bap-symbol-reader < "2.2.0"
  36. bap-taint-propagator
  37. bap-term-mapper < "2.2.0"
  38. bap-trace
  39. bap-veri
  40. bap-warn-unused
  41. bap-x86
  42. benchpress
  43. benchpress-server
  44. bentov
  45. bisect_ppx >= "2.0.0"
  46. boltzgen < "0.9.5"
  47. brozip
  48. builder < "0.3.2"
  49. builder-web < "0.2.0"
  50. bun
  51. bytepdf
  52. ca-certs-nss < "3.77"
  53. camels
  54. camyll < "0.4.1"
  55. capnp-rpc-unix < "1.2.3"
  56. caqti = "1.7.0"
  57. caqti-async = "1.7.0"
  58. caqti-lwt = "1.7.0"
  59. carton < "0.7.2"
  60. catala < "0.7.0"
  61. catala-format >= "0.2.0"
  62. certify
  63. charrua-unix < "1.6.0"
  64. checkseum >= "0.0.2" & < "0.2.0"
  65. clim
  66. clim-ppx
  67. cmdliner-stdlib
  68. cmdtui-lambda-term
  69. cohttp-lwt-unix != "4.1.2" & < "5.3.0"
  70. coin < "0.1.2"
  71. conex
  72. conex-mirage-crypto
  73. confero
  74. coq-serapi < "8.15.0+0.15.2"
  75. cosovo
  76. cppffigen
  77. craml
  78. crowbar < "0.2.1"
  79. crunch < "4.0.0"
  80. current < "0.6.2"
  81. current_examples < "0.6.2"
  82. current_github < "0.6.2"
  83. current_web < "0.6.2"
  84. decompress < "1.0.0" | >= "1.3.0" & < "1.4.3"
  85. depgraph
  86. diffast-git-cli < "0.3.5.1"
  87. dirsift
  88. diskuvbox < "0.2.0"
  89. dkml-component-staging-opam32 < "2.2.0~dkml20220801"
  90. dkml-component-staging-opam64 < "2.2.0~dkml20220801"
  91. dkml-install < "0.4.0"
  92. dkml-install-installer < "0.4.0"
  93. dkml-install-runner < "0.4.0"
  94. dockerfile-cmd
  95. dockerfile-opam < "8.2.7"
  96. docteur < "0.0.4"
  97. dolmen_bin < "0.7"
  98. dream-cli < "0.2.0"
  99. dryunit
  100. dscheck >= "0.2.0"
  101. duff < "0.3"
  102. dune-deps >= "1.1.0" & < "1.4.0"
  103. dune-expand
  104. dune-release < "1.6.1"
  105. dune_deps_extra
  106. earlybird < "1.2.0"
  107. elasticsearch-cli
  108. electrod
  109. electrumAnalyzer
  110. elpi
  111. equinoxe < "0.2.0"
  112. erlang
  113. ez_cmdliner < "0.4.3"
  114. facteur
  115. fat-filesystem < "0.15.1"
  116. fit < "1.0.3"
  117. fsevents-lwt
  118. functoria-runtime < "4.0.0"
  119. git >= "3.2.0" & < "3.15.0"
  120. git-unix < "3.15.0"
  121. github-unix < "4.5.0"
  122. gobba
  123. gospel < "0.2.0"
  124. happy-eyeballs-lwt < "0.6.0"
  125. hlarp
  126. hll < "4.3"
  127. http-lwt-client < "0.0.8"
  128. hvsock < "3.0.1"
  129. hxd < "0.3.2"
  130. igvxml
  131. index >= "1.3.0"
  132. index-bench
  133. irmin-bench < "3.11.0"
  134. irmin-cli < "3.11.0"
  135. irmin-pack < "3.11.0"
  136. irmin-server < "3.11.0"
  137. irmin-test < "3.11.0"
  138. irmin-tezos < "3.11.0"
  139. irmin-unix
  140. js_of_ocaml-compiler < "4.1.0"
  141. jsonxt
  142. kafka < "0.5"
  143. kafka_lwt
  144. kinetic-client >= "0.0.9"
  145. lab < "0.1.4"
  146. labrys
  147. lambdapi < "2.2.0"
  148. learn-ocaml < "0.14.1"
  149. learn-ocaml-client < "0.14.1"
  150. lilac
  151. llopt
  152. mastodon-archive-viewer < "0.4.0"
  153. mdx < "2.2.0"
  154. merge-fmt < "0.3"
  155. minicaml >= "0.2.2"
  156. mirage = "4.0.0"
  157. mirage-monitoring < "0.0.8"
  158. mirage-runtime = "4.0.0"
  159. mirage-seal
  160. mkaudio < "1.1.3"
  161. mlgpx
  162. monorobot
  163. mrmime = "0.5.0"
  164. mustache = "3.2.0"
  165. named-pipe
  166. nbd < "4.0.3"
  167. nocoiner
  168. nuscr = "2.0.0"
  169. obandit >= "0.3.4"
  170. obuilder < "0.4"
  171. ocal
  172. ocamlcodoc
  173. ocamlformat < "0.21.0"
  174. ocamlformat-mlx-lib < "0.27.0"
  175. ocamlformat-rpc < "0.21.0"
  176. ocp-browser >= "1.1.7" & < "1.3.4"
  177. ocp-build
  178. ocp-indent < "1.9.0"
  179. ocp-indent-nlfork
  180. ocp-index < "1.3.4"
  181. ocp-reloc
  182. odds < "1.1"
  183. odoc < "3.1.0"
  184. ometrics
  185. omigrate < "0.3.0"
  186. opam-0install < "0.4.3"
  187. opam-0install-cudf < "0.4.1"
  188. opam-build < "0.2.3"
  189. opam-bundle
  190. opam-ci
  191. opam-client < "2.2.0"
  192. opam-compiler < "0.2.0"
  193. opam-depext >= "1.2.1"
  194. opam-devel < "2.2.0"
  195. opam-dune-lint < "0.3"
  196. opam-ed
  197. opam-grep >= "0.2.0" & < "0.4.0"
  198. opam-installer
  199. opam-lib
  200. opam-lock
  201. opam-package-upgrade
  202. opam-publish >= "0.3.5" & < "2.2.0"
  203. opam-test < "0.2.3"
  204. opium
  205. ordma >= "0.0.5"
  206. orun
  207. osbx
  208. oskel
  209. osx-fsevents
  210. owee >= "0.8"
  211. owi >= "0.2"
  212. owork
  213. passmakercmd
  214. pds >= "4.13" & < "5.42"
  215. pecu < "0.4"
  216. pg_query >= "0.9.6" & < "0.9.8"
  217. pkcs11-cli
  218. plotkicadsch
  219. polly < "0.4.1"
  220. ppx_deriving_cmdliner
  221. prelude < "0.5"
  222. prof_spacetime
  223. prometheus-app
  224. protocol-9p < "0.12.1"
  225. protocol-9p-tool < "2.1.0"
  226. protocol-9p-unix < "0.12.1"
  227. pyast < "0.2.0"
  228. pyml_bindgen < "0.3.0"
  229. pyre-ast < "0.1.9"
  230. qcow < "0.10.2" | = "0.11.0"
  231. qcow-tool < "0.12.1"
  232. qmp < "0.20.0"
  233. quill
  234. regenerate
  235. rosetta < "0.3.0"
  236. rotor
  237. runtime_events_tools < "0.3"
  238. sid
  239. slack
  240. slacko
  241. slipshow < "0.1.1"
  242. spin
  243. sslconf
  244. tallgeese
  245. telltime
  246. tensorflow
  247. tezos-context-hash-irmin
  248. tidy_email_mailgun
  249. tidy_email_sendgrid
  250. tidy_email_smtp
  251. timmy
  252. tldr >= "0.3.0"
  253. torch < "v0.16.0"
  254. touist
  255. uring < "0.3"
  256. user-setup
  257. uuuu < "0.2.0"
  258. valentine
  259. vchan < "6.0.2"
  260. vecosek
  261. vpnkit
  262. wayland < "1.1"
  263. webauthn < "0.2.0"
  264. xapi-inventory
  265. xen-evtchn
  266. xen-evtchn-unix
  267. xen-gnt
  268. yuscii < "0.3.0"
  269. zeit

Conflicts

None