Update of /project/climacs/cvsroot/climacs In directory common-lisp.net:/tmp/cvs-serv17277
Modified Files: gui.lisp syntax.lisp Log Message: Removed the line number from the status line until we have the better buffer implementation. Right now, this function requires scanning the entire buffer and counting newlines.
Fixed adjust-cache so that it doesn't do anything when there has been no modification of the buffer since previous redisplay.
Date: Mon Jan 10 06:31:20 2005 Author: rstrandh
Index: climacs/gui.lisp diff -u climacs/gui.lisp:1.60 climacs/gui.lisp:1.61 --- climacs/gui.lisp:1.60 Sun Jan 9 15:08:27 2005 +++ climacs/gui.lisp Mon Jan 10 06:31:16 2005 @@ -115,7 +115,7 @@ (name (syntax win)) (if *overwrite-mode* "Ovwrt" - (format nil "L~d" (line-number (point win))))))) + "")))) (princ name-info pane)))
(defun display-win (frame pane)
Index: climacs/syntax.lisp diff -u climacs/syntax.lisp:1.20 climacs/syntax.lisp:1.21 --- climacs/syntax.lisp:1.20 Sun Jan 9 12:54:50 2005 +++ climacs/syntax.lisp Mon Jan 10 06:31:17 2005 @@ -233,23 +233,24 @@ (and (mark< low-mark top) (>= (number-of-lines-in-region top high-mark) (nb-elements cache)))) (reposition-window pane syntax) - (let* ((n1 (number-of-lines-in-region top low-mark)) - (n2 (1+ (number-of-lines-in-region low-mark high-mark))) - (n3 (number-of-lines-in-region high-mark bot)) - (diff (- (+ n1 n2 n3) (nb-elements cache)))) - (cond ((>= (+ n1 n2 n3) (+ (nb-elements cache) 20)) - (setf (offset bot) (offset top)) - (end-of-line bot) - (loop for i from n1 below (nb-elements cache) - do (setf (element* cache i) nil))) - ((>= diff 0) - (loop repeat diff do (insert* cache n1 nil)) - (loop for i from (+ n1 diff) below (+ n1 n2) - do (setf (element* cache i) nil))) - (t - (loop repeat (- diff) do (delete* cache n1)) - (loop for i from n1 below (+ n1 n2) - do (setf (element* cache i) nil)))))))) + (when (mark>= high-mark low-mark) + (let* ((n1 (number-of-lines-in-region top low-mark)) + (n2 (1+ (number-of-lines-in-region low-mark high-mark))) + (n3 (number-of-lines-in-region high-mark bot)) + (diff (- (+ n1 n2 n3) (nb-elements cache)))) + (cond ((>= (+ n1 n2 n3) (+ (nb-elements cache) 20)) + (setf (offset bot) (offset top)) + (end-of-line bot) + (loop for i from n1 below (nb-elements cache) + do (setf (element* cache i) nil))) + ((>= diff 0) + (loop repeat diff do (insert* cache n1 nil)) + (loop for i from (+ n1 diff) below (+ n1 n2) + do (setf (element* cache i) nil))) + (t + (loop repeat (- diff) do (delete* cache n1)) + (loop for i from n1 below (+ n1 n2) + do (setf (element* cache i) nil))))))))) (adjust-cache-size-and-bot pane syntax))
(defun page-down (pane syntax)