Sxhkd 无法识别百分比键 (bspwm)

Sxhkd 无法识别百分比键 (bspwm)

所以我想使用我的 sxhkd 创建一个键绑定,其功能类似于在 tmux 中创建窗格的绑定。

我之前创建过绑定,所以我知道我可以使用它来打印出键名,这里是按下时的xev输出: %"

KeyPress 事件,序列 32,合成 NO,窗口 0x2200001,根 0x9f,subw 0x0,时间 8068709,(324,604),根:(325,624),状态 0x0,键码 50(keysym 0xffe1,Shift_L),same_screen YES,XLookupString 给出 0 个字节:XmbLookupString 给出 0 个字节:XFilterEvent 返回:False

KeyPress 事件,序列 32,合成 NO,窗口 0x2200001,根 0x9f,subw 0x0,时间 8069165,(324,604),根:(325,624),状态 0x1,键码 14(keysym 0x25,百分比),same_screen YES,XLookupString 给出 1 个字节:(25)“%”XmbLookupString 给出 1 个字节:(25)“%”XFilterEvent 返回:False

KeyRelease 事件,序列 32,合成 NO,窗口 0x2200001,根 0x9f,subw 0x0,时间 8069236,(324,604),根:(325,624),状态 0x1,键码 14(keysym 0x25,百分比),same_screen YES,XLookupString 给出 1 个字节:(25)“%”XFilterEvent 返回:False

KeyRelease 事件,序列 32,合成 NO,窗口 0x2200001,根 0x9f,subw 0x0,时间 8069615,(324,604),根:(325,624),状态 0x1,键码 50(keysym 0xffe1,Shift_L),same_screen YES,XLookupString 给出 0 个字节:XFilter Event 返回:False

KeyPress 事件,序列 32,合成 NO,窗口 0x2200001,根 0x9f,subw 0x0,时间 8090326,(324,604),根:(325,624),状态 0x0,键码 62(keysym 0xffe2,Shift_R),same_screen YES,XLookupString 给出 0 个字节:XmbLookupString 给出 0 个字节:XFilterEvent 返回:False

KeyPress 事件,序列 32,合成 NO,窗口 0x2200001,根 0x9f,subw 0x0,时间 8090442,(324,604),根:(325,624),状态 0x1,键码 48(keysym 0x22,quotedbl),same_screen YES,XLookupString 给出 1 个字节:(22)“” XmbLookupString 给出 1 个字节:(22)“” XFilterEvent 返回:False

KeyRelease 事件,序列 32,合成 NO,窗口 0x2200001,根 0x9f,subw 0x0,时间 8090593,(324,604),根:(325,624),状态 0x1,键码 48(keysym 0x22,quotedbl),same_screen YES,XLookupString 给出 1 个字节:(22)“”XFilterEvent 返回:False

KeyRelease 事件,序列 32,合成 NO,窗口 0x2200001,根 0x9f,subw 0x0,时间 8090652,(324,604),根:(325,624),状态 0x1,键码 62(keysym 0xffe2,Shift_R),same_screen YES,XLookupString 给出 0 个字节:XFilterEvent 返回:False

因此,~/.config/sxhkd/sxhkdrc我把:

super + percent
    bspc window -p right && urxvt
super + quotedbl 
    bspc window -p down && urxvt

现在,当我重新启动 sxhkd 并按下super + %按键时什么也没有发生,但其他绑定却完美运行。

  • 为什么 sxhkd 不能识别百分比键?
  • sxhkd 是否将百分比键标识为与 xev 给出的名称不同的名称?

编辑:我在 sxhkd git repo 中做了更多搜索,找到了存储每个键的键符编号的文件。

parse.c

{"percent"                     , 0x0025}

我尝试将其更改为0x25并重新编译,但仍然没有运气。:(

答案1

所以经过大量测试后我找到了自己的一些解决方案。

事实证明,百分比键可以很好地识别,但不能与超级键一起使用

选项 1)@在键前面添加

 @super + percent
     bspc window -p right && urxvt

这有效,但仅在您释放按键后才有效

选项 2)super用任何其他键替换

我决定采用方案 2,并将其替换superctrl

ctrl + {percent,quotedbl}
    bspc window -p {right,down} && urxvt

相关内容