[Share Experiences] 自定义快捷键,快速启动、显示微信,企业微信等
Tofloor
poster avatar
林子
deepin
2022-10-29 22:45
Author

之前使用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
image.png

回到脚本中,对应脚本中if逻辑就是获取微信窗口,存在则执行 wmctrl -x -a "wechat.exe.Wine"打开;

反之则通过脚本启动微信。

nohup "/opt/apps/com.qq.weixin.deepin/files/run.sh" -f %f &

但是,启动微信脚本如何找?见下图

image.png

image.png

完成后保存脚本,在“系统”--》“键盘和语言”--》“快捷键”--》“自定义快捷键”编辑新快捷键即可,如图:

image.png

最后,使用alt+2快捷键测试下效果吧,未启动会启动微信程序,已启动会显示微信窗口(到最外层)。其他程序快捷键设置逻辑类似,快试试吧~

Reply Favorite View the author
Comments
poster avatar
摸鱼校尉
2022-10-30 01:45
很有启发,很实用,多谢
All Replies
辉夜
deepin
2022-10-30 01:06
#1

这个功能吗?

image.png

Reply View the author
林子
deepin
2022-10-31 19:50
#2
辉夜

这个功能吗?

image.png

对呀,是这个。在wine下微信和企业微信快捷键不生效的,可以试试这种办法。

Reply View the author
dwong
deepin
2023-01-10 17:56
#3

QQ 按esc退出(最小化) 有没有什么好办法解决呢?

Reply View the author
林子
deepin
2023-02-14 19:30
#4
dwong

QQ 按esc退出(最小化) 有没有什么好办法解决呢?

搜下 wmctrl(窗口管理器)有没有隐藏的功能,结合shell配一下

Reply View the author