1.1--- a/lisp/lib/cli/clap/cmd.lisp Sat Sep 14 23:55:38 2024 -0400
1.2+++ b/lisp/lib/cli/clap/cmd.lisp Sun Sep 15 19:34:00 2024 -0400
1.3@@ -182,7 +182,14 @@
1.4 (clap-unknown-argument a 'cli-opt)))))
1.5 ;; OPT GROUP
1.6 else if (opt-group-p a)
1.7- collect (make-cli-node 'group nil)
1.8+ collect
1.9+ (make-cli-node 'group nil)
1.10+ ;; OPT KEYWORD (experimental)
1.11+ else if (opt-keyword-p a)
1.12+ collect (if-let ((o (car (find-opts self (string-left-trim ":" a) :recurse t))))
1.13+ (prog1 (%compose-keyword-opt o (pop args))
1.14+ (setq skip t))
1.15+ (make-cli-node 'arg a))
1.16 else ;; CMD or ARG
1.17 collect
1.18 (let ((cmd (find-cmd self a)))