Xbindkeys

如何讓 xbindkeys 將其修飾符與 xte 分開?

  • February 17, 2018

當我這樣做時.xbindkeysrc

"xte 'keydown Control_L' 'key W' 'keyup Control_L'"
   Shift + b:9

它執行 ctrl+shift+w 而不是我預期的 ctrl+w 的動作。知道如何解決這個問題嗎?添加+ Release到第二行沒有幫助。

xte使用 XTest 擴展,只是將您的請求添加到目前修飾符狀態,而不是嘗試從某個基本狀態開始。其他工具,例如xdotool提供一個--clearmodifiers選項,以確保您將得到您想要的。

由於xbindkeys在修飾符狀態為 withShift_LShift_Rpress 時會注意到您的請求,因此這是該狀態的xte工作來源。您應該能夠xte通過從keyup Shift_L, 或者也可以模擬升檔來取消它Shift_R。後面真正的升檔將被忽略,或者您可以將換檔狀態恢復到xte動作結束時的狀態,以避免再次按下換檔鍵,但這是由您選擇的。

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