Awesome-WM键盘快捷键双击

时间:2017-05-05 07:02:36

标签: lua configuration-files awesome-wm

是否可以创建一个键盘快捷键,在单击和双击时的行为方式不同。例如:

  • MOD4 +" S" start-player
  • MOD4 +" SS"停止播放

1 个答案:

答案 0 :(得分:2)

Mod4+ss已注册/处理为Mod4+sMod4+s。那么,有什么类似下面的计数?以下函数将是您键的回调函数。此功能在您第一次按Mod4+s时启动计时器。如果在0.1秒内没有第二次按下,则计为单击。否则,计时器停止并注册双击。

local double_tap_timer = nil
local function press()
    if double_tap_timer then
        double_tap_timer:stop()
        double_tap_timer = nil
        print("We got a double tap")
        return
    end

    double_tap_timer = gears.timer.start_new(0.1, function()
        double_tap_timer = nil
        print("We got a single tap")
        return false
    end)
end

(我只编写了代码,我实际上没有对此进行测试。让我们将其视为感兴趣读者的练习。)