From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sriram Karra Subject: Org Mode TOOD two way sync tool Date: Fri, 22 Jun 2012 12:10:17 +0530 Message-ID: Mime-Version: 1.0 Content-Type: multipart/alternative; boundary=e89a8ff1c97cc98deb04c309e768 Return-path: Received: from eggs.gnu.org ([208.118.235.92]:41802) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ShxXc-0004KJ-JZ for emacs-orgmode@gnu.org; Fri, 22 Jun 2012 02:40:26 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ShxXY-0002jZ-1x for emacs-orgmode@gnu.org; Fri, 22 Jun 2012 02:40:24 -0400 Received: from mail-pz0-f41.google.com ([209.85.210.41]:33059) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ShxXX-0002jJ-P5 for emacs-orgmode@gnu.org; Fri, 22 Jun 2012 02:40:19 -0400 Received: by dakp5 with SMTP id p5so2156331dak.0 for ; Thu, 21 Jun 2012 23:40:17 -0700 (PDT) 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 --e89a8ff1c97cc98deb04c309e768 Content-Type: text/plain; charset=ISO-8859-1 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 --e89a8ff1c97cc98deb04c309e768 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable I am the author of ASynK (http:/= /karra-asynk.appspot.com), a PIM sync tool and framework written in pyt= hon that works across a variety of PIM providers such as Outlook, Google an= d BBDB. I am considering extending ASynK to do a bi-directional sync of Out= look tasks to Org Mode tasks. To be able to do this I need a working read/w= rite API for reading and creating TODOs in org mode.

"Offline parsers"

