From 56b2c9fb541d7d538cc955ae93409710bd325e0f Mon Sep 17 00:00:00 2001 From: Case Duckworth Date: Sun, 24 Apr 2022 15:00:11 -0500 Subject: Correct backward-kill-word behavior --- lisp/+paredit.el | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 lisp/+paredit.el (limited to 'lisp/+paredit.el') diff --git a/lisp/+paredit.el b/lisp/+paredit.el new file mode 100644 index 0000000..0c65328 --- /dev/null +++ b/lisp/+paredit.el @@ -0,0 +1,26 @@ +;;; +paredit.el --- bespoke paredit stuffs -*- lexical-binding: t; -*- + +;;; Commentary: + +;;; Code: + +(require '+emacs) ; `+backward-kill-word-wrapper' + +(defun +paredit--backward-kill-word (&optional n) + "Perform `paredit-backward-kill-word' N times." + (interactive "p") + (dotimes (_ (or n 1)) + (paredit-backward-kill-word))) + +(defun +paredit-backward-kill-word (&optional arg) + "Kill a word backward using `paredit-backward-kill-word'. +Wrapped in `+backward-kill-word-wrapper', which see. + +Prefix ARG means to just call `paredit-backward-kill-word'." + ;; Of course, `paredit-backward-kill-word' doesn't TAKE an argument ... :/// + ;; So I had to write the wrapper above. + (interactive) + (+backward-kill-word-wrapper #'+paredit--backward-kill-word arg)) + +(provide '+paredit) +;;; +paredit.el ends here -- cgit 1.4.1-21-gabe81