[Geany-Devel] VTE resetting and handling of ^C and ^D

Colomban Wendling lists.ban at herbesfolles.org
Wed Dec 5 14:36:53 UTC 2012


Le 05/12/2012 01:42, Lex Trotman a écrit :
> [...]
>> Well, we send this signal to the shell we launched and it only, so I
>> expect the shell do what's needed to kill its children.
> 
> Oops, I misread it and thought we sent it to the child.

Actually we don't know about what's running on the shell, and I doubt we
can, so yeah, it was the shell itself :)

> [...]
>>
>> I think this patch is good (for now, hehe :D), but maybe we want let the
>> other common binding pass through too, like ^Z, maybe others?
> 
> Why not just send all by default and only a few very specific
> keybindings (like switch focus) work in the VTE.  The problem with
> "common" ones is that someone will always find some program that uses
> some other keys. Of course you could have a second set of keybindings
> for the VTE window, not :)

Read ahead.

>>> [...]
>>>
>>> Can you get any ideas from what the various terminal emulators that
>>> use VTE do with these keycodes etc?
>>
>> Nothing, they just let the keybinding go through I guess.
> 
> Good idea lets do that :)
> 
> Seriously, trying to be smart and decide that some keybindings
> will/won't work in the VTE window is always going to never be
> completely right and always risks clashes with bindings in Geany
> itself.

We already have an "Override Geany keybindings" in the terminal prefs,
that actually overrides everything but focus keybindings.  But for some
reason, this is a setting and it is not enabled by default.  And if it
remains a setting, we somewhat *have to* let required stuff like ^C go
through in any cases.

So ok, one might argue that the setting don't make much sense, but it's
there and it allows for (most) Geany keybinding behaving like they do
everywhere else in the VTE too.  Though, at least with the way it is
done yet, if you enable "Override Geany keybindings", *all* (but focus)
keybindings will be eaten by the terminal no matter whether it or a
running process in it will actually handle the stroke;  so I can
understand one wanting this not to happen.

Regards,
Colomban


More information about the Devel mailing list