= My first preference is to be able to parser org files without required Emac= s - this is the approach that I have implemented for BBDB sync. I considere= d PyOrgMode (https:= //github.com/bjonnh/PyOrgMode/network), but it appears unable to proces= s 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 ent= ries 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 t= o create entries, but is there a way to use it to do generic queries like &= quot;list all TODOs in a specified file, with a particular property value&q= uot; and such?

Any help is much appreciated.

= -Karra
--e89a8ff1c97cc98deb04c309e768-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Christopher J. White" Subject: Re: Org Mode TOOD two way sync tool Date: Fri, 22 Jun 2012 08:03:05 -0400 Message-ID: <4FE45EF9.8040307@grierwhite.com> References: Reply-To: orgmode@grierwhite.com Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: Received: from eggs.gnu.org ([208.118.235.92]:47523) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Si2a6-0003lR-Ug for emacs-orgmode@gnu.org; Fri, 22 Jun 2012 08:03:25 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Si2a0-00051g-Gw for emacs-orgmode@gnu.org; Fri, 22 Jun 2012 08:03:18 -0400 Received: from mail238c25.carrierzone.com ([64.29.147.232]:59916) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Si2a0-00050W-A1 for emacs-orgmode@gnu.org; Fri, 22 Jun 2012 08:03:12 -0400 Received: from cwhite-mbpro.local (pool-108-20-101-201.bstnma.east.verizon.net [108.20.101.201]) (authenticated bits=0) by mail238c25.carrierzone.com (8.13.6/8.13.1) with ESMTP id q5MC33qX020563 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Fri, 22 Jun 2012 12:03:06 GMT In-Reply-To: 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 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 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-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Christopher J. White" Subject: Re: Org Mode TOOD two way sync tool Date: Fri, 22 Jun 2012 10:05:22 -0400 Message-ID: <4FE47BA2.8010406@grierwhite.com> References: <4FE45EF9.8040307@grierwhite.com> Reply-To: orgmode@grierwhite.com Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: Received: from eggs.gnu.org ([208.118.235.92]:54217) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Si4UR-0001ic-UJ for emacs-orgmode@gnu.org; Fri, 22 Jun 2012 10:05:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Si4UK-0002EU-UB for emacs-orgmode@gnu.org; Fri, 22 Jun 2012 10:05:35 -0400 Received: from mail239c25.carrierzone.com ([64.29.147.231]:39474) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Si4UK-0002DY-O7 for emacs-orgmode@gnu.org; Fri, 22 Jun 2012 10:05:28 -0400 Received: from cwhite-mbpro.local (pool-108-49-0-126.bstnma.east.verizon.net [108.49.0.126]) (authenticated bits=0) by mail239c25.carrierzone.com (8.13.6/8.13.1) with ESMTP id q5ME5N4Q021878 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Fri, 22 Jun 2012 14:05:25 GMT In-Reply-To: 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 Hi Karra, On 6/22/12 8:33 AM, Sriram Karra wrote: > 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? That's a loaded question ;-) I'd have to say probably not, but it so far supports all of my TODOs. Brief list of properties handled: * TODO state * DEADLINE / SCHEDULED with repeaters * CLOSED * tags * Effort * hierarchy * folder (toodledo folders, that is) - map to a heading I'd say extending support to other properties wouldn't be too hard if it's a direct mapping that doesn't involve too much logic. > Are you yet to implement support for anything that is parsed by > the Emacs org-mode? I'm not sure what you mean -- are you referring to org-element? If not, can you clarify? ...cj From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?Q?Aur=C3=A9lien_Aptel?= Subject: Re: Org Mode TOOD two way sync tool Date: Sun, 24 Jun 2012 15:15:19 +0200 Message-ID: References: <4FE45EF9.8040307@grierwhite.com> <4FE47BA2.8010406@grierwhite.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Return-path: Received: from eggs.gnu.org ([208.118.235.92]:36111) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Simf1-0001T4-Bk for emacs-orgmode@gnu.org; Sun, 24 Jun 2012 09:15:31 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Simew-0003Fv-N1 for emacs-orgmode@gnu.org; Sun, 24 Jun 2012 09:15:26 -0400 Received: from mail-ob0-f169.google.com ([209.85.214.169]:43955) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Simew-0003Da-GR for emacs-orgmode@gnu.org; Sun, 24 Jun 2012 09:15:22 -0400 Received: by obhx4 with SMTP id x4so6521047obh.0 for ; Sun, 24 Jun 2012 06:15:19 -0700 (PDT) In-Reply-To: <4FE47BA2.8010406@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: orgmode@grierwhite.com Cc: emacs-orgmode@gnu.org Hi, I'm working on a bugtracker sync tool for org-mode [1]. I'm using org-element to parse org files, it does everything I need. It turns this * TODO blah <2012-06-25> :PROPERTIES: :foo: bar :END: Foo bar into this: (org-data nil (headline (:raw-value "blah <2012-06-25>" :title ("blah " (timestamp (:type active :value "<2012-06-25>"))) :level 1 :todo-keyword "TODO" :todo-type todo :timestamp "2012-06-25" :foo "bar" :category "???") (section () (property-drawer (:properties (("foo" . "bar")))) (paragraph () "Foo bar")))) I've removed irrelevant stuff for the example but you can get get the start/end point of each element from this structure. Just call org-element-parse-buffer. 1: http://orgmode.org/w/org-sync.git From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?Q?Aur=C3=A9lien_Aptel?= Subject: Re: Org Mode TOOD two way sync tool Date: Sun, 24 Jun 2012 15:17:05 +0200 Message-ID: References: <4FE45EF9.8040307@grierwhite.com> <4FE47BA2.8010406@grierwhite.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([208.118.235.92]:36366) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Simgf-00023I-Ca for emacs-orgmode@gnu.org; Sun, 24 Jun 2012 09:17:10 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Simgd-0003Vs-OK for emacs-orgmode@gnu.org; Sun, 24 Jun 2012 09:17:08 -0400 Received: from mail-ob0-f169.google.com ([209.85.214.169]:43586) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Simgd-0003Vk-Gr for emacs-orgmode@gnu.org; Sun, 24 Jun 2012 09:17:07 -0400 Received: by obhx4 with SMTP id x4so6523290obh.0 for ; Sun, 24 Jun 2012 06:17:05 -0700 (PDT) In-Reply-To: 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: orgmode@grierwhite.com Cc: emacs-orgmode@gnu.org On Sun, Jun 24, 2012 at 3:15 PM, Aur=C3=A9lien Aptel wrote: > Just call org-element-parse-buffer. See also org-element-interpret-data, which lets you write back the structur= e. From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christopher Allan Webber Subject: Re: Org Mode TOOD two way sync tool Date: Sun, 24 Jun 2012 12:07:52 -0500 Message-ID: <8762agsknr.fsf@grumps.lan> References: <4FE45EF9.8040307@grierwhite.com> <4FE47BA2.8010406@grierwhite.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([208.118.235.92]:51624) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SiqFT-0004hK-BF for emacs-orgmode@gnu.org; Sun, 24 Jun 2012 13:05:20 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SiqFR-0002Q8-5a for emacs-orgmode@gnu.org; Sun, 24 Jun 2012 13:05:18 -0400 Received: from li424-160.members.linode.com ([50.116.34.160]:53329 helo=dustycloud.org) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SiqFR-0002NX-0w for emacs-orgmode@gnu.org; Sun, 24 Jun 2012 13:05:17 -0400 In-Reply-To: (=?utf-8?Q?=22Aur=C3=A9lien?= Aptel"'s message of "Sun, 24 Jun 2012 15:15:19 +0200") 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: =?utf-8?Q?Aur=C3=A9lien?= Aptel Cc: orgmode@grierwhite.com, emacs-orgmode@gnu.org Hey Aur=C3=A9lien, This is great. I formerly worked on something similar: http://labs.creativecommons.org/2010/11/10/bridging-public-bugtrackers-and-= local-tasklists/ However... my solution was pretty hacky. I'd be interested to see if you come up with a generic solution that could have mapppings for multiple bugtrackers, and that could sync with bugtracking states so if the bug gets closed, the TODO does also, or at least that it warns as such, etc. Aur=C3=A9lien Aptel writes: > Hi, > > I'm working on a bugtracker sync tool for org-mode [1]. I'm using > org-element to parse org files, it does everything I need. > > It turns this > > > * TODO blah <2012-06-25> > :PROPERTIES: > :foo: bar > :END: > Foo bar > > into this: > > (org-data nil > (headline > (:raw-value "blah <2012-06-25>" :title > ("blah " > (timestamp > (:type active :value "<2012-06-25>"))) > :level 1 > :todo-keyword "TODO" > :todo-type todo > :timestamp "2012-06-25" > :foo "bar" :category "???") > (section > () > (property-drawer > (:properties (("foo" . "bar")))) > (paragraph > () > "Foo bar")))) > > > I've removed irrelevant stuff for the example but you can get get the > start/end point of each element from this structure. > Just call org-element-parse-buffer. > > 1: http://orgmode.org/w/org-sync.git From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?Q?Aur=C3=A9lien_Aptel?= Subject: Re: Org Mode TOOD two way sync tool Date: Mon, 25 Jun 2012 14:32:28 +0200 Message-ID: References: <4FE45EF9.8040307@grierwhite.com> <4FE47BA2.8010406@grierwhite.com> <8762agsknr.fsf@grumps.lan> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Return-path: Received: from eggs.gnu.org ([208.118.235.92]:57559) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Sj8T5-0007A1-Kp for emacs-orgmode@gnu.org; Mon, 25 Jun 2012 08:32:41 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Sj8T0-0002jM-5m for emacs-orgmode@gnu.org; Mon, 25 Jun 2012 08:32:35 -0400 Received: from mail-ob0-f169.google.com ([209.85.214.169]:41337) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Sj8Sz-0002j8-UN for emacs-orgmode@gnu.org; Mon, 25 Jun 2012 08:32:30 -0400 Received: by obhx4 with SMTP id x4so8384693obh.0 for ; Mon, 25 Jun 2012 05:32:28 -0700 (PDT) In-Reply-To: <8762agsknr.fsf@grumps.lan> 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: Christopher Allan Webber Cc: orgmode@grierwhite.com, emacs-orgmode@gnu.org On Sun, Jun 24, 2012 at 7:07 PM, Christopher Allan Webber wrote: > http://labs.creativecommons.org/2010/11/10/bridging-public-bugtrackers-and-local-tasklists/ Yes I've already read your post while researching for my project :) > I'd be interested to see if you come up with a generic solution that > could have mapppings for multiple bugtrackers, and that could sync with > bugtracking states so if the bug gets closed, the TODO does also, or at > least that it warns as such, etc. You'll be pleased to know that org-sync already does 2-way sync and works with Github and bitbucket atm. There is a generic library/multiple backend system in place. You might be interested in my project page on worg [1] or this announcement I made some time ago (which has a small tutorial) [2]. 1: http://orgmode.org/worg/org-contrib/gsoc2012/student-projects/org-sync/backends.html 2: http://lists.gnu.org/archive/html/emacs-orgmode/2012-06/msg00169.html From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sriram Karra Subject: Re: Org Mode TOOD two way sync tool Date: Mon, 25 Jun 2012 19:21:42 +0530 Message-ID: References: <4FE45EF9.8040307@grierwhite.com> <4FE47BA2.8010406@grierwhite.com> <8762agsknr.fsf@grumps.lan> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary=047d7b33d5fc32d80104c34c484e Return-path: Received: from eggs.gnu.org ([208.118.235.92]:40230) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Sj9hn-00053E-Hg for emacs-orgmode@gnu.org; Mon, 25 Jun 2012 09:51:57 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Sj9hi-0006CU-Iu for emacs-orgmode@gnu.org; Mon, 25 Jun 2012 09:51:51 -0400 Received: from mail-pb0-f41.google.com ([209.85.160.41]:51462) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Sj9hi-0006Bz-9E for emacs-orgmode@gnu.org; Mon, 25 Jun 2012 09:51:46 -0400 Received: by pbbrp2 with SMTP id rp2so7197272pbb.0 for ; Mon, 25 Jun 2012 06:51:43 -0700 (PDT) In-Reply-To: <8762agsknr.fsf@grumps.lan> 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: Christopher Allan Webber , emacs-orgmode@gnu.org --047d7b33d5fc32d80104c34c484e Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On Sun, Jun 24, 2012 at 10:37 PM, Christopher Allan Webber < cwebber@dustycloud.org> wrote: > Hey Aur=E9lien, > > This is great. I formerly worked on something similar: > > > http://labs.creativecommons.org/2010/11/10/bridging-public-bugtrackers-an= d-local-tasklists/ Nice color-theme, there. If you use color-theme.el, can you share it? Otherwise, what's your config? -Karra --047d7b33d5fc32d80104c34c484e Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On Sun, Jun 24, 2012 at 10:37 PM, Christopher Allan Webber <cwebber@d= ustycloud.org> wrote:
Hey Aur=E9lien,

This is great. =A0I formerly worked on something similar:

http://labs.creativecommons.= org/2010/11/10/bridging-public-bugtrackers-and-local-tasklists/

=A0Nice color-theme, there. If you use color-theme.el, = can you share it? Otherwise, what's your config?

-Karra
--047d7b33d5fc32d80104c34c484e-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christopher Allan Webber Subject: Re: Org Mode TOOD two way sync tool Date: Mon, 25 Jun 2012 09:41:38 -0500 Message-ID: <87bok7qwrh.fsf@grumps.lan> References: <4FE45EF9.8040307@grierwhite.com> <4FE47BA2.8010406@grierwhite.com> <8762agsknr.fsf@grumps.lan> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([208.118.235.92]:54502) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SjARb-0006Lf-MD for emacs-orgmode@gnu.org; Mon, 25 Jun 2012 10:39:16 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SjART-0000jE-2L for emacs-orgmode@gnu.org; Mon, 25 Jun 2012 10:39:11 -0400 Received: from li424-160.members.linode.com ([50.116.34.160]:54159 helo=dustycloud.org) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SjARS-0000j5-UW for emacs-orgmode@gnu.org; Mon, 25 Jun 2012 10:39:02 -0400 In-Reply-To: (Sriram Karra's message of "Mon, 25 Jun 2012 19:21:42 +0530") 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: Sriram Karra Cc: emacs-orgmode@gnu.org Sriram Karra writes: > On Sun, Jun 24, 2012 at 10:37 PM, Christopher Allan Webber wrote: > > Hey Aur=C3=A9lien, >=20=20=20=20 > This is great. =C2=A0I formerly worked on something similar: >=20=20=20=20 > http://labs.creativecommons.org/2010/11/10/bridging-public-bugtracker= s-and-local-tasklists/ > > =C2=A0Nice color-theme, there. If you use color-theme.el, can you share i= t? > Otherwise, what's your config? > > -Karra Ah, I've stopped using that theme! But it was a small extension to color-theme-snow. Here it is. :) #+begin_src emacs-lisp ;; This software is free software: you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by ;; the Free Software Foundation, either version 3 of the License, or ;; (at your option) any later version. (defun color-theme-snow-better () "Because `color-theme-snow' is so awesome, except for when it isn't." (interactive) (color-theme-snow) (let ((color-theme-is-cumulative t)) (color-theme-install '(color-theme-snow-better ((background-color . "snow2") (background-mode . light) (border-color . "black") (cursor-color . "cadet blue") (foreground-color . "black") (mouse-color . "black")) (emacs-wiki-link-face ((t (:bold t :underline "BlueViolet" :foregrou= nd "BlueViolet")))) (muse-link-face ((t (:bold t :underline "BlueViolet" :foreground "Bl= ueViolet")))) (info-xref ((t (:bold t :foreground "BlueViolet")))) (region ((t (:background "light steel blue")))) (cursor ((t (:background "cadet blue")))) (fringe ((t (:background "white")))) (planner-high-priority-task-face ((t (:foreground "red")))) (planner-medium-priority-task-face ((t (:foreground "green")))) (planner-low-priority-task-face ((t (:foreground "blue")))) (planner-canceled-task-face ((t (:foreground "gray" :strike-through = t)))) (org-todo ((t (:foreground "red2" :bold t)))) (org-done ((t (:foreground "SpringGreen3" :bold t)))) (org-special-keyword ((t (:foreground "sienna")))) (org-column ((t (:background "gray85")))) (erc-input-face ((t (:foreground "brown")))) (erc-notice-face ((t (:foreground "SlateBlue" :bold t)))) (erc-current-nick-face ((t (:foreground "DarkTurquoise" :bold t)))) (erc-prompt-face ((t (:foreground "Black" :bold t :background "light= Blue2")))) (planner-note-headline-face ((t (:bold t :foreground "azure3")))))))) #+end_src From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christopher Allan Webber Subject: Re: Org Mode TOOD two way sync tool Date: Mon, 25 Jun 2012 10:29:19 -0500 Message-ID: <877guvquk0.fsf@grumps.lan> References: <4FE45EF9.8040307@grierwhite.com> <4FE47BA2.8010406@grierwhite.com> <8762agsknr.fsf@grumps.lan> <87bok7qwrh.fsf@grumps.lan> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([208.118.235.92]:56832) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SjBBo-0006J1-1P for emacs-orgmode@gnu.org; Mon, 25 Jun 2012 11:27:00 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SjBBb-0004eT-Nw for emacs-orgmode@gnu.org; Mon, 25 Jun 2012 11:26:55 -0400 Received: from li424-160.members.linode.com ([50.116.34.160]:54191 helo=dustycloud.org) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SjBBb-0004eF-Jk for emacs-orgmode@gnu.org; Mon, 25 Jun 2012 11:26:43 -0400 In-Reply-To: <87bok7qwrh.fsf@grumps.lan> (Christopher Allan Webber's message of "Mon, 25 Jun 2012 09:41:38 -0500") 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: Sriram Karra Cc: emacs-orgmode@gnu.org Christopher Allan Webber writes: > Ah, I've stopped using that theme! But it was a small extension to > color-theme-snow. Here it is. :) FYI, the theme I use now is naquadah-theme, which I *highly* recommend. http://git.naquadah.org/?p=naquadah-theme.git;a=summary From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jonathan BISSON Subject: Re: Org Mode TOOD two way sync tool Date: Sun, 7 Oct 2012 19:48:58 +0000 (UTC) Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([208.118.235.92]:48012) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TKwqh-0004a0-CQ for emacs-orgmode@gnu.org; Sun, 07 Oct 2012 15:49:16 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TKwqf-0001GF-E9 for emacs-orgmode@gnu.org; Sun, 07 Oct 2012 15:49:15 -0400 Received: from plane.gmane.org ([80.91.229.3]:50071) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TKwqf-0001FT-7n for emacs-orgmode@gnu.org; Sun, 07 Oct 2012 15:49:13 -0400 Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1TKwqi-0002pt-0F for emacs-orgmode@gnu.org; Sun, 07 Oct 2012 21:49:16 +0200 Received: from bjonnh.net ([176.31.119.61]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Sun, 07 Oct 2012 21:49:15 +0200 Received: from bissonjonathan by bjonnh.net with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Sun, 07 Oct 2012 21:49:15 +0200 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 Sriram Karra gmail.com> writes: > > > 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? > Hi, I'm the maintener and creator of PyOrgMode, some contributors (that I can't thanks enough there), added many TODO related enhancements to it. If you want to give it a try, we may be able to work together in getting your needs included in PyOrgMode.