Chrome 停用鍵重新對應為 xkb

Chrome 停用鍵重新對應為 xkb

我重新映射了 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 上毫無用處。

他們是重新映射鍵(PgUp/PgDown)的一種方法,因此如果正常點擊,它不會被分配給任何東西,並且如果執行Shift+key(或Ctrl+key/Altgr+key 等),則執行其正常行為,對於兩者係統和其他應用程式(例如 Chrome)?

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 時,這些字母鍵會變成箭頭鍵以進行遊標導航。

相關內容