Ken Mankoff <mank...@gmail.com> writes: > Hi Eric, > > On 2014-03-17 at 17:05, Eric Schulte wrote: >> Ken Mankoff <mank...@gmail.com> writes: >> >>> Until asynchronous babel exists, it would be nice to at least be >>> notified when long-running tasks complete. Does anyone have advice >>> how to set up a hook on babel completion so that growl or some >>> other system notification alerts, perhaps only if the execution >>> took more than x seconds? >> >> You can use the org-babel-after-execute-hook to run any action after a >> code block finishes executing. > > Yes, and your reply makes me recall that :post works too, so I can > call a shell command "notifier" (or Growl) like this: > > #+BEGIN_SRC python -n :results output :post (shell-command-to-string > "notifier 'babel done'") > print "hello, world" > #+END_SRC > #+RESULTS: >
The :post method does not seem to work for me. With: --8<---------------cut here---------------start------------->8--- #+BEGIN_SRC sh :results output :post (shell-command-to-string "popup.py babel done") sleep 10 echo DONE #+END_SRC --8<---------------cut here---------------end--------------->8--- (popup.py is my homemade notifier) I get the popup immediately and the results after 10 seconds. The org-babel-after-execute-hook method worked fine. Nick