package cmdliner

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

Install

dune-project
 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-cmdliner-err-runner
  87. cmdlang-to-cmdliner
  88. cmdliner-stdlib
  89. cmdtui-lambda-term
  90. cohttp-lwt-unix != "2.5.8"
  91. colibri2
  92. colibrics
  93. commons >= "1.8.0"
  94. compsort
  95. conex
  96. conex-mirage-crypto
  97. confero
  98. coq-lsp
  99. coq-serapi >= "8.9.0+0.6.0"
  100. cosovo
  101. cppffigen
  102. craml
  103. crowbar >= "0.2.1"
  104. crunch
  105. cucumber
  106. current
  107. current-albatross-deployer
  108. current_examples
  109. current_github
  110. current_gitlab
  111. current_web
  112. decompress < "1.0.0" | >= "1.3.0"
  113. dedukti >= "2.7"
  114. depgraph
  115. diffast-git-cli
  116. dirsift
  117. diskuvbox
  118. dkim
  119. dkim-bin
  120. dkml-component-staging-opam32 < "2.2.0~dkml20220801"
  121. dkml-component-staging-opam64 < "2.2.0~dkml20220801"
  122. dkml-install
  123. dkml-install-installer < "0.5.1"
  124. dkml-install-runner
  125. dns-cli
  126. docfd
  127. dockerfile-cmd
  128. dockerfile-opam < "8.2.7"
  129. docteur >= "0.0.4"
  130. doi2bib
  131. dolmen_bin
  132. dream-cli
  133. dryunit
  134. dscheck >= "0.2.0"
  135. dune-deps >= "1.1.0"
  136. dune-expand
  137. dune-release >= "1.6.1"
  138. dune_deps_extra
  139. earlybird
  140. eio-trace
  141. eio_linux >= "0.3"
  142. elasticsearch-cli
  143. electrod
  144. electrumAnalyzer
  145. elpi
  146. erlang
  147. extism
  148. facteur
  149. fat-filesystem
  150. fit
  151. forester >= "2.3"
  152. fsevents-lwt
  153. functoria-runtime
  154. git >= "3.2.0"
  155. git-unix >= "3.15.0"
  156. github-unix
  157. gitlab-unix >= "0.1.3"
  158. gobba
  159. gospel
  160. happy-eyeballs-lwt
  161. happy-eyeballs-miou-unix
  162. hlarp
  163. hll
  164. http-lwt-client
  165. hurl
  166. hvsock < "2.0.0" | >= "3.0.1"
  167. hxd >= "0.3.2"
  168. igvxml
  169. index >= "1.6.1"
  170. index-bench >= "1.6.1"
  171. irmin-bench
  172. irmin-cli
  173. irmin-pack != "2.10.2"
  174. irmin-pack-tools
  175. irmin-server
  176. irmin-test
  177. irmin-tezos
  178. irmin-unix
  179. jasmin >= "2023.06.0"
  180. js_of_ocaml-compiler
  181. jsonschema2atd
  182. jsonxt
  183. kafka < "0.5"
  184. kafka_lwt
  185. ke >= "0.5"
  186. kinetic-client >= "0.0.9"
  187. kmt
  188. lab
  189. labrys
  190. lambdapi != "2.1.0"
  191. learn-ocaml
  192. learn-ocaml-client
  193. ledes
  194. letsencrypt-app
  195. lilac
  196. llopt
  197. MlFront_Cli < "2.3.1"
  198. MlFront_Logs
  199. mastodon-archive-viewer
  200. mdx >= "2.2.0"
  201. mel
  202. melange
  203. meldep
  204. merge-fmt
  205. minicaml >= "0.2.2" & < "0.3.3"
  206. mirage >= "4.7.0"
  207. mirage-block-ccm
  208. mirage-logs
  209. mirage-monitoring
  210. mirage-runtime >= "4.7.0"
  211. mirage-seal
  212. mkaudio
  213. mlgpx
  214. monorobot
  215. mrmime >= "0.5.0"
  216. mustache-cli
  217. named-pipe
  218. nbd < "4.0.3"
  219. nbd-tool
  220. niru
  221. nocoiner
  222. nuscr >= "2.0.0"
  223. obandit >= "0.3.4"
  224. obuilder
  225. ocal
  226. ocamlcodoc
  227. ocamlformat >= "0.21.0"
  228. ocamlformat-lib >= "0.27.0"
  229. ocamlformat-mlx
  230. ocamlformat-mlx-lib >= "0.27.0"
  231. ocamlmig
  232. ocluster >= "0.2"
  233. ocp-browser >= "1.1.7"
  234. ocp-indent
  235. ocp-indent-nlfork
  236. ocp-index
  237. ocp-reloc
  238. octez-dal-node
  239. octez-internal-libs
  240. octez-libs
  241. octez-node
  242. octez-proxy-server
  243. odds
  244. odep
  245. odig
  246. odoc
  247. odoc-driver
  248. odoc-md >= "3.1.0"
  249. ometrics
  250. omigrate
  251. omod
  252. opam-0install >= "0.4.1"
  253. opam-0install-cudf < "0.4.1"
  254. opam-build
  255. opam-bundle
  256. opam-ci
  257. opam-client
  258. opam-compiler >= "0.2.0"
  259. opam-depext >= "1.2.1"
  260. opam-devel
  261. opam-dune-lint
  262. opam-ed
  263. opam-graph
  264. opam-grep >= "0.2.0"
  265. opam-installer
  266. opam-lib
  267. opam-lock
  268. opam-package-upgrade
  269. opam-publish >= "0.3.5"
  270. opam-test
  271. opine
  272. opium
  273. orb
  274. ordma >= "0.0.5"
  275. ortac-core
  276. ortac-dune
  277. ortac-qcheck-stm
  278. ortac-wrapper
  279. orun
  280. osbx
  281. osx-fsevents
  282. owee >= "0.8"
  283. owi >= "0.2"
  284. owork
  285. passage
  286. passmakercmd
  287. pds >= "4.13"
  288. pg_query >= "0.9.6"
  289. pkcs11-cli
  290. plotkicadsch
  291. polly
  292. pplumbing < "0.0.16"
  293. ppx_deriving_cmdliner
  294. ppx_subliner
  295. ppxlib-tools
  296. prelude < "0.5"
  297. prof_spacetime
  298. prometheus-app
  299. protocol-9p < "0.12.1"
  300. protocol-9p-tool
  301. protocol-9p-unix < "0.12.1"
  302. pyast
  303. pyml_bindgen >= "0.4.1"
  304. pyre-ast
  305. qcow < "0.10.2" | = "0.11.0"
  306. qcow-tool
  307. qmp
  308. queenshead
  309. quill
  310. randii
  311. reason >= "3.17.0"
  312. regenerate
  313. rosetta < "0.2.0"
  314. rotor
  315. rpclib
  316. runtime_events_tools
  317. runtime_events_tools_bare
  318. rust-staticlib-gen
  319. salto-analyzer
  320. scfg >= "0.4"
  321. shared-block-ring
  322. sherlodoc
  323. sid
  324. slack
  325. slacko
  326. slipshow
  327. smtml
  328. solo5-elftool
  329. spin
  330. sslconf
  331. starred_ml >= "0.0.4"
  332. sun
  333. tallgeese
  334. tcpip >= "8.0.0"
  335. telltime
  336. tensorflow
  337. testo
  338. testo-lwt
  339. tezos-context-hash-irmin
  340. tidy_email_mailgun
  341. tidy_email_sendgrid
  342. tidy_email_smtp
  343. timmy
  344. tldr >= "0.3.0"
  345. tls = "0.15.4" | >= "1.0.4"
  346. tls-lwt
  347. toc
  348. topkg-care
  349. torch < "v0.16.0"
  350. touist
  351. tuntap
  352. uring
  353. uring-trace
  354. user-setup
  355. valentine
  356. vchan < "6.0.2"
  357. vchan-unix
  358. vecosek
  359. vendredi
  360. vif
  361. vpnkit
  362. wasm_of_ocaml-compiler
  363. wayland
  364. webauthn
  365. webbrowser >= "0.6.2"
  366. xapi-inventory
  367. xen-evtchn
  368. xen-evtchn-unix
  369. xen-gnt
  370. yuscii = "0.2.0"
  371. zeit

Conflicts

None