[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Orgmode] Re: orgmode and physical fitness training
From: |
Eric Schulte |
Subject: |
[Orgmode] Re: orgmode and physical fitness training |
Date: |
Fri, 07 Nov 2008 10:02:19 -0800 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (gnu/linux) |
Mikael Fornius <address@hidden> writes:
> Thanks for org-collector.el, now I have read it and tried it out.
>
> It is very nice to have the possibility to evaluate lisp expressions as
> values, that is something missing in org-columns!
>
I'm happy someone else is finding it useful!
>
> But it was only a few seconds faster than column-view and column dblock
> and therefore not fast enough for my slow computer ;-). I timed it to 62
> seconds to insert exercise data table for one year (83 headings) with 4
> columns and no calculations.
>
> * ELP Profiling Results
>
> |---------------------------+-------+--------------+--------------|
> | org-dblock-write:propview | 1 | 62.158395 | 62.158395 |
> | org-propview-collect | 1 | 60.578724 | 60.578724 |
> | org-map-entries | 1 | 60.519551 | 60.519551 |
> | org-scan-tags | 1 | 60.267157 | 60.267157 |
> | org-entry-properties | 94 | 57.451918999 | 0.6111906276 |
> | org-get-tags-at | 94 | 54.069399999 | 0.5752063829 |
> | org-up-heading-all | 365 | 53.664638999 | 0.1470264082 |
> | outline-up-heading | 365 | 53.647627 | 0.1469798 |
> | outline-previous-heading | 29751 | 39.418412999 | 0.0013249441 |
> | org-outline-level | 30306 | 6.0971540000 | 0.0002011863 |
> | org-split-string | 555 | 2.0629750000 | 0.0037170720 |
> |---------------------------+-------+--------------+--------------|
>
> It is clear from above who is the time thief.
>
Speeding up these functions would also pay off if/when org-mode is used
on more portable handheld computers.
>
> Attaches diff if interested :-)
Thanks,
I will certainly apply this to org-collector.el. In fact if you would
be interested in collaborating on this tool --for speed, stability,
cleaner arguments and results printing-- I could upload this to worg
where we could both make changes.
Best -- Eric
>
> *** /home/mfo/org/org-collector.el~ 2008-11-07 17:19:12.000000000 +0100
> --- /home/mfo/org/org-collector.el 2008-11-07 18:14:23.000000000 +0100
> ***************
> *** 27,45 ****
> Otherwise if prop looks like a list (meaning it starts with a
> '(') then read it as lisp, otherwise return it unmodified as a
> string."
> ! (if (stringp prop)
> ! (if prop
> ! (let ((out (string-to-number prop)))
> ! (if (equal out 0)
> ! (if (or (equal "(" (substring prop 0 1)) (equal "'" (substring
> prop 0 1)))
> ! (read prop)
> ! (if (string-match "^\\(+0\\|-0\\|0\\)$" prop)
> ! 0
> ! (progn (set-text-properties 0 (length prop) nil prop)
> ! prop)))
> ! out))
> ! nil)
> ! prop))
>
> (defun org-dblock-write:propview (params)
> "collect the column specification from the #+cols line
> --- 27,43 ----
> Otherwise if prop looks like a list (meaning it starts with a
> '(') then read it as lisp, otherwise return it unmodified as a
> string."
> ! (if (and (stringp prop) (not (equal prop "")))
> ! (let ((out (string-to-number prop)))
> ! (if (equal out 0)
> ! (if (or (equal "(" (substring prop 0 1)) (equal "'" (substring prop
> 0 1)))
> ! (read prop)
> ! (if (string-match "^\\(+0\\|-0\\|0\\)$" prop)
> ! 0
> ! (progn (set-text-properties 0 (length prop) nil prop)
> ! prop)))
> ! out))
> ! prop))
>
> (defun org-dblock-write:propview (params)
> "collect the column specification from the #+cols line
>
> /Mikael Fornius
Re: [Orgmode] Re: orgmode and physical fitness training, Carsten Dominik, 2008/11/07