From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: martin rudalics Newsgroups: gmane.emacs.devel Subject: Re: jit-lock timer etc. Date: Thu, 24 Aug 2006 18:18:31 +0200 Message-ID: <44EDD157.8010207@gmx.at> References: <44E9E5F5.8000400@gmx.at> <87fyfpq5wf.fsf@stupidchicken.com> <44EA3222.9050405@gmx.at> <44EC49AD.2080001@gmx.at> <87k64y8875.fsf@furball.mit.edu> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-15; format=flowed Content-Transfer-Encoding: 7bit X-Trace: sea.gmane.org 1156436367 31773 80.91.229.2 (24 Aug 2006 16:19:27 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Thu, 24 Aug 2006 16:19:27 +0000 (UTC) Cc: emacs-devel@gnu.org, rms@gnu.org, storm@cua.dk Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Aug 24 18:19:25 2006 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1GGHuf-0001pb-Bt for ged-emacs-devel@m.gmane.org; Thu, 24 Aug 2006 18:18:37 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1GGHue-00032S-Ls for ged-emacs-devel@m.gmane.org; Thu, 24 Aug 2006 12:18:36 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1GGHuP-0002wk-PC for emacs-devel@gnu.org; Thu, 24 Aug 2006 12:18:21 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1GGHuO-0002tm-QL for emacs-devel@gnu.org; Thu, 24 Aug 2006 12:18:21 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1GGHuO-0002tQ-MD for emacs-devel@gnu.org; Thu, 24 Aug 2006 12:18:20 -0400 Original-Received: from [213.165.64.20] (helo=mail.gmx.net) by monty-python.gnu.org with smtp (Exim 4.52) id 1GGI2U-0004EQ-3x for emacs-devel@gnu.org; Thu, 24 Aug 2006 12:26:42 -0400 Original-Received: (qmail invoked by alias); 24 Aug 2006 16:18:18 -0000 Original-Received: from N846P000.adsl.highway.telekom.at (EHLO [62.47.49.160]) [62.47.49.160] by mail.gmx.net (mp038) with SMTP; 24 Aug 2006 18:18:18 +0200 X-Authenticated: #14592706 User-Agent: Mozilla Thunderbird 1.0 (Windows/20041206) X-Accept-Language: de-DE, de, en-us, en Original-To: Chong Yidong In-Reply-To: <87k64y8875.fsf@furball.mit.edu> X-Y-GMX-Trusted: 0 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:58819 Archived-At: I don't know what was wrong with this code since you didn't post it. > It looks like you simply forgot to initialize jit-lock-stealth-repeat-timer, > but I can't be sure. As suggested by rms for his resume timer I did in `jit-lock-mode': (when (and jit-lock-stealth-time (null jit-lock-stealth-timer)) (setq jit-lock-stealth-timer (run-with-idle-timer jit-lock-stealth-time t 'jit-lock-stealth-fontify))) (when (and jit-lock-stealth-time (null jit-lock-stealth-repeat-timer)) (setq jit-lock-stealth-repeat-timer (timer-create)) (timer-set-function jit-lock-stealth-repeat-timer 'jit-lock-stealth-fontify t)) > However, the following patch, based on the last > patch you posted to this list with minimal modifications, works fine > for me. > > It applies to the current CVS tree, and uses `current-idle-time'. It > includes and uses the change to `timer-set-idle-time' which I > previously posted, allowing it to accept the value returned by > `current-idle-time'. Is this Richard's or Kim's version of `current-idle-time'. > I have verified that the idle timer triggers correctly, stops > correctly when user input comes in, and resumes when Emacs becomes > idle again. > > > *** emacs/lisp/jit-lock.el.~1.54.~ 2006-08-17 11:49:36.000000000 -0400 > --- emacs/lisp/jit-lock.el 2006-08-24 11:21:23.000000000 -0400 ... > ! (setq jit-lock-stealth-repeat-timer > ! (run-at-time delay > ! nil 'jit-lock-stealth-fontify t))))))) Richard told me not to use `run-at-time' - well it's for the first time only - but I'll have to justify why I can't `run-with-idle-time' here. > (defun timer-set-idle-time (timer secs &optional repeat) > "Set the trigger idle time of TIMER to SECS. > + SECS may be an integer, floating point number, or the internal > + time format (HIGH LOW USECS) returned by, e.g., `current-time'. > If optional third argument REPEAT is non-nil, make the timer > fire each time Emacs is idle for that many seconds." > (or (timerp timer) > (error "Invalid timer")) > ! (if (consp secs) > ! (progn (aset timer 1 (car secs)) > ! (aset timer 2 (if (consp (cdr time)) (car (cdr time)) (cdr time))) > ! (aset timer 3 (or (and (consp (cdr time)) (consp (cdr (cdr time))) > ! (nth 2 time)) > ! 0))) > ! (aset timer 1 0) > ! (aset timer 2 0) > ! (aset timer 3 0) > ! (timer-inc-time timer secs)) > (aset timer 4 repeat) > timer) Did you compile that? `time' in here gets me: In timer-set-idle-time: timer.el:71:44:Warning: reference to free variable `time'