银河麒麟OS和Thunderbird均无原生“特定联系人邮件置顶”功能,但可通过邮件过滤规则+标签标记+wmctrl窗口控制实现:先在Thunderbird中为指定邮箱建过滤器(自动标记、移入专用文件夹),再用脚本调用wmctrl将含关键词的Thunderbird窗口设为above并激活。

银河麒麟OS桌面环境本身不提供“特定联系人邮件置顶”功能,Thunderbird客户端也无原生的按发件人自动置顶窗口机制——但可通过组合使用邮件过滤规则、标签标记与窗口Z-order控制,实现收到某联系人来信时,其对应邮件窗口自动跃升至最前并保持可见。
在Thunderbird中为指定联系人设置高亮+自动打开
这一步是前置基础,确保目标邮件能被识别、分类并触发后续动作。
启动Thunderbird → 点击右上角菜单【工具】→【消息过滤器】→ 选择当前邮箱账户 → 点击【新建】。
填写筛选条件:名称填“张三重要邮件”,下方“条件”中点击加号 → 选择“来自”→“是”→输入对方完整邮箱地址(如zhangsan@company.com)→ “执行以下操作”勾选“标记为已读”“添加星标”“移动到文件夹”(建议新建专用文件夹“紧急-张三”)→ 点击【确定】保存。
【关键点】必须勾选“运行此过滤器对新到达的消息”,否则仅对历史邮件生效;若未启用IMAP实时同步,还需在账户设置中开启“每隔X分钟检查新邮件”。
让该联系人邮件自动弹出并置顶显示
Thunderbird自身不支持弹窗+置顶,需借助系统级窗口管理工具wmctrl实现。核心逻辑是:当新邮件进入“紧急-张三”文件夹时,触发脚本激活Thunderbird窗口并设为above状态。
第一步:确认Thunderbird窗口标题特征。打开终端,运行 wmctrl -l | grep -i thunder,典型输出为:0x04a00003 0 kylin Thunderbird 或含收件箱名的变体(如0x04a00003 0 kylin Inbox (zhangsan@company.com))。记下实际标题中稳定出现的关键词,例如“Inbox”或“Thunderbird”。
第二步:编写响应脚本。执行 gedit ~/bin/raise_zhangsan.sh,写入以下内容(替换Inbox为上一步确认的真实关键词):
#!/bin/bash<br>if wmctrl -l | grep -q "Inbox"; then<br> wmctrl -r "Inbox" -b add,above<br> wmctrl -r "Inbox" -a<br>fi
第三步:赋予执行权限:chmod +x ~/bin/raise_zhangsan.sh。
第四步:将脚本绑定到邮件过滤器——回到Thunderbird【消息过滤器】,编辑刚才创建的“张三重要邮件”规则,在“执行以下操作”末尾新增“运行程序”,路径填 /home/kylin/bin/raise_zhangsan.sh(请将kylin替换为你的实际用户名)。
确保置顶窗口不被覆盖且层级稳定
方法一:用Alt+鼠标中键临时固定Thunderbird窗口
收到张三邮件后,点击Thunderbird窗口标题栏 → 按住Alt键不放,再按压鼠标滚轮(中键),边框闪绿即生效。该方式轻量快捷,适合单次聚焦。
方法二:用wmctrl命令固化Z-order优先级
若同时有WPS、终端等其他置顶窗口,需严格排序。先取消所有置顶:wmctrl -r "Thunderbird" -b remove,above → wmctrl -r "Terminal" -b remove,above。再按期望层级从底到顶依次执行:wmctrl -r "Terminal" -b add,above → wmctrl -r "Thunderbird" -b add,above。最后执行的窗口永远在最上层。
【关键点】必须用完整、精确的窗口标题字符串,大小写与空格一个都不能错,否则命令静默失败。可用 wmctrl -l 实时核对。

















