起動/ログイン時にxmodmapコマンドが実行されないのはなぜですか?

起動/ログイン時にxmodmapコマンドが実行されないのはなぜですか?

ログインするたびに(または機能しない場合は起動するたびに)、このコマンドを実行したいと思います。xmodmap -e 'keysym Delete = Menu' -e 'keysym Menu = Delete'

たくさん試してみました。に注文を入れましたSystem > Preferences > Startup Applications.shファイルに入れてタグを付け、chmod +xファイルをに入れましたSystem > Preferences > Startup Applications/etc/init.dにコマンドを入れました~/.profile。何も動作しないようです。

最後に、私はこれを私の中に入れました~/.profile

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

test1とtest2の両方が生成されましたが、キーはまだマップされません。コマンドをコピー/貼り付けて手動で実行すると正常に動作します。ただし、ログイン時には実行されません。どんなアイデアがありますか?

答え1

入力してください~/.Xmodmap。一部のディストリビューションでは、~/.Xmodmap代わりにそれを見つけます~/.xmodmaprc。 Fedora 16で動作します。

答え2

ディストリビューションによっては、~/.xsessionこのファイル(シェルスクリプト)はXにログインしたときに実行されます。および/または~/.Xmodmapファイルがいくつかのプロセスによって取得されましたxmodmap

この~/.profileファイルはログインシェル(Xの有無にかかわらず)によってのみ実行されるため、正しい場所ではありません。

答え3

入れて含まれていることを~/.xsessionrc確認してください。/etc/X11/Xsession.optionsallow-user-xsession

関連情報