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

Conflicts

None