5;72 is C-H and 6;72 is C-S-H, so I guess they are including the Shift in
the H (rather than h). I don't know if other terminals do this as well.

xterm calls it XTMODKEYS, and the property it is changing is called
modifyOtherKeys, see
https://invisible-island.net/xterm/manpage/xterm.html#VT100-Widget-Resources:modifyOtherKeys
.



On Mon, 20 Oct 2025, 10:36 Grégory Pakosz, <[email protected]> wrote:

> Hello Nicholas,
> Thanks so much for your answer!
>
> Here's what I get when I use printf '\033[>4;2m' then cat...
>
> *In iTerm2*
> • Press Control + Shift + H → ^[[27;6;72~
> • Press Control + Shift + L → ^[[27;6;76~
> • Press Control + C → ^[[27;5;99~ (instead of interrupting cat 🤔)
>
> *In Ghostty*
> • Press Control + Shift + H → ^[[27;5;72~
> • Press Control + Shift + L → ^[[27;5;76~
> • Press Control + C → ^C (interrupts cat)
>
> So based on what you said, iTerm2 behaves like Xterm while Ghostty doesn't.
> I'll reach out to Ghostty's authors.
>
> Grégory
>
> PS: Is there a name for printf '\033[>4;2m'?
> On Monday, October 20, 2025 at 9:41:28 AM UTC+2 Nicholas Marriott wrote:
>
>> I don't know if one is wrong, IIRC there is a lot of room for
>> interpretation here.
>>
>> Try "printf \033[>4;2m;cat" outside tmux and you can see what they send
>> when you press the keys (you won't be able to use ^C so you will need to
>> close the terminal window).
>>
>> xterm sends \033[27;6;72~ for C-S-h, that is 'H' not 'h'.
>>
>> If the terminals are sending something different you will need to talk to
>> their developers and see what they say.
>>
>>
>>
>>
>> On Tue, 14 Oct 2025 at 12:09, Grégory Pakosz <[email protected]>
>> wrote:
>>
>>> Hello,
>>>
>>> In https://groups.google.com/g/tmux-users/c/xL3C1ym79gs/m/CFXf9sk0BAAJ,
>>> I asked what it takes to make Control + Shift bindings work with iTerm2 +
>>> tmux.
>>>
>>> Nicholas answered that I need to bind C-S-H/C-S-L, and not C-S-h/C-S-l.
>>> So in my tmux conf, I have:
>>>
>>> set extended-keys on
>>> bind -r C-S-H swap-window -t -1 \; select-window -t -1  # swap current
>>> window with the previous one
>>> bind -r C-S-L swap-window -t +1 \; select-window -t +1  # swap current
>>> window with the next one
>>>
>>> It works in iTerm2.
>>> Today I noticed that if I want it to work with Ghostty, I need to use
>>> C-S-h and C-S-l:
>>>
>>> set extended-keys on
>>> bind -r C-S-h swap-window -t -1 \; select-window -t -1  # swap current
>>> window with the previous one
>>> bind -r C-S-l swap-window -t +1 \; select-window -t +1  # swap current
>>> window with the next one
>>>
>>> Why is it the case?
>>> Is one of the two terminal emulators wrong?
>>>
>>> Thank you!
>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "tmux-users" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> To view this discussion, visit
>>> https://groups.google.com/d/msgid/tmux-users/a6cfdad5-cfce-42ed-8a35-ce49487dadaan%40googlegroups.com
>>> <https://groups.google.com/d/msgid/tmux-users/a6cfdad5-cfce-42ed-8a35-ce49487dadaan%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>> --
> You received this message because you are subscribed to the Google Groups
> "tmux-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion, visit
> https://groups.google.com/d/msgid/tmux-users/9ffa6100-1655-478b-9012-ce9e9649d4a6n%40googlegroups.com
> <https://groups.google.com/d/msgid/tmux-users/9ffa6100-1655-478b-9012-ce9e9649d4a6n%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"tmux-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion, visit 
https://groups.google.com/d/msgid/tmux-users/CAEdLfcEihSPQXpBBGPbhZCqq%2BOqO_jVk_DZHyRod6-r%3DhWvyRQ%40mail.gmail.com.

Reply via email to