Re: [O] Speeding up agenda custom command with org-agenda-earlier & org-agenda-later

2018-06-23 Thread Nicolas Goaziou
Hello,

Zongheng Yang  writes:

> Cool, looking forward to see the rewrite!

So do I. But I'm not volunteering :)

Regards,

-- 
Nicolas Goaziou



Re: [O] Speeding up agenda custom command with org-agenda-earlier & org-agenda-later

2018-06-23 Thread Samuel Wales
hehe we don't know if the rewrite will occur, or when.  :]

> I don't think is it planned. Feel free to implement it, if you want to.

> I consider Org agenda in dire need of rewriting, though. for better 
> scalability and easier maintenance.

for me, the biggest problem in all of emacs is the speed of 1-day and
2-day org agenda.  [i never need 30 days, or if i do, i'm willing to
have that take quite a few minutes just so that the 1-day and 2-day
speeds are maximized.]  i've done all of bastien's recommended speed
hacks and a couple more like turning off diary [which doesn't do much
but still].

regular text search is ok.  it's only the one that has to parse
timestamps that is slow.  profiling reveals nothing obvious so i
imagine it has been optimized thoroughly.

so for me, scalability means only scaling to more files [threading
useful here?] and larger files, and only for the daily agenda "a".
but i imagine a rewrite would maybe start from scratch.


