El jugar con los xmodmapque 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_switches 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_switchno 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_Shiftes 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_Shiftbueno saber que puede actuar de manera 'pegajosa', estuve buscando esa funcionalidad durante mucho tiempo: unix.stackexchange.com/questions/39014/…AltGryMode_switchlas mismas claves? Si no, en este enlace , suenan como si fueran las mismas cosas. ¿Podría aclarar esto un poco?Mode_switchyISO_Level3_Shifthaz 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 siAltGresMode_switchoISO_Level3_Shiftno puede obtener ambas características al mismo tiempo.CapsLockestilo. 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_switchal 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_switchmantenga 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:
IL3SyMode_switchse 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_shiften 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_shiftes agrupar lo que Shift(o ,Shift_LyShift_R, usar los nombres de claves) es a niveles.Esto podría ser más claro si consideramos que
Mode_shifttiene un alias llamadoISO_Group_Shift(† 2). También hay teclas llamadasISO_Group_LatchyISO_Group_Lockque corresponden aISO_Level2_Latch(cambio de pestillo) yShift_Lock, respectivamente († 3).También hay una serie de alias para diferentes scripts:
kana_switchArabic_switchGreek_switchHebrew_switchHangul_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.hen 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
AltGrllaveGilles 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_switchse 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