changelog shortlog graph tags branches changeset files revisions annotate raw help

Mercurial > core / lisp/lib/cli/clap/pkg.lisp

changeset 653: 119532882cb1
parent: 6e5006dfe7b8
child: 65102f74d1ae
author: Richard Westhaver <ellis@rwest.io>
date: Sun, 15 Sep 2024 19:34:00 -0400
permissions: -rw-r--r--
description: added keyword-opts (experimental)
1 ;;; cli/clap/pkg.lisp --- Clap Package Definitions
2 
3 ;;
4 
5 ;;; Code:
6 (defpackage :cli/clap/vars
7  (:use :cl)
8  (:export :*cli-group-separator* :*no-exit* :*default-cli-def*
9  :*default-cli-class* :*cli-opt-kinds* :*cli* :*opts*
10  :*args* :*argc* :*arg* :*optc*))
11 
12 (defpackage :cli/clap/util
13  (:use :cl :std :log :sb-ext :cli/clap/vars)
14  (:export :args :arg0 :long-opt-p
15  :short-opt-p :opt-group-p :opt-string-prefix-eq :cli-opt-kind-p
16  :default-thunk
17  :long-opt-has-eq-p
18  :opt-keyword-p))
19 
20 (defpackage :cli/clap/macs
21  (:use :cl :std :log :sb-ext :cli/clap/util :cli/clap/vars)
22  (:export :defopt :defcmd
23  :make-opt-parser :with-cli-handlers :make-shorty
24  :with-opt-restart-case))
25 
26 (defpackage :cli/clap/proto
27  (:use :cl :std :log :sb-ext)
28  (:export :proc-args :clap-error :find-short-opts
29  :find-cmd :find-opts :parse-args :print-help
30  :print-usage :print-version :do-cmds :do-cmd
31  :active-cmds :active-opts :call-opt :do-opt
32  :push-cmd :push-opt :cli-equal
33  :do-opts
34  :clap-simple-error
35  :clap-simple-warning
36  :clap-warning
37  :clap-unknown-argument
38  :handle-unknown-opt
39  :handle-missing-opt
40  :handle-invalid-opt
41  :handle-unknown-arg
42  :handle-missing-arg
43  :handle-invalid-arg
44  :clap-missing-argument
45  :clap-invalid-argument
46  :activate-cmd
47  :activate-opt))
48 
49 (defpackage :cli/clap/ast
50  (:use :cl :std :log :dat/sxp)
51  (:export :cli-node :make-cli-node :cli-ast
52  :make-cli-ast :cli-node-kind :cli-node-form))
53 
54 (defpackage :cli/clap/obj
55  (:use :cl :std :log
56  :sb-ext :cli/clap/proto :cli/clap/macs :cli/clap/util
57  :cli/clap/vars :cli/clap/ast :cli/clap/util)
58  (:import-from :dat/sxp :ast)
59  (:export :make-cli :define-cli :defmain
60  :make-opts :make-cmds :parse-bool-opt :parse-string-opt
61  :parse-form-opt :parse-list-op :parse-sym-op :parse-key-op
62  :pasre-num-op :parse-file-op :parse-dir-op :cli
63  :cli-cd :with-cli :opts :cmds :debug-opts
64  :cli-opt :cli-cmd :cli-opt-val :cli-opt-lock :cli-opt-name
65  :active-cmds
66  :%compose-keyword-opt))
67 
68 (defpackage :cli/clap/simple
69  (:use :cl :std :log :sb-ext)
70  (:import-from :cli/ansi :.ris)
71  (:import-from :uiop :println)
72  (:import-from :sb-ext :parse-native-namestring)
73  (:shadowing-import-from :sb-ext :exit)
74  (:export))
75 
76 (pkg:defpkg :cli/clap
77  (:nicknames :clap)
78  (:use-reexport :cli/clap/obj :cli/clap/vars :cli/clap/proto
79  :cli/clap/simple :cli/clap/util :cli/clap/macs :cli/clap/ast
80  :cli/clap/vars))