Subject: Re: bug#51390: 29.0.50; repeat-mode: Fails to repeat keys in global-map(?)

From: Visuwesh <[email-masked]>
Date: Mon, 22 Nov 2021 04:45:45 +0100 (CET)

22 Nov 2021, 09:14 by [email-masked]:

> 22 Nov 2021, 02:19 by [email-masked]:
>
>>>         (defvar teest
>>>           (let ((map (make-sparse-keymap)))
>>>             (define-key map "n" #'next-line)
>>>             (define-key map "p" #'previous-line)
>>>             map))
>>>
>>>         (put 'next-line 'repeat-map 'teest)
>>>         (put 'previous-line 'repeat-map 'teest)
>>>
>> >...
>>
>>> 4. Type C-n.  Notice that it does not trigger the repeat map.
>>>
>>
>> I tried to implement what you asked to do, but got horrible results
>> caused too much damage.  Here is the lossage explaining the problem:
>>
>> C-<tab>           ;; tab-next
>> o                 ;; tab-next
>> n                 ;; gnus-group-next-unread-group
>>
>> i.e. I typed C-<tab> to switch to the next tab with the text buffer
>> where I started to type text that begins with the letters "on..."
>>
>> But instead of inserting letters to the buffer, the letter "o"
>> switched to the second next tab.  This tab contained the Gnus buffer
>> where typing the second letter "n" called the bound command
>> gnus-group-next-unread-group, and I lost all unread messages.
>>
>> But I never had such a problem when the repeating sequence was
>> activated only by 'C-x t o ... o o ...' instead of 'C-<tab> o o o ...'
>> because 'C-<tab>' is a single key, there is no need to activate
>> other keys doing the same.
>>
>> This means that by default this behavior should be disabled.
>> But maybe a new variable should allow to skip this check:
>>
>
> Hi Juri,
> I am currently in the middle of exams, I will try out the patch in a couple
>
in a couple of days, that is.

I pressed the send key too quickly.  Sorry for the noise.