再マッピングしました CapsLock このように機能するための鍵:
CapsLock + J = Left arrow key
CapsLock + K = Down arrow key
等。
私はxmodmapを使用しました( Super + hjklをXの下の矢印キーにマッピングする で説明されています)。
問題は、次のキーの組み合わせを機能させることができないように見えることです。
期待: CapsLock + Shift + J = Shift + Left arrow key
実際: CapsLock + Shift + J =何もしません。
等。
それを機能させる方法について何かアイデアはありますか?ありがとう。
直接的な答えではありませんが、これにアプローチする最善の方法は、関心のある組み合わせを押したときに発生しているイベントを確認することです。これを行うには、xevをインストールし、さまざまなものを試してください。組み合わせ。
私は同じ問題を抱えていて、 AskUbunt でそれを尋ねました。この問題は次の方法で解決できます。
/usr/share/X11/xkb/types/iso9995
を編集し、ファイルの内容が次のようになるようにpreserve[Shift+LevelThree] = Shift;
を追加します。
partial default xkb_types "default" {
// A key type which can be used to implement
// an ISO9995-style level-three shift.
virtual_modifiers LevelThree;
type "THREE_LEVEL" {
modifiers = Shift+LevelThree;
map[None] = Level1;
map[Shift] = Level2;
map[LevelThree] = Level3;
map[Shift+LevelThree] = Level3;
preserve[Shift+LevelThree] = Shift;
level_name[Level1] = "Base";
level_name[Level2] = "Shift";
level_name[Level3] = "Level3";
};
};
/usr/share/X11/xkb/symbols/
のキーボードレイアウトファイルを次のように編集します(必要に応じて)
key <AC06> { type="THREE_LEVEL", [ h, H, Left ] };
key <AC07> { type="THREE_LEVEL", [ j, J, Down ] };
key <AC08> { type="THREE_LEVEL", [ k, K, Up ] };
key <AC09> { type="THREE_LEVEL", [ l, L, Right ] };
好きではない
....
key { [ j, J, Down, Down ] };
....
それがどのように機能するかをよく理解している場合は、キーボード仕様ファイルを試して、たとえばシフトした場合など、必要なものを明示的に言ってみてください。
key { [ j, J, Down, Next ] };
key { [ k, K, Up, Prior ] };
pageDnとPageUpを使用する---今はチェックできませんが、動作するはずです。
問題は、キーボードハードウェアでcapslockとshiftがほぼ同じである可能性があります。また、capslockキーがShiftキーを永続的にトリガーするだけである可能性があります。