--- Begin Message ---
Subject: |
[PATCH] Make forward and backward-to-word arg optional |
Date: |
Sat, 20 May 2023 21:33:51 -0700 |
(forward-to-word) throws (wrong-number-of-arguments forward-to-word 0)
in spite of the doc string stating:
> Move forward until encountering the beginning of a word.
> With argument, do this that many times.
This behaviour is present in Spacemacs 28.2, and has been confirmed by
Daniel Nicolai on Emacs 30. It's also evident in the latest source code.
The same issue exists for (backward-to-word). But running each command
with M-x works with no argument.
I'm new to Emacs, so please take this with a grain of salt. Thank you!
---
lisp/misc.el | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git master/lisp/misc.el arg-optional/lisp/misc.el
index ca013d5..f97240e 100644
--- a/lisp/misc.el
+++ b/lisp/misc.el
@@ -166,18 +166,20 @@ is an upper-case character."
(upcase-region (point) (progn (forward-char arg) (point)))))
;;;###autoload
-(defun forward-to-word (arg)
+(defun forward-to-word (&optional arg)
"Move forward until encountering the beginning of a word.
With argument, do this that many times."
(interactive "^p")
+ (unless arg (setq arg 1))
(or (re-search-forward (if (> arg 0) "\\W\\b" "\\b\\W") nil t arg)
(goto-char (if (> arg 0) (point-max) (point-min)))))
;;;###autoload
-(defun backward-to-word (arg)
+(defun backward-to-word (&optional arg)
"Move backward until encountering the end of a word.
With argument, do this that many times."
(interactive "^p")
+ (unless arg (setq arg 1))
(forward-to-word (- arg)))
;;;###autoload
--
2.40.1
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#63626: [PATCH] Make forward and backward-to-word arg optional |
Date: |
Wed, 31 May 2023 16:15:57 +0300 |
> From: Juri Linkov <juri@linkov.net>
> Cc: Eli Zaretskii <eliz@gnu.org>, Zaz Brown <zazbrown@zazbrown.com>,
> 63626@debbugs.gnu.org
> Date: Mon, 29 May 2023 19:46:59 +0300
>
> > I have no opinion about how this 'should work'.
> > I was just confused by the docstring, and I assumed from the docstring,
> > that the intention was for the argument to be optional like in
> > forward-word/line
>
> Aren't all forward-like commands more permissive and allow their arg
> to be optional? It looks like the standard signature, e.g.:
Thanks for the feedback, all of you. I've now installed those changes
on the master branch, and I'm therefore closing this bug.
--- End Message ---