Re: [Orgmode] iPhone ---- org-mode
On Mar 26, 2009, at 7:21 PM, Greg Newman wrote: Carsten Dominik wrote: I am still looking for a dedicated iPhone developer who will write and Org-mode app :-) I'm still looking for a reason to use my iphone developer license. Really? Well, here is my view on how to design such an app, maybe it will inspire you. Table of Contents = 1 Basic principles 1.1 Simplicity 1.2 Forget Synchronization 1.3 Offline 2 Main features 2.1 Capture 2.2 Display of current tasks 2.3 Flagging 3 Implementation proposal 3.1 Main screen 3.2 Data Desktop-iPod 3.3 Data iPhone-Desktop 4 The experience on the Emacs side 1 Basic principles ~~~ 1.1 Simplicity === Don't even think about re-creating Org-mode for the iPhone/iPod. If this is what you want, get a mobile device that runs Emacs. Too many companies have tried to duplicate their desktop experience on the iPhone, and most have, in my opinion failed. If you look at the iPhone versions of Things, OmniFocus, Evernote, you name it, all of them are too complicated for the touch interface. Simplicity is the absolute key to make things work on that platform. When I am trying to enter a new note in Evernote, for example, it drives me crazy that I have to tap on the title filed, just to start entering a title, then tap done, then tap a date field, use some unpleasant interface to select a date, then tap done, all of this before I have even started to write my note. Apples Notes app does that right, tap + to create a note, and then type away, title automatically extracted from the first line, done. 1.2 Forget Synchronization === I believe that something that does direct, 2-way synchronization between Org and a mobile app will be very hard to get right. Instead, I propose a two data streams, one from the desktop to the app, one back. 1.3 Offline I believe it is essential that this app works offline as well. You could be on a plane, or, more importantly, you could be an iPod Touch user (I am), unwilling to pay $30 or more per month to keep your data service running. I am an offline user. I downloaded most of Wikipedia onto the Touch, and being able to use the app offline I see as an essential feature. 2 Main features 2.1 Capture Create new Org entries like notes in as primitive a way as possible. 2.2 Display of current tasks = List the most recent agenda view from the desktop, including the task list and whatever other views you have configured for this. Just one simple list to rule them all, maybe with toolbar buttons to jump to the agenda section, the task list section, etc. Simplicity! 2.3 Flagging = In the list of tasks, have at most two buttons for each task. Actually I would be satisfied only the first one, but might like the second one. Here are the buttons: 1. Flag entry for later attention when I am back at my desktop 2. Done, get it out of my sight without further interaction. Precise action to be defined in Emacs. 3 Implementation proposal ~~ 3.1 Main screen Directly into the task list, with a top level button to create a new task/note, maybe in the tool bar at the bottom of the page. 3.2 Data Desktop-iPod === Make Emacs automatically create a special agenda-like view, containing the agenda for the coming week, and current task. We can configure this in Emacs, and I can push out this list in any desired format. Each entry listed will be forced to have an ID, for unique identification. I don't know how to get this list onto the iPhone, maybe the easiest would be to mount the iPhone via WiFi and to push a single file onto it. Apps like Datacase do this kind of a thing. 3.3 Data iPhone-Desktop = The iPhone app should create a single file like an RSS feed. This feed would contain two kinds of items 1. New entries captured. We could be really clever on the Desktop/Emacs side in parsing these new entries, extracting free form dates from things like +2Fri etc. Now stupid date input forms on the iPhone, just free typing and clever interpretation. 2. IDs of flagged entries. The next time at your Desktop, Emacs will make an agenda view listing all the flagged entries, and then you can archive them, add notes, changes states, from you memory. You will do this in the full environment provided by Emacs, not on a crippled interface. In this way, the lack of synchronization will be a feature, not a bug. 4 The experience on the Emacs side ~~~ 1. When you start Org-mode, we would check if the iPhone is mounted. If yes, we would periodically (with a timer) create the
Re: [Orgmode] iPhone ---- org-mode
Carsten Dominik carsten.domi...@gmail.com writes: This is it. This would make me happy. I would of course be willing to handle the entire Emacs side of this. Comments? Brilliant. Just what I was asking for in my Posting last week. As I have argued, solutions like this would be the most important piece of development. However, it would be a pity to have this iPhone-only. Greetings, Sven -- Sven Bretfeld CERES -- CEntrum für REligionswissenschaftliche Studien Ruhr-Universität Bochum Universitätsstraße 150 D-44780 Bochum ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
On Mar 27, 2009, at 4:45 PM, Sven Bretfeld wrote: Carsten Dominik carsten.domi...@gmail.com writes: This is it. This would make me happy. I would of course be willing to handle the entire Emacs side of this. Comments? Brilliant. Just what I was asking for in my Posting last week. As I have argued, solutions like this would be the most important piece of development. However, it would be a pity to have this iPhone-only. The Emacs side will be general, and I guess there is no way to make a general mobile side? - Carsten ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
At Fri, 27 Mar 2009 18:29:02 +0100, Carsten Dominik wrote: Brilliant. Just what I was asking for in my Posting last week. As I have argued, solutions like this would be the most important piece of development. However, it would be a pity to have this iPhone-only. The Emacs side will be general, and I guess there is no way to make a general mobile side? Conceivably some portability is acheivable using e.g. python on jailbroken iphones. No idea how much of the UI code is portable. Obviously not everyone is comfortable jailbreaking their iphone. d ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
On Mar 25, 2009, at 11:57 AM, William Henney wrote: On Wed, Mar 25, 2009 at 10:35 AM, Ian Barton li...@manor-farm.org wrote: I do hope that this will not stop python hackers from exploring this further, because I thought that the python solution was really good and innovative, and it shows what can be done with modules like the ones Charles has put out. - Carsten Don't worry it wont:) I have set up a repo for my Python version at git://github.com/geekinthesticks/org-reqall.git . It doesn't have anything in it at the moment, because I stupidly put my own reqall rss url in one of the versions for testing purposes, so its in the version history. I also have been hacking on Ian's python script - I hope you don't mind! I changed it to support Ta-da lists (tadalist.com) rather than reqall. In my opinion, ta-da list is a much simpler and has a nice clean interface. It has the disadvantage that it doesn't have an accompanying iPhone/Touch app that works offline, although it does have a beautiful ipod-optimized web interface. And it doesn't support bling such as voice memos, but then reqall doesn't support voice memos on the Touch either, even if you have an external mic :( Anyway, I am attaching it (sync-tadalist.py) in case anyone finds it useful. In particular, it has a few changes that Ian might want to fold back into his version. For instance, it solves the private URL problem by reading it from an external dot file. Also, the original was repeatedly parsing the org file inside the loop over feed entries. This is unnecessary, so I have moved it outside. I guess that ideally we want a webservice that 1. Allows adding tasks etc via a mobile device, preferably with offline capabilities and syncing 2. Exports RSS feeds of tasks so that org-mode can grab them 3. Exports an API that would let org-mode write information back to the service, e.g., marking a task as done Does anyone know of a service that supports all 3? I don't know any, but the number of apps is always growing. I am still looking for a dedicated iPhone developer who will write and Org-mode app :-) Cheers - Carsten ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
On Thu, Mar 26, 2009 at 4:39 PM, Carsten Dominik carsten.domi...@gmail.com wrote: I am still looking for a dedicated iPhone developer who will write and Org-mode app :-) I would love to see that! But I have neither the skills, time, nor funding to help (though I would pay good money for the app). offtopic So, I searched for emacs at the ITunes store and I found a couple of useless-looking cheat sheets[1] for the iPhone/Touch, plus a track called Emacs by a trance/techno band called BandX. And their album (11R6) seems to be named after a release of X windows... /offtopic Cheers Will [1] If you are in emacs, you have C-h b, M-x apropos, etc. If you are not in emacs, why would you need to know the keybindings? -- Dr William Henney, Centro de Radioastronomía y Astrofísica, Universidad Nacional Autónoma de México, Campus Morelia ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
William Henney when...@gmail.com writes: On Thu, Mar 26, 2009 at 4:39 PM, Carsten Dominik carsten.domi...@gmail.com wrote: I am still looking for a dedicated iPhone developer who will write and Org-mode app :-) I would love to see that! But I have neither the skills, time, nor funding to help (though I would pay good money for the app). offtopic So, I searched for emacs at the ITunes store and I found a couple of useless-looking cheat sheets[1] for the iPhone/Touch, plus a track called Emacs by a trance/techno band called BandX. And their album (11R6) seems to be named after a release of X windows... /offtopic Cheers Will [1] If you are in emacs, you have C-h b, M-x apropos, etc. If you are not in emacs, why would you need to know the keybindings? because you don't know the name of the elisp command? ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
Couple more fixes - do a git pull in the shell script to keep my auto-updater's repository up to date and avoid git push failure, and avoid adding new Reqall items until they have been transcribed (at first they show up in RSS as Reqall is typing what you said) --- a/repo/bin/get_reqall_tasks.sh +++ b/repo/bin/get_reqall_tasks.sh @@ -3,8 +3,9 @@ echo . /tmp/crontest /sw/bin/wget -O /tmp/req http://www.reqall.com/user/feeds/rss/82012e8e26fae644e -/usr/bin/awk -f ~/repo/bin/reqallxml.awk /tmp/req cd /Users/Brad/Dev/reqall/Brad/repo/org/ +/usr/bin/git pull +/usr/bin/awk -f ~/repo/bin/reqallxml.awk /tmp/req /usr/bin/git add gtd.org /usr/bin/git commit -m Auto-reqall update $(date) /dev/null /usr/bin/git push /dev/null --- a/repo/bin/reqallxml.awk +++ b/repo/bin/reqallxml.awk @@ -414,7 +414,11 @@ END { newItems = 0; for ( guid in guids ) { + where = index(blobs[guid, DESCRIPTION], is typing what you said) + if (where) + continue; ret = system(egrep \^ guid \ ~/repo/bin/reqalldb /dev/null); if ( ret != 0 ) { On Tue, Mar 24, 2009 at 10:56 PM, Brad Bozarth prettyg...@cs.stanford.edu wrote: I should note that I tried to clean up the files a bit to make them more readable before uploading, and I realized the clean version of reqallxml.awk in the attachment has two silly bugs - /* nothing for now */ ; on line 368 should be ; # nothing for now (C-style comments don't work in awk). And the system call string on line 425 can't be split across lines as it is (again, I was thinking in C). -brad On Mon, Mar 23, 2009 at 1:32 AM, Brad Bozarth prettyg...@cs.stanford.edu wrote: Sure! As I said, it's a hack - it would obviously be better implemented with one elisp batch script or something, but I was in a hurry, and it's been working for me. Reqall is a free app kind of like Jott, if you're familiar with that. You can phone into it (thus this hack would work with a blackberry or your friend's landline or any phone, not just the iphone) or use an iphone or web interface to plop in todos (and various other things, which I don't use). It can publish your items as an RSS feed. Here's how voice - org-mode happens: I use a cron job every 10 minutes to run get_reqall_tasks.sh This wget's my reqall RSS feed, runs reqallxml.awk on it (updates my .org file), and commits and pushes the .org reqallxml.awk parses the reqall items and saves a flat local DB (currently just to check for newness of items), doing some simple formatting on new items and sticking them in my .org file to be processed later Pretty simple - it could be cleaner, and filenames and such are hardcoded, but it should be easy for anyone to fix it up or simply replace the filenames and formatting to their liking. It's simple ... but still feels like magic when I press one button on my iPhone in the car, and what I spoke is sitting in my gtd.org when I get to the office :) ... tarball of hack attached. Note that my awk is from OS X, should work on linux as well though (I first got it running on linux, but had to escape some / characters in a pattern match to get reqallxml.awk to work on my mac and haven't tested it again on linux). -brad ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
Hi Brad, thanks for your nice words! Sounds fascinating what you did back then with graphics. About the movies of grain collisions, yes, these are quite dated by now, but they are also 10 years old, made at a time where had little understanding of these things, and where I wrote a Perl program to to glue text into movie frames :-) We have some newer ones here: http://staff.science.uva.nl/~dpaszun/movies.html That reminds me: My webpage is crap, and I need to redo it in Org :-) - Carsten On Mar 24, 2009, at 7:21 PM, Brad Bozarth wrote: Hi Carsten, I'm glad I could help in a very small way - I really appreciate the years you've put into this. I watched GregKH's, Linus's and your Google tech talks the other day, and enjoyed yours the most. I know I'll love the flexibility of org-mode over time, but it's great to hear your version of the most powerful core features and the theory behind them. And yes, I think the RSS -- org-mode idea has some good possibilities, and reqall happens to be a convenient phone -- RSS tool. I think we have some similar genes - I ended up a software engineer after a childhood love of all things astronomical (and love of adrenaline, my dream was to be an astronaut), and was fascinated by the self-organization of Saturn's rings - I always wanted to code a simulation of such for fun, but never quite got to it. I made a pretty neat 3D space particle sandbox in my Stanford graphics class, where you could fly around and place directional points of gravity that would attract all the floating particles on one side of the plane perpendicular to your angle of view when you placed the point. Place two facing different directions, and you could get beautiful, organic looking streams of particles flowing in a ring (well, I thought they were beautiful). Place three, and you could get extremely complex and interesting cycling streams. I loved how all I had to get right were the derivative calculations for gravity fall-off, and the simple flying control and open-gl graphics, and something artistic emerged. I've always loved the idea of complex order arising from simple foundations... Anyway, sorry to ramble, but I went down memory lane when I looked up your website and watched the mpeg movies of grain collisions. In the age of Pixar, I don't know that many people would agree, but I found them fascinating :) Thanks again for your generous sharing! -brad On Tue, Mar 24, 2009 at 4:32 AM, Carsten Dominik domi...@science.uva.nl wrote: Hi Brad, I am really happy that you showed us how to do this. Like you, when I work I am at my computer, so I don't need a fully mobile side of Org. But a capture path. Using RSS like you demonstrate means that we can use any kind of service that pushes to an RSS feed - even if ReQall goes away at some point, there will be others. This, for me, really was the missing piece. It no longer is missing. Thanks! - Carsten On Mar 22, 2009, at 11:38 AM, Brad Bozarth wrote: Hi! I'm new to org-mode, but knew I had to use it when I combined a desire to try GTD with my ctrl-s view of the world. I'm ok with processing tethered to a computer, but wanted an easy way to capture on the move, without adding anything to my pocket. A couple days of hacking later (with some real *hacks*, but they work), and I've got something I really like. I can now, using either the iphone keyboard or my voice, quickly capture something, and know that it will shortly be sitting as a TODO under iPhone inbox in my gtd.org file that is git synchronized between all my computers. I put it together with a cron'd shell script, two awk scripts, and the free Reqall iPhone app. Could be done more elegantly, but then I wouldn't be Getting (other) Things Done :). I can share the hacks if anyone is interested. -brad ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
Hi Brad, I hope you don't mind, but I find this *so extremely useful* that I made a pure Emacs lisp version of this which is now in the git repo under the name org-feed.el. It is not made for fancy automatic updating with cron jobs and git etc, but it makes for a stand-alone alternative that will be easy to configure and has no dependencies on external code. For example, to get a reQall feed into file ~/org/feeds.org under heading ReQall Entries, you would do this. (setq org-feed-alist '((ReQall http://www.reqall.com/user/feeds/rss/a1b2...; ~/org/feeds.org ReQall Entries))) I do hope that this will not stop python hackers from exploring this further, because I thought that the python solution was really good and innovative, and it shows what can be done with modules like the ones Charles has put out. - Carsten On Mar 22, 2009, at 11:38 AM, Brad Bozarth wrote: Hi! I'm new to org-mode, but knew I had to use it when I combined a desire to try GTD with my ctrl-s view of the world. I'm ok with processing tethered to a computer, but wanted an easy way to capture on the move, without adding anything to my pocket. A couple days of hacking later (with some real *hacks*, but they work), and I've got something I really like. I can now, using either the iphone keyboard or my voice, quickly capture something, and know that it will shortly be sitting as a TODO under iPhone inbox in my gtd.org file that is git synchronized between all my computers. I put it together with a cron'd shell script, two awk scripts, and the free Reqall iPhone app. Could be done more elegantly, but then I wouldn't be Getting (other) Things Done :). I can share the hacks if anyone is interested. -brad ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
On Wed, Mar 25, 2009 at 1:36 AM, Carsten Dominik domi...@science.uva.nl wrote: Hi Brad, I hope you don't mind, but I find this *so extremely useful* that I made a pure Emacs lisp version of this which is now in the git repo under the name org-feed.el. It is not made for fancy automatic updating with cron jobs and git etc, but it makes for a stand-alone alternative that will be easy to configure and has no dependencies on external code. I don't mind at all! I'm very glad you find it useful, and I will adopt yours soon - it will be much less fragile. I knew it would be better implemented natively in elisp, but I haven't coded in lisp in 10 years :) -brad ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
A quick question - if I use a non-nil org-feed-assume-stable, will that handle updating a changed reqall entry? This would be both for the case of the entries initially saying Reqall is typing what you said before they are transcribed, and for the case of editing an existing entry on the iPhone or web interface. -brad On Wed, Mar 25, 2009 at 1:36 AM, Carsten Dominik domi...@science.uva.nl wrote: Hi Brad, I hope you don't mind, but I find this *so extremely useful* that I made a pure Emacs lisp version of this which is now in the git repo under the name org-feed.el. It is not made for fancy automatic updating with cron jobs and git etc, but it makes for a stand-alone alternative that will be easy to configure and has no dependencies on external code. For example, to get a reQall feed into file ~/org/feeds.org under heading ReQall Entries, you would do this. (setq org-feed-alist '((ReQall http://www.reqall.com/user/feeds/rss/a1b2...; ~/org/feeds.org ReQall Entries))) I do hope that this will not stop python hackers from exploring this further, because I thought that the python solution was really good and innovative, and it shows what can be done with modules like the ones Charles has put out. - Carsten On Mar 22, 2009, at 11:38 AM, Brad Bozarth wrote: Hi! I'm new to org-mode, but knew I had to use it when I combined a desire to try GTD with my ctrl-s view of the world. I'm ok with processing tethered to a computer, but wanted an easy way to capture on the move, without adding anything to my pocket. A couple days of hacking later (with some real *hacks*, but they work), and I've got something I really like. I can now, using either the iphone keyboard or my voice, quickly capture something, and know that it will shortly be sitting as a TODO under iPhone inbox in my gtd.org file that is git synchronized between all my computers. I put it together with a cron'd shell script, two awk scripts, and the free Reqall iPhone app. Could be done more elegantly, but then I wouldn't be Getting (other) Things Done :). I can share the hacks if anyone is interested. -brad ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
On Mar 25, 2009, at 10:06 AM, Brad Bozarth wrote: A quick question - if I use a non-nil org-feed-assume-stable, will that handle updating a changed reqall entry? This would be both for the case of the entries initially saying Reqall is typing what you said before they are transcribed, and for the case of editing an existing entry on the iPhone or web interface. No, things like this is handled yet. - Carsten -brad On Wed, Mar 25, 2009 at 1:36 AM, Carsten Dominik domi...@science.uva.nl wrote: Hi Brad, I hope you don't mind, but I find this *so extremely useful* that I made a pure Emacs lisp version of this which is now in the git repo under the name org-feed.el. It is not made for fancy automatic updating with cron jobs and git etc, but it makes for a stand-alone alternative that will be easy to configure and has no dependencies on external code. For example, to get a reQall feed into file ~/org/feeds.org under heading ReQall Entries, you would do this. (setq org-feed-alist '((ReQall http://www.reqall.com/user/feeds/rss/a1b2...; ~/org/feeds.org ReQall Entries))) I do hope that this will not stop python hackers from exploring this further, because I thought that the python solution was really good and innovative, and it shows what can be done with modules like the ones Charles has put out. - Carsten On Mar 22, 2009, at 11:38 AM, Brad Bozarth wrote: Hi! I'm new to org-mode, but knew I had to use it when I combined a desire to try GTD with my ctrl-s view of the world. I'm ok with processing tethered to a computer, but wanted an easy way to capture on the move, without adding anything to my pocket. A couple days of hacking later (with some real *hacks*, but they work), and I've got something I really like. I can now, using either the iphone keyboard or my voice, quickly capture something, and know that it will shortly be sitting as a TODO under iPhone inbox in my gtd.org file that is git synchronized between all my computers. I put it together with a cron'd shell script, two awk scripts, and the free Reqall iPhone app. Could be done more elegantly, but then I wouldn't be Getting (other) Things Done :). I can share the hacks if anyone is interested. -brad ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
On Mar 25, 2009, at 10:09 AM, Carsten Dominik wrote: On Mar 25, 2009, at 10:06 AM, Brad Bozarth wrote: A quick question - if I use a non-nil org-feed-assume-stable, will that handle updating a changed reqall entry? This would be both for the case of the entries initially saying Reqall is typing what you said before they are transcribed, and for the case of editing an existing entry on the iPhone or web interface. No, things like this is handled yet. I am really becoming incapable to write properly. Sorry about that. What I meant is this: No, things like this are not handled. I view this as a one-way interface, capture to Org. Maybe it would be good to catch things like reqall is typing to make sure this entry will be ignored now and picked up again later... With the current implementation, the entry will be captured in whatever state it is, and then not look at it again. - Carsten ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
I do hope that this will not stop python hackers from exploring this further, because I thought that the python solution was really good and innovative, and it shows what can be done with modules like the ones Charles has put out. - Carsten Don't worry it wont:) I have set up a repo for my Python version at git://github.com/geekinthesticks/org-reqall.git . It doesn't have anything in it at the moment, because I stupidly put my own reqall rss url in one of the versions for testing purposes, so its in the version history. Once I am happy that I have worked out how to make git rewrite history, I'll push it up there and post another message here. Ian. ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
On Wed, Mar 25, 2009 at 10:35 AM, Ian Barton li...@manor-farm.org wrote: I do hope that this will not stop python hackers from exploring this further, because I thought that the python solution was really good and innovative, and it shows what can be done with modules like the ones Charles has put out. - Carsten Don't worry it wont:) I have set up a repo for my Python version at git://github.com/geekinthesticks/org-reqall.git . It doesn't have anything in it at the moment, because I stupidly put my own reqall rss url in one of the versions for testing purposes, so its in the version history. I also have been hacking on Ian's python script - I hope you don't mind! I changed it to support Ta-da lists (tadalist.com) rather than reqall. In my opinion, ta-da list is a much simpler and has a nice clean interface. It has the disadvantage that it doesn't have an accompanying iPhone/Touch app that works offline, although it does have a beautiful ipod-optimized web interface. And it doesn't support bling such as voice memos, but then reqall doesn't support voice memos on the Touch either, even if you have an external mic :( Anyway, I am attaching it (sync-tadalist.py) in case anyone finds it useful. In particular, it has a few changes that Ian might want to fold back into his version. For instance, it solves the private URL problem by reading it from an external dot file. Also, the original was repeatedly parsing the org file inside the loop over feed entries. This is unnecessary, so I have moved it outside. I guess that ideally we want a webservice that 1. Allows adding tasks etc via a mobile device, preferably with offline capabilities and syncing 2. Exports RSS feeds of tasks so that org-mode can grab them 3. Exports an API that would let org-mode write information back to the service, e.g., marking a task as done Does anyone know of a service that supports all 3? Cheers Will -- Dr William Henney, Centro de Radioastronomía y Astrofísica, Universidad Nacional Autónoma de México, Campus Morelia sync-tadalist.py Description: Binary data ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
Hi Carsten -- I suspect this is some error in my set-up. Just a quick note, org-feed.el is still changing, the interface and settings may still change - I will fix it for the 6.25 release. Until then, please test it, but be prepared for changes. I'm trying to use this, but I can't get it to work. I've added this to my .emacs: (setq org-feed-alist '((ReQall http://www.reqall.com/user/feeds/rss/8dc53e3aff648650b9996a61717a75adf27c54dc; ~/Dropbox/plans/feeds.org ReQall Entries :filter my-reqall-filter))) (defun my-reqall-filter (e) (when (equal (plist-get e :category) Task) (setq e (plist-put e :title (concat TODO (plist-get e :title) e) - I've added FEEDGUIDS as a drawer. If I delete all my tasks from my reQall account and then run org-feed-update-all I get the expected response no new entries from one feed. However, if I add one task to my reQall account, Try to pull reqall rss feed into org file, and then run org-feed-update-all I get this in the messages buffer: Debugger entered: nil (save-current-buffer (set-buffer temp-buffer) (insert template) (debug) (goto-char (point-min)) (while (re-search-forward %\\([a-zA-Z]+\\) nil t) (setq name ...) (cond ... ... t)) (setq entry (plist-put entry :formatted-for-org ...))) (with-current-buffer temp-buffer (insert template) (debug) (goto-char (point-min)) (while (re-search-forward %\\([a-zA-Z]+\\) nil t) (setq name ...) (cond ... ... t)) (setq entry (plist-put entry :formatted-for-org ...))) (unwind-protect (with-current-buffer temp-buffer (insert template) (debug) (goto-char ...) (while ... ... ...) (setq entry ...)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))) (let ((temp-buffer ...)) (unwind-protect (with-current-buffer temp-buffer ... ... ... ... ...) (and ... ...))) (with-temp-buffer (insert template) (debug) (goto-char (point-min)) (while (re-search-forward %\\([a-zA-Z]+\\) nil t) (setq name ...) (cond ... ... t)) (setq entry (plist-put entry :formatted-for-org ...))) (let (dlines fmt tmp indent) (setq dlines (org-split-string ... \n) v-h (or ... ... ???) time (or ... ...) v-t (format-time-string ... time) v-T (format-time-string ... time) v-u (format-time-string ... time) v-U (format-time-string ... time) v-a (if ... ... )) (with-temp-buffer (insert template) (debug) (goto-char ...) (while ... ... ...) (setq entry ...))) (if (or (not entry) (plist-get entry :formatted-for-org)) nil (let (dlines fmt tmp indent) (setq dlines ... v-h ... time ... v-t ... v-T ... v-u ... v-U ... v-a ...) (with-temp-buffer ... ... ... ... ...))) (unless (or (not entry) (plist-get entry :formatted-for-org)) (let (dlines fmt tmp indent) (setq dlines ... v-h ... time ... v-t ... v-T ... v-u ... v-U ... v-a ...) (with-temp-buffer ... ... ... ... ...))) org-feed-format-entry((:guid 2416179132 :item-full-text \n titleTry to pull reqall rss into org file/title\n linkhttp://www.reqall.com/web/posts/link\n guid isPermaLink=\false\2416179132/guid\n categoryTask/category\n descriptionTask: Try to pull reqall rss into org file/description\n pubDateWed, 25 Mar 2009 20:25:43 -/pubDate\n :title TODO Try to pull reqall rss into org file :link http://www.reqall.com/web/posts; :category Task :description Task: Try to pull reqall rss into org file :pubDate Wed, 25 Mar 2009 20:25:43 -) * %h\n %U\n %description\n %a\n) (lambda (e) (org-feed-format-entry e feed-template))((:guid 2416179132 :item-full-text \n titleTry to pull reqall rss into org file/title\n linkhttp://www.reqall.com/web/posts/link\n guid isPermaLink=\false\2416179132/guid\n categoryTask/category\n descriptionTask: Try to pull reqall rss into org file/description\n pubDateWed, 25 Mar 2009 20:25:43 -/pubDate\n :title TODO Try to pull reqall rss into org file :link http://www.reqall.com/web/posts; :category Task :description Task: Try to pull reqall rss into org file :pubDate Wed, 25 Mar 2009 20:25:43 -)) mapcar((lambda (e) (org-feed-format-entry e feed-template)) ((:guid 2416179132 :item-full-text \n titleTry to pull reqall rss into org file/title\n linkhttp://www.reqall.com/web/posts/link\n guid isPermaLink=\false\2416179132/guid\n categoryTask/category\n descriptionTask: Try to pull reqall rss into org file/description\n pubDateWed, 25 Mar 2009 20:25:43 -/pubDate\n :title TODO Try to pull reqall rss into org file :link http://www.reqall.com/web/posts; :category Task :description Task: Try to pull reqall rss into org file :pubDate Wed, 25 Mar 2009 20:25:43 -))) (delq nil (mapcar (lambda ... ...) new-selected)) (setq new-selected (delq nil (mapcar ... new-selected))) (if (not new) (progn (message No new items in feed %s feed-name) 0) (run-hooks (quote org-feed-before-adding-hook)) (setq new-selected new) (when feed-filter (setq new-selected ...)) (setq new-selected (delq nil ...)) (apply (quote
Re: [Orgmode] iPhone ---- org-mode
This looks like I forgot a (debug) line somewhere in there - Carsten On Mar 25, 2009, at 9:39 PM, John Rakestraw wrote: Hi Carsten -- I suspect this is some error in my set-up. Just a quick note, org-feed.el is still changing, the interface and settings may still change - I will fix it for the 6.25 release. Until then, please test it, but be prepared for changes. I'm trying to use this, but I can't get it to work. I've added this to my .emacs: (setq org-feed-alist '((ReQall http://www.reqall.com/user/feeds/rss/8dc53e3aff648650b9996a61717a75adf27c54dc ~/Dropbox/plans/feeds.org ReQall Entries :filter my-reqall-filter))) (defun my-reqall-filter (e) (when (equal (plist-get e :category) Task) (setq e (plist-put e :title (concat TODO (plist-get e :title) e) - I've added FEEDGUIDS as a drawer. If I delete all my tasks from my reQall account and then run org-feed-update-all I get the expected response no new entries from one feed. However, if I add one task to my reQall account, Try to pull reqall rss feed into org file, and then run org-feed-update-all I get this in the messages buffer: Debugger entered: nil (save-current-buffer (set-buffer temp-buffer) (insert template) (debug) (goto-char (point-min)) (while (re-search-forward %\\([a-zA-Z]+\\) nil t) (setq name ...) (cond ... ... t)) (setq entry (plist-put entry :formatted-for-org ...))) (with-current-buffer temp-buffer (insert template) (debug) (goto-char (point-min)) (while (re-search-forward %\\([a-zA-Z]+\\) nil t) (setq name ...) (cond ... ... t)) (setq entry (plist-put entry :formatted-for-org ...))) (unwind-protect (with-current-buffer temp-buffer (insert template) (debug) (goto-char ...) (while ... ... ...) (setq entry ...)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))) (let ((temp-buffer ...)) (unwind-protect (with-current-buffer temp-buffer ... ... ... ... ...) (and ... ...))) (with-temp-buffer (insert template) (debug) (goto-char (point-min)) (while (re-search-forward %\\([a-zA-Z]+\\) nil t) (setq name ...) (cond ... ... t)) (setq entry (plist-put entry :formatted-for-org ...))) (let (dlines fmt tmp indent) (setq dlines (org-split-string ... \n) v-h (or ... ... ???) time (or ... ...) v-t (format-time-string ... time) v-T (format-time-string ... time) v-u (format-time-string ... time) v-U (format-time-string ... time) v-a (if ... ... )) (with-temp-buffer (insert template) (debug) (goto-char ...) (while ... ... ...) (setq entry ...))) (if (or (not entry) (plist-get entry :formatted-for-org)) nil (let (dlines fmt tmp indent) (setq dlines ... v-h ... time ... v-t ... v-T ... v-u ... v-U ... v-a ...) (with-temp-buffer ... ... ... ... ...))) (unless (or (not entry) (plist-get entry :formatted-for-org)) (let (dlines fmt tmp indent) (setq dlines ... v-h ... time ... v-t ... v-T ... v-u ... v-U ... v-a ...) (with-temp-buffer ... ... ... ... ...))) org-feed-format-entry((:guid 2416179132 :item-full-text \n titleTry to pull reqall rss into org file/title\n linkhttp://www.reqall.com/web/posts/link\n guid isPermaLink=\false\2416179132/guid\n categoryTask/category\n descriptionTask: Try to pull reqall rss into org file/description\n pubDateWed, 25 Mar 2009 20:25:43 -/pubDate\n :title TODO Try to pull reqall rss into org file :link http://www.reqall.com/web/posts; :category Task :description Task: Try to pull reqall rss into org file :pubDate Wed, 25 Mar 2009 20:25:43 -) * %h\n %U\n %description\n %a\n) (lambda (e) (org-feed-format-entry e feed-template))((:guid 2416179132 :item-full-text \n titleTry to pull reqall rss into org file/title\n linkhttp://www.reqall.com/web/posts/link\n guid isPermaLink=\false\2416179132/guid\n categoryTask/category\n descriptionTask: Try to pull reqall rss into org file/description\n pubDateWed, 25 Mar 2009 20:25:43 -/pubDate\n :title TODO Try to pull reqall rss into org file :link http://www.reqall.com/web/posts; :category Task :description Task: Try to pull reqall rss into org file :pubDate Wed, 25 Mar 2009 20:25:43 -)) mapcar((lambda (e) (org-feed-format-entry e feed-template)) ((:guid 2416179132 :item-full-text \n titleTry to pull reqall rss into org file/title\n linkhttp://www.reqall.com/web/posts/link\n guid isPermaLink=\false\2416179132/guid\n categoryTask/category\n descriptionTask: Try to pull reqall rss into org file/description\n pubDateWed, 25 Mar 2009 20:25:43 -/pubDate\n :title TODO Try to pull reqall rss into org file :link http://www.reqall.com/web/posts; :category Task :description Task: Try to pull reqall rss into org file :pubDate Wed, 25 Mar 2009 20:25:43 -))) (delq nil (mapcar (lambda ... ...) new-selected)) (setq new-selected (delq nil (mapcar ... new-selected))) (if (not new) (progn (message No new items in feed %s feed-name) 0) (run-hooks (quote org-feed-before-adding-hook))
Re: [Orgmode] iPhone ---- org-mode
On Mar 24, 2009, at 1:43 AM, Brad Bozarth wrote: This is nice, no more superfluous flat file... thanks! I don't think so! Because if I see this correctly, your own solution will allow new entries to be refiled to other files, removed or archived, without the script adding them again. If you do this in Ians solution, I think they will be added again. - Carsten -brad On Mon, Mar 23, 2009 at 6:47 AM, Ian Barton li...@manor-farm.org wrote: Pretty simple - it could be cleaner, and filenames and such are hardcoded, but it should be easy for anyone to fix it up or simply replace the filenames and formatting to their liking. It's simple ... but still feels like magic when I press one button on my iPhone in the car, and what I spoke is sitting in my gtd.org when I get to the office :) ... tarball of hack attached. Note that my awk is from OS X, should work on linux as well though (I first got it running on linux, but had to escape some / characters in a pattern match to get reqallxml.awk to work on my mac and haven't tested it again on linux). Appended is a quick hack in Python that appends items from the rss feed to an org file. Tasks are give the guid property, which is used to identify which tasks have already been imported. Requires Mark Pilgrim's feed parser (think this is already part of Python) and Charles Cave's orgnode.py. Note orgnode.py seems to have a bug, where it requires at least one entry in the file. Ian. ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
This is nice, no more superfluous flat file... thanks! I don't think so! Because if I see this correctly, your own solution will allow new entries to be refiled to other files, removed or archived, without the script adding them again. If you do this in Ians solution, I think they will be added again. Theoretically my script shouldn't add things twice. It stores the item's guid as a PROPERTY and checks to see if the guid exists in the org file before it adds the item. I am assuming here that guids in reqall are unique. Having investigated reqall a bit further, it seems that messages are assigned various categories e.g. Note, Meeting. The latest incarnation of my script will store the item from the rss feed in a file according to its category. When the script is a bit more stable, I'll upload it to github. I have also done some work in adapting the jabberbot that I use with my MythTV set up, so I can get a list of my tasks and post new one via Google Talk. Ian. ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
On Mar 24, 2009, at 9:30 AM, Ian Barton wrote: This is nice, no more superfluous flat file... thanks! I don't think so! Because if I see this correctly, your own solution will allow new entries to be refiled to other files, removed or archived, without the script adding them again. If you do this in Ians solution, I think they will be added again. Theoretically my script shouldn't add things twice. It stores the item's guid as a PROPERTY and checks to see if the guid exists in the org file before it adds the item. I am assuming here that guids in reqall are unique. Yes, I understand. However, if the user refiles the task to a different file, that information will be gone and the item re-added. - Carsten Having investigated reqall a bit further, it seems that messages are assigned various categories e.g. Note, Meeting. The latest incarnation of my script will store the item from the rss feed in a file according to its category. When the script is a bit more stable, I'll upload it to github. I have also done some work in adapting the jabberbot that I use with my MythTV set up, so I can get a list of my tasks and post new one via Google Talk. Ian. ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
Carsten Dominik wrote: On Mar 24, 2009, at 9:30 AM, Ian Barton wrote: This is nice, no more superfluous flat file... thanks! I don't think so! Because if I see this correctly, your own solution will allow new entries to be refiled to other files, removed or archived, without the script adding them again. If you do this in Ians solution, I think they will be added again. Theoretically my script shouldn't add things twice. It stores the item's guid as a PROPERTY and checks to see if the guid exists in the org file before it adds the item. I am assuming here that guids in reqall are unique. Yes, I understand. However, if the user refiles the task to a different file, that information will be gone and the item re-added. - Carsten Having investigated reqall a bit further, it seems that messages are assigned various categories e.g. Note, Meeting. The latest incarnation of my script will store the item from the rss feed in a file according to its category. When the script is a bit more stable, I'll upload it to github. I have also done some work in adapting the jabberbot that I use with my MythTV set up, so I can get a list of my tasks and post new one via Google Talk. Good point. Maybe I need to store the guids in a separate file. Ian. ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
Hi Brad, I am really happy that you showed us how to do this. Like you, when I work I am at my computer, so I don't need a fully mobile side of Org. But a capture path. Using RSS like you demonstrate means that we can use any kind of service that pushes to an RSS feed - even if ReQall goes away at some point, there will be others. This, for me, really was the missing piece. It no longer is missing. Thanks! - Carsten On Mar 22, 2009, at 11:38 AM, Brad Bozarth wrote: Hi! I'm new to org-mode, but knew I had to use it when I combined a desire to try GTD with my ctrl-s view of the world. I'm ok with processing tethered to a computer, but wanted an easy way to capture on the move, without adding anything to my pocket. A couple days of hacking later (with some real *hacks*, but they work), and I've got something I really like. I can now, using either the iphone keyboard or my voice, quickly capture something, and know that it will shortly be sitting as a TODO under iPhone inbox in my gtd.org file that is git synchronized between all my computers. I put it together with a cron'd shell script, two awk scripts, and the free Reqall iPhone app. Could be done more elegantly, but then I wouldn't be Getting (other) Things Done :). I can share the hacks if anyone is interested. -brad ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
Hi Carsten, I'm glad I could help in a very small way - I really appreciate the years you've put into this. I watched GregKH's, Linus's and your Google tech talks the other day, and enjoyed yours the most. I know I'll love the flexibility of org-mode over time, but it's great to hear your version of the most powerful core features and the theory behind them. And yes, I think the RSS -- org-mode idea has some good possibilities, and reqall happens to be a convenient phone -- RSS tool. I think we have some similar genes - I ended up a software engineer after a childhood love of all things astronomical (and love of adrenaline, my dream was to be an astronaut), and was fascinated by the self-organization of Saturn's rings - I always wanted to code a simulation of such for fun, but never quite got to it. I made a pretty neat 3D space particle sandbox in my Stanford graphics class, where you could fly around and place directional points of gravity that would attract all the floating particles on one side of the plane perpendicular to your angle of view when you placed the point. Place two facing different directions, and you could get beautiful, organic looking streams of particles flowing in a ring (well, I thought they were beautiful). Place three, and you could get extremely complex and interesting cycling streams. I loved how all I had to get right were the derivative calculations for gravity fall-off, and the simple flying control and open-gl graphics, and something artistic emerged. I've always loved the idea of complex order arising from simple foundations... Anyway, sorry to ramble, but I went down memory lane when I looked up your website and watched the mpeg movies of grain collisions. In the age of Pixar, I don't know that many people would agree, but I found them fascinating :) Thanks again for your generous sharing! -brad On Tue, Mar 24, 2009 at 4:32 AM, Carsten Dominik domi...@science.uva.nl wrote: Hi Brad, I am really happy that you showed us how to do this. Like you, when I work I am at my computer, so I don't need a fully mobile side of Org. But a capture path. Using RSS like you demonstrate means that we can use any kind of service that pushes to an RSS feed - even if ReQall goes away at some point, there will be others. This, for me, really was the missing piece. It no longer is missing. Thanks! - Carsten On Mar 22, 2009, at 11:38 AM, Brad Bozarth wrote: Hi! I'm new to org-mode, but knew I had to use it when I combined a desire to try GTD with my ctrl-s view of the world. I'm ok with processing tethered to a computer, but wanted an easy way to capture on the move, without adding anything to my pocket. A couple days of hacking later (with some real *hacks*, but they work), and I've got something I really like. I can now, using either the iphone keyboard or my voice, quickly capture something, and know that it will shortly be sitting as a TODO under iPhone inbox in my gtd.org file that is git synchronized between all my computers. I put it together with a cron'd shell script, two awk scripts, and the free Reqall iPhone app. Could be done more elegantly, but then I wouldn't be Getting (other) Things Done :). I can share the hacks if anyone is interested. -brad ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
I should note that I tried to clean up the files a bit to make them more readable before uploading, and I realized the clean version of reqallxml.awk in the attachment has two silly bugs - /* nothing for now */ ; on line 368 should be ; # nothing for now (C-style comments don't work in awk). And the system call string on line 425 can't be split across lines as it is (again, I was thinking in C). -brad On Mon, Mar 23, 2009 at 1:32 AM, Brad Bozarth prettyg...@cs.stanford.eduwrote: Sure! As I said, it's a hack - it would obviously be better implemented with one elisp batch script or something, but I was in a hurry, and it's been working for me. Reqall is a free app kind of like Jott, if you're familiar with that. You can phone into it (thus this hack would work with a blackberry or your friend's landline or any phone, not just the iphone) or use an iphone or web interface to plop in todos (and various other things, which I don't use). It can publish your items as an RSS feed. Here's how voice - org-mode happens: I use a cron job every 10 minutes to run get_reqall_tasks.sh This wget's my reqall RSS feed, runs reqallxml.awk on it (updates my .org file), and commits and pushes the .org reqallxml.awk parses the reqall items and saves a flat local DB (currently just to check for newness of items), doing some simple formatting on new items and sticking them in my .org file to be processed later Pretty simple - it could be cleaner, and filenames and such are hardcoded, but it should be easy for anyone to fix it up or simply replace the filenames and formatting to their liking. It's simple ... but still feels like magic when I press one button on my iPhone in the car, and what I spoke is sitting in my gtd.org when I get to the office :) ... tarball of hack attached. Note that my awk is from OS X, should work on linux as well though (I first got it running on linux, but had to escape some / characters in a pattern match to get reqallxml.awk to work on my mac and haven't tested it again on linux). -brad ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
Sure! As I said, it's a hack - it would obviously be better implemented with one elisp batch script or something, but I was in a hurry, and it's been working for me. Reqall is a free app kind of like Jott, if you're familiar with that. You can phone into it (thus this hack would work with a blackberry or your friend's landline or any phone, not just the iphone) or use an iphone or web interface to plop in todos (and various other things, which I don't use). It can publish your items as an RSS feed. Here's how voice - org-mode happens: I use a cron job every 10 minutes to run get_reqall_tasks.sh This wget's my reqall RSS feed, runs reqallxml.awk on it (updates my .org file), and commits and pushes the .org reqallxml.awk parses the reqall items and saves a flat local DB (currently just to check for newness of items), doing some simple formatting on new items and sticking them in my .org file to be processed later Pretty simple - it could be cleaner, and filenames and such are hardcoded, but it should be easy for anyone to fix it up or simply replace the filenames and formatting to their liking. It's simple ... but still feels like magic when I press one button on my iPhone in the car, and what I spoke is sitting in my gtd.org when I get to the office :) ... tarball of hack attached. Note that my awk is from OS X, should work on linux as well though (I first got it running on linux, but had to escape some / characters in a pattern match to get reqallxml.awk to work on my mac and haven't tested it again on linux). -brad org-reqall.tar.gz Description: GNU Zip compressed data ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
Pretty simple - it could be cleaner, and filenames and such are hardcoded, but it should be easy for anyone to fix it up or simply replace the filenames and formatting to their liking. It's simple ... but still feels like magic when I press one button on my iPhone in the car, and what I spoke is sitting in my gtd.org when I get to the office :) ... tarball of hack attached. Note that my awk is from OS X, should work on linux as well though (I first got it running on linux, but had to escape some / characters in a pattern match to get reqallxml.awk to work on my mac and haven't tested it again on linux). Appended is a quick hack in Python that appends items from the rss feed to an org file. Tasks are give the guid property, which is used to identify which tasks have already been imported. Requires Mark Pilgrim's feed parser (think this is already part of Python) and Charles Cave's orgnode.py. Note orgnode.py seems to have a bug, where it requires at least one entry in the file. Ian. #!/usr/bin/python import feedparser # Note the current version of orgnode.py # requires a file with at least one entry. import orgnode REQUALL_URL = 'Requall RSS feed url' ORG_FILE = 'todo.org' def write_task(task): logfile = open(ORG_FILE, 'a') str = * TODO %s\n:PROPERTIES:\n:guid: %s\n:END:\n%s\n % (task.title, task.guid, task.description) logfile.write(str) logfile.close() def load_org_file(): Create a list of org objects. nodelist = orgnode.makelist(ORG_FILE) return nodelist # Open and parse the rss feed. d = feedparser.parse(REQUALL_URL) print d.feed.title for entry in d['entries']: nodelist = load_org_file() guids = [] # build a list of all the guids in the org file. for node in nodelist: guids.append(node.Property('guid')) # Only add entries for guids that are not already in the file. if entry.guid in guids: print Entry skipped. else: write_task(entry) print entry.title print entry.category print entry.description ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
This is nice, no more superfluous flat file... thanks! -brad On Mon, Mar 23, 2009 at 6:47 AM, Ian Barton li...@manor-farm.org wrote: Pretty simple - it could be cleaner, and filenames and such are hardcoded, but it should be easy for anyone to fix it up or simply replace the filenames and formatting to their liking. It's simple ... but still feels like magic when I press one button on my iPhone in the car, and what I spoke is sitting in my gtd.org when I get to the office :) ... tarball of hack attached. Note that my awk is from OS X, should work on linux as well though (I first got it running on linux, but had to escape some / characters in a pattern match to get reqallxml.awk to work on my mac and haven't tested it again on linux). Appended is a quick hack in Python that appends items from the rss feed to an org file. Tasks are give the guid property, which is used to identify which tasks have already been imported. Requires Mark Pilgrim's feed parser (think this is already part of Python) and Charles Cave's orgnode.py. Note orgnode.py seems to have a bug, where it requires at least one entry in the file. Ian. ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
[Orgmode] iPhone ---- org-mode
Hi! I'm new to org-mode, but knew I had to use it when I combined a desire to try GTD with my ctrl-s view of the world. I'm ok with processing tethered to a computer, but wanted an easy way to capture on the move, without adding anything to my pocket. A couple days of hacking later (with some real *hacks*, but they work), and I've got something I really like. I can now, using either the iphone keyboard or my voice, quickly capture something, and know that it will shortly be sitting as a TODO under iPhone inbox in my gtd.org file that is git synchronized between all my computers. I put it together with a cron'd shell script, two awk scripts, and the free Reqall iPhone app. Could be done more elegantly, but then I wouldn't be Getting (other) Things Done :). I can share the hacks if anyone is interested. -brad ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
On Mar 22, 2009, at 11:38 AM, Brad Bozarth wrote: Hi! I'm new to org-mode, but knew I had to use it when I combined a desire to try GTD with my ctrl-s view of the world. I'm ok with processing tethered to a computer, but wanted an easy way to capture on the move, without adding anything to my pocket. A couple days of hacking later (with some real *hacks*, but they work), and I've got something I really like. I can now, using either the iphone keyboard or my voice, quickly capture something, and know that it will shortly be sitting as a TODO under iPhone inbox in my gtd.org file that is git synchronized between all my computers. I put it together with a cron'd shell script, two awk scripts, and the free Reqall iPhone app. Could be done more elegantly, but then I wouldn't be Getting (other) Things Done :). I can share the hacks if anyone is interested. I want to know *everything* about this. - Carsten ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] iPhone ---- org-mode
On Sun, 22 Mar 2009 03:38:24 -0700 Brad Bozarth prettyg...@cs.stanford.edu wrote: Hi! I'm new to org-mode, but knew I had to use it when I combined a desire to try GTD with my ctrl-s view of the world. I'm ok with processing tethered to a computer, but wanted an easy way to capture on the move, without adding anything to my pocket. A couple days of hacking later (with some real *hacks*, but they work), and I've got something I really like. I can now, using either the iphone keyboard or my voice, quickly capture something, and know that it will shortly be sitting as a TODO under iPhone inbox in my gtd.org file that is git synchronized between all my computers. I put it together with a cron'd shell script, two awk scripts, and the free Reqall iPhone app. Could be done more elegantly, but then I wouldn't be Getting (other) Things Done :). I can share the hacks if anyone is interested. -brad Consider me (very!) interested. -- John Rakestraw ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode