Sam <[email protected]> writes:

>> Do you mean displays transiently, disappearing after evaluation is complete?
>
> Only if `:session' is "none". Otherwise it hangs around, replacing the
> org buffer.

I can reproduce. This is indeed a problem.

> For `org-babel-load-session:scheme', I basically re-used the logic from
> `ob-R'. However, I'm a little worried by the docstring of
> `save-window-excursion', which explicitly advises against being used in
> this way.

Yeah.

> IMO the issue is with geiser. From what I could see, there is no way of
> creating an active REPL buffer without also switching to it. If there's
> some safe way to temporarily and globally disable *all* changes to
> window state, then we can use that as a workaround. Otherwise I'm not
> sure what to suggest...

I am just worried that those changes might be necessary for geiser to
function. (The main problem for us is that geiser is not really designed
to be used the way Org mode uses it)

Although, looking into the uses of `geiser-repl--switch-to-buffer' in
geiser code, it does not seem to be an issue - no special fiddling with
window configuration seems to be going on.

So, your approach seems better, after all.

However, I think that it is better if you move all the setup for window
suppression into `org-babel-scheme-get-repl'.

Also, what about `save-window-excursion' in `org-babel-load-session:scheme'?

-- 
Ihor Radchenko // yantar92,
Org mode maintainer,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>

Reply via email to