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. orun
  274. osbx
  275. osx-fsevents
  276. owee >= "0.8"
  277. owi >= "0.2"
  278. owork
  279. passage
  280. passmakercmd
  281. pds >= "4.13"
  282. pg_query >= "0.9.6"
  283. pkcs11-cli
  284. plotkicadsch
  285. polly
  286. pplumbing
  287. ppx_deriving_cmdliner
  288. ppx_subliner
  289. ppxlib-tools
  290. prelude < "0.5"
  291. prof_spacetime
  292. prometheus-app
  293. protocol-9p < "0.12.1"
  294. protocol-9p-tool
  295. protocol-9p-unix < "0.12.1"
  296. pyast
  297. pyml_bindgen >= "0.4.1"
  298. pyre-ast
  299. qcow < "0.10.2" | = "0.11.0"
  300. qcow-tool
  301. qmp
  302. queenshead
  303. randii
  304. regenerate
  305. rosetta < "0.2.0"
  306. rotor
  307. rpclib
  308. runtime_events_tools >= "0.3"
  309. runtime_events_tools_bare
  310. rust-staticlib-gen
  311. salto-analyzer
  312. scfg >= "0.4"
  313. shared-block-ring
  314. sherlodoc
  315. sid
  316. slack
  317. slacko
  318. slipshow
  319. smtml
  320. solo5-elftool
  321. spin
  322. sslconf
  323. starred_ml >= "0.0.4"
  324. sun
  325. tallgeese
  326. tcpip >= "8.0.0"
  327. telltime
  328. tensorflow
  329. testo
  330. testo-lwt
  331. tezos-context-hash-irmin
  332. tidy_email_mailgun
  333. tidy_email_sendgrid
  334. tidy_email_smtp
  335. timmy
  336. tldr >= "0.3.0"
  337. tls = "0.15.4" | >= "1.0.4"
  338. tls-lwt
  339. toc
  340. topkg-care
  341. torch < "v0.16.0"
  342. touist >= "3.5.0"
  343. tuntap
  344. uring
  345. uring-trace
  346. user-setup
  347. valentine
  348. vchan < "6.0.2"
  349. vchan-unix
  350. vecosek
  351. vendredi
  352. vpnkit
  353. wasm_of_ocaml-compiler
  354. wayland
  355. webauthn
  356. webbrowser >= "0.6.2"
  357. xapi-inventory
  358. xen-evtchn
  359. xen-evtchn-unix
  360. xen-gnt
  361. yuscii = "0.2.0"

Conflicts

None

OCaml

Innovation. Community. Security.