[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#67835: 30.0.50; Error with undocumented disabled commands
From: |
Eli Zaretskii |
Subject: |
bug#67835: 30.0.50; Error with undocumented disabled commands |
Date: |
Sat, 16 Dec 2023 15:11:24 +0200 |
> Date: Fri, 15 Dec 2023 19:45:13 +0900
> From: kakkokakko@gmail.com
>
> 1. emacs -Q --eval "(progn (defun foo () (interactive)) (put 'foo 'disabled
> t))"
> 2. M-x foo RET
>
> Then, I encountered the error message "Wrong type argument:
> char-or-string-p, nil". This behavior is different from that in
> previous versions, like 27.1, where I received the following message.
>
> | You have invoked the disabled command foo.
> | It is disabled because new users often find it confusing.
> | Here’s the first part of its description:
> |
> | << not documented >>
> | ...
>
> I also expect similar behavior in 30.0.50.
>
> In 30.0.50, it appears that disabled-command-function in
> novice.el triggers this error by executing (insert nil) for
> undocumented commands in the following code.
>
> | (insert (condition-case ()
> | (documentation cmd)
> | (error "<< not documented >>")))
>
> Although omitting a docstring is generally considered poor practice,
> triggering an error for such commands might not be intentional
> behavior. The corresponding code in 27.1 was as follows:
>
> | (... (or (condition-case ()
> | (documentation cmd)
> | (error nil))
> | "<< not documented >>"))
Stefan, could you please look into this? The above seems to come from
your changes in commit 6ad79059d2f843a1be617c72ae0e9d8a02c9a203. I'd
like to fix this on the emacs-29 branch soon, if possible.
Thanks.