Quick and Dirty Mac OS X global capturing of notes to org-mode
21. januar 2012
Once bitten by the org-mode bug, every other task management system, time management system, time tracking system, habit tracking system, hierarchical documentation system, list maker, and almost everything else, pales in comparison. I just needed one more thing: a way to capture notes to org-mode from everywhere but Emacs—on Mac OS X. So, here is my very quick and dirty way of making that happen: First you need the org-protocol:
(require 'org-protocol)You also need a capture template. I just use the same as when capturing notes from within Emacs:
(setq org-capture-templates (quote (("j" "Journal" entry (file+datetree "journal.txt") "* %?%^G\n Entered on %T\n %i\n" :clock-in t :clock-resume t))))At last you need to have the Emacs server running:
(server-start)With the above you can now do this from the command line:
emacsclient --no-wait org-protocol:/capture:/j/url/title/bodywhich activates the “j” capture template and don’t wait for Emacs to finish taking the note. Important in the next section. Now create an Applescript:
set theURL to "urltest" set theTitle to "theTitle" set theBODY to "theBody" tell application "Emacs" activate (* to brig Emacs in front *) set theScript to "emacsclient --no-wait org-protocol:/capture:/j/" & theURL & "/" & theTitle & "/" & theBODY do shell script theScript end tellI’ve put this script in my ~/Library/Scripts folder and use FastScripts to activate it with a key combo: ctrl⌥⌘-n That’s it — for now, until I need extended functionality, like actually using the url, title and body for something.