From: Juri Linkov Date: Sun, 20 Nov 2022 18:10:45 +0000 (+0200) Subject: Rename 'elisp-eval-buffer' to 'elisp-eval-region-or-buffer' (bug#59350) X-Git-Tag: emacs-29.0.90~1616^2~10 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=4bc9fe33afa4a2dc063e7c25d6098ad98fcb0208;p=emacs.git Rename 'elisp-eval-buffer' to 'elisp-eval-region-or-buffer' (bug#59350) * lisp/progmodes/elisp-mode.el (elisp-eval-region-or-buffer): Rename recently added command 'elisp-eval-buffer' to support active region. (emacs-lisp-mode-map, lisp-interaction-mode-map): Rebind 'C-c C-e' from elisp-eval-buffer to elisp-eval-region-or-buffer. --- diff --git a/etc/NEWS b/etc/NEWS index 8a34afe8d29..9345cb06f5e 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -1464,8 +1464,8 @@ This command visits the file on the current line with EWW. ** Elisp --- -*** New command 'elisp-eval-buffer' (bound to 'C-c C-e'). -This command evals the forms in the current buffer. +*** New command 'elisp-eval-region-or-buffer' (bound to 'C-c C-e'). +This command evals the forms in the active region or in the whole buffer. --- *** New commands 'elisp-byte-compile-file' and 'elisp-byte-compile-buffer'. diff --git a/lisp/progmodes/elisp-mode.el b/lisp/progmodes/elisp-mode.el index 44c8ca7cb9d..7c470de195f 100644 --- a/lisp/progmodes/elisp-mode.el +++ b/lisp/progmodes/elisp-mode.el @@ -52,7 +52,7 @@ All commands in `lisp-mode-shared-map' are inherited by this map." :parent lisp-mode-shared-map "M-TAB" #'completion-at-point "C-M-x" #'eval-defun - "C-c C-e" #'elisp-eval-buffer + "C-c C-e" #'elisp-eval-region-or-buffer "C-c C-f" #'elisp-byte-compile-file "C-c C-b" #'elisp-byte-compile-buffer "C-M-q" #'indent-pp-sexp) @@ -1234,7 +1234,7 @@ All commands in `lisp-mode-shared-map' are inherited by this map." :parent lisp-mode-shared-map "C-M-x" #'eval-defun "C-M-q" #'indent-pp-sexp - "C-c C-e" #'elisp-eval-buffer + "C-c C-e" #'elisp-eval-region-or-buffer "C-c C-b" #'elisp-byte-compile-buffer "M-TAB" #'completion-at-point "C-j" #'eval-print-last-sexp) @@ -2212,11 +2212,17 @@ Runs in a batch-mode Emacs. Interactively use variable (terpri) (pp collected))) -(defun elisp-eval-buffer () - "Evaluate the forms in the current buffer." +(defun elisp-eval-region-or-buffer () + "Evaluate the forms in the active region or the whole current buffer. +In Transient Mark mode when the mark is active, call `eval-region'. +Otherwise, call `eval-buffer'." (interactive) - (eval-buffer) - (message "Evaluated the %s buffer" (buffer-name))) + (if (use-region-p) + (eval-region (region-beginning) (region-end)) + (eval-buffer)) + (message "Evaluated the %s%s buffer" + (if (use-region-p) "region in the " "") + (buffer-name))) (defun elisp-byte-compile-file (&optional load) "Byte compile the file the current buffer is visiting.