From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sriram Karra Subject: Re: Org Mode TOOD two way sync tool Date: Fri, 22 Jun 2012 18:03:45 +0530 Message-ID: References: <4FE45EF9.8040307@grierwhite.com> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary=e89a8ff1c094e17bda04c30ed75a Return-path: Received: from eggs.gnu.org ([208.118.235.92]:36150) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Si33e-0003JK-QZ for emacs-orgmode@gnu.org; Fri, 22 Jun 2012 08:33:58 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Si33c-0003dC-BW for emacs-orgmode@gnu.org; Fri, 22 Jun 2012 08:33:50 -0400 Received: from mail-pb0-f41.google.com ([209.85.160.41]:39746) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Si33b-0003d6-VB for emacs-orgmode@gnu.org; Fri, 22 Jun 2012 08:33:48 -0400 Received: by pbbrp2 with SMTP id rp2so3924191pbb.0 for ; Fri, 22 Jun 2012 05:33:45 -0700 (PDT) In-Reply-To: <4FE45EF9.8040307@grierwhite.com> 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-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org --e89a8ff1c094e17bda04c30ed75a Content-Type: text/plain; charset=ISO-8859-1 Chris, thanks for the pointer to org-toodledo. Does org-toodledo's handle all the options and formats of possible TODOs supported by org mode? Are you yet to implement support for anything that is parsed by the Emacs org-mode? On Fri, Jun 22, 2012 at 5:33 PM, Christopher J. White < orgmode@grierwhite.com> wrote: > Hi Karra, > > I've been working on org-toodledo.el to perform bi-directional sync of > TODO items with the Toodledo server, and faced many of the same issues you > raise about figuring out the exact format and grammar of a TODO item. > > You may find looking at my source useful, either as inspiration, > integration, or just understanding what fields are what. > > The general approach was to build an object that represents a parsed TODO > item, and fill that in from either the org-buffer TODO items, or from items > retrieved from the server. That object can then be compared to others (one > from the server and one from the local buffer), converted to a new org > TODO, sent to the server as a new TODO, etc. The components of the TODO > item are obviously targeted to what makes sense for Toodledo, but I think > they are fairly generic. > > You might also look at org-element.el which I recently learned about which > may also help. I have it on my TODO list to learn more about it to see if > I can't refactor org-toodledo to leverage it. It is more geared toward > generic org items as opposed to specifically TODO items. > > ...cj > > > On 6/22/12 2:40 AM, Sriram Karra wrote: > >> I am the author of ASynK (http://karra-asynk.appspot.**com), >> a PIM sync >> tool and framework written in python that works across a variety of PIM >> providers such as Outlook, Google and BBDB. I am considering extending >> ASynK to do a bi-directional sync of Outlook tasks to Org Mode tasks. To >> be able to do this I need a working read/write API for reading and >> creating TODOs in org mode. >> >> *"Offline parsers"* >> >> >> My first preference is to be able to parser org files without required >> Emacs - this is the approach that I have implemented for BBDB sync. I >> considered PyOrgMode (https://github.com/bjonnh/**PyOrgMode/network), >> but >> it appears unable to process TODOs, or even recurring events. To be able >> to extend PyOrgMode so I can read and write TODOs, I needed a full >> description of the format of TODO entries in all its forms. The Org >> manual itself has this information, I'm sure but scattered all over the >> place, given its real audience. Can someone point me to some sort of a >> concise representation, if any, of the org file format grammar? >> >> *org-protocol* >> * >> >> * >> By quickly reading the documentation I figured that org-protocol can be >> used to create entries, but is there a way to use it to do generic >> queries like "list all TODOs in a specified file, with a particular >> property value" and such? >> >> Any help is much appreciated. >> >> -Karra >> > > > --e89a8ff1c094e17bda04c30ed75a Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable

Chris, thanks for the pointer to org-toodledo. Does org-tood= ledo's handle all the options and formats of possible TODOs supported b= y org mode? Are you yet to implement support for anything that is parsed by= the Emacs org-mode?

On Fri, Jun 22, 2012 at 5:33 PM, Christopher= J. White <orgmode@grierwhite.com> wrote:
Hi Karra,

I've been working on org-toodledo.el to perform bi-directional sync of = TODO items with the Toodledo server, and faced many of the same issues you = raise about figuring out the exact format and grammar of a TODO item.

You may find looking at my source useful, either as inspiration, integratio= n, or just understanding what fields are what.

The general approach was to build an object that represents a parsed TODO i= tem, and fill that in from either the org-buffer TODO items, or from items = retrieved from the server. =A0That object can then be compared to others (o= ne from the server and one from the local buffer), converted to a new org T= ODO, sent to the server as a new TODO, etc. =A0The components of the TODO i= tem are obviously targeted to what makes sense for Toodledo, but I think th= ey are fairly generic.

You might also look at org-element.el which I recently learned about which = may also help. =A0I have it on my TODO list to learn more about it to see i= f I can't refactor org-toodledo to leverage it. =A0It is more geared to= ward generic org items as opposed to specifically TODO items.

...cj


On 6/22/12 2:40 AM, Sriram Karra wrote:
I am the author of ASynK (http://karra-asynk.appspot.com), a PIM sync
tool and framework written in python that works across a variety of PIM
providers such as Outlook, Google and BBDB. I am considering extending
ASynK to do a bi-directional sync of Outlook tasks to Org Mode tasks. To be able to do this I need a working read/write API for reading and
creating TODOs in org mode.

*"Offline parsers"*


My first preference is to be able to parser org files without required
Emacs - this is the approach that I have implemented for BBDB sync. I
considered PyOrgMode (https://github.com/bjonnh/PyOrgMode/network= ), but
it appears unable to process TODOs, or even recurring events. To be able to extend PyOrgMode so I can read and write TODOs, I needed a full
description of the format of TODO entries in all its forms. The Org
manual itself has this information, I'm sure but scattered all over the=
place, given its real audience. Can someone point me to some sort of a
concise representation, if any, of the org file format grammar?

*org-protocol*
*

*
By quickly reading the documentation I figured that org-protocol can be
used to create entries, but is there a way to use it to do generic
queries like "list all TODOs in a specified file, with a particular property value" and such?

Any help is much appreciated.

-Karra



--e89a8ff1c094e17bda04c30ed75a--