The default CMUCL prompt is a fairly basic *
. You can
use the *prompt*
variable to customize
this prompt, either by setting it to a constant string, or by setting
it to a function which will be called each time the prompt is
displayed.
The following code demonstrates how to make CMUCL print the current package in the prompt.
(in-package :cl-user) (defvar *last-package* nil) (defvar *cached-prompt*) (defun my-prompt () (unless (eq *last-package* *package*) (setf *cached-prompt* (concatenate 'string (or (first (package-nicknames *package*)) (package-name *package*)) "> ")) (setf *last-package* *package*)) *cached-prompt*) (setf lisp::*prompt* #'my-prompt)
If you wish to change the debugger's prompt (which defaults to
something like 0]
, where 0 indicates the number of
recursive debuggers you have entered), there is a similar variable
named DEBUG:*DEBUG-PROMPT*
. Your
function should print a string to *DEBUG-IO*
.
by Paul Foley