Actualmente tengo un .Xmodmap
archivo que cambia mi Commandpara Ctrl, a continuación, cambia mi Ctrla Super(estoy corriendo Linux en un Mac).
Funciona bastante bien, cuando solo se ejecuta una vez pero en ejecuciones sucesivas (por ejemplo, cuando reinicio mi entorno de escritorio (Cinnamon) vuelve a cargar el .Xmodmap
archivo), básicamente restablece la configuración al revertir los cambios. Alternar efectivamente entre mi configuración deseada y la configuración original.
¿Cómo puedo escribir un .Xmodmap
archivo que solo establece la configuración una vez, pero que no la cambia en ejecuciones sucesivas? Aquí está mi .Xmodmap
archivo existente :
clear control
clear mod4
keycode 105 =
keycode 206 =
keycode 133 = Control_L NoSymbol Control_L
keycode 134 = Control_R NoSymbol Control_R
keycode 37 = Super_L NoSymbol Super_L
add control = Control_L
add control = Control_R
.Xmodmap
solo afecta las teclas que está cambiando, ¿qué quiere hacer de manera diferente?Respuestas:
Restablece el mapa a su estado original antes de aplicar tus modificaciones. Un reinicio completo lleva una eternidad, por lo que lo mejor que puedo hacer es diferir.
Este código usa
.Xmodmap{.orig,.reset,.mods}
donde.orig
no existe si está establecido en el estado actual, y calcula.reset
para restaurar ese estado desde donde sea que esté. antes de aplicar.mods
.(editar: limpieza)
fuente
Vaya a sistema> Preferencias> Aplicaciones de inicio y agregue
xmodmap ~/.Xmodmap
.fuente
Todavía estoy un poco confundido sobre lo que quieres, pero creo que esto:
Si pones esto en tu
~/.Xmodmap
,luego, cada vez que
xmodmap ~/.Xmodmap
se ejecuta, se intercambian las teclas izquierda Ctrly izquierda ⌘. Entonces, en la primera invocación, la Ctrltecla actúa como si ⌘hubiera presionado , pero en la segunda invocación, se reanuda actuando como una Ctrltecla nuevamente.fuente
xmodmap ~/.Xmodmap
desde un xterm, y vea si su código realmente intercambia las claves con la aplicación repetida. ¿Quizás las claves que vuelven al comportamiento original cuando se reinicia Cinnamon no son por la razón que crees que es?