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

Conflicts

None