On 6/22/18, Zongheng Yang  wrote:
> Cool, looking forward to see the rewrite!
>
> On Fri, Jun 22, 2018 at 1:49 PM Nicolas Goaziou 
> wrote:
>
>> Hello,
>>
>> Zongheng Yang  writes:
>>
>> > Here's an agenda custom command that acts as the main interface I
>> interact
>> > with org (in fact, emacs :)).
>> >
>> >   (setq org-agenda-custom-commands
>> > '(("c" "Simple agenda view"
>> >((agenda "")
>> > (tags "PRIORITY=\"A\""
>> >   ((org-agenda-files '("~/org/work.org"
>> > "~/org/ideas.org
>> "))
>> >(org-agenda-skip-function '(org-agenda-skip-entry-if
>> > 'todo 'done))
>> >(org-agenda-overriding-header "High-priority
>> > tasks:")
>> >))
>> > (tags-todo "PRIORITY=\"C\""
>> >((org-agenda-files '("~/org/work.org" "~/org/
>> > ideas.org"))
>> > (org-agenda-overriding-header "Long-term:")))
>> > (alltodo ""
>> >  ((org-agenda-skip-function
>> >'(or (zongheng-org-skip-subtree-if-priority ?A)
>> > (zongheng-org-skip-subtree-if-priority ?C)
>> > (org-agenda-skip-if nil '(scheduled
>> deadline
>> >   (org-agenda-overriding-header "Other tasks:")))
>> > 
>> >
>> > After I get into this view, I frequently issue many
>> > "org-agenda-earlier"
>> &
>> > "org-agenda-later" commands, often in a back-and-forth fashion, to
>> inspect
>> > what I've done around certain periods.
>> >
>> > In such a use case, it seems there's *no reason to not cache results*.
>> > Without such caching currently *the latency of switching is really
>> > high*;
>> > with such a caching, I'm happy to pay an one-time latency/CPU cost for
>> the
>> > first command, as long as successive commands can be sped up.
>> >
>> > Is a feature like this planned?
>>
>> I don't think is it planned. Feel free to implement it, if you want to.
>>
>> I consider Org agenda in dire need of rewriting, though. for better
>> scalability and easier maintenance.
>>
>> Regards,
>>
>> --
>> Nicolas Goaziou
>>
>


-- 
The Kafka Pandemic: 

The disease DOES progress. MANY people have died from it. And ANYBODY
can get it at any time.

"You’ve really gotta quit this and get moving, because this is murder
by neglect." ---
.



Re: [O] Speeding up agenda custom command with org-agenda-earlier & org-agenda-later

2018-06-22 Thread Zongheng Yang
Cool, looking forward to see the rewrite!

On Fri, Jun 22, 2018 at 1:49 PM Nicolas Goaziou 
wrote:

> Hello,
>
> Zongheng Yang  writes:
>
> > Here's an agenda custom command that acts as the main interface I
> interact
> > with org (in fact, emacs :)).
> >
> >   (setq org-agenda-custom-commands
> > '(("c" "Simple agenda view"
> >((agenda "")
> > (tags "PRIORITY=\"A\""
> >   ((org-agenda-files '("~/org/work.org" "~/org/ideas.org
> "))
> >(org-agenda-skip-function '(org-agenda-skip-entry-if
> > 'todo 'done))
> >(org-agenda-overriding-header "High-priority tasks:")
> >))
> > (tags-todo "PRIORITY=\"C\""
> >((org-agenda-files '("~/org/work.org" "~/org/
> > ideas.org"))
> > (org-agenda-overriding-header "Long-term:")))
> > (alltodo ""
> >  ((org-agenda-skip-function
> >'(or (zongheng-org-skip-subtree-if-priority ?A)
> > (zongheng-org-skip-subtree-if-priority ?C)
> > (org-agenda-skip-if nil '(scheduled
> deadline
> >   (org-agenda-overriding-header "Other tasks:")))
> > 
> >
> > After I get into this view, I frequently issue many "org-agenda-earlier"
> &
> > "org-agenda-later" commands, often in a back-and-forth fashion, to
> inspect
> > what I've done around certain periods.
> >
> > In such a use case, it seems there's *no reason to not cache results*.
> > Without such caching currently *the latency of switching is really high*;
> > with such a caching, I'm happy to pay an one-time latency/CPU cost for
> the
> > first command, as long as successive commands can be sped up.
> >
> > Is a feature like this planned?
>
> I don't think is it planned. Feel free to implement it, if you want to.
>
> I consider Org agenda in dire need of rewriting, though. for better
> scalability and easier maintenance.
>
> Regards,
>
> --
> Nicolas Goaziou
>


Re: [O] Speeding up agenda custom command with org-agenda-earlier & org-agenda-later

2018-06-22 Thread Nicolas Goaziou
Hello,

Zongheng Yang  writes:

> Here's an agenda custom command that acts as the main interface I interact
> with org (in fact, emacs :)).
>
>   (setq org-agenda-custom-commands
> '(("c" "Simple agenda view"
>((agenda "")
> (tags "PRIORITY=\"A\""
>   ((org-agenda-files '("~/org/work.org" "~/org/ideas.org"))
>(org-agenda-skip-function '(org-agenda-skip-entry-if
> 'todo 'done))
>(org-agenda-overriding-header "High-priority tasks:")
>))
> (tags-todo "PRIORITY=\"C\""
>((org-agenda-files '("~/org/work.org" "~/org/
> ideas.org"))
> (org-agenda-overriding-header "Long-term:")))
> (alltodo ""
>  ((org-agenda-skip-function
>'(or (zongheng-org-skip-subtree-if-priority ?A)
> (zongheng-org-skip-subtree-if-priority ?C)
> (org-agenda-skip-if nil '(scheduled deadline
>   (org-agenda-overriding-header "Other tasks:")))
> 
>
> After I get into this view, I frequently issue many "org-agenda-earlier" &
> "org-agenda-later" commands, often in a back-and-forth fashion, to inspect
> what I've done around certain periods.
>
> In such a use case, it seems there's *no reason to not cache results*.
> Without such caching currently *the latency of switching is really high*;
> with such a caching, I'm happy to pay an one-time latency/CPU cost for the
> first command, as long as successive commands can be sped up.
>
> Is a feature like this planned?

I don't think is it planned. Feel free to implement it, if you want to.

I consider Org agenda in dire need of rewriting, though. for better
scalability and easier maintenance.

Regards,

-- 
Nicolas Goaziou



[O] Speeding up agenda custom command with org-agenda-earlier & org-agenda-later

2018-06-20 Thread Zongheng Yang
Hi,

Here's an agenda custom command that acts as the main interface I interact
with org (in fact, emacs :)).

  (setq org-agenda-custom-commands
'(("c" "Simple agenda view"
   ((agenda "")
(tags "PRIORITY=\"A\""
  ((org-agenda-files '("~/org/work.org" "~/org/ideas.org"))
   (org-agenda-skip-function '(org-agenda-skip-entry-if
'todo 'done))
   (org-agenda-overriding-header "High-priority tasks:")
   ))
(tags-todo "PRIORITY=\"C\""
   ((org-agenda-files '("~/org/work.org" "~/org/
ideas.org"))
(org-agenda-overriding-header "Long-term:")))
(alltodo ""
 ((org-agenda-skip-function
   '(or (zongheng-org-skip-subtree-if-priority ?A)
(zongheng-org-skip-subtree-if-priority ?C)
(org-agenda-skip-if nil '(scheduled deadline
  (org-agenda-overriding-header "Other tasks:")))


After I get into this view, I frequently issue many "org-agenda-earlier" &
"org-agenda-later" commands, often in a back-and-forth fashion, to inspect
what I've done around certain periods.

In such a use case, it seems there's *no reason to not cache results*.
Without such caching currently *the latency of switching is really high*;
with such a caching, I'm happy to pay an one-time latency/CPU cost for the
first command, as long as successive commands can be sped up.

Is a feature like this planned?

Thanks,
Zongheng