Por que meu comando xmodmap não será executado na inicialização / login?


13

Quero executar este comando toda vez que efetuar login (ou toda vez que iniciar, se isso não funcionar): xmodmap -e 'keysym Delete = Menu' -e 'keysym Menu = Delete'

Eu tentei muitas coisas. Eu coloquei o comando System > Preferences > Startup Applications. Coloquei em um .sharquivo, marquei chmod +xe coloquei esse arquivo System > Preferences > Startup Applications. Eu coloquei o script /etc/init.d. Eu coloquei os comandos ~/.profile. Nada parece funcionar.

Por fim, coloquei isso no meu ~/.profile:

touch test1
xmodmap -e 'keysym Delete = Menu' -e 'keysym Menu = Delete'
touch test2

Test1 e test2 são criados, mas as chaves ainda não são remapeadas. Se eu apenas copiar / colar o comando e executá-lo manualmente, ele funcionará bem. Mas não será executado no login. Alguma ideia?


não poste a mesma pergunta em vários sites do Stack Exchange (a menos que a pergunta esteja no tópico nos dois sites e você tenha esperado muito tempo e não tenha tido uma boa resposta no primeiro site; mas inclua um link para o original questão).
Gilles 'SO- stop be evil'

@Gilles: Essa é a política oficial? Parece que, se estiver no tópico nos dois sites, os dois sites poderão se beneficiar dele. Mas se isso já tiver sido discutido e decidido, terei cuidado no futuro.
Matthew

Eu pensei que havia uma entrada oficial da FAQ sobre isso, mas não consigo encontrá-la. Eu perguntei na meta .
Gilles 'SO- stop being evil'

Respostas:


5

Dependendo da sua distribuição, o ~/.xsessionarquivo é executado (um script de shell) ao efetuar login no X. E / ou o ~/.Xmodmaparquivo é originado por um xmodmapprocesso.

O ~/.profilearquivo é executado apenas por um shell de login (com ou sem X), portanto, não é o lugar certo


6

Coloque-o ~/.Xmodmap. Alguma distro procura em ~/.Xmodmapvez de ~/.xmodmaprc. Funciona para mim no Fedora 16.


Esta é a melhor solução no debian
UnLoCo

1

Coloque-o ~/.xsessionrce verifique se ele /etc/X11/Xsession.optionscontém allow-user-xsession.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.