New item in “Things” from Mail.app October 18, 2008
Posted by CK in Productivity, Software.Tags: F-key, iGTD, New TODO from email, Things
2 comments
I have blogged in the past about the absolutely lovely Things application. If you’re not familiar with it, Things is a TODO list manager on steroids, largely following the GTD paradigm. Before Things, I was a happy iGTD user — unfortunately, iGTD development has stalled recently, there were some problems with Greek text in Leopard and the interface was just not as nice as that of Things, so I decided to switch.
One of the greatest functionalities in iGTD, unparalleled by any other similar software, was the “F-key” trick. Using a predefined F-key, it was possible (for an extensive set of applications) to insert new TODO entries in iGTD, linking to the selected text or entry of that application. For example, reading a web page in Safari and hitting the predefined F-key (default was F6) would create a new TODO item with a link to the URL at hand. In my other favourite application, Journler, selecting an entry and hitting the F-key would create a new iGTD entry linking to the Journler’s entry URI (e.g. journler://X, where X was the entry number). In emails, it would import the mail text as a note for the TODO entry. You get the idea.
Things, lovely as it is, it does not include this amazing and extremely useful functionality. It has a Services menu item to create new entry with selected text as a note or title, working in any application. But if your selection is not text, but an email entry for example, it doesn’t work. How to solve this?
Luckily, I came across two applescripts available online, one to copy the message:// URI of an email (working in Leopard only, AFAIK) and another one to simulate clicking on the “Services” menu item to create new TODOs. Based on these two, and with minimal extensions, it was possible to have a script that creates new TODO entries in Things using Mail.app entries, linking to the respective email each time. The idea is that it starts Stickies, pastes the URI into a new note, selects the texts, creates new entry and then kills Stickies. If you *are* using Stickies (which I normally don’t) you will need to modify the text so that it doesn’t quite the application, but only closes the new note — this should be easy.
I am totally illiterate when it comes to Applescript, so this may look funny or incompetent; feel free to modify and I’d love to link to your scripts if you make them available online.
On a last note, if you know how to make WordPress respect indentation in code, please let me know. Thanks.
tell application "Mail"
set _sel to get selection
set _links to {}
repeat with _msg in _sel
set _messageURL to "message://%3c" & _msg's message id & "%3e"
set end of _links to _messageURL
end repeat
set AppleScript's text item delimiters to return
set the clipboard to (_links as string)
end tell
tell application "System Events"
tell application "Stickies" to activate
tell process "Stickies"
keystroke "n" using command down
keystroke "v" using command down
keystroke "a" using command down
tell menu bar 1
tell menu bar item "Stickies"
tell menu "Stickies"
tell menu item "Services"
tell menu "Services"
tell menu item "Things"
tell menu "Things"
click menu item "New To-do Containing Selection as Note"
end tell
end tell
end tell
end tell
end tell
end tell
end tell
keystroke "x" using command down
keystroke "w" using command down
end tell
tell application "Stickies" to quit
end tell
Things April 30, 2008
Posted by CK in Design, Productivity, Software.Tags: Applications, GTD, OSX, Things
add a comment
Every time I read a new post in the Things blog, i.e. the blog about the development of the Things application, it makes me think that I really can’t wait for the first stable release (1.0) of this little gem. The people at CulturedCode seem to consider exhaustively all different options about the interface and the logic of Things. Looking at how it’s developing, the final result will probably be very exciting. If the current pre-release had iCal syncing implemented, I would have converted already. Thankfully this feature is next in the pipeline.