把鼠标交给键盘:轻量、原生、可配置。
KeySteer 是 Windows 和 macOS 上使用键盘操控鼠标的工具。
- Normal:
hjklvim风格移动鼠标。 - 长按,拖拽:可将鼠标左/中/右键转为按下状态,适合拖拽。
- Grid:快速定位二键组合。
- Recursive Grid:区域持续递归细分。
- UI Hint:为按钮、链接、菜单和输入框显示可键入标签;macOS 支持 Accessibility Tree、Vision 和 Hybrid,Windows 支持 UI Automation、双 OCR 视觉识别和 Hybrid。
- 多显示器:
Primary+S切换到下一块显示器。 - 外观与配置:
Grid/Hint标签样式、指示器等可通过 TOML 调整。
Primary 是跨平台写法:macOS 为 Command,Windows 为 Alt,为保持键盘位置的一致性。 它可以在 [key_aliases] 中改成你习惯的实体按键。
键盘移动、速度修饰、滚动与点击。
normal.mp4
一级大标签、二级预览与二键快速定位。
grid.mp4
逐层细分、回退与精确定位。
recursivegrid.mp4
扫描界面元素、标签筛选与控件定位。
uihint.mp4
先按 Primary+E 进入 Normal。默认配置中的 Primary 为:macOS Command、Windows 左 Alt;可在 [key_aliases] 改成自己的习惯。
| 按键 | 作用 |
|---|---|
h j k l |
左、下、上、右移动鼠标 |
Caps Lock / Left Shift / v 或 b |
精确 / 慢速 / 快速移动 |
m / , |
向下 / 向上滚动 |
; / ' / Right Shift |
左 / 右 / 中键点击 |
n |
Toggle 鼠标按住状态,用于拖拽 |
g / f / Primary+F |
Grid / Recursive Grid / UI Hint |
Primary+S |
切换到下一块显示器 |
q 或 Esc |
返回 Idle |
无需配置文件即可运行:内置 Config::default() 与发布的 keysteer.default.toml 一致。
程序优先选择数据目录中的 keysteer.<名称>.toml 用户配置(排除 keysteer.default.toml);不存在用户配置时才读取默认 TOML,仍不存在则使用内置默认值。显式 --config/-c 始终优先。
# 校验仓库中的默认示例;带 ./ 表示当前目录的确切路径
cargo run -- --check -c ./keysteer.default.toml
# 输出当前生效的完整配置
cargo run -- --dump-config
# 检查权限、显示器、输入后端和前台应用
cargo run -- --doctor详情请看配置文件与模式和动作。也可以通过配置与模拟器编辑键位和样式。
请从 GitHub Releases 下载与系统和 CPU 架构对应的 ZIP。Windows 解压后运行 KeySteer.exe;macOS 解压后将 KeySteer.app 移入 /Applications。
如果从 GitHub Release 手动安装的 macOS 应用被 Gatekeeper 提示无法打开,请确认文件来自上述官方发布页,然后运行:
sudo xattr -cr /Applications/KeySteer.app建议先授予“辅助功能”和“屏幕录制”权限后再打开
开发环境:Rust 版本以 rust-toolchain.toml 为准。文档站需要 Node 24+ 和 package.json 指定的 pnpm 版本。
cargo run
cargo test --all-features
cargo clippy --all-targets --all-features -- -D warnings
pnpm install
pnpm docs:build- Windows 10/11:x64、ARM64
- macOS 14+:Apple Silicon、Intel
版权所有 © 2026 dccif。KeySteer 以 GNU General Public License v3.0 或更高版本(GPL-3.0-or-later) 发布,完整条款见 LICENSE。
你可以使用、研究、修改和再发布本项目;但任何对外分发的修改版或包含本项目的衍生作品,必须继续以 GPL 提供相应源码与相同的自由。不能把公开分发的衍生版本改成闭源专有软件。GPL 不限制仅供自己或组织内部使用、且不对外分发的私有改动。