Linux下的鼠标宏映射实现
从主系统转向Linux以来,因为Linux的雷蛇驱动不支持蝰蛇2K,这鼠标打CS手感又很好不想换,所以两个侧键一直没用。但是我一般绑定的都是ctrl+w
和ctrl+tab
这两个关闭和切换标签页的快捷键,没有的话有时候找资料还是很不爽,正好有点时间折腾一下吧……
环境和所需软件
Ubuntu 18.04 LTS
xdotool(xautomation其实也可以不过命令麻烦点就没用)
xbindkeys
安装&介绍
sudo apt install xdotool xbindkeys
xdotool是实现模拟键盘按键用的,简单来讲就是你在命令行执行命令然后它就模拟按键(按键精灵听说过吧,就是那个效果),但是它只能通过命令调用,所以还需配合另一个软件。
xbindkeys可以将按键和命令绑定起来,但是它似乎并不支持模拟按键,正好两个配合一下就可以了。
找到按键码
首先我们需要找到按键码,这个可以通过自带的xev实现,命令行输入xev
即可,然后会弹出一个小框框,鼠标移进去会发现命令行刷出一大堆东西,不要慌这些都是你的鼠标移动信息我们并不需要,然后保持鼠标不动(键盘啥的也不要操作),按一下你的侧键(或者多点几下),然后可以看到终端最后几行会有一个Button Press
和Button Release
的event
,在里面有一个button x
的字符(x是数字),那个数字就是我们要的了,先记住。
如果没看到的话那我也没办法了可能你需要专门的鼠标驱动……
xbindkeys设置
先创建配置文件:
xbindkeys --defaults > /home/user-name/.xbindkeysrc
其中user-name
是你的用户名,然后
vim ~/.xbindkeysrc
添加下面的:
"xdotool key ctrl+Tab"
b:8
第一行引号内的内容为xdotool
的命令(参考),这里我设置的是ctrl+Tab
(注意T要大写),第二行b:
的意思就是绑定按键,8
就是上一步的按键码了,我这里第二个侧键是8就设置为8
生效测试
killall xbindkeys && xbindkeys
xbindkeys
然后试试应该就可以了,无效的话多半是命令写错了,这个只要xev能看到按键码就能支持的,仔细查一查吧。
最后就是加入开机启动项了,这个如果通过apt
安装应该是自动的,没有的话添加一个开机脚本执行xbindkeys
就行。