emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/jit-lock.el


From: Richard M . Stallman
Subject: [Emacs-diffs] Changes to emacs/lisp/jit-lock.el
Date: Sat, 29 Oct 2005 15:45:40 -0400

Index: emacs/lisp/jit-lock.el
diff -c emacs/lisp/jit-lock.el:1.44 emacs/lisp/jit-lock.el:1.45
*** emacs/lisp/jit-lock.el:1.44 Tue Oct 25 15:26:41 2005
--- emacs/lisp/jit-lock.el      Sat Oct 29 19:45:40 2005
***************
*** 299,305 ****
    "Fontify current buffer starting at position START.
  This function is added to `fontification-functions' when `jit-lock-mode'
  is active."
!   (when (and jit-lock-mode (not (memory-full-p)))
      (if (null jit-lock-defer-time)
        ;; No deferral.
        (jit-lock-fontify-now start (+ start jit-lock-chunk-size))
--- 299,305 ----
    "Fontify current buffer starting at position START.
  This function is added to `fontification-functions' when `jit-lock-mode'
  is active."
!   (when (and jit-lock-mode (not memory-full))
      (if (null jit-lock-defer-time)
        ;; No deferral.
        (jit-lock-fontify-now start (+ start jit-lock-chunk-size))
***************
*** 427,432 ****
--- 427,433 ----
  `jit-lock-stealth-time' seconds."
    ;; I used to check `inhibit-read-only' here, but I can't remember why.  
-stef
    (unless (or executing-kbd-macro
+             memory-full
              (window-minibuffer-p (selected-window)))
      (let ((buffers (buffer-list))
          (outer-buffer (current-buffer))
***************
*** 490,496 ****
  
  (defun jit-lock-deferred-fontify ()
    "Fontify what was deferred."
!   (when jit-lock-defer-buffers
      ;; Mark the deferred regions back to `fontified = nil'
      (dolist (buffer jit-lock-defer-buffers)
        (when (buffer-live-p buffer)
--- 491,497 ----
  
  (defun jit-lock-deferred-fontify ()
    "Fontify what was deferred."
!   (when (and jit-lock-defer-buffers (not memory-full))
      ;; Mark the deferred regions back to `fontified = nil'
      (dolist (buffer jit-lock-defer-buffers)
        (when (buffer-live-p buffer)
***************
*** 517,549 ****
  
  (defun jit-lock-context-fontify ()
    "Refresh fontification to take new context into account."
!   (dolist (buffer (buffer-list))
!     (with-current-buffer buffer
!       (when jit-lock-context-unfontify-pos
!       ;; (message "Jit-Context %s" (buffer-name))
!       (save-restriction
!         (widen)
!         (when (and (>= jit-lock-context-unfontify-pos (point-min))
!                    (< jit-lock-context-unfontify-pos (point-max)))
!           ;; If we're in text that matches a complex multi-line
!           ;; font-lock pattern, make sure the whole text will be
!           ;; redisplayed eventually.
!           ;; Despite its name, we treat jit-lock-defer-multiline here
!           ;; rather than in jit-lock-defer since it has to do with multiple
!           ;; lines, i.e. with context.
!           (when (get-text-property jit-lock-context-unfontify-pos
!                                    'jit-lock-defer-multiline)
!             (setq jit-lock-context-unfontify-pos
!                   (or (previous-single-property-change
!                        jit-lock-context-unfontify-pos
!                        'jit-lock-defer-multiline)
!                       (point-min))))
!           (with-buffer-prepared-for-jit-lock
!            ;; Force contextual refontification.
!            (remove-text-properties
!             jit-lock-context-unfontify-pos (point-max)
!             '(fontified nil jit-lock-defer-multiline nil)))
!           (setq jit-lock-context-unfontify-pos (point-max))))))))
  
  (defun jit-lock-after-change (start end old-len)
    "Mark the rest of the buffer as not fontified after a change.
--- 518,551 ----
  
  (defun jit-lock-context-fontify ()
    "Refresh fontification to take new context into account."
!   (unless memory-full
!     (dolist (buffer (buffer-list))
!       (with-current-buffer buffer
!       (when jit-lock-context-unfontify-pos
!         ;; (message "Jit-Context %s" (buffer-name))
!         (save-restriction
!           (widen)
!           (when (and (>= jit-lock-context-unfontify-pos (point-min))
!                      (< jit-lock-context-unfontify-pos (point-max)))
!             ;; If we're in text that matches a complex multi-line
!             ;; font-lock pattern, make sure the whole text will be
!             ;; redisplayed eventually.
!             ;; Despite its name, we treat jit-lock-defer-multiline here
!             ;; rather than in jit-lock-defer since it has to do with multiple
!             ;; lines, i.e. with context.
!             (when (get-text-property jit-lock-context-unfontify-pos
!                                      'jit-lock-defer-multiline)
!               (setq jit-lock-context-unfontify-pos
!                     (or (previous-single-property-change
!                          jit-lock-context-unfontify-pos
!                          'jit-lock-defer-multiline)
!                         (point-min))))
!             (with-buffer-prepared-for-jit-lock
!              ;; Force contextual refontification.
!              (remove-text-properties
!               jit-lock-context-unfontify-pos (point-max)
!               '(fontified nil jit-lock-defer-multiline nil)))
!             (setq jit-lock-context-unfontify-pos (point-max)))))))))
  
  (defun jit-lock-after-change (start end old-len)
    "Mark the rest of the buffer as not fontified after a change.
***************
*** 553,559 ****
  This function ensures that lines following the change will be refontified
  in case the syntax of those lines has changed.  Refontification
  will take place when text is fontified stealthily."
!   (when (and jit-lock-mode (not (memory-full-p)))
      (save-excursion
        (with-buffer-prepared-for-jit-lock
         ;; It's important that the `fontified' property be set from the
--- 555,561 ----
  This function ensures that lines following the change will be refontified
  in case the syntax of those lines has changed.  Refontification
  will take place when text is fontified stealthily."
!   (when (and jit-lock-mode (not memory-full))
      (save-excursion
        (with-buffer-prepared-for-jit-lock
         ;; It's important that the `fontified' property be set from the




reply via email to

[Prev in Thread] Current Thread [Next in Thread]