PageUpとPageDownキーが左と右のキーの真上に不自然に配置されているため、キーを再マッピングしました(XPS13 2018)。これを行うには、/usr/share/X11/xkb/symbolsの「pc」というファイルを変更しました。具体的には、次の行を置き換えました。
キー { [ 前回 ] };
キー { [ 次へ ] };
による
キー { [ NoSymbol, Prior ] };
キー { [ NoSymbol, 次へ ] };
その後、X サーバーを再起動しました。
これらの設定では、たとえば PgUp キーを押しても何も起こらず、Shift + PgUp を押すと通常の PgUp アクションが実行されます (PgDown の場合も同様)。
これで問題は解決したようです。ターミナル、テキスト エディター、その他の gtk アプリなどのすべてのアプリケーションで、キーが適切なアクションにマップされます。
私の唯一の問題は Google Chrome に関するものです。Shift + Pgup は何も機能せず、PgUp も機能しません (PgDown も同様)。これらのキーは Chrome では役に立たないようです。
システムと Chrome などの他のアプリの両方で、キー (PgUp/PgDown) を再マッピングして、通常どおりに押した場合には何にも割り当てられず、Shift + キー (または Ctrl + キー/Altgr + キーなど) を押すと通常の動作が実行されるようにする方法はありますか?
PS: xmodmap を使用してキーの再マッピングを試しました。これはターミナルとテキスト エディターでは機能しましたが、Chrome と他のいくつかの GTK アプリでは機能しませんでした。後者はマッピングを無視し、これらのキーの通常のアクションを実行するようです。
私はXサーバー(Waylandではありません)でUbuntu 17.10を実行しています。
答え1
問題は、Shift キーが依然として修飾子であるため、PgUp キーを押してもイベントは生成されないのに、Shift + PgUp を押すと Shift + PgUp イベントが生成されることだと思います。この設定では、Chrome が求めている単純な PgUp キー押下を生成する方法はありません。
これを回避する唯一の方法は、Shift キーを修飾子ではなくオーバーレイを選択するように変更することです。これは、AltGr の動作に似ています。AltGr + 4 を押すと、一部のキー レイアウトでユーロ通貨記号が表示されますが、同時に Alt が押されているようには見えません。
おそらく、Shift キーでこれを行うことは望ましくないでしょう (Shift キーに関連付けられている他の機能が失われるため)。ただし、別のキーを選択することはできます。キー レイアウトで Caps Lock キーを使用してグループを切り替えました。私の場合、一部の文字キーは通常どおり動作しますが、Caps キーを押したままにすると、それらの文字キーはカーソル移動用の矢印キーに変わります。