all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Chong Yidong <cyd@stupidchicken.com>
Cc: rudalics@gmx.at, rms@gnu.org, emacs-devel@gnu.org
Subject: Re: jit-lock timer etc.
Date: Thu, 24 Aug 2006 10:47:35 -0400	[thread overview]
Message-ID: <87r6z68a2g.fsf@furball.mit.edu> (raw)
In-Reply-To: <m3u0424i3e.fsf@kfs-l.imdomain.dk> (Kim F. Storm's message of "Thu, 24 Aug 2006 11:07:49 +0200")

storm@cua.dk (Kim F. Storm) writes:

>> Shall I fix current-idle-time to return a float or nil?

A more correct course of action is to leave current-idle-time the way
it is, and extend timer-set-idle-time to accept the internal time
format, analogously to timer-set-time.  Then we can submit the value
of current-idle-time directly to timer-set-idle-time.

*** emacs/lisp/emacs-lisp/timer.el.~1.12.~	2006-08-20 09:55:37.000000000 -0400
--- emacs/lisp/emacs-lisp/timer.el	2006-08-24 10:45:48.000000000 -0400
***************
*** 60,73 ****
  
  (defun timer-set-idle-time (timer secs &optional repeat)
    "Set the trigger idle time of TIMER to SECS.
  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"))
!   (aset timer 1 0)
!   (aset timer 2 0)
!   (aset timer 3 0)
!   (timer-inc-time timer secs)
    (aset timer 4 repeat)
    timer)
  
--- 60,81 ----
  
  (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)
  
***************
*** 104,110 ****
  
  (defun timer-relative-time (time secs &optional usecs)
    "Advance TIME by SECS seconds and optionally USECS microseconds.
! SECS may be a fraction."
    (let ((high (car time))
  	(low (if (consp (cdr time)) (nth 1 time) (cdr time)))
  	(micro (if (numberp (car-safe (cdr-safe (cdr time))))
--- 112,118 ----
  
  (defun timer-relative-time (time secs &optional usecs)
    "Advance TIME by SECS seconds and optionally USECS microseconds.
! SECS may be either an integer or a floating point number."
    (let ((high (car time))
  	(low (if (consp (cdr time)) (nth 1 time) (cdr time)))
  	(micro (if (numberp (car-safe (cdr-safe (cdr time))))

  reply	other threads:[~2006-08-24 14:47 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-08-21 11:12 jit-lock timer etc Richard Stallman
2006-08-21 11:39 ` Kim F. Storm
2006-08-21 16:57   ` martin rudalics
2006-08-21 18:51     ` Chong Yidong
2006-08-21 22:22       ` martin rudalics
2006-08-21 23:26         ` Chong Yidong
2006-08-22  7:18         ` Kim F. Storm
2006-08-22 15:41         ` Richard Stallman
2006-08-23 12:27           ` martin rudalics
2006-08-23 13:09             ` Kim F. Storm
2006-08-24  5:20               ` Richard Stallman
2006-08-24  7:47                 ` Kim F. Storm
2006-08-24  7:58                   ` Kim F. Storm
2006-08-24  9:07                     ` Kim F. Storm
2006-08-24 14:47                       ` Chong Yidong [this message]
2006-08-25 20:23                     ` Richard Stallman
2006-08-25 22:45                       ` Kim F. Storm
2006-08-25 20:23                   ` Richard Stallman
2006-08-25 21:27                     ` Chong Yidong
2006-08-26 12:22                       ` Richard Stallman
2006-08-24  9:10               ` Kim F. Storm
2006-08-24 12:23                 ` martin rudalics
2006-08-24 12:54                   ` Kim F. Storm
2006-08-24 13:07                   ` Kim F. Storm
2006-08-24 13:11                     ` Kim F. Storm
2006-08-24 13:34                       ` Kim F. Storm
2006-08-24 18:11                         ` martin rudalics
2006-08-24 20:11                           ` Kim F. Storm
2006-08-24 23:41                             ` Chong Yidong
2006-08-25  7:17                               ` Kim F. Storm
2006-08-24 14:16                     ` Chong Yidong
2006-08-24  5:20             ` Richard Stallman
2006-08-24  7:48               ` Kim F. Storm
2006-08-24 12:21               ` martin rudalics
2006-08-24 15:27             ` Chong Yidong
2006-08-24 15:40               ` Chong Yidong
2006-08-24 18:09                 ` martin rudalics
2006-08-24 19:16                   ` Stefan Monnier
2006-08-24 19:20                     ` Stefan Monnier
2006-08-24 16:18               ` martin rudalics
2006-08-24 16:34                 ` Chong Yidong
2006-08-24 19:48                 ` Chong Yidong
2006-08-25  6:00                   ` martin rudalics

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87r6z68a2g.fsf@furball.mit.edu \
    --to=cyd@stupidchicken.com \
    --cc=emacs-devel@gnu.org \
    --cc=rms@gnu.org \
    --cc=rudalics@gmx.at \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.