From 08ba2769abb7a36817a725d30d64cfd36f5bcf32 Mon Sep 17 00:00:00 2001 From: Colin Okay Date: Fri, 11 Mar 2022 08:35:55 -0600 Subject: separated app and lib modules, -osicat dep, +packages.lisp --- src/prompt.lisp | 33 --------------------------------- 1 file changed, 33 deletions(-) delete mode 100644 src/prompt.lisp (limited to 'src/prompt.lisp') diff --git a/src/prompt.lisp b/src/prompt.lisp deleted file mode 100644 index afe8604..0000000 --- a/src/prompt.lisp +++ /dev/null @@ -1,33 +0,0 @@ -;;;; prompt.lisp -- a function using readlline to collect text from the user - -(defpackage #:oneliners.cli.prompt - (:use #:cl) - (:local-nicknames (#:rl #:cl-readline)) - (:export #:prompt)) - -(in-package :oneliners.cli.prompt) - -(defun prompt (prompt - &key - (expect (constantly t)) - retry-text - (prefill "")) - ;; register a prefill hook - (rl:register-hook - :pre-input - (lambda () - (rl:insert-text prefill) - (rl:redisplay))) - (unwind-protect - (loop - with prompt-text = prompt - with should-retry-p = t - while should-retry-p - for line = (rl:readline :prompt prompt-text) - when (funcall expect line) - do (setf should-retry-p nil) - when retry-text - do (setf prompt-text retry-text) - finally (return line)) - ;; unregisters the hook. - (rl:register-hook :pre-input nil))) -- cgit v1.2.3