[slime-cvs] CVS slime
CVS User heller
heller at common-lisp.net
Thu Jan 8 06:45:46 UTC 2009
Update of /project/slime/cvsroot/slime
In directory cl-net:/tmp/cvs-serv26829
Modified Files:
ChangeLog swank.lisp
Log Message:
* swank.lisp (*sldb-pprint-dispatch-table*): Honor *print-escape*
--- /project/slime/cvsroot/slime/ChangeLog 2009/01/08 06:45:37 1.1646
+++ /project/slime/cvsroot/slime/ChangeLog 2009/01/08 06:45:45 1.1647
@@ -1,5 +1,9 @@
2009-01-07 Helmut Eller <heller at common-lisp.net>
+ * swank.lisp (*sldb-pprint-dispatch-table*): Honor *print-escape*
+
+2009-01-07 Helmut Eller <heller at common-lisp.net>
+
* swank-cmucl.lisp (frame-locals, frame-debug-vars): Remove
non-valid variables.
(debug-var-value): Compute the location from the frame arg.
--- /project/slime/cvsroot/slime/swank.lisp 2009/01/05 11:14:13 1.625
+++ /project/slime/cvsroot/slime/swank.lisp 2009/01/08 06:45:45 1.626
@@ -116,16 +116,21 @@
(write bit :stream stream))))
(sldb-string-pprint (stream string)
;;; Truncate strings according to *SLDB-STRING-LENGTH*.
- (if (or (not *print-array*) (not *print-length*))
- (let ((*print-pprint-dispatch* initial-table))
- (write string :stream stream))
- (loop initially (write-char #\" stream)
- for i from 0 and char across string do
- (when (= i *sldb-string-length*)
- (write-string "..." stream)
- (loop-finish))
- (write-char char stream)
- finally (write-char #\" stream)))))
+ (cond ((or (not *print-array*) (not *print-length*))
+ (let ((*print-pprint-dispatch* initial-table))
+ (write string :stream stream)))
+ ((not *print-escape*)
+ (write-string string stream))
+ (t
+ (loop initially (write-char #\" stream)
+ for i from 0 and char across string do
+ (cond ((= i *sldb-string-length*)
+ (write-string "..." stream)
+ (loop-finish))
+ ((char= char #\")
+ (write-string "\\\"" stream))
+ (t (write-char char stream)))
+ finally (write-char #\" stream))))))
(set-pprint-dispatch 'bit-vector #'sldb-bitvector-pprint 0 result-table)
(set-pprint-dispatch 'string #'sldb-string-pprint 0 result-table)
result-table)))
More information about the slime-cvs
mailing list