Changeset 6774
- Timestamp:
- Jun 20, 2007, 11:34:00 AM (17 years ago)
- File:
-
- 1 edited
-
branches/ide-1.0/ccl/hemlock/src/macros.lisp (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/ide-1.0/ccl/hemlock/src/macros.lisp
r6582 r6774 560 560 (when (and (numberp height) (zerop height)) 561 561 (editor-error "I doubt that you really want a window with no height")) 562 (let ((cleanup-p (gensym)) 563 (stream (gensym))) 562 (let ((stream (gensym))) 564 563 `(let () 565 564 (let ((,stream (ccl::typeout-stream))) 566 (ccl::stream-clear-output (ccl::typeout-stream))565 (clear-output ,stream) 567 566 (unwind-protect 568 567 (progn 569 568 (catch 'more-punt 570 569 (let ((,var ,stream)) 571 ;; GB ,@decls 572 (multiple-value-prog1 573 (locally ,@body)))))))))) 570 ,@body))) 571 (force-output ,stream)))))) 574 572 575 573 … … 578 576 (defvar *random-typeout-buffers* () "A list of random-typeout buffers.") 579 577 580 (defun get-random-typeout-info (buffer-name line-buffered-p) 581 (let* ((buffer (getstring buffer-name *buffer-names*)) 582 (stream 583 (cond 584 ((not buffer) 585 (let* ((buf (make-buffer 586 buffer-name 587 :modes '("Fundamental") 588 :modeline-fields *random-typeout-ml-fields* 589 :delete-hook 590 (list #'(lambda (buffer) 591 (setq *random-typeout-buffers* 592 (delete buffer *random-typeout-buffers* 593 :key #'car)))))) 594 (point (buffer-point buf)) 595 (stream (make-random-typeout-stream 596 (copy-mark point :left-inserting)))) 597 (setf (random-typeout-stream-more-mark stream) 598 (copy-mark point :right-inserting)) 599 (push (cons buf stream) *random-typeout-buffers*) 600 stream)) 601 ((member buffer *random-typeout-buffers* :key #'car) 602 (delete-region (buffer-region buffer)) 603 (let* ((pair (assoc buffer *random-typeout-buffers*)) 604 (stream (cdr pair))) 605 (setf *random-typeout-buffers* 606 (cons pair (delete pair *random-typeout-buffers*))) 607 (setf (random-typeout-stream-first-more-p stream) t) 608 (setf (random-typeout-stream-no-prompt stream) nil) 609 stream)) 610 (t 611 (error "~A is not a random typeout buffer." 612 (buffer-name buffer)))))) 613 (setf (slot-value stream 'line-buffered-p) 614 line-buffered-p) 615 stream)) 578 616 579 617 580
Note:
See TracChangeset
for help on using the changeset viewer.
