package cmdliner

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

Install

Dune Dependency

Authors

Maintainers

Sources

cmdliner-1.3.0.tbz
sha512=4c46bc334444ff772637deae2f5ba03645d7a1b7db523470a1246acfce79b971c764d964cbb02388639b3161b279700d9ade95da550446fb32aa4849c8a8f283

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.

Home page: http://erratique.ch/software/cmdliner

README

Cmdliner — Declarative definition of command line interfaces for OCaml

v1.3.0

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

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.08.0"

Dev Dependencies

None

  1. abella >= "2.0.8"
  2. acgtk >= "2.1.0"
  3. albatross >= "1.4.3"
  4. alcotest != "1.5.0"
  5. alcotest-async
  6. alcotest-js
  7. alcotest-lwt
  8. alcotest-mirage
  9. alt-ergo >= "2.4.2"
  10. altgr-ergo >= "2.4.2"
  11. api-watch
  12. archsat
  13. areas-and-adversaries
  14. asak >= "0.2"
  15. atd >= "2.13.0"
  16. atdcpp
  17. atdd
  18. atdpy
  19. atdts
  20. awa
  21. aws-s3
  22. b0
  23. bap-abi < "2.2.0"
  24. bap-api < "2.2.0"
  25. bap-beagle < "2.3.0"
  26. bap-bil < "2.2.0"
  27. bap-byteweight-frontend
  28. bap-cache < "2.2.0"
  29. bap-callsites
  30. bap-demangle < "2.5.0"
  31. bap-dump-symbols < "2.2.0"
  32. bap-frames
  33. bap-frontend < "2.2.0"
  34. bap-fsi-benchmark
  35. bap-ida-plugin < "2.2.0"
  36. bap-llvm < "2.2.0"
  37. bap-main
  38. bap-objdump < "2.2.0"
  39. bap-optimization < "2.2.0"
  40. bap-phoenix
  41. bap-piqi
  42. bap-plugins < "2.2.0"
  43. bap-powerpc >= "2.2.0"
  44. bap-std
  45. bap-symbol-reader < "2.2.0"
  46. bap-taint-propagator
  47. bap-term-mapper < "2.2.0"
  48. bap-trace
  49. bap-veri
  50. bap-warn-unused
  51. bap-x86
  52. benchpress
  53. benchpress-server
  54. bentov
  55. bibfmt
  56. bisect_ppx >= "2.0.0"
  57. boltzgen
  58. boulangerie
  59. brozip
  60. builder
  61. builder-web >= "0.2.0"
  62. bytepdf
  63. ca-certs-nss
  64. caisar
  65. camels
  66. camyll
  67. capnp-rpc-unix
  68. caqti >= "1.8.0"
  69. caqti-async >= "1.8.0"
  70. caqti-driver-mariadb >= "1.8.0"
  71. caqti-driver-postgresql >= "1.8.0"
  72. caqti-driver-sqlite3 >= "1.8.0"
  73. caqti-dynload >= "2.0.1"
  74. caqti-eio
  75. caqti-lwt >= "1.8.0"
  76. caqti-miou
  77. carton >= "0.4.3" & < "1.0.0"
  78. carton-miou-unix
  79. catala >= "0.7.0"
  80. catala-format >= "0.2.0"
  81. certify >= "0.3.0"
  82. chamelon-unix
  83. charrua-unix
  84. checkseum >= "0.0.2" & < "0.2.0"
  85. clim-ppx
  86. cmdlang-to-cmdliner
  87. cmdliner-stdlib
  88. cmdtui-lambda-term
  89. cohttp-lwt-unix != "2.5.8"
  90. colibri2
  91. colibrics
  92. commons >= "1.8.0"
  93. compsort
  94. conex
  95. conex-mirage-crypto
  96. confero
  97. coq-lsp
  98. coq-serapi >= "8.9.0+0.6.0"
  99. cosovo
  100. cppffigen
  101. craml
  102. crowbar >= "0.2.1"
  103. crunch
  104. cucumber
  105. current
  106. current-albatross-deployer
  107. current_examples
  108. current_github
  109. current_gitlab
  110. current_web
  111. decompress < "1.0.0" | >= "1.3.0"
  112. dedukti >= "2.7"
  113. depgraph
  114. diffast-git-cli
  115. dirsift
  116. diskuvbox
  117. dkim
  118. dkim-bin
  119. dkml-component-staging-opam32 < "2.2.0~dkml20220801"
  120. dkml-component-staging-opam64 < "2.2.0~dkml20220801"
  121. dkml-install
  122. dkml-install-installer < "0.5.1"
  123. dkml-install-runner
  124. dns-cli
  125. docfd
  126. dockerfile-cmd
  127. dockerfile-opam < "8.2.7"
  128. docteur >= "0.0.4"
  129. doi2bib
  130. dolmen_bin
  131. dream-cli
  132. dryunit
  133. dscheck >= "0.2.0"
  134. dune-deps >= "1.1.0"
  135. dune-expand
  136. dune-release >= "1.6.1"
  137. dune_deps_extra
  138. earlybird
  139. eio-trace
  140. eio_linux >= "0.3"
  141. elasticsearch-cli >= "1.0"
  142. electrod
  143. electrumAnalyzer
  144. elpi
  145. erlang
  146. extism
  147. facteur
  148. fat-filesystem
  149. fit
  150. forester >= "2.3"
  151. fsevents-lwt
  152. functoria-runtime
  153. git >= "3.2.0"
  154. git-unix >= "3.15.0"
  155. github-unix
  156. gitlab-unix >= "0.1.3"
  157. gobba
  158. gospel
  159. happy-eyeballs-lwt
  160. happy-eyeballs-miou-unix
  161. hlarp
  162. hll
  163. http-lwt-client
  164. hvsock < "2.0.0" | >= "3.0.1"
  165. hxd >= "0.3.2"
  166. igvxml
  167. index >= "1.6.1"
  168. index-bench >= "1.6.1"
  169. irmin-bench
  170. irmin-cli
  171. irmin-pack != "2.10.2"
  172. irmin-pack-tools
  173. irmin-server
  174. irmin-test
  175. irmin-tezos
  176. irmin-unix
  177. jasmin >= "2023.06.0"
  178. js_of_ocaml-compiler
  179. jsonschema2atd
  180. jsonxt
  181. kafka < "0.5"
  182. kafka_lwt
  183. ke >= "0.5"
  184. kinetic-client >= "0.0.9"
  185. kmt
  186. lab
  187. labrys
  188. lambdapi != "2.1.0"
  189. learn-ocaml
  190. learn-ocaml-client
  191. ledes
  192. letsencrypt-app
  193. lilac
  194. llopt
  195. MlFront_Cli < "2.3.1"
  196. MlFront_Logs
  197. mastodon-archive-viewer
  198. mdx >= "2.2.0"
  199. mel
  200. melange
  201. meldep
  202. merge-fmt
  203. minicaml >= "0.2.2" & < "0.3.3"
  204. mirage >= "4.7.0"
  205. mirage-block-ccm
  206. mirage-logs
  207. mirage-runtime >= "4.7.0"
  208. mirage-seal
  209. mkaudio
  210. monorobot
  211. mrmime >= "0.5.0"
  212. mustache-cli
  213. named-pipe
  214. nbd < "4.0.3"
  215. nbd-tool
  216. niru
  217. nocoiner
  218. nuscr >= "2.0.0"
  219. obandit >= "0.3.4"
  220. obuilder
  221. ocal
  222. ocamlcodoc
  223. ocamlformat >= "0.21.0"
  224. ocamlformat-lib >= "0.27.0"
  225. ocamlformat-mlx
  226. ocamlformat-mlx-lib >= "0.27.0"
  227. ocamlmig
  228. ocluster >= "0.2"
  229. ocp-browser >= "1.1.7"
  230. ocp-indent
  231. ocp-indent-nlfork
  232. ocp-index
  233. ocp-reloc
  234. octez-dal-node
  235. octez-internal-libs
  236. octez-libs
  237. octez-node
  238. octez-proxy-server
  239. odds
  240. odep
  241. odig
  242. odoc
  243. odoc-driver
  244. ometrics
  245. omigrate
  246. omod
  247. opam-0install >= "0.4.1"
  248. opam-0install-cudf < "0.4.1"
  249. opam-build
  250. opam-bundle
  251. opam-ci
  252. opam-client
  253. opam-compiler >= "0.2.0"
  254. opam-depext >= "1.2.1"
  255. opam-devel
  256. opam-dune-lint
  257. opam-ed
  258. opam-graph
  259. opam-grep >= "0.2.0"
  260. opam-installer
  261. opam-lib
  262. opam-lock
  263. opam-package-upgrade
  264. opam-publish >= "0.3.5"
  265. opam-test
  266. opine
  267. opium
  268. orb
  269. ordma >= "0.0.5"
  270. ortac-core
  271. ortac-dune
  272. ortac-qcheck-stm
  273. ortac-wrapper
  274. orun
  275. osbx
  276. osx-fsevents
  277. owee >= "0.8"
  278. owi >= "0.2"
  279. owork
  280. passage
  281. passmakercmd
  282. pds >= "4.13"
  283. pg_query >= "0.9.6"
  284. pkcs11-cli
  285. plotkicadsch
  286. polly
  287. pplumbing
  288. ppx_deriving_cmdliner
  289. ppx_subliner
  290. ppxlib-tools
  291. prelude < "0.5"
  292. prof_spacetime
  293. prometheus-app
  294. protocol-9p < "0.12.1"
  295. protocol-9p-tool
  296. protocol-9p-unix < "0.12.1"
  297. pyast
  298. pyml_bindgen >= "0.4.1"
  299. pyre-ast
  300. qcow < "0.10.2" | = "0.11.0"
  301. qcow-tool
  302. qmp
  303. queenshead
  304. quill
  305. randii
  306. regenerate
  307. rosetta < "0.2.0"
  308. rotor
  309. rpclib
  310. runtime_events_tools >= "0.3"
  311. runtime_events_tools_bare
  312. rust-staticlib-gen
  313. salto-analyzer
  314. scfg >= "0.4"
  315. shared-block-ring
  316. sherlodoc
  317. sid
  318. slack
  319. slacko
  320. slipshow
  321. smtml
  322. solo5-elftool
  323. spin
  324. sslconf
  325. starred_ml >= "0.0.4"
  326. sun
  327. tallgeese
  328. tcpip >= "8.0.0"
  329. telltime
  330. tensorflow
  331. testo
  332. testo-lwt
  333. tezos-context-hash-irmin
  334. tidy_email_mailgun
  335. tidy_email_sendgrid
  336. tidy_email_smtp
  337. timmy
  338. tldr >= "0.3.0"
  339. tls = "0.15.4" | >= "1.0.4"
  340. tls-lwt
  341. toc
  342. topkg-care
  343. torch < "v0.16.0"
  344. touist >= "3.5.0"
  345. tuntap
  346. uring
  347. uring-trace
  348. user-setup
  349. valentine
  350. vchan < "6.0.2"
  351. vchan-unix
  352. vecosek
  353. vendredi
  354. vpnkit
  355. wasm_of_ocaml-compiler
  356. wayland
  357. webauthn
  358. webbrowser >= "0.6.2"
  359. xapi-inventory
  360. xen-evtchn
  361. xen-evtchn-unix
  362. xen-gnt
  363. yuscii = "0.2.0"

Conflicts

None

OCaml

Innovation. Community. Security.