i3 - 绑定到 $mod 发布代码

i3 - 绑定到 $mod 发布代码

我正在尝试使用 i3 和 Polybar 创建一种效果,以便在$mod按下按键时显示 Polybar 托盘,并在$mode释放时隐藏它。我正在使用隐藏它脚本实现窗口显示/隐藏功能,并在配置bindcode中绑定命令i3。具有以下配置:

bindcode 133 exec hideIt.sh --name '^polybar-bottom_eDP-1$' --toggle
bindcode --release 133 exec hideIt.sh --name '^polybar-bottom_eDP-1$' --toggle

仅当我仅按下并释放 $mod 键时,该功能才起作用(在本例中,Windows 键代码为 133)。现在,例如,如果我$mod+2按切换到第二个工作区,则会显示多边形条,但在释放时不会隐藏。

TL;DR 有没有办法$mod在按下定义的快捷键后捕获按键释放?或者,作为后备,有什么方法可以绑定到任何释放所有按键后隐藏多条的按键释放事件?谢谢你!

答案1

有一个(已关闭的)错误线程引用Super_L(and Alt_L) 并且--release不起作用。

此 ( bindcode --relase, bindsym --release) 适用于除Super_L;之外的大多数键。例如Caps_Lock(代码 66)。 https://github.com/i3/i3/issues/2733#issuecomment-360442845

bindcode 66 exec notify-send "normal"
bindcode --release 66 exec notify-send "release"

上述配置将在按下并释放大写锁定时发出通知,无论是否同时按下或释放键(如“a”)。

相关内容