Cambiar la clave "Meta" para la biblioteca readline

Cambiar la clave "Meta" para la biblioteca readline

Estoy interesado en volver a vincular la metaclave dellínea de lecturabiblioteca (edición de línea de comando en, digamos, bash) desde la tecla alt a alguna otra tecla arbitraria (como la tecla de bloqueo de mayúsculas).

Para contextualizar, ya estoy usando el administrador de Windows XMonad y tengo la tecla alt vinculada a una serie de funciones personalizadas que tienen prioridad sobre las combinaciones de teclas del terminal.

Intenté usar xmodmap para reasignar una tecla a Escape, pero esto no te permite mantener presionada la tecla y presionar varias teclas de movimiento seguidas.

¿Es posible que readline trate un Modmodificador diferente como meta clave?

¡Gracias!

Respuesta1

Readline detecta una combinación de teclas meta comprobando que un cierto bit esté configurado en el carácter que recibe del terminal o, debido a la forma en que esto funciona para meta, que el carácter se encuentre en un cierto rango de valores en la parte superior de los valores. almacenado en un byte de 8 bits. Verchardefs.hpara las macros de utilidad involucradas.

Puede ajustar su sentido de meta-ness alterando la biblioteca para detectar metacaracteres de alguna otra manera redefiniendo estas macros y luego volviendo a vincular su shell con esta línea de lectura ajustada. Un enfoque menos invasivo sería configurar su terminal para que comprenda otra clave como configurar el meta bit, o usar algún tipo de administrador de entrada a nivel del sistema que pueda hacer lo mismo.

Respuesta2

La biblioteca readline no sabe exactamente nada sobre el modificador utilizado en su terminal para actuar como su noción de metaclave. Entonces no: lo que pides no es posible.

información relacionada