Siguiendo con mi pregunta sobre la personalización de las asignaciones de teclas en Wayland , descubrí que xmodmap
aparentemente está en desuso, pero xkb "debería funcionar" en Wayland. Desafortunadamente, xkb es mucho más complicado y, en consecuencia, está peor documentado. Me las arreglé para resolver las estrofas que necesito sobre la base de la información de una pregunta sobre el intercambio CmdyCtrl , otra pregunta de bloqueo de mayúsculas , leyendo algunos de los enlaces en las respuestas y de los archivos de mi sistema, pero no sé cómo aplicarlos de manera que pueda automatizarse y no entrar en conflicto con GNOME.
Estas son las estrofas que he elaborado y probado con éxito xkbcomp
.
partial alphanumeric_keys
xkb_symbols "pound" {
// Put sterling on RAlt-3 and numbersign on Shift-3.
key <AE03> { [ 3, numbersign, sterling, threesuperior ] };
};
// Make right cmd key act as ctrl
partial modifier_keys
xkb_symbols "rcmdctrl" {
key <RWIN> { [ Control_R ] };
modifier_map Control { <LCTL>, <RWIN> };
modifier_map Mod4 { <LWIN> };
};
partial modifier_keys
xkb_symbols "shiftcaps" {
key <CAPS> {
type[Group1] = "TWO_LEVEL",
symbols[Group1] = [ VoidSymbol, Caps_Lock ],
actions[Group1] = [ NoAction(), LockMods(modifiers=Lock) ]
};
};
Puse los dos primeros /usr/share/X11/xkb/symbols/macbook
y el tercero en shiftcaps
el mismo directorio, y con xkbcomp
etc. funcionan cuando se cargan encima del gb(mac)
diseño estándar .
Estoy editando esto para hacer una actualización y aclarar mi respuesta. La personalización de mi libra dejó de funcionar recientemente, así que verifiqué lo que había cambiado en gb (mac) y me di cuenta de que tenía que agregar , threesuperior
a la key <AE03>
línea.
Creo que evdev.xml
gnome-tweak-tool lo utiliza para hacer que estas opciones estén disponibles en la GUI. Esto es lo que agregué:
<group allowMultipleSelection="true">
<configItem>
<name>macbook</name>
<description>Macbook customisations</description>
</configItem>
<option>
<configItem>
<name>macbook:pound</name>
<description>Hash on Shift-3, Sterling on AltGr-3</description>
</configItem>
</option>
<option>
<configItem>
<name>macbook:rcmdctrl</name>
<description>Right Cmd key acts as Ctrl</description>
</configItem>
</option>
</group>
<group allowMultipleSelection="false">
<configItem>
<name>shiftcaps</name>
<description>Caps Lock with Shift</description>
</configItem>
<option>
<configItem>
<name>shiftcaps:shiftcaps</name>
<description>Caps Lock requires Shift to toggle</description>
</configItem>
</option>
</group>
dconf
valores clave debajoorg.gnome.desktop.input-sources
) siempre que las agregue a las reglas xkb que usa su sistema, es decir, a los archivos correctos, vea mi publicación aquí/usr/share/X11/xkb/rules/evdev.xml
. No estoy seguro de para qué sirve; la aplicación de configuración de GNOME se bloqueará al abrir las opciones del teclado si cometí un error de sintaxis, pero en realidad no puedo encontrar las opciones en la GUI. Agregué líneas apropiadas después de la línea que contiene<optionList>
. No puedo publicarlos aquí debido a limitaciones en los comentarios.Respuestas:
La respuesta de don_crissti a la otra pregunta proporcionó la pieza faltante del rompecabezas.
org.gnome.desktop.input-sources.xkb-options
Definí opciones en los archivos evdev como se describe y las agregué a gsetting. Funciona perfectamentefuente