From: Nicolas Goaziou <mail@nicolasgoaziou.fr>
To: Nathaniel Flath <flat0103@gmail.com>
Cc: Michael Brand <michael.ch.brand@gmail.com>,
org-mode List <emacs-orgmode@gnu.org>
Subject: Re: [PATH] Speedups to org-table-recalculate
Date: Sat, 22 Nov 2014 00:30:31 +0100 [thread overview]
Message-ID: <87oas03ze0.fsf@nicolasgoaziou.fr> (raw)
In-Reply-To: <CAPrg3HDmcfWbdWrfSg6ZWHfDnBpCjW21xqcHNp_0o4eZMZnm1A@mail.gmail.com> (Nathaniel Flath's message of "Fri, 21 Nov 2014 14:40:32 +0530")
Nathaniel Flath <flat0103@gmail.com> writes:
> OK, I think I fixed that.
Thanks.
I didn't verify it compiles, but your macro still looks suspicious.
> +(defmacro org-table-execute-once-per-second (t1 &rest body)
> + "If there has been more than one second since T1, execute BODY.
> +Updates T1 to 'current-time' if this condition is met. If T1 is
> +nil, always execute body."
> + `(let ((t1 ,t1))
> + (if t1
> + (let ((curtime (current-time)))
> + (when (< 0 (nth 1 (time-subtract curtime t1)))
> + (setq t1 curtime)
> + ,@body))
> + ,@body)))
You shouldn't splice BODY twice in your macro. Also, I don't get why you
need to (setq t1 curtime).
Do you need a macro at all for this task? ISTM you only need to display
a message conditionally and update a time value.
Regard,
next prev parent reply other threads:[~2014-11-21 23:30 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-29 20:03 [PATH] Speedups to org-table-recalculate Nathaniel Flath
2014-07-29 21:30 ` Bastien
2014-07-29 21:35 ` Nathaniel Flath
2014-07-29 21:42 ` Bastien
2014-08-01 21:56 ` Michael Brand
2014-08-07 22:57 ` Nathaniel Flath
2014-08-17 13:39 ` Michael Brand
2014-10-10 5:56 ` Nathaniel Flath
2014-10-10 10:35 ` Michael Brand
2014-10-10 19:43 ` Nathaniel Flath
2014-10-11 16:16 ` Michael Brand
2014-10-18 5:11 ` Nathaniel Flath
2014-10-19 19:57 ` Michael Brand
2014-10-20 1:56 ` Nathaniel Flath
2014-10-20 19:41 ` Michael Brand
2014-10-26 0:27 ` Nathaniel Flath
2014-10-26 19:58 ` Michael Brand
2014-11-09 10:18 ` Nathaniel Flath
2014-11-09 15:42 ` Michael Brand
2014-11-12 11:51 ` Nathaniel Flath
2014-11-12 19:09 ` Michael Brand
2014-11-14 13:33 ` Nathaniel Flath
2014-11-14 17:40 ` Michael Brand
2014-11-14 18:00 ` Nathaniel Flath
2014-11-14 20:19 ` Michael Brand
2014-11-14 22:37 ` Nicolas Goaziou
2014-11-21 9:10 ` Nathaniel Flath
2014-11-21 23:30 ` Nicolas Goaziou [this message]
2014-12-01 6:02 ` Nathaniel Flath
2014-12-01 6:15 ` Nathaniel Flath
2014-12-05 23:57 ` Nicolas Goaziou
2014-12-08 7:35 ` Nathaniel Flath
2014-12-08 12:56 ` Michael Brand
2014-12-14 21:07 ` Nicolas Goaziou
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
List information: https://www.orgmode.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87oas03ze0.fsf@nicolasgoaziou.fr \
--to=mail@nicolasgoaziou.fr \
--cc=emacs-orgmode@gnu.org \
--cc=flat0103@gmail.com \
--cc=michael.ch.brand@gmail.com \
/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 public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).