@ダニエルの答えは私に正しい方法を示したが、私はそれを拡張したいと思います。
Linux Mint 17.2およびUbuntu 16.04で動作します。
使用し続けると考えられるすべての工夫を試しましxmodmapたが、システムがスリープモードになるとすべて失敗します。同じsetxkbmapことは、* settings-daemon(私にとってはxfce4)がスクリプトよりも遅く実行される場合に使用する起動アプリケーションスクリプトにも当てはまります。順序は実際には影響を受けません。
私がついに思いついたものには、次の成分があります。
1)の最小限のキーボードマッピングファイルを作成します/usr/share/X11/xkb/symbols。ファイルを呼び出しましょmylayoutう
xkb_symbols "basic" {
name[Group1] = "My Layout";
include "us"
key <AE03> { [ 3, numbersign, sterling, sterling] };
include "level3(ralt_switch)"
}
basic は単なる名前です。後でまた会いましょう。
name[Group1]同様にそれはそう名前だけですが、それは後に何の役割も果たしていないでしょう。
include "us"プレーンusキーボードが含まれています。実際にusは、同じディレクトリに別のファイルがあります。これが私たちが適応しているキーボードのレイアウトです。必要に応じて別のものを選択してください。注:この行を終了するセミコロンはありません。
- この
keyラインはキーボードの1つの適応であり、さらに多くのことが続きます。<AE03>下のファイルで見つけることができます/usr/share/X11/xkb/keycodes。xevプログラムを使用して、「3」キーのキーコードが12であり、キーコードファイルXfree86でマップされていることを確認し<AE03>ます。
- 最後に
include、別のキーボードオプションをアクティブにする別のディレクティブを使用します。この場合、レベル3シフトキー、つまりsterling上記で定義した記号へのアクセスを許可するキーを右Altキーにしたいです。level3同じフォルダ内のralt_switch1つのセクションを持つ単なるファイル名です。周りを見て、含める必要があるものを選択します。
2)私はシステムフォルダに入れませんでしたmylayout。むしろ、システムフォルダから自分の好みのフォルダへのソフトリンクのみを作成し、すぐにこれがストックソフトウェアではないことを確認しました。
3)さらに、更新の手間を防ぐために、再び修正しませんevdev.xmlでした。しかし、これはキーボード構成エディターでmylayoutを見つけるために必要です(xfce4の場合xfce4-keyboard-settings)。代わりに私が使用xfce4-settings-editorして変更keyboard-layout->XkbLayoutするmylayout(ファイル名)とXkbVariantするbasic(上記参照します)。その後、mylayout/basicキーボード設定エディターにも表示されます。のエントリはevdev.xml、レイアウトを選択できるようにするためにのみ必要なようです。
このようにして、キーボード設定はスリープモードとリブートを切り抜けます。
詳細な背景については、http://www.charvolant.org/~doug/xkb/html/node5.htmlを参照してください。
スリープモードの問題を修正する別の方法(自分で試していない)は、https://www.vinc17.net/unix/xkb.en.htmlで見つけることができます。
更新:上記のようにxfce4-settings-editorの設定を変更したのと同じ瞬間にMint 18.3で動作しました。
更新:18.04では、gdm3がディスプレイマネージャーとして、XFCE4がウィンドウマネージャーとして、〜/ .Xmodmapが再び読み込まれ、設定が一時停止しても生き残るように見えます。(私はめったにサスペンドを使用せず、ラップトップがどのモードになっているのか本当にわかりません。)