To get a process buffer an eshell buffer I thought I used to be able to run:
(get-buffer-process (current-buffer))
In Emacs 25 this no longer works. Specifically "GNU Emacs 25.1.50.2 (x86_64-unknown-linux-gnu, GTK+ Version 3.10.8) of 2015-11-30"
Here is what I do. I start an eshell with M-x eshell
. Then with that as the only window or buffer around I run
M-x eval
Eval: (get-buffer-process (current-buffer))
And the result is nil
.
I am using this in the code for realgud, an emacs front-end to various debuggers. It needs to interact with the debugger like see if the debugger is running or has terminated, send commands to it and run hooks when output appears.
How would I do this?
eshell
buffer? I'm not an eshell user but, as far as I understand, one of the defining features of eshell is that there isn't an external process; and I can only presume this has always been the case.eshell
-buffer. But, that works fine for me with emacs 25.1.50.eshell
-session. (Note: It is a link to pastebin.com.) The firstget-buffer-process
returns nil, so nothing is shown. The secondget-buffer-process
returns the startedxterm
which is shown in the eshell-buffer. Emacs-version is also shown in this buffer.