【问题标题】:Map key sequence of more than two keys映射两个以上键的键序列
【发布时间】:2018-01-16 16:54:09
【问题描述】:

我创建了一个脚本,它使用 xdotool 在特定的 firefox 容器中打开新标签。我需要映射三个键,例如 ctrl+y+p 打开个人容器, ctrl+y+b 打开银行容器等等。我找不到可以映射两个以上键的工具。

有没有像我描述的那样?

非常感谢。

编辑:对于任何寻找答案的人,我找到了一种方法。我使用 i3,所以我只是添加了一个通过按前两个键触发的模式,然后将“b”映射到命令 + 转义(退出模式)。

【问题讨论】:

    标签: keyboard keyboard-shortcuts xdotool


    【解决方案1】:

    如果您还没有安装 xdotool,例如:

    sudo apt-get install xdotool
    

    根据您的示例 (CTRL+y+p),执行:

    DISPLAY=:0 xdotool keydown ctrl keydown y keydown p
    

    按下三个键后不松开。另一种方式:

    DISPLAY=:0 xdotool key ctrl+y+p
    

    :0 是显示的典型值,但在我的 Raspberry Pi 中,例如,它需要是 DISPLAY=:10。如果您仍然遇到显示变量问题并收到如下消息:

    xdotool 无法打开显示(null)

    那么你可以通过以下方式获取显示值:

    ps -u $(id -u) -o pid= | \
        while read pid; do
            cat /proc/$pid/environ 2>/dev/null | tr '\0' '\n' | grep '^DISPLAY=:'
        done | grep -o ':[0-9]*' | sort -u
    

    另一种获取 DISPLAY 值的方法(它将是 ':' 后面的数字)

    xauth list
    

    这也适用于 raspbian:

    w -hs | awk '{print $3}' | sort -u | grep -v -
    

    祝你好运

    【讨论】:

      猜你喜欢
      • 2012-07-17
      • 2022-07-27
      • 2017-07-24
      • 2019-02-04
      • 1970-01-01
      • 1970-01-01
      • 2012-04-30
      • 2013-03-20
      • 2012-06-03
      相关资源
      最近更新 更多