Chcę uruchomić tę komendę przy każdym logowaniu (lub przy każdym uruchomieniu, jeśli to nie działa): xmodmap -e 'keysym Delete = Menu' -e 'keysym Menu = Delete'
Próbowałem wielu rzeczy. Włożyłem polecenie System > Preferences > Startup Applications
. Umieściłem go w .sh
pliku, oznaczyłem chmod +x
i umieściłem w tym pliku System > Preferences > Startup Applications
. Włożyłem skrypt /etc/init.d
. Wkładam polecenia ~/.profile
. Wydaje się, że nic nie działa.
Na koniec umieszczam to w moim ~/.profile
:
touch test1
xmodmap -e 'keysym Delete = Menu' -e 'keysym Menu = Delete'
touch test2
Tworzone są zarówno test1, jak i test2, ale klucze nadal nie są ponownie mapowane. Jeśli po prostu skopiuję / wkleję polecenie i uruchomię je ręcznie, będzie działać dobrze. Ale nie będzie działać po zalogowaniu. Jakieś pomysły?
Odpowiedzi:
W zależności od dystrybucji
~/.xsession
plik jest wykonywany (skrypt powłoki) podczas logowania do X. I / lub~/.Xmodmap
plik jest pozyskiwany przezxmodmap
proces.~/.profile
Plik jest wykonywany tylko przez powłoki logowania (z lub bez X), więc to nie jest właściwe miejsceźródło
Włóż to
~/.Xmodmap
.~/.Xmodmap
Zamiast tego szuka trochę dystrybucji~/.xmodmaprc
. Działa dla mnie na Fedorze 16.źródło
Włóż
~/.xsessionrc
i upewnij się, że/etc/X11/Xsession.options
zawieraallow-user-xsession
.źródło