From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marcin Borkowski Subject: Re: How to make agenda generation faster Date: Wed, 10 Oct 2018 22:01:23 +0200 Message-ID: <87r2gx8tbg.fsf@mbork.pl> References: <87h8hy1ho5.fsf@mbork.pl> <87o9c34ocl.fsf@alphapapa.net> <877eirdrqt.fsf@nicolasgoaziou.fr> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:58206) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gAKh2-0005ai-EZ for emacs-orgmode@gnu.org; Wed, 10 Oct 2018 16:02:53 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gAKgz-000756-5D for emacs-orgmode@gnu.org; Wed, 10 Oct 2018 16:02:52 -0400 Received: from mail.mojserwer.eu ([195.110.48.8]:35708) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gAKgy-00074s-UW for emacs-orgmode@gnu.org; Wed, 10 Oct 2018 16:02:49 -0400 In-reply-to: <877eirdrqt.fsf@nicolasgoaziou.fr> List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: "Emacs-orgmode" To: Nicolas Goaziou Cc: Adam Porter , emacs-orgmode@gnu.org On 2018-10-09, at 18:11, Nicolas Goaziou wrote: > Hello, > > Adam Porter writes: > >> My feedback is: there be dragons. ;) The Agenda code is very >> complicated and hard to follow, and it's hard to optimize something that >> is hard to understand. > > And hard to maintain. We should really do something about it. > >> In the long run, to get significant speed improvements, I think it may >> be necessary to reimplement the Agenda. > > Agreed. +1 > [...] > > I didn't look closely at org-ql, but I had the idea of splitting the > Agenda in two distinct parts. One would be responsible for collecting, > possibly asynchronously, and caching data from Org documents. The other > one would provide a DSL to query and display the results extracted from > the output of the first part. The second part could even be made generic > enough to be extracted from Org and become some part of Emacs. > Displaying filtered data, maybe in a timeline, could be useful for other > packages. Unfortunately, I don't have time to work on this. Ah well. > > So again, wouldn't it be nice to think about Org Agenda-ng? That is a great idea! In general, I find Org-mode to be lacking APIs. I'dlove to build some applications on top of it, but getting some information is very difficult. (For instance, I'd like to get info about clocks for all headlines in the agenda. It seems I have to implement parsing clocks myself, at least partially.) Best, -- Marcin Borkowski http://mbork.pl