Capslockをctrlに再マップしたいのですが、オンラインで答えが見つかりました。
setxkbmap -option ctrl:nocaps
シェルで試してみましたが、動作します。それを永続化したいのですが、ホームディレクトリに~/.Xkbmap
ファイルを作成する必要があるというオンライン投稿がいくつか見つかりました。私はそれに従い、上記の構成をこのファイルに入れました。しかし、それは機能しません。再起動後も、capslockはcapslockのままです。
もう少し深く掘り下げて、/etc/X11/xinit/xinitrc.common
で、次の行を見つけました:cat $xkbmap | xkbcomp - $DISPLAY
($xkbmap
は$HOME/.Xkbmap
に設定されています)
Xkbmapがソースされていない理由はありますか?私はOpenSUSE13.2を使用しており、LXDMを使用しています。
私が使用したDMは、構成ファイルを調達していません。異なるdmは異なる初期化プロセスを持っているようです。それらは、ホームディレクトリの下でファイルを調達することを保証しません。
よろしければ、/ etc/X11 /のすぐ下にある構成ファイルを変更できます。キーボード設定を行うのに最も適切な場所は、どの特定のファイルかわかりません。しかし、それはいくつかのグーグル検索で簡単にできるはずです。
私の場合、i3ウィンドウマネージャーを使用しているので、i3構成ファイルで構成ファイルを直接入手します。そして、それはうまく機能しています。
おっしゃるように、実行されるコマンドはcat $xkbmap | xkbcomp - $DISPLAY
です。
~/.Xkbmap
ファイルは、ソースまたは実行されるシェルスクリプトではなく、xkbcomp
構成ファイルである必要があります。 xkbcomp
のマニュアルページに、これらのファイルの形式が示されていることを願っています。
どうやら 、ファイル~/.config/lxsession/LXDE-pi/autostart
には、起動時に実行されるコマンドが含まれている可能性があり、プレフィックスは@
記号です。そのファイルに@setxkbmap -option ctrl:nocaps
を追加してみてください。