On Wed, 5 Jul 2017, Vikas Rawal wrote: >>> >>> "... I'd like Org to pick up the fact that there's a :session >>> argument with a custom name and use that for C-RET in the edit buffer; >>> otherwise it generates the default *R* session there, but if you C-c >>> C-c the block later it puts it into the custom session name." >> >> This is what `org-babel-switch-to-session-with-code' does. BTW, it >> also handles Vikas' original issue of displaying both the edit buffer >> and the process buffer during editing src blocks. >> >> So you might want is to use `org-babel-switch-to-session-with-code' >> rather than `org-edit-src-code’. > > Indeed this does what I was originally looking for. How does one exit > from this neatly? What is the equivalent of org-edit-src-exit to use > with this? Using org-edit-src-exit after > org-babel-switch-to-session-with-code does not close the session window. > It doesn't do that now, but see below. >> I do not think I'd want to replace `org-edit-src-code' in >> `org-edit-special' with that function by default, since it forces a >> session to start and displays the process buffer which is kind of >> annoying when all I want to do is browse code in an edit buffer. It >> fails with an error when applied to a src block with no session, so >> that would need to be handled if `o-b-s-t-session-w-code' is supplied >> as an option. >> > > Yes, that makes sense. OTOH, maybe a call to `org-babel-switch-to-session-with-code' could replace the `(switch-to-buffer ...)' in `org-edit-special' so C-u C-c ' would display the process buffer (as it does now) and also the edit buffer and start a new process if necessary. But there are a few things to fix. `org-babel-switch-to-session-with-code' needs to set `org-src--saved-temp-window-config' after the call to 'org-edit-src-code' so `org-edit-src-exit' can restore the window setup. Also, it might as well use 'info' which `org-edit-special' obtains for src blocks when ARG is set. Chuck