emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[O] Hack: org-agenda-cache.el


From: Max Mikhanosha
Subject: [O] Hack: org-agenda-cache.el
Date: Sun, 15 Jan 2012 14:47:11 -0500
User-agent: Wanderlust/2.15.9 (Almost Unreal) SEMI/1.14.6 (Maruoka) FLIM/1.14.8 (Shijō) APEL/10.6 Emacs/23.3.50 (x86_64-unknown-linux-gnu) MULE/6.0 (HANACHIRUSATO)

As my agenda files slowly grew over the years, the speed of generating
agenda had slowly deteriorated, finally hitting the point of me jdoing
something about it. (it got to around 5-7 seconds, which kind of
interrupts work-flow)

Attached file org-agenda-cache.el is a "quick fix" solution that I
developed for myself, its more of a request for discussion and not
intended as contribution yet.

Basic idea is:

1. Multiple-agenda buffers can exist at the same time, having separate
tag filters and other such settings. This is accomplished by bunch of
org-agenda-* variables being made buffer-local.

2. Custom agenda commands should bind `org-agenda-buffer-name' variable,
so that for example C-c a generates "*Agenda*" buffer and C-c t
generates "*Todo List*" buffer. 

3. org-agenda checks if buffer with `org-agenda-buffer-name' exists
and if it does, it will show that buffer, rather then re-generating
it. To generate a fresh agenda, becomes C-c a r instead of C-c a

4. org-agenda-quit buries the agenda buffer instead of killing it.

5. All of the above shenanigans can be switched on and off by doing
M-x toggle-org-agenda-caching command, its off by default so you have
to turn it on after loading the file.

I had been using this setup for last few days, and it had really been
a blast, returning me to the times when I just started with org-mode,
and information had appeared in milliseconds rather then seconds.

Attachment: org-agenda-cache.el
Description: Binary data






reply via email to

[Prev in Thread] Current Thread [Next in Thread]