跨平台窗口快速切换工具,类似 Alfred/Raycast/Listary。
- 全局快捷键呼出:默认
Alt + Ctrl + Space,可自定义 - 实时搜索过滤:支持窗口标题和进程名搜索
- 拼音搜索:支持中文窗口名的拼音首字母和全拼搜索
- 键盘导航:
↑/↓或Ctrl+P/Ctrl+N选择窗口Enter切换到选中的窗口Esc关闭窗口
- 多显示器支持:窗口显示在鼠标所在的屏幕上
- 系统托盘:右键托盘图标可显示窗口、打开设置、退出程序
- 窗口状态保持:切换窗口时保持最大化/普通状态
- 后端:Rust + Tauri 2
- 前端:React + TypeScript + Vite
- 样式:CSS
| 平台 | 架构 | 状态 |
|---|---|---|
| Linux (X11) | x86_64, aarch64 | ✅ |
| Linux (KDE Wayland) | x86_64, aarch64 | ✅ |
| Linux (GNOME/Sway) | x86_64, aarch64 | |
| Windows | x86_64, aarch64 | ✅ |
| macOS (Intel) | x86_64 | ✅ |
| macOS (Apple Silicon) | aarch64 | ✅ |
yay -S quick-switcher-bin下载对应架构的 .deb 文件:
- x86_64:
quick-switcher_x86_64.deb - aarch64:
quick-switcher_aarch64.deb
sudo apt install ./quick-switcher_x86_64.deb下载对应架构的 .rpm 文件:
- x86_64:
quick-switcher_x86_64.rpm - aarch64:
quick-switcher_aarch64.rpm
sudo rpm -i ./quick-switcher_x86_64.rpm下载 .AppImage 文件,赋予执行权限后直接运行:
chmod +x quick-switcher_x86_64.AppImage
./quick-switcher_x86_64.AppImage下载 MSI 或 NSIS 安装包:
- x86_64:
quick-switcher_x86_64.msi或quick-switcher_x86_64-setup.exe - aarch64:
quick-switcher_aarch64.msi或quick-switcher_aarch64-setup.exe
双击安装包进行安装。
下载对应架构的 DMG 文件:
- Intel Mac:
Quick.Switcher_*_x64.dmg - Apple Silicon:
Quick.Switcher_*_aarch64.dmg
打开 DMG 文件,将应用拖拽到 Applications 文件夹。
当前 macOS 安装包使用免费的 ad-hoc 签名,没有经过 Apple 公证。首次启动时:
- 在“应用程序”中右键 Quick Switcher,选择“打开”
- 在确认窗口中再次选择“打开”
- 按系统提示进入“系统设置 → 隐私与安全性 → 辅助功能”,允许 Quick Switcher
- 使用
Alt + Ctrl + Space呼出窗口
如果 macOS 仍提示应用已损坏,可在确认安装包来自本项目 Release 后执行:
xattr -dr com.apple.quarantine "/Applications/Quick Switcher.app"├── src/ # 前端源码
│ ├── App.tsx # 主窗口组件
│ ├── App.css # 主窗口样式
│ ├── Settings.tsx # 设置页面组件
│ └── Settings.css # 设置页面样式
├── src-tauri/ # Rust 后端
│ ├── src/
│ │ ├── main.rs # 桌面应用入口
│ │ ├── cli.rs # 命令行工具入口
│ │ ├── lib.rs # 主逻辑
│ │ ├── search.rs # 搜索匹配模块
│ │ └── kwin.rs # KWayland 集成 (Linux only)
│ ├── Cargo.toml # Rust 依赖
│ └── tauri.conf.json # Tauri 配置
├── package.json # Node 依赖
└── vite.config.ts # Vite 配置
# Ubuntu/Debian
sudo apt install libwebkit2gtk-4.1-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev
# Arch Linux
sudo pacman -S webkit2gtk-4.1 gtk3 libayatana-appindicator librsvg
# Fedora
sudo dnf install webkit2gtk4.1-devel gtk3-devel libappindicator-gtk3-devel librsvg2-develWayland KDE 支持:内置 KWin Scripting API,无需额外依赖。
# 安装前端依赖
npm install
# Rust 依赖会在首次运行时自动安装npm run tauri dev该命令默认启动桌面应用 quick-switcher,并监听前端和 Rust 源码变更。
项目还包含独立的命令行工具。如需调试 CLI,请在另一个终端运行:
cd src-tauri
cargo run --bin quick-switcher-cli -- list直接在 src-tauri 下执行 cargo run 时,也会默认启动桌面应用;如需明确指定,可运行:
cargo run --bin quick-switcher# Rust 单元测试
cd src-tauri
cargo testnpm run tauri build构建产物位于 src-tauri/target/release/bundle/ 目录。
npm run tauri build输出文件:
src-tauri/target/release/quick-switcher.exe- 可执行文件src-tauri/target/release/bundle/msi/- MSI 安装包src-tauri/target/release/bundle/nsis/- NSIS 安装包
npm run tauri build输出文件:
src-tauri/target/release/bundle/dmg/- DMG 安装包src-tauri/target/release/bundle/macos/- .app 应用包
npm run tauri build输出文件:
src-tauri/target/release/bundle/deb/- DEB 包(Debian/Ubuntu)src-tauri/target/release/bundle/appimage/- AppImage(通用)src-tauri/target/release/bundle/rpm/- RPM 包(Fedora/openSUSE)
注意:
- X11 环境直接可用
- Wayland KDE Plasma 6 内置支持,无需额外依赖
- 其他 Wayland 环境(GNOME/Sway)只能看到 XWayland 窗口
- 右键系统托盘图标
- 点击 "Settings"
- 点击输入框,按下想要的组合键
- 点击 "Save" 保存
支持的修饰键:Alt、Ctrl、Shift、Win
配置文件位置:
- Windows:
%APPDATA%\quick-switcher\config.json - macOS:
~/Library/Application Support/quick-switcher/config.json - Linux:
~/.config/quick-switcher/config.json
| 快捷键 | 功能 |
|---|---|
Alt + Ctrl + Space |
呼出/隐藏窗口(默认,可自定义) |
↑ / ↓ |
选择窗口 |
Ctrl + P / Ctrl + N |
选择窗口(Emacs 风格) |
Enter |
切换到选中的窗口 |
Esc |
关闭窗口 |
KDE Plasma 6:内置 KWin Scripting API 支持,无需额外配置。
其他 Wayland 环境(GNOME/Sway):目前仅支持 XWayland 窗口(X11 应用)。要查看原生 Wayland 窗口需要 compositor 特定协议支持,目前正在开发中。
窗口会显示在鼠标当前所在的显示器上,并自动居中。
- 直接匹配:输入 "chrome" 匹配 Chrome 窗口
- 拼音全拼:输入 "weixin" 匹配 "微信"
- 拼音首字母:输入 "wx" 匹配 "微信"
MIT License