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

Conflicts

None