The other options are prettier and the hook is more flexible; I had only cared about
tangling though so I set this:

(defadvice org-babel-tangle (before org-babel-tangle-before activate)
  (message (concat "org-babel-tangle BEFORE: <"
                   (format-time-string "%Y-%m-%dT%T%z")
                   ">")))

(defadvice org-babel-tangle (after org-babel-tangle-after activate)
  (message (concat "org-babel-tangle AFTER: <"
                   (format-time-string "%Y-%m-%dT%T%z")
                   ">")))

For some reason couldn't get around advice working here, it was just never run.


On Tue, Mar 18, 2014 at 9:32 AM, Eric Schulte <schulte.eric@gmail.com> wrote:
> However, there is a problem:
>
> --8<---------------cut here---------------start------------->8---
> #+name: notify
> #+BEGIN_SRC emacs-lisp :results none
> (shell-command "popup.py DONE")
> #+END_SRC
>
> #+name: long-running
> #+BEGIN_SRC shell :results output :post notify
> sleep 5
> echo DONE
> #+END_SRC
>
> #+RESULTS: long-running
> : nil
> --8<---------------cut here---------------end--------------->8---
>
> The result seems to be the result of the notify block, not the
> long-running one.

Yes, that's how post blocks are supposed to work, they're normally used
to post-process results.  You should add a variable to the post block
and have it return that variable, e.g.,

#+name: notify
#+begin_src emacs-lisp :var data=""
(shell-command "popup.py DONE")
data
#+end_src

--
Eric Schulte
https://cs.unm.edu/~eschulte
PGP: 0x614CA05D




--
Grant Rettke | ACM, AMA, COG, IEEE
gcr@wisdomandwonder.com | http://www.wisdomandwonder.com/
“Wisdom begins in wonder.” --Socrates
((λ (x) (x x)) (λ (x) (x x)))
“Life has become immeasurably better since I have been forced to stop taking it seriously.” --Thompson