Atualmente tenho um .Xmodmap
arquivo que muda o meu Commandpara Ctrl, em seguida, muda o meu Ctrlpara Super(estou rodando Linux em um Mac).
Funciona muito bem, quando é executado apenas uma vez, mas em execuções sucessivas (por exemplo, quando eu reinicio meu ambiente de área de trabalho (Cinnamon), recarrega o .Xmodmap
arquivo), basicamente redefine as configurações revertendo as alterações. Alternando efetivamente entre a configuração desejada e a configuração original.
Como escrever um .Xmodmap
arquivo que define apenas as configurações uma vez, mas não as altera novamente em execuções sucessivas? Aqui está o meu .Xmodmap
arquivo 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
afeta apenas as teclas que você está alterando. O que você deseja fazer de diferente?Respostas:
Redefina o mapa para seu estado original antes de aplicar seus mods. Uma redefinição completa leva uma eternidade, para que o melhor que eu possa apresentar seja diferente.
Esse código usa
.Xmodmap{.orig,.reset,.mods}
onde, se.orig
não existe, é definido como o estado atual e calcula.reset
para restaurar esse estado de onde quer que seja. antes de aplicar.mods
.(editar: limpeza)
fonte
Vá para sistema> Preferências> Aplicativos de Inicialização e adicione
xmodmap ~/.Xmodmap
.fonte
Ainda estou um pouco confuso quanto ao que você quer, mas acho que é isso:
Se você colocar isso no seu
~/.Xmodmap
,toda vez que
xmodmap ~/.Xmodmap
é executado, as teclas Ctrlesquerda e esquerda são ⌘trocadas. Portanto, na primeira chamada, a Ctrltecla atua como se você tivesse pressionado ⌘, mas na segunda chamada, ela retoma a atuação como Ctrlchave novamente.fonte
xmodmap ~/.Xmodmap
partir de um xterm e veja se o seu código realmente troca as chaves com o aplicativo repetido. Talvez suas chaves voltem ao comportamento original quando o Cinnamon for reiniciado não pelo motivo que você pensa que é?