 
 ACTIONS later in the list take precedence over earlier ones with
 regard to keybindings."
+  (when noninteractive
+    (error (format "Cannot display prompt in batch mode: %s" prompt)))
   (unless (assoc "C-g" actions)
     (setq actions (append actions '(("C-g" "Cancel" keyboard-quit)))))
   (let ((keymap (make-sparse-keymap))


;;;;; Messaging

(defmacro straight--with-progress (task &rest body)
  "Displaying TASK as a progress indicator, eval and return BODY.
Display \"TASK...\", eval BODY, display \"TASK...done\", and

                             ,task-sym)))
       (prog2
           (when ,task-car-sym
             (straight--output "%s..." ,task-car-sym))
           (progn
             ,@body)
         (when (and ,task-cdr-sym (not noninteractive))
           (message "%s...done" ,task-cdr-sym))))))

(defun straight--progress-begin (message)
