El jugar con los xmodmap
que me encontré una tecla de modificación que no había oído hablar de: Mode_switch
. Parece tener algo que ver con insertar caracteres especiales.
Lo asigné a una tecla pero parece no tener efecto. ¿Para qué sirve? ¿Es diferente de ISO_Level3_Shift
(Alt Gr) ?
Respuestas:
Mode_switch
es el nombre antiguo (anterior a XKB) de la tecla que se llama AltGren muchos diseños de teclado. Es similar a Shifteso, cuando presiona una tecla que corresponde a un carácter, obtiene un carácter diferente si Shifto AltGrtambién se presiona. A diferenciaShift
,Mod_switch
no es un modificador en el sentido X11 porque normalmente se aplica a los caracteres, no a las teclas de función, por lo que las aplicaciones solo necesitan realizar una búsqueda de caracteres para obtener el efecto deseado.ISO_Level3_Shift
es la versión XKB de esta clave. En términos generales, XKB es mucho más complicado y puede hacer algunas cosas extra extravagantes. El mecanismo de XKB es más general ya que permite que las distribuciones del teclado varíen en qué teclas están influenciadas por qué modificadores, generaliza modificadores CapsLockfijos ( -style) y de pulsación simultánea ( Shift-style) y así sucesivamente.fuente
ISO_Level3_Shift
bueno saber que puede actuar de manera 'pegajosa', estuve buscando esa funcionalidad durante mucho tiempo: unix.stackexchange.com/questions/39014/…AltGr
yMode_switch
las mismas claves? Si no, en este enlace , suenan como si fueran las mismas cosas. ¿Podría aclarar esto un poco?Mode_switch
yISO_Level3_Shift
haz lo mismo de maneras ligeramente diferentes. No pretendo entender las diferencias; la mayoría de las veces no importan, pero sí recuerdo que mezclar xmodmap con nombres XKB ocasionalmente causaba que los modificadores no funcionaran correctamente.us(cz_sk_de)
características o con asignaciones de xmodmap personalizadas para algunas teclas (coma, por ejemplo) dependiendo de siAltGr
esMode_switch
oISO_Level3_Shift
no puede obtener ambas características al mismo tiempo.CapsLock
estilo. Las teclas adhesivas se denominan "pestillo" y las teclas de bloqueo se denominan bloqueos. Las teclas adhesivas se liberan después de presionar el siguiente no modificador mientras las teclas de bloqueo están vigentes hasta que se presionan nuevamente.Esta respuesta no tiene la intención de contradecir la respuesta de @Gilles, pero tiene la intención de describir otro aspecto del manejo de entrada xkb que siento que está "poco iluminado" en su respuesta.
Puede usar ambos
ISO_Level3_Shift
(Alt-Gr) yMode_switch
al mismo tiempo con diferentes resultados . Requiere algo de configuración, pero puede tenerlos a ambos y usarlos para producir 6 teclas diferentes por tecla física del teclado.Puede, por ejemplo, configurarlo Tabpara que se
Mode_switch
mantenga con xcape ⌂ y xmodmap , luego, por ejemplo, la tecla con la etiqueta "H" en el teclado podría producir los siguientes caracteres / teclas:h
H
← (Cursor)
← (Symbol)
┘
┐ with H
with ShiftH
with AltGrH
with AltGrShiftH
with TabH
with TabShiftH
Entonces, para volver a su pregunta:
IL3S
yMode_switch
se puede configurar para que signifique cosas diferentes, para que pueda tener teclas de cursor y ~ 200 caracteres útiles de los idiomas (acentuados), dibujo de cuadros y caracteres técnicos establecidos en las 35 teclas de Las 3 filas de letras.Para lograr lo anterior:
ejemplo para H:
fuente
fn: A → B
.ISO_Level5_Shift
. Esto produce 8 niveles, el séptimo serlvl3+lvl5+H
& c.Mode_shift
en Xkb es una tecla de cambio para grupos o diseños. Si tiene un diseño con varios grupos, puede mantener presionada esta tecla para acceder al siguiente grupo. Si tiene varios diseños, puede mantener presionada esta tecla para cambiar entre diseños († 1).Entonces,
Mode_shift
es agrupar lo que Shift(o ,Shift_L
yShift_R
, usar los nombres de claves) es a niveles.Esto podría ser más claro si consideramos que
Mode_shift
tiene un alias llamadoISO_Group_Shift
(† 2). También hay teclas llamadasISO_Group_Latch
yISO_Group_Lock
que corresponden aISO_Level2_Latch
(cambio de pestillo) yShift_Lock
, respectivamente († 3).También hay una serie de alias para diferentes scripts:
kana_switch
Arabic_switch
Greek_switch
Hebrew_switch
Hangul_switch
† 1: Esto se basa en mi comprensión de los "grupos" y "diseños" de Xkb. Parece que se tratan de la misma manera en cuanto a seleccionar entre ellos con teclas como esta.
† 2: Estoy basando esto en el archivo
keysymdef.h
en este repositorio de Git en la revisión ab8666661fc6 ("Agregar XF86XK_AudioPreset", 2017-05-10). En las instalaciones, probablemente encontrará este archivo en/usr/include/X11/keysymdef.h
.† 3: También hay una llave
ISO_Lock
, una especie de llave de bloqueo de uso general.El significado de la
AltGr
llaveGilles mencionó en su respuesta la conexión con la AltGrclave:
Eso me lleva a sospechar que "AltGr" podría significar "grupo alternativo / alternativo", ya que
Mode_switch
se usa para cambiar de grupo. Sin embargo, esto resultó ser incorrecto. Según la página de Wikipedia sobre la AltGrtecla , "AltGr" parece provenir de los teclados de IBM, y en sus manuales dice que es una abreviatura de "gráficos alternativos". Esto tiene sentido, ya que parece probable que usar el teclado para dibujar "gráficos" (caracteres de dibujo de recuadro utilizados en las interfaces de usuario de texto) fue mucho antes de que hubiera un buen soporte para cambiar rápidamente entre múltiples scripts.fuente