Hi Tom, Tom Gillespie <tgb...@gmail.com> writes:
> As with many things in emacs, I sometimes feel like I'm loosing my > mind, or loosing track of just exactly what variables are set You're not losing your mind. After some further testing I find that you're right, and my understanding of the situation was incorrect. The reason I got confused was the initial example that started this thread: > #+begin_src sh > echo . > #+end_src > > #+RESULTS: > : 0 Which looks like it's returning the exit code. However, it turns out that this is just a coincidence, and it's an entirely unrelated bug. If I had read the thread more carefully, I would have seen Bastien had already noted this here: https://lists.gnu.org/archive/html/emacs-orgmode/2020-02/msg00716.html I fear my confusion of the issues lead to some misinformed comments on my part. Sorry about that. I think I wasn't the only commenter confused about this... Anyways, it seems the current behavior of ob-shell blocks is: - If no ":results" specified: returns the output, transformed to a table. Same as the old ":results value". - If ":results value" explicitly specified: returns the exit code. This is a change from the old default behavior. I can see why you, and other regular users of ob-shell, would be annoyed by this change of behavior. Now that I understand what's going on, I think it would be better to stick with the old behavior (no exit code), just fixing the original bug that prompted this thread.