Muka 程序切换实用工具(Muka-TaskSwitch)是一个使用 Rust + egui + winit + glow 实现的 Windows 窗口切换 / 任务栏管理工具。它以一个贴边的侧边栏实时列出当前所有可见窗口,配合全局热键即可快速切换,提高多窗口工作时的效率。
功能特性
- 实时窗口列表:每秒自动扫描当前可见的顶层窗口,检测变化并刷新列表(自身窗口会被排除)。
- 快速搜索过滤:支持按进程名、窗口标题或全部字段实时过滤。
- 一键激活窗口:点击条目即可将对应窗口切换到前台;若窗口已最小化则自动恢复。
- 全局热键:默认
Alt + ~(反引号)快速显示 / 聚焦侧边栏,可在设置中自定义。 - 键盘导航:支持
↑/↓选择、Enter激活、Esc隐藏。 - 系统托盘:托盘图标左键显示 / 聚焦窗口,右键菜单可显示或退出应用。
- 单实例运行:通过命名互斥体确保同时只有一个进程在运行。
- 贴边全高窗口:窗口紧贴屏幕右侧,高度撑满工作区。
- DWM 圆角:使用 Windows DWM 实现系统级抗锯齿圆角,四角透明。
- 不在任务栏显示:通过
ITaskbarList::DeleteTab从任务栏移除自身按钮。 - 管理员权限提示:对无法获取进程名的受保护窗口显示 ⚠ 管理员标识。
- 设置持久化:主题、热键、窗口尺寸、开机启动等配置自动保存到
%APPDATA%\Muka-TaskSwitch。 - 主题切换:支持深色 / 浅色 / 跟随系统。
- 开机启动:可在设置中开启或关闭。
环境要求
- Windows 10 或更高版本(DWM 圆角在 Windows 11 上效果最佳)
- Rust 1.90 或更高版本(自行编译时)
快速开始
下载运行
从上方下载 muka-taskswitch.exe,双击运行即可。首次启动后:
- 默认全局热键
Alt + ~呼出 / 聚焦窗口 - 窗口会贴靠屏幕右侧,显示当前可见窗口列表
- 右键托盘图标可退出程序
编译
# 开发调试
cargo run
# Release 构建
cargo build --release
编译完成后,可执行文件位于 target/release/muka-taskswitch.exe。
配置说明
首次运行会自动创建配置文件:
%APPDATA%\Muka-TaskSwitch\config.json
可配置项包括:
hotkey:全局热键字符串,如"Alt+Backquote"、"Ctrl+Shift+Q"theme:System/Dark/Lightwindow_width/window_height:窗口尺寸always_on_top:是否置顶hide_on_focus_loss:失去焦点是否自动隐藏start_with_windows:是否开机启动realtime_refresh:是否启用实时刷新
快捷键
| 快捷键 | 作用 |
|---|---|
Alt + ~(默认) | 显示 / 聚焦窗口;隐藏时显示,已显示时重新聚焦 |
↑ / ↓ | 在窗口列表中上下移动 |
Enter | 激活选中的窗口 |
Esc | 隐藏窗口 |
已知问题
- 当开启
hide_on_focus_loss时,点击托盘图标可能会因为“窗口先失焦隐藏、再被托盘事件显示”而产生轻微闪烁。这是自动隐藏逻辑与托盘交互的自然冲突,目前未做特殊处理。
许可证
MIT © Attect