Keyboard-Shortcuts

xfce - 如何從鬍鬚菜單中取消綁定“超級”鍵盤快捷鍵

  • January 5, 2022

希望你度過了美好的一周。我會直接跳到主題。

我正在使用 xfce-Kali 2020.1b、xfce v4.14。

我想將“Super”分配給 xfce4-appfinder 來代替whiskermenu,因為它在我的 chromebook 機器上響應速度更快。我能夠綁定它並使用 xfce4-appfinder 但無法禁用whiskermenu 的快捷方式。所以他們會同時或一個接一個地發射。

據我了解,whiskermenu 過去只能通過與 xfce4-popup-whiskermenu 的鍵綁定來啟動,這可以通過鍵盤應用程序的應用程序快捷方式部分進行設置。但這導致無法將“超級”用於任何其他快捷方式的問題,因為在“~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml”中設置的快捷方式仍然在按下時被啟動而不是像xfce 的錯誤跟踪器中所述的那樣發布。但我沒有這個問題。所以我最好的猜測是 Super 被某方硬編碼到了whiskermenu 以修復這個錯誤。

我在整台機器上進行了 grep 搜尋,以找到這個硬編碼 Super 的 cfg 文件在哪裡,但沒有成功。我發現的只是 Ctrl+Esc 快捷鍵,不會造成任何傷害:

$ sudo grep -ri "xfce4-popup-whiskermenu" /* 2>/dev/null
/etc/xdg/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml:      <property name="<Alt>F1" type="string" value="xfce4-popup-whiskermenu --pointer"/>
/etc/xdg/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml:      <property name="<Primary>Escape" type="string" value="xfce4-popup-whiskermenu"/>
Binary file /home/thmyris/.mozilla/firefox/gzthh3eo.default-esr/places.sqlite-wal matches
Binary file /home/thmyris/.mozilla/firefox/gzthh3eo.default-esr/places.sqlite matches
/home/thmyris/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml:      <property name="<Primary>Escape" type="string" value="xfce4-popup-whiskermenu"/>
/home/thmyris/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml:      <property name="<Alt>F1" type="string" value="xfce4-popup-whiskermenu --pointer"/>

6年前還有一篇關於這個問題過去化身的文章,遺憾的是,這個問題和答案都對這個問題沒有用處。

Super_L 鍵未使用 Whiskermenu 進行硬編碼。

可以在設置管理器中訪問應用程序快捷方式。打開設置管理器 > 鍵盤 > 應用程序快捷方式

或通過 xfce4-keyboard-shortcuts 頻道中的 xfconf-query

xfconf-query -c xfce4-keyboard-shortcuts -l

在該通道中可能有一個定義 Super_L 快捷鍵的屬性

xfconf-query -c xfce4-keyboard-shortcuts -p /commands/custom/Super_L

但是,從提供的輸出…

/home/thmyris/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml:      <property name="<Primary>Escape" type="string" value="xfce4-popup-whiskermenu"/>
/home/thmyris/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml:      <property name="<Alt>F1" type="string" value="xfce4-popup-whiskermenu --pointer"/

Ctrl + Escape 是一個組合鍵,設置為在面板外掛的按鈕處彈出鬍鬚菜單,而

Alt + F1 設置為在目前滑鼠位置彈出鬍鬚菜單

如果 Super_L 仍然彈出 Whisker Menu,則很可能有一個守護程序正在執行,它監視 Super_L 按鍵,在這種情況下,模擬 Ctrl+Escape。據我所知,有兩個應用程序符合描述:xcape 和 ksuperkey。其中之一可以安裝並設置為在啟動時執行。兩者都作為守護程序執行,並且都用於防止 Super 鍵破壞其他 Super 組合鍵。如果是xcape,自動啟動命令設置為執行守護程序為:

xcape -e 'Super_L=Control_L|Escape'

Xcape 位於 Debian 儲存庫中,因此最有可能使用它。在 ksuperkey 的情況下:

ksuperkey -e 'Super_L=Control_L|Escape'

檢查哪個守護程序正在執行,並檢查設置中是否有自動啟動條目:

設置管理器 > 會話和啟動 > 應用程序自動啟動。

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