From: Eshel Yaron Date: Mon, 26 Aug 2024 19:11:02 +0000 (+0200) Subject: el.el: Add some commands X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=72bbd1e779b21f5b5c1c445a13ba9cfeb8760190;p=emacs.git el.el: Add some commands --- diff --git a/lisp/progmodes/el.el b/lisp/progmodes/el.el index 7d5c8f981a7..3da4164ae83 100644 --- a/lisp/progmodes/el.el +++ b/lisp/progmodes/el.el @@ -197,10 +197,14 @@ This is the `font-lock-fontify-region-function' for `emacs-lisp-mode'." (add-hook 'completion-at-point-functions #'elisp-completion-at-point nil t) (run-hooks 'eval-expression-minibuffer-setup-hook)) - (read-from-minibuffer "Edit: " (cons (buffer-substring beg end) pos) read--expression-map nil)))) + (read-from-minibuffer "Edit: " (cons (buffer-substring beg end) pos) read--expression-map)))) (replace-region-contents beg end (lambda () str)) (user-error "No expression at point"))) +(defun el-insert-sexp (&optional initial) + (interactive) + (insert (read-from-minibuffer "Insert: " initial read--expression-map))) + (defun el-code-pos-p (&optional pos) (null (nth 8 (syntax-ppss pos)))) (defun el-jump () @@ -222,6 +226,10 @@ This is the `font-lock-fontify-region-function' for `emacs-lisp-mode'." (down-list) (el-last)) +(defun el-insert-space () + (interactive) + (insert " ")) + (defvar-keymap el-mode-map :suppress t "r" #'raise-sexp @@ -234,6 +242,7 @@ This is the `font-lock-fontify-region-function' for `emacs-lisp-mode'." "y" #'yank "(" #'insert-pair ")" #'up-list + "n" #'up-list "\"" #'insert-pair "/" #'undo "c" #'el-insert-function-call @@ -247,7 +256,8 @@ This is the `font-lock-fontify-region-function' for `emacs-lisp-mode'." "j" #'el-jump "m" #'mark-sexp "." #'xref-find-definitions - "," #'xref-go-back) + "," #'xref-go-back + "SPC" #'el-insert-space) ;;;###autoload (define-derived-mode el-mode prog-mode "EL"