1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-11-29 07:58:28 +00:00

New user commands, similar to what is available in ESS

* lisp/progmodes/inf-lisp.el (lisp-eval-paragraph, lisp-eval-form-and-next):
New user commands.
This commit is contained in:
Sam Steingold 2014-07-08 11:35:29 -04:00
parent 96f17a2f73
commit a897d1b1fe
2 changed files with 23 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2014-07-08 Sam Steingold <sds@gnu.org>
* progmodes/inf-lisp.el (lisp-eval-paragraph, lisp-eval-form-and-next):
New user commands.
2014-07-08 Juri Linkov <juri@jurta.org>
* vc/vc-annotate.el (vc-annotate-background-mode): New defcustom.

View File

@ -112,6 +112,8 @@ mode. Default is whitespace followed by 0 or 1 single-letter colon-keyword
(define-key lisp-mode-map "\C-x\C-e" 'lisp-eval-last-sexp) ; Gnu convention
(define-key lisp-mode-map "\C-c\C-e" 'lisp-eval-defun)
(define-key lisp-mode-map "\C-c\C-r" 'lisp-eval-region)
(define-key lisp-mode-map "\C-c\C-n" 'lisp-eval-form-and-next)
(define-key lisp-mode-map "\C-c\C-p" 'lisp-eval-paragraph)
(define-key lisp-mode-map "\C-c\C-c" 'lisp-compile-defun)
(define-key lisp-mode-map "\C-c\C-z" 'switch-to-lisp)
(define-key lisp-mode-map "\C-c\C-l" 'lisp-load-file)
@ -311,6 +313,14 @@ of `inferior-lisp-program'). Runs the hooks from
;;;###autoload
(defalias 'run-lisp 'inferior-lisp)
(defun lisp-eval-paragraph (&optional and-go)
"Send the current paragraph to the inferior Lisp process.
Prefix argument means switch to the Lisp buffer afterwards."
(interactive "P")
(save-excursion
(mark-paragraph)
(lisp-eval-region (point) (mark) and-go)))
(defun lisp-eval-region (start end &optional and-go)
"Send the current region to the inferior Lisp process.
Prefix argument means switch to the Lisp buffer afterwards."
@ -361,6 +371,14 @@ Prefix argument means switch to the Lisp buffer afterwards."
(interactive "P")
(lisp-eval-region (save-excursion (backward-sexp) (point)) (point) and-go))
(defun lisp-eval-form-and-next ()
"Send the previous sexp to the inferior Lisp process and move to the next one."
(interactive "")
(while (not (zerop (car (syntax-ppss))))
(up-list))
(lisp-eval-last-sexp)
(forward-sexp))
(defun lisp-compile-region (start end &optional and-go)
"Compile the current region in the inferior Lisp process.
Prefix argument means switch to the Lisp buffer afterwards."