aboutsummaryrefslogtreecommitdiff
path: root/app/clip.lisp
diff options
context:
space:
mode:
authorColin Okay <colin@cicadas.surf>2022-08-05 08:58:35 -0500
committerColin Okay <colin@cicadas.surf>2022-08-05 08:58:35 -0500
commitf116178dcf8b450c76400e2a0fbd2991f2c227b4 (patch)
tree67fcc6a6e7035eb0b1929e495bceca2dc4fa564b /app/clip.lisp
parent5c590a614544c977964692e41b0e5c19043b142c (diff)
[wip] [refactor] [add] subcommands.
Diffstat (limited to 'app/clip.lisp')
-rw-r--r--app/clip.lisp17
1 files changed, 17 insertions, 0 deletions
diff --git a/app/clip.lisp b/app/clip.lisp
new file mode 100644
index 0000000..922cacc
--- /dev/null
+++ b/app/clip.lisp
@@ -0,0 +1,17 @@
+;;;; clip.lisp
+
+(in-package :oneliners.cli.app)
+
+(defun clip/handler (cmd)
+ (a:if-let (args (cli:command-arguments cmd))
+ (ol::run-item
+ (parse-identifier (first args)) (rest args)
+ :force-clip t)
+ (cli:print-usage-and-exit cmd t)))
+
+(defun clip/command ()
+ (cli:make-command
+ :name "clip"
+ :usage "<IDENTIFIER> [ARG ...]"
+ :description "attempt to copy the oneliner to the clipboard"
+ :handler #'clip/handler))