之前使用mac的快捷键自定义软件snap,来快速启动和显示常用软件。
e.g:定义chrome、微信,企业微信的快捷键分别为alt+1,alt+2,alt+3。
当chrome未启动状态就启动,已启动则显示(软件最上层)。
但是在deepin中wine容器中的常用软件微信、企业微信、qq等快捷键会出现不可用,频繁使用鼠标切换效率低,体验差。
所以使用wmctrl窗口管理器(mac,win系统没有开放类似窗口管理器给用户使用,linux自由定制化很爽),结合shell脚本来实现。
实现微信脚本wechat.sh:
#!/bin/bash if [ `wmctrl -lx | grep -c "wechat.exe.Wine"` != 0 ] then wmctrl -x -a "wechat.exe.Wine" else nohup "/opt/apps/com.qq.weixin.deepin/files/run.sh" -f %f & fi
说下实现逻辑,举一反三实现其他软件快捷键。
执行 wmctrl -lx,通过wmctrl窗口管理器获取窗口列表中的微信类型标识:wechat.exe.Wine
wmctrl -lx
回到脚本中,对应脚本中if逻辑就是获取微信窗口,存在则执行 wmctrl -x -a "wechat.exe.Wine"打开;
wmctrl -x -a "wechat.exe.Wine"
反之则通过脚本启动微信。
nohup "/opt/apps/com.qq.weixin.deepin/files/run.sh" -f %f &
但是,启动微信脚本如何找?见下图
完成后保存脚本,在“系统”--》“键盘和语言”--》“快捷键”--》“自定义快捷键”编辑新快捷键即可,如图:
最后,使用alt+2快捷键测试下效果吧,未启动会启动微信程序,已启动会显示微信窗口(到最外层)。其他程序快捷键设置逻辑类似,快试试吧~
这个功能吗?
对呀,是这个。在wine下微信和企业微信快捷键不生效的,可以试试这种办法。
QQ 按esc退出(最小化) 有没有什么好办法解决呢?
搜下 wmctrl(窗口管理器)有没有隐藏的功能,结合shell配一下
wmctrl
Popular Ranking
Popular Events
之前使用mac的快捷键自定义软件snap,来快速启动和显示常用软件。
e.g:定义chrome、微信,企业微信的快捷键分别为alt+1,alt+2,alt+3。
当chrome未启动状态就启动,已启动则显示(软件最上层)。
但是在deepin中wine容器中的常用软件微信、企业微信、qq等快捷键会出现不可用,频繁使用鼠标切换效率低,体验差。
所以使用wmctrl窗口管理器(mac,win系统没有开放类似窗口管理器给用户使用,linux自由定制化很爽),结合shell脚本来实现。
实现微信脚本wechat.sh:
说下实现逻辑,举一反三实现其他软件快捷键。
执行
wmctrl -lx
,通过wmctrl窗口管理器获取窗口列表中的微信类型标识:wechat.exe.Wine回到脚本中,对应脚本中if逻辑就是获取微信窗口,存在则执行
wmctrl -x -a "wechat.exe.Wine"
打开;反之则通过脚本启动微信。
nohup "/opt/apps/com.qq.weixin.deepin/files/run.sh" -f %f &
但是,启动微信脚本如何找?见下图
完成后保存脚本,在“系统”--》“键盘和语言”--》“快捷键”--》“自定义快捷键”编辑新快捷键即可,如图:
最后,使用alt+2快捷键测试下效果吧,未启动会启动微信程序,已启动会显示微信窗口(到最外层)。其他程序快捷键设置逻辑类似,快试试吧~