From 303253a69e2cbb7332676afce009616cd684728d Mon Sep 17 00:00:00 2001 From: Kevin Rosenberg Date: Sun, 7 Sep 2003 05:21:59 +0000 Subject: [PATCH] 0.8.3.40: * Apply Nikodemus's patch for cl-linedit * Minor changes to inspect.lisp --- contrib/sb-aclrepl/inspect.lisp | 9 ++++----- contrib/sb-aclrepl/repl.lisp | 33 ++++++++++++++++++--------------- version.lisp-expr | 2 +- 3 files changed, 23 insertions(+), 21 deletions(-) diff --git a/contrib/sb-aclrepl/inspect.lisp b/contrib/sb-aclrepl/inspect.lisp index 476b9eb..c7b7449 100644 --- a/contrib/sb-aclrepl/inspect.lisp +++ b/contrib/sb-aclrepl/inspect.lisp @@ -1,4 +1,4 @@ -/nick;;;; Inspector for sb-aclrepl +;;;; Inspector for sb-aclrepl ;;;; ;;;; The documentation, which may or may not apply in its entirety at ;;;; any given time, for this functionality is on the ACL website: @@ -599,7 +599,7 @@ position with the label if the label is a string." cons cells and LIST-TYPE is :normal, :dotted, or :cyclic" (do ((length 1 (1+ length)) (lst (cdr object) (cdr lst))) - ((or (not(consp lst)) + ((or (not (consp lst)) (eq object lst)) (cond ((null lst) @@ -615,10 +615,9 @@ cons cells and LIST-TYPE is :normal, :dotted, or :cyclic" (multiple-value-bind (length list-type) (cons-safe-length object) (format nil "a ~A list with ~D element~:*~P~A" (string-downcase (symbol-name list-type)) length - (case list-type + (ecase list-type ((:dotted :cyclic) "+tail") - (t ""))))) - + (:normal ""))))) (defun ref32-hexstr (obj &optional (offset 0)) (format nil "~8,'0X" (ref32 obj offset))) diff --git a/contrib/sb-aclrepl/repl.lisp b/contrib/sb-aclrepl/repl.lisp index c3377e7..0b16d89 100644 --- a/contrib/sb-aclrepl/repl.lisp +++ b/contrib/sb-aclrepl/repl.lisp @@ -86,21 +86,24 @@ (defun read-cmd (input-stream) ;; Reads a command from the user and returns a user-cmd object - (let ((next-char (peek-char-non-whitespace input-stream))) - (cond - ((eql *command-char* next-char) - (dispatch-command-line input-stream)) - ((eql #\newline next-char) - (read-char input-stream) - *null-cmd*) - ((eql :eof next-char) - *eof-cmd*) - (t - (let* ((eof (cons nil *eof-marker*)) - (form (read input-stream nil eof))) - (if (eq form eof) - *eof-cmd* - (make-user-cmd :input form :func nil :hnum *cmd-number*))))))) + (let* ((next-char (peek-char-non-whitespace input-stream)) + (cmd (cond + ((eql *command-char* next-char) + (dispatch-command-line input-stream)) + ((eql #\newline next-char) + (read-char input-stream) + *null-cmd*) + ((eql :eof next-char) + *eof-cmd*) + (t + (let* ((eof (cons nil *eof-marker*)) + (form (read input-stream nil eof))) + (if (eq form eof) + *eof-cmd* + (make-user-cmd :input form :func nil :hnum *cmd-number*))))))) + (if (and (eq cmd *eof-cmd*) (typep input-stream 'string-stream)) + (throw 'repl-catcher cmd) + cmd))) (defun dispatch-command-line (input-stream) "Processes an input line that starts with *command-char*" diff --git a/version.lisp-expr b/version.lisp-expr index d4e7204..ea46aa9 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -17,4 +17,4 @@ ;;; checkins which aren't released. (And occasionally for internal ;;; versions, especially for internal versions off the main CVS ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) -"0.8.3.39" +"0.8.3.40" -- 1.7.10.4