GNOME Bugzilla – Bug 657749
Gnome-terminal does not pass super modifier information
Last modified: 2021-06-10 14:32:33 UTC
Hi, Gnome-terminal currently does not emit special codes when the user uses the super or hyper modifiers. Could this be implemented? This would allow shell applications (for instance, emacs) to benefit from extra bindings.
I can't find any handling of Super in xterm, which vte aims to emulate closely. Is there any spec for this? What would Super+<key> send to the terminal?
I have no idea. I'm not aware of any terminal emulator that passes any information about super. That was just an idea, because I'm frustrated not to be able to use these bindings in emacs. I don't think there's any spec for it. Why not create one ? I have no idea how these things are implemented, so I may be talking nonsense.
We don't generally make up our own escape codes...
So xterm's ctlseqs.txt says: """ In normal mode, i.e., a Sun/PC keyboard when the sunKeyboard resource is false, xterm recognizes function key modifiers which are parameters appended before the final character of the control sequence. Code Modifiers --------------------------------- 2 Shift 3 Alt 4 Shift + Alt 5 Control 6 Shift + Control 7 Alt + Control 8 Shift + Alt + Control --------------------------------- For example, shift-F5 would be sent as CSI 1 5 ; 2 ~ If the alwaysUseMods resource is set, the Meta modifier also is recog- nized, making parameters 9 through 16. """ So maybe Super could be used for Meta here. (Note that vte calls Alt "Meta" internally, but the values it uses are those for Alt in the table above, in _vte_keymap_key_add_key_modifiers().)
Hi, That seems like a good idea. If you've got a patch I'd be willing to test it (and to try and make sure that at least emacs understands it correctly)
-- GitLab Migration Automatic Message -- This bug has been migrated to GNOME's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/vte/-/issues/1901.