如何使用控制器的输入正确运行模拟鼠标的宏?

时间:2019-07-11 11:03:53

标签: python linux mouseevent xbox autokey

我在许多互联网论坛上进行搜索后发现,几乎没有任何东西可以解决我的问题:

我以前是脚本语言AutoHotKey的用户,所以在我也使用Linux的同时,我想正确模仿AutoHotKey中的相同代码以在Linux上运行。

我发现的东西:

  • PyMouse(太复杂了,因为我不是Python程序员)
  • xdotool(根本不响应热键,但需要产生结果)
  • 自动键(无法识别xbox360控制器输入以及单击鼠标和释放鼠标之间的输入,无法控制)

是否有某种方式可以将以下“语言代码”复制到更可用于在Linux上执行的操作?

XBOX Controller Input: C-Button left/right/up or down whatever
Mouse-Move to 1920/2 1080/2
Mouse-Click-Down 
Mouse-Move to 1920/2+50 1080/2+50
Sleep 500 ms
Mouse-Click-Up
Send-Key ESC
return

谢谢!

1 个答案:

答案 0 :(得分:0)

问题是,Linux与XBOX控制器一起工作很奇怪,因此要完成一个简单的Mouseclick,您需要重新考虑并组合多个工具,才能做到这一点...

工作方式:

  • 下载Antimicro
  • 下载xdotool

在kate或nano或您使用的任何编写程序上为xdotool创建脚本文件。

示例:

#!/bin/bash
xdotool mousemove 1890, 990
xdotool mousedown 1
xdotool sleep 0.05
xdotool mouseup 1

保存文件并转到属性,标记为“可执行”

转到系统的自定义快捷方式。它的调用方式与您的OS类型不同。 将刚刚创建的文件分配给热键X(注意,controllerinput将无法工作)

启动antimicro并将控制器密钥分配给Hotkey X

菲尼托。设置起来很麻烦。

通过这种方式,您可以在任何情况下模拟控制器的鼠标宏移动,例如您现在可以在任天堂3D上模拟更好的触摸相关游戏,例如《塞尔达传说》。