[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#64927: 30.0.50; kill-ring with no X
From: |
Eli Zaretskii |
Subject: |
bug#64927: 30.0.50; kill-ring with no X |
Date: |
Thu, 03 Aug 2023 12:51:23 +0300 |
> From: Colin Baxter <m43cap@yandex.com>
> Date: Sat, 29 Jul 2023 12:25:16 +0100
>
> >>>>> Colin Baxter <m43cap@yandex.com> writes:
>
> > 1. Emacs-30.0.50 compiled --with-x-toolkit=no
> > 2. emacs -Q <RET>
> > 3. C-x C-f test.txt <RET>
> > 4. Enter some text, e.g. "This is a test."
> > 5. Enter some more text, e.g. "This is another test."
> > 6. Place the cursor somewhere and press <F10>
> > 7. Select Edit --> Paste from kill menu --> This is test.
> > 8. popup-menu: Invalid
> > `key-parse' syntax: %S: ["This is a test"]
>
> Forget to mention that the text 4, 5 has of course to be copied to the
> kill-ring using C-<space> M-w. Sorry about that!
I can reproduce the same problem on a TTY frame by activating the menu
with F10, but not if the menu is activated with a mouse (on a
text-mode terminal that has a mouse). Do you see the same problem in
the non-toolkit build if you use the mouse instead of the keyboard?
This also affects Emacs 29, and is a regression from Emacs 28, which
is related to the use of the new key-* functions. Specifically, the
error is signaled by the call to key-valid-p issued by
possibly_translate_key_sequence, which is a subroutine of lookup-key.
The argument KEY of possibly_translate_key_sequence in this case is a
vector whose only element is a string with text properties:
[#("create a file" 0 13 (face font-lock-comment-face fontified t))]
key-valid-p doesn't support such strings, it expects strings that
describe key sequences.
Significantly, possibly_translate_key_sequence calls key-parse after
it calls key-valid-p, and key-parse copes with this string quite well.
So I'm thinking of removing the key-valid-p call from
possibly_translate_key_sequence, since I believe key-parse can detect
any problems by itself? Stefan, WDYT?
Colin, can you try such a change and see if it produces any
regressions?
- bug#64927: 30.0.50; kill-ring with no X,
Eli Zaretskii <=
- bug#64927: 30.0.50; kill-ring with no X, Stefan Monnier, 2023/08/03
- bug#64927: 30.0.50; kill-ring with no X, Eli Zaretskii, 2023/08/03
- bug#64927: 30.0.50; kill-ring with no X, Eli Zaretskii, 2023/08/03
- bug#64927: 30.0.50; kill-ring with no X, Stefan Monnier, 2023/08/03
- bug#64927: 30.0.50; kill-ring with no X, Eli Zaretskii, 2023/08/03
- bug#64927: 30.0.50; kill-ring with no X, Stefan Monnier, 2023/08/03
- bug#64927: 30.0.50; kill-ring with no X, Colin Baxter, 2023/08/04
- bug#64927: 30.0.50; kill-ring with no X, Eli Zaretskii, 2023/08/04
bug#64927: 30.0.50; kill-ring with no X, Colin Baxter, 2023/08/03