Re: [dev] [st] Unexpected Insert key behavior in mc

From: Roberto E. Vargas Caballero <k0ga_AT_shike2.com>
Date: Mon, 10 Dec 2012 23:06:41 +0100

> Since we had these two discussions goin on parallel, my guts told me
> to revert my patch to config.h today. Then I did something a bit
> different. It now works for both sandy and mc correctly, likewise for
> DEL, INS and HOME which were making trouble yesterday. Attached is the
> patch which works here. Please test and report back.

Your patch is changing the idea of the table, and making others keys don't
work. Taken from the comment in config.def.h:

 * keypad value:
 * * 0: no value
 * * > 0: keypad application mode enabled
 * * = 2: term.numlock = 1
 * * < 0: keypad application mode disabled


So, the changes:

> diff --git a/st.c b/st.c
> index fc64a77..43ce496 100644
> --- a/st.c
> +++ b/st.c
> _AT_@ -2737,12 +2737,12 @@ kmap(KeySym k, uint state) {
> if(!match(mask, state))
> continue;
>
> - if(kp->appkey > 0) {
> + if(kp->appkey < 0) {
> if(!IS_SET(MODE_APPKEYPAD))
> continue;
> if(term.numlock && kp->appkey == 2)
> continue;
> - } else if (kp->appkey < 0 && IS_SET(MODE_APPKEYPAD)) {
> + } else if (kp->appkey > 0 && IS_SET(MODE_APPKEYPAD)) {
> continue;
> }

are making the table act in the reverse mode, changing it to:

 * keypad value:
 * * 0: no value
 * * < 0: keypad application mode enabled
 * * = 2: Does not matter because it is impossible enter in the first if...
 * * > 0: keypad application mode disabled,

Doing that XK_KP_0 until XK_KP_9 are not working any more, and for example
XK_End change its behaviour.


Please, could you send the information (infocmp and cat >/dev/tty) I request
in the previous mail?. I suspect that maybe sandy is not writing the
sequence smkx, that is the sequence needed for putting the keypad in
application mode. I just have tested all the keys before these last patches
and it seems they were working fine.
Received on Mon Dec 10 2012 - 23:06:41 CET

This archive was generated by hypermail 2.3.0 : Mon Dec 10 2012 - 23:12:05 CET