From e096e7d79e452ba29b9d174cfdbf9fb2184d59d9 Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Sun, 13 Apr 2025 04:25:23 -0400 Subject: [PATCH] feat(emacs-lisp): default ielm working buffer to selected When invoking `+emacs-lisp/open-repl`, if no working buffer is set in the resulting ielm buffer, it will default to the selected buffer prior to opening the repl. --- modules/lang/emacs-lisp/autoload.el | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/modules/lang/emacs-lisp/autoload.el b/modules/lang/emacs-lisp/autoload.el index fa3555927..3cabfc25e 100644 --- a/modules/lang/emacs-lisp/autoload.el +++ b/modules/lang/emacs-lisp/autoload.el @@ -149,14 +149,20 @@ if it's callable, `apropos' otherwise." ;;;###autoload (defun +emacs-lisp/open-repl () - "Open the Emacs Lisp REPL (`ielm')." + "Open the Emacs Lisp REPL (`ielm'). + +If the repl isn't already open, sets ielm's working buffer to the buffer +selected before this command was invoked." (interactive) (pop-to-buffer (or (get-buffer "*ielm*") - (progn (ielm) - (let ((buf (get-buffer "*ielm*"))) - (bury-buffer buf) - buf))))) + (let ((original-buffer (current-buffer))) + (ielm) + (when (buffer-live-p original-buffer) + (ielm-change-working-buffer original-buffer)) + (let ((buf (get-buffer "*ielm*"))) + (bury-buffer buf) + buf))))) ;;;###autoload (defun +emacs-lisp/buttercup-run-file ()