[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#64046: 30.0.50; Quoting in customize choice tags
From: |
Mauro Aranda |
Subject: |
bug#64046: 30.0.50; Quoting in customize choice tags |
Date: |
Thu, 24 Aug 2023 18:58:52 -0300 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 |
Stephen Berman <stephen.berman@gmx.net> writes:
> On Thu, 24 Aug 2023 17:14:53 -0300 Mauro Aranda
<maurooaranda@gmail.com> wrote:
>
>> Stephen Berman <stephen.berman@gmx.net> writes:
>>
>>> Right after sending, I found an obvious problem: only one of the car or
>>> the cdr might be a string. The following patch accounts for this:
>>>
>>> diff --git a/lisp/wid-edit.el b/lisp/wid-edit.el
>>> index a70598bb6c9..891e98b6de5 100644
>>> --- a/lisp/wid-edit.el
>>> +++ b/lisp/wid-edit.el
>>> @@ -285,12 +285,18 @@ widget-choose
>>> ;; Apply quote substitution to customize choice menu item text,
>>> ;; whether it occurs in a widget buffer or in a popup menu.
>>> (let ((items (mapc (lambda (x)
>>> - (when (consp x)
>>> - (dotimes (i (1- (length x)))
>>> - (when (stringp (nth i x))
>>> - (setcar (nthcdr i x)
>>> - (substitute-command-keys
>>> - (car (nthcdr i x))))))))
>>> + (if (proper-list-p x)
>>> + (dotimes (i (1- (length x)))
>>> + (when (stringp (nth i x))
>>> + (setcar (nthcdr i x)
>>> + (substitute-command-keys
>>> + (car (nthcdr i x))))))
>>> + ;; ITEMS has simple item definitions.
>>> + (when (consp x)
>>> + (when (stringp (car x))
>>> + (setcar x (substitute-command-keys
(car x))))
>>> + (when (stringp (cdr x))
>>> + (setcdr x (substitute-command-keys (cdr
>> x)))))))
>>
>> Thinking about it, why do we need to call substitute-command-keys on the
>> VALUE part (i.e., the cdr of the cons cell), in case of simple item
>> definitions?
>>
>> I re-read the bug report, but I didn't find any reference to why that is
>> a need. Did I miss something?
>
> Well, the VALUE is displayed on entering a choice. That is, when I do
>
> M-: (widget-choose "Title" '(("Use `a'" . "Use `1'") ("Use `b'" .
"Use `2'")))
>
> I see curve-quoting in the widget-choose buffer:
>
> Available choices:
>
> 0 = Use ‘a’
> 1 = Use ‘b’
>
> C-g = Quit
>
> and when I enter e.g. `0' at the "Title: " prompt in the minibuffer, it
> displays "Use ‘1’", i.e., with curve-quoting. But if I omit the call to
> substitute-command-keys on the cdr in widget-choose, then typing `0' at
> the "Title: " prompt displays "Use `1'", i.e. with grave-quoting. But I
> don't know which one is the intended result.
I see, thank you. Your last patch looks good to me, then.
- bug#64046: 30.0.50; Quoting in customize choice tags, Ola x Nilsson, 2023/08/21
- bug#64046: 30.0.50; Quoting in customize choice tags, Mauro Aranda, 2023/08/21
- bug#64046: 30.0.50; Quoting in customize choice tags, Stephen Berman, 2023/08/24
- bug#64046: 30.0.50; Quoting in customize choice tags, Stephen Berman, 2023/08/24
- bug#64046: 30.0.50; Quoting in customize choice tags, Mauro Aranda, 2023/08/24
- bug#64046: 30.0.50; Quoting in customize choice tags, Stephen Berman, 2023/08/24
- bug#64046: 30.0.50; Quoting in customize choice tags,
Mauro Aranda <=
- bug#64046: 30.0.50; Quoting in customize choice tags, Ola x Nilsson, 2023/08/25
- bug#64046: 30.0.50; Quoting in customize choice tags, Stephen Berman, 2023/08/25
- bug#64046: 30.0.50; Quoting in customize choice tags, Ola x Nilsson, 2023/08/28
- bug#64046: 30.0.50; Quoting in customize choice tags, Stephen Berman, 2023/08/28
- bug#64046: 30.0.50; Quoting in customize choice tags, Mauro Aranda, 2023/08/30
- bug#64046: 30.0.50; Quoting in customize choice tags, Stephen Berman, 2023/08/30
- bug#64046: 30.0.50; Quoting in customize choice tags, Mauro Aranda, 2023/08/30
- bug#64046: 30.0.50; Quoting in customize choice tags, Stephen Berman, 2023/08/30
- bug#64046: 30.0.50; Quoting in customize choice tags, Mauro Aranda, 2023/08/30
- bug#64046: 30.0.50; Quoting in customize choice tags, Eli Zaretskii, 2023/08/31