[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
jit-lock simplification?
From: |
Kim F. Storm |
Subject: |
jit-lock simplification? |
Date: |
Wed, 13 Sep 2006 14:25:00 +0200 |
User-agent: |
Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux) |
I was debugging a timer problem, and noticed some very odd lambda
forms in the timer-list. It turns out to be the lambda generated by
the jit-lock code below.
Wouldn't it work just as well with the following patch?
*** jit-lock.el 25 Aug 2006 08:57:52 +0200 1.55
--- jit-lock.el 13 Sep 2006 14:12:18 +0200
***************
*** 397,415 ****
;; eagerly extend the refontified region with
;; jit-lock-after-change-extend-region-functions.
(when (< start orig-start)
! (lexical-let ((start start)
! (orig-start orig-start)
! (buf (current-buffer)))
! (run-with-timer
! 0 nil (lambda ()
! (with-current-buffer buf
! (with-buffer-prepared-for-jit-lock
! (put-text-property start orig-start
! 'fontified t)))))))
;; Find the start of the next chunk, if any.
(setq start (text-property-any next end 'fontified nil))))))))
;;; Stealth fontification.
--- 397,415 ----
;; eagerly extend the refontified region with
;; jit-lock-after-change-extend-region-functions.
(when (< start orig-start)
! (run-with-timer 0 nil 'jit-lock-fontify-again
! (current-buffer) start orig-start))
;; Find the start of the next chunk, if any.
(setq start (text-property-any next end 'fontified nil))))))))
+ (defun jit-lock-fontify-again (buf start end)
+ "Fontify in buffer BUF from START to END."
+ (with-current-buffer buf
+ (with-buffer-prepared-for-jit-lock
+ (put-text-property start end 'fontified t))))
+
+
;;; Stealth fontification.
--
Kim F. Storm <address@hidden> http://www.cua.dk
- jit-lock simplification?,
Kim F. Storm <=