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 < "1.0.0"
  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. cca >= "0.6.2"
  63. certify
  64. charrua-unix < "1.6.0"
  65. checkseum >= "0.0.2" & < "0.2.0"
  66. clim
  67. clim-ppx
  68. cmdliner-stdlib
  69. cmdtui-lambda-term
  70. cohttp-lwt-unix != "4.1.2" & < "5.3.0"
  71. coin < "0.1.2"
  72. conex < "1.0.0"
  73. conex-mirage-crypto < "1.0.0"
  74. confero
  75. coq-serapi < "8.15.0+0.15.2"
  76. cosovo
  77. cppffigen
  78. craml
  79. crowbar < "0.2.1"
  80. crunch < "4.0.0"
  81. current < "0.6.2"
  82. current_examples < "0.6.2"
  83. current_github < "0.6.2"
  84. current_web < "0.6.2"
  85. decompress < "1.0.0" | >= "1.3.0" & < "1.4.3"
  86. depgraph
  87. diffast-git-cli < "0.3.5.1"
  88. dirsift
  89. diskuvbox < "0.2.0"
  90. dkml-install
  91. dkml-install-installer
  92. dkml-install-runner
  93. dockerfile-cmd
  94. dockerfile-opam < "8.2.7"
  95. docteur < "0.0.4"
  96. dolmen_bin < "0.7"
  97. dream-cli < "0.2.0"
  98. dryunit
  99. dscheck >= "0.2.0"
  100. duff < "0.3"
  101. dune-deps >= "1.1.0" & < "1.4.0"
  102. dune-expand
  103. dune-release < "1.6.1"
  104. dune_deps_extra
  105. earlybird < "1.2.0"
  106. elasticsearch-cli
  107. electrod
  108. electrumAnalyzer
  109. elpi
  110. equinoxe < "0.2.0"
  111. erlang
  112. ez_cmdliner < "0.4.3"
  113. facteur
  114. fat-filesystem < "0.15.1"
  115. fit < "1.0.3"
  116. fsevents-lwt
  117. functoria-runtime < "4.0.0"
  118. git >= "3.2.0" & < "3.15.0"
  119. git-unix < "3.15.0"
  120. github-unix < "4.5.0"
  121. gobba
  122. gospel < "0.2.0"
  123. happy-eyeballs-lwt < "0.6.0"
  124. hlarp
  125. hll < "4.3"
  126. http-lwt-client < "0.0.8"
  127. hvsock < "3.0.1"
  128. hxd < "0.3.2"
  129. igvxml
  130. index >= "1.3.0"
  131. index-bench
  132. irmin-bench < "3.11.0"
  133. irmin-cli < "3.11.0"
  134. irmin-pack < "3.11.0"
  135. irmin-server < "3.11.0"
  136. irmin-test < "3.11.0"
  137. irmin-tezos < "3.11.0"
  138. irmin-unix
  139. js_of_ocaml-compiler < "4.1.0"
  140. jsonxt
  141. kafka < "0.5"
  142. kafka_lwt
  143. kinetic-client
  144. lab < "0.1.4"
  145. labrys
  146. lambdapi < "2.2.0"
  147. learn-ocaml < "0.14.1"
  148. learn-ocaml-client < "0.14.1"
  149. lilac
  150. llopt
  151. mastodon-archive-viewer < "0.4.0"
  152. mdx < "2.2.0"
  153. merge-fmt < "0.3"
  154. minicaml >= "0.2.2"
  155. mirage = "4.0.0"
  156. mirage-monitoring < "0.0.8"
  157. mirage-runtime = "4.0.0"
  158. mirage-seal
  159. mkaudio < "1.1.3"
  160. mlgpx
  161. mnet-cli
  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 < "removed"
  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-ed
  196. opam-grep >= "0.2.0" & < "0.4.0"
  197. opam-installer < "2.5.0~beta1"
  198. opam-lib
  199. opam-lock
  200. opam-package-upgrade
  201. opam-publish >= "0.3.5" & < "2.2.0"
  202. opam-test < "0.2.3"
  203. opium
  204. ordma >= "0.0.5"
  205. orun
  206. osbx
  207. oskel
  208. osx-fsevents
  209. owee >= "0.8"
  210. owi >= "0.2"
  211. owork
  212. passage >= "0.1.8" & < "0.3.2"
  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. tidy_email_mailgun
  248. tidy_email_sendgrid
  249. tidy_email_smtp
  250. timmy
  251. tldr >= "0.3.0"
  252. torch < "v0.16.0"
  253. touist
  254. uring < "0.3"
  255. user-setup
  256. uuuu < "0.2.0"
  257. valentine
  258. vchan < "6.0.2"
  259. vecosek
  260. wayland < "1.1"
  261. webauthn < "0.2.0"
  262. xapi-inventory
  263. xen-evtchn
  264. xen-evtchn-unix
  265. xen-gnt
  266. yuscii < "0.3.0"
  267. zeit

Conflicts

None