[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/easy-kill c73aa3b 12/14: New macro easy-kill-defun to s
From: |
Stefan Monnier |
Subject: |
[elpa] externals/easy-kill c73aa3b 12/14: New macro easy-kill-defun to simplify defining some commands |
Date: |
Mon, 15 Mar 2021 22:20:17 -0400 (EDT) |
branch: externals/easy-kill
commit c73aa3b9b76ab38611fb8fa87bce81bbd01d124e
Author: Leo Liu <sdl.web@gmail.com>
Commit: Leo Liu <sdl.web@gmail.com>
New macro easy-kill-defun to simplify defining some commands
---
easy-kill.el | 25 +++++++++++++------------
1 file changed, 13 insertions(+), 12 deletions(-)
diff --git a/easy-kill.el b/easy-kill.el
index 068a546..1ec03fd 100644
--- a/easy-kill.el
+++ b/easy-kill.el
@@ -136,6 +136,13 @@ deprecated."
(defvar easy-kill-inhibit-message nil)
+(defmacro easy-kill-defun (name arglist &optional docstring &rest body)
+ "Like `defun' but NAME has property `easy-kill-exit' set to t.
+\n\n(fn NAME ARGLIST &optional DOCSTRING DECL &rest BODY)"
+ (declare (doc-string 3) (indent defun))
+ `(progn (put ',name 'easy-kill-exit t)
+ (defun ,name ,arglist ,docstring ,@body)))
+
(defun easy-kill-echo (format-string &rest args)
"Same as `message' except not writing to *Messages* buffer.
Do nothing if `easy-kill-inhibit-message' is non-nil."
@@ -512,8 +519,7 @@ checked."
(when (easy-kill-get mark)
(easy-kill-adjust-candidate (easy-kill-get thing)))))
-(put 'easy-kill-abort 'easy-kill-exit t)
-(defun easy-kill-abort ()
+(easy-kill-defun easy-kill-abort ()
(interactive)
(when (easy-kill-get mark)
;; The after-string may interfere with `goto-char'.
@@ -522,16 +528,14 @@ checked."
(setq deactivate-mark t))
(ding))
-(put 'easy-kill-region 'easy-kill-exit t)
-(defun easy-kill-region ()
+(easy-kill-defun easy-kill-region ()
"Kill current selection and exit."
(interactive "*")
(pcase (easy-kill-get bounds)
(`(,_x . ,_x) (easy-kill-echo "Empty region"))
(`(,beg . ,end) (kill-region beg end))))
-(put 'easy-kill-mark-region 'easy-kill-exit t)
-(defun easy-kill-mark-region ()
+(easy-kill-defun easy-kill-mark-region ()
(interactive)
(pcase (easy-kill-get bounds)
(`(,_x . ,_x)
@@ -551,8 +555,7 @@ checked."
(if (eq (point) (easy-kill-get start))
'end 'start)))
-(put 'easy-kill-append 'easy-kill-exit t)
-(defun easy-kill-append ()
+(easy-kill-defun easy-kill-append ()
(interactive)
(setf (easy-kill-get append) t)
(when (easy-kill-save-candidate)
@@ -560,14 +563,12 @@ checked."
(setq deactivate-mark t)
(easy-kill-echo "Appended")))
-(put 'easy-kill-delete-region 'easy-kill-exit t)
-(defun easy-kill-delete-region ()
+(easy-kill-defun easy-kill-delete-region ()
(interactive)
(pcase (easy-kill-get bounds)
(`(,beg . ,end) (delete-region beg end))))
-(put 'easy-kill-unhighlight 'easy-kill-exit t)
-(defun easy-kill-unhighlight ()
+(easy-kill-defun easy-kill-unhighlight ()
(interactive)
(and (easy-kill-save-candidate)
(easy-kill-echo "`%s' copied" (easy-kill-get thing))))
- [elpa] externals/easy-kill updated (e3b2442 -> 2a6309d), Stefan Monnier, 2021/03/15
- [elpa] externals/easy-kill 02dcebc 02/14: Implement easy-kill-delete-region., Stefan Monnier, 2021/03/15
- [elpa] externals/easy-kill 288f309 03/14: Fix a compiler warning on 24.4+, Stefan Monnier, 2021/03/15
- [elpa] externals/easy-kill bf28f77 04/14: Add `D' for selecting current defun name, Stefan Monnier, 2021/03/15
- [elpa] externals/easy-kill 5060d01 11/14: Fix #29: New command easy-kill-cycle, Stefan Monnier, 2021/03/15
- [elpa] externals/easy-kill 3ca8018 05/14: Check boundary in easy-kill-bounds-of-thing-at-point, Stefan Monnier, 2021/03/15
- [elpa] externals/easy-kill e2b667f 10/14: Merge pull request #27 from syohex/fix-doc, Stefan Monnier, 2021/03/15
- [elpa] externals/easy-kill c73aa3b 12/14: New macro easy-kill-defun to simplify defining some commands,
Stefan Monnier <=
- [elpa] externals/easy-kill 7056376 07/14: Fix #25: Avoid using `<=' feature from 24.4, Stefan Monnier, 2021/03/15
- [elpa] externals/easy-kill 2a6309d 14/14: Limit easy-kill-exchange-point-and-mark to easy-mark only, Stefan Monnier, 2021/03/15
- [elpa] externals/easy-kill af56568 08/14: Fix #26: Make easy-kill-unhighlight save selection candidate, Stefan Monnier, 2021/03/15
- [elpa] externals/easy-kill 5226660 01/14: Fix #16: New user variable easy-kill-unhighlight-key, Stefan Monnier, 2021/03/15
- [elpa] externals/easy-kill 17994a0 09/14: Fix document, Stefan Monnier, 2021/03/15
- [elpa] externals/easy-kill 5b4ae1e 13/14: Introduce easy-kill-cycle-ignored to opt out of cycling, Stefan Monnier, 2021/03/15
- [elpa] externals/easy-kill cf5488a 06/14: Merge pull request #20 from knu/delete-region, Stefan Monnier, 2021/03/15