Debian

如何在滑鼠上映射擴展按鈕?

  • March 18, 2015

我正在嘗試按照本指南使用 Logitech G600。我已經(使用 Windows 電腦)將滑鼠上的每個鍵組合映射到普通鍵盤上的某個東西。我在 /etc/udev/hwdb.d/ 中設置了一些規則來將掃描碼映射到一些擴展鍵碼(在此處找到)。所有這些都可以正常工作,除了 X 不能辨識大於 255 的鍵碼。所以,行

KEYBOARD_KEY_7001d=zenkakuhankaku

導致滑鼠按鈕吐出keycode 400(通過showkey)並且xev根本無法辨識該鍵。

我還嘗試執行xmodmap -pke | grep "= XF86"以顯示應該可用的小於 255 的鍵碼,但無法弄清楚如何將掃描碼映射到這些鍵碼(即KEYBOARD_KEY_7001d=XF86Explorer,將鍵映射到“z”)。

有沒有辦法將掃描碼直接映射到數字鍵碼(在 hwdb 文件中 - 我不想將發出字母“a”的所有內容映射到 XF86Calculator)?

是否有其他方法可以將掃描程式碼映射到未使用的 XF86 程式碼之一?

好的,這就是我最終要做的。我從 /usr/include/linux/input.h 中提取了實際的鍵名。有一個部分定義了鍵碼名稱,如下所示:

#define KEY_RIGHTMETA           126
#define KEY_COMPOSE             127
#define KEY_STOP                128     /* AC Stop */
#define KEY_AGAIN               129
#define KEY_PROPS               130     /* AC Properties */

我在 KEY_xxx 中使用了小寫的 xxx(所以,“compose”、“stop”等)作為鍵名。我選擇了看起來不會真正在其他地方使用的東西(比如 KEY_LEFTCTRL)。

然後,就像連結的文章所建議的那樣,我曾經xbindkeys -km獲取適當的鍵碼編號並使用 xbindkeys 來映射它們。

引用自:https://unix.stackexchange.com/questions/190834