[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#64046: 30.0.50; Quoting in customize choice tags
From: |
Stephen Berman |
Subject: |
bug#64046: 30.0.50; Quoting in customize choice tags |
Date: |
Thu, 24 Aug 2023 22:54:45 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
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.
Steve Berman
- 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 <=
- 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, 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