更新日志 / Release Notes
0.10.26
Window、Quick、Editor、Restore 和 Tabs 现在支持配置入口目标:active 选择激活窗口,mouse 选择鼠标下窗口;单条快捷键也可追加目标后缀。未配置时保持原有行为。
Window, Quick, Editor, Restore, and Tabs now support configurable entry targets: active selects the focused window and mouse selects the window under the pointer. Individual bindings can also append a target suffix; omitting it preserves the existing behavior.
0.10.25
优化 UI Hint。
优化按键响应,按键处理耗时降低约 15%。
配置模拟器新增 TOML 文件对比和导入/导出变更预览,清晰展示新增、删除与修改,忽略注释和格式差异。
Reload Configuration 现在会完整重启程序并重新加载配置;配置有误时保持原状态。
Improved UI Hint.
Improved keyboard responsiveness, reducing key processing time by about 15%.
The configuration simulator now compares TOML files and previews import/export changes, highlighting added, removed and modified values while ignoring comments and formatting.
Reload Configuration now fully restarts the app with the new configuration; invalid configuration leaves the current session unchanged.
| 按键处理耗时 / Key processing time | 优化前 / Before | 优化后 / After | 降低 / Reduction |
|---|---|---|---|
| p50 | 160 ns | 136 ns | 15.0% |
| p95 | 163 ns | 138 ns | 15.3% |
| p99 | 205 ns | 180 ns | 12.2% |
0.10.24
优化 UI Hint 扫描的内存占用。
Optimized memory usage during UI Hint scans.
0.10.23
修复盲操定位在字符与物理键不一致的键盘布局下吞掉 Cmd/Ctrl/Alt 应用快捷键的问题,避免字符匹配去掉修饰键后误触发裸定位键。
Fixed blind targeting intercepting Cmd/Ctrl/Alt application shortcuts when the produced character differs from the physical key, preventing character lookup from treating those shortcuts as bare selection keys.
Normal 新增可选的盲操定位:无需切换模式或显示网格,直接用 Grid/Recursive Grid 的选格键粗定位鼠标,仍可用 H/J/K/L 细调。
Tab/Backspace返回上一层,Space重置;选到最后一层后仍留在 Normal。[normal.targeting]可独立覆盖列数、行数、按键和最大层数;使用 Recursive Grid 时还可覆盖最小尺寸和按深度设置的layers。未写的字段继承所选网格模式,独立 Grid/Recursive Grid 的配置和显示不受影响。reset_on可选择细调、点击、两者或都不重置。定位键与 Normal 现有绑定冲突时,配置检查会列出键、动作和来源;请先移除、改绑或用
none让出冲突键。未配置[normal.targeting]时保持原有行为。网页模拟器的 Normal → 行为 页可启用和编辑盲操定位,并在无网格的预览中试按选格键;借用 Normal 的按键标签只在按住配置的
temporary_mode_keys时高亮。Normal now offers optional blind positioning: use Grid or Recursive Grid selection keys to move the pointer without changing mode or displaying a grid, then fine-tune with H/J/K/L.
Tab/Backspacestep back,Spaceresets, and completing a selection stays in Normal.[normal.targeting]can override columns, rows, keys, and depth independently; Recursive Grid also supports minimum-size and per-depthlayersoverrides. Omitted values inherit from the selected grid mode without changing that mode. Choose whether fine movement, clicks, both, or neither reset the selection withreset_on.Conflicting Normal bindings are reported with their key, action, and source during configuration checking. Remove or rebind them, or use
noneto release a key. Existing behavior is unchanged when[normal.targeting]is absent.The web simulator adds a switch and settings under Normal → Behavior, a grid-free pointer preview, and borrowed Normal key highlights that appear only while
temporary_mode_keysare held.
启用示例 / Enable example
下面的数字键布局避开了发布默认配置中的 Normal 单键冲突;现有自定义绑定仍需按实际配置检查。保存后运行 keysteer --config keysteer.user.toml --check。
The digit-key layout below avoids single-key Normal conflicts in the shipped defaults. Check any custom bindings in your own configuration with keysteer --config keysteer.user.toml --check after saving.
[normal.targeting]
method = "grid"
grid_cols = 3
grid_rows = 2
keys = "asdzxc"
max_depth = 1
reset_on = ["move", "click"]0.10.22
破坏性改动: 模式标识符移除
position、indicator_x_offset、indicator_y_offset,全局[mode_indicator.ui]和单模式[mode_indicator.modes.<模式>.ui]均只使用indicator_offset = [X, Y]。旧字段会导致配置校验失败,请在升级前删除并迁移;即使已配置新数组,也必须删除旧字段。偏移以鼠标热点为原点,定位标识符的右上角;正 X 向右、正 Y 向下,范围为 -32768~32767。全局未配置时默认
[-12, 18],单模式未配置时继承全局值。可在网页模拟器拖动锚点调整并导出配置。补齐代码内置 Normal 默认绑定:
.向左滚动、/向右滚动,与发布的默认配置保持一致。Breaking change: Removed mode-badge
position,indicator_x_offset, andindicator_y_offset. Both[mode_indicator.ui]and[mode_indicator.modes.<mode>.ui]now use onlyindicator_offset = [X, Y]. Old fields fail configuration validation; remove and migrate them before upgrading, even if the new pair is already present.The offset places the badge's top-right corner relative to the cursor hotspot. Positive X moves right and positive Y moves down; each integer ranges from -32768 to 32767. The global default is
[-12, 18]; omitted per-mode offsets inherit it. Drag the anchor in the web simulator and export the result.Added the missing embedded Normal defaults:
.scrolls left and/scrolls right, matching the shipped configuration.
迁移示例 / Migration example
将旧的 position = "bottom_left"、indicator_x_offset = -12、indicator_y_offset = 18 三项删除,替换为下方配置。
旧 bottom_left 可直接使用原 X/Y;旧 bottom_right 需在 X 上加标识符宽度,top_left 需从 Y 减标识符总高度,top_right 同时调整两者。宽高受字体、内边距和第二行按键提示影响,建议用网页拖动重新定位。单模式覆盖使用相同格式。其他样式字段不变。
Remove position = "bottom_left", indicator_x_offset = -12, and indicator_y_offset = 18, then use the shared configuration below.
For old bottom_left placement, reuse X/Y directly. For bottom_right, add the badge width to X; for top_left, subtract the total badge height from Y; for top_right, apply both adjustments. Dimensions depend on font, padding, and the second held-input line, so dragging in the web editor is recommended. Per-mode overrides use the same format. Other style fields are unchanged.
[mode_indicator.ui]
indicator_offset = [-12, 18]0.10.21
网页模拟器新增「全局设置 → 模式标识符」,支持实时修改位置、偏移、字号、颜色和边框;各模式外观页保留可选覆盖,修改可导出为 TOML。
模式标识符新增
indicator_offset = [-12, 18]二维偏移(i16),网页可拖动右上角锚点;程序与网页统一尺寸和定位规则,消除 Windows 二次缩放造成的位置差异。保留全局及模式独立样式覆盖和旧配置兼容。配置示例见 模式标识符样式与位置。The web simulator adds Global settings → Mode badge, with live placement, offset, font, color, and border editing. Optional per-mode overrides remain available in Appearance, and changes export to TOML.
Mode badges add
indicator_offset = [-12, 18](an i16 pair) and a draggable top-right anchor in the web editor. Shared geometry removes Windows double-scaling placement differences. Global/per-mode styles and legacy placement settings remain supported. See Mode badge style and position.
0.10.20
新增 Text Input 临时文本输入模式:从 Normal 一键进入,普通文字透传,输入结束后直接返回 Normal;进入、返回和编辑映射均使用普通按键绑定。
支持通过
primary临时借用 Normal,也可配置绑定继承;修复临时 Normal 中screen next等切屏指令的结果未交给临时模式处理的问题。Text Input 默认隐藏模式文字提示。默认配置提供方向键、Backspace、Delete、Insert、Home/End 及 Ctrl/Shift 组合的注释示例,按需启用。
Added Text Input for temporary typing from Normal. Ordinary typing passes through, and standard bindings configure entry, exit, and editing shortcuts.
Supports borrowing Normal with
primaryand optional binding inheritance. Fixed screen-switch commands such asscreen nextdelivering their results to the base mode instead of the temporary mode.Text Input hides its text badge by default. Arrow, Backspace, Delete, Insert, Home/End, and Ctrl/Shift mappings are provided as commented, opt-in examples.
简单启用与使用 / Enable and use
使用新版默认配置时,Normal 中按 \ 即可进入。已有用户配置请将下面的入口加入现有 [normal.bindings],其他配置合并到对应表中;不要重复创建同名表或覆盖原有绑定。
With the new default configuration, press \ in Normal. For an existing profile, add the entry to your current [normal.bindings] and merge the other settings into their corresponding tables. Do not create duplicate tables or replace your existing bindings.
[normal.bindings]
'\' = "text_input"
[text_input]
inherits = []
temporary_mode = "normal"
temporary_mode_keys = ["primary"]
[text_input.bindings]
'enter \ esc' = "normal"
# 可选:先向应用发送 Enter,再返回 Normal。
# 用下面两行替换上面的合并绑定:
# Optional: send Enter to the app before returning to Normal.
# Replace the grouped binding above with these two lines:
# '\ esc' = "normal"
# enter = ["send enter", "normal"]
[mode_indicator.modes.text_input]
enabled = false- 保存配置,从托盘/状态栏菜单重载配置。
- 按
Primary+E进入 Normal,再按\输入文字;按Enter、\或Esc返回 Normal。 - 输入期间按住
Primary可临时使用 Normal,例如用 H/J/K/L 移动鼠标;松开继续输入。Primary使用现有key_aliases配置。
默认返回键会被消费,Enter 不会提交给应用;需要提交时使用上面的注释序列。多行编辑或输入法需要 Enter 时,可把返回绑定改为 '\ esc' = "normal"。编辑组合键示例默认全部注释,取消所需行的注释即可启用。详见 Normal 的临时文本输入。
- Save the configuration and reload it from the tray/status-bar menu.
- Press
Primary+Eto enter Normal, then\to type; pressEnter,\, orEscto return to Normal. - While typing, hold
Primaryto borrow Normal, for example H/J/K/L to move the pointer; release it to resume typing.Primaryfollows your existingkey_aliasesconfiguration.
The default return keys are consumed, so Enter does not submit to the app. Use the commented sequence above when submission is needed. For multiline editing or an input method that needs Enter, use '\ esc' = "normal" instead. Editing chord examples are commented out by default; uncomment the ones you need. See Temporary text input.
0.10.19
优化 Windows 和 macOS 的窗口调整、最大化、布局及撤销/重做,分批异步确认,减少慢窗口对其他窗口操作的影响。
优化 Normal 模式指针计算,复用窗口快照与卡片文字,减少重复查询和内存分配。
改进工作区后台保存、操作取消与恢复,合并重复错误日志,并完善异常时的按键释放和原生资源管理。
Improved window adjustments, maximization, layouts, and undo/redo on Windows and macOS with batched asynchronous confirmation, reducing interference from slow windows.
Optimized Normal-mode pointer calculations and reused window snapshots and card text to reduce repeated queries and memory allocations.
Improved background workspace saves, cancellation and recovery, deduplicated error logs, and refined key release during error recovery and native resource management.
0.10.18
改进 Windows 和 macOS 的跨屏窗口识别与切换,支持更多窗口并减少多屏、标题变化或鼠标跳转导致的选窗错误和窗口误移动。
Improved cross-display window detection and switching on Windows and macOS, supporting more windows while reducing wrong selections and unintended window moves caused by multiple displays, title changes, or pointer warps.
0.10.17
临时模式现在优先匹配完整组合键,并支持
temporary_mode_passthrough_keys让指定按键交给当前模式处理,减少临时层快捷键冲突。Quick Switch 的触发键会先立即执行原有绑定,只有持续按住达到
hold_ms才显示切换面板,不再拖慢普通按键响应。修复 macOS 多屏覆盖层定位,跨屏显示时面板和窗口标识不再被错误限制到单个屏幕。
Temporary modes now resolve full chords first and support
temporary_mode_passthrough_keysso selected keys can fall through to the active mode, reducing shortcut conflicts.Quick Switch triggers now execute their original binding immediately and show the switcher only after being held for
hold_ms, keeping normal key response fast.Fixed macOS multi-display overlay positioning so panels and window indicators are no longer incorrectly constrained to a single screen.
0.10.16
优化相交窗口切换(
window_overlap_next/window_overlap_previous),减少重复计算。Improved overlapping-window switching (
window_overlap_next/window_overlap_previous) with less repeated work.
0.10.15
新增可配置的
window_overlap_next/window_overlap_previous,可在 Normal 模式中只切换到与当前窗口有重叠的窗口,并将鼠标移到目标窗口中心。Added configurable
window_overlap_next/window_overlap_previousactions to switch between overlapping windows from Normal mode and center the pointer on the selected window.
0.10.12
新增可配置的
window_activate_next/window_activate_previous动作,可在 Normal 模式中直接切换前后窗口并将鼠标移到目标窗口中心,无需进入 Window 模式。Added configurable
window_activate_nextandwindow_activate_previousactions to switch between windows from Normal mode and center the pointer on the target without entering Window mode.
0.10.11
Window 移动现在支持 Grid 和 Recursive Grid 精确定位窗口,可使用已配置的快捷键在不同屏幕间快速放置窗口。
Window Move now supports Grid and Recursive Grid targeting, so you can precisely place windows across displays with your configured keyboard shortcuts.
0.10.10
优化 Windows 和 macOS 的 Window 模式资源回收。
Improved resource cleanup in Window mode on Windows and macOS.
0.10.9
优化 Windows 和 macOS 上的键盘映射,让组合键不再误带入正在按住的 Ctrl、Alt、Shift 或 Command,使用更稳定流畅。
Improved keyboard mappings on Windows and macOS so shortcuts no longer accidentally inherit held Ctrl, Alt, Shift, or Command keys and feel smoother and more reliable.
0.10.8
修复自定义组合键的前缀字符提前透传的问题,
Fixed premature passthrough of custom chord prefixes.
0.10.7
修复 macOS Retina 屏幕上快速切换面板过大、模式名称对齐错位的问题。
调整快速切换面板宽度,并根据名称长度分布平衡左右留白,保持名称左对齐,让内容在视觉上更居中。
Fixed oversized quick-switch panels and misaligned mode names on macOS Retina displays.
Refined quick-switch panel width and balanced side padding based on mode-name lengths for better visual centering while keeping names left-aligned.
0.10.6
新增常用模式快速切换:操作模式中长按
Q查看面板,按数字切换;支持使用统计、黑名单及面板样式配置。修复快速切换面板在高 DPI 下的重叠与边框异常;递归网格默认使用自动大字号。
窗口卡片引导线支持开关、线宽、颜色和透明度配置,网页编辑器同步支持。
Added quick switching by mode usage: hold
Qin an operating mode and press a number to switch, with usage statistics, a blacklist, and configurable panel styling.Fixed overlapping text and unwanted borders in the quick-switch panel at high DPI; Recursive Grid now uses large automatic font sizing by default.
Added window card guide-line visibility, width, color, and opacity settings, also available in the web editor.
0.10.5
拆分窗口最大化与最小化操作:
F切换最大化/还原,Shift+F切换最小化/还原,不再经过三态循环。按键提示仍合并在一行。窗口卡片支持自定义颜色、字体、边框和百分比定位;Editor 可独立覆盖位置,自动避让。
模拟器新增卡片可视化编辑,支持拖动定位、样式预览及配置导出。
Split window maximization and minimization into separate toggles:
Fmaximizes/restores, whileShift+Fminimizes/restores, replacing the three-state cycle. Both shortcuts remain on one help row.Customize window card colors, fonts, borders, and percentage positioning, with an independent Editor position override and automatic collision avoidance.
Added visual card editing in the simulator, including drag positioning, live style previews, and configuration export.
0.10.4
按键提示支持配置默认显示状态:
mouse_key_help控制鼠标操作模式,window_key_help控制窗口模式;均可通过?随时显示或隐藏。Configure the initial key-help visibility with
mouse_key_helpfor pointer modes andwindow_key_helpfor window modes. Press?to show or hide either panel regardless of its default.
0.10.2
修复关闭窗口后,边框、编号等状态仍可能残留的问题。
Fixed an issue where borders, window numbers, and other window state could remain after closing a window.
0.10.1
改进窗口移动、关闭
- 移动更稳定:连续移动和缩放窗口时不再反复拉动鼠标;细小位移跨帧累积,避免高刷新率下取整丢失。
- 关闭后及时清理:修复按
X关闭窗口后,边框和编号仍可能残留的问题。
Improved window movement and closing
- Steadier movement: continuously moving or resizing a window no longer repeatedly repositions the pointer. Small movements accumulate across frames instead of being lost to rounding at high refresh rates.
- Cleanup after closing: fixed an issue where borders and window numbers could remain after closing a window with
X.
0.10.0
重要功能更新:从操控鼠标,到安排整个工作区。 KeySteer 新增完整的窗口管理模式,移动、分屏、平铺、标签分组与布局复用,都可以留在键盘上完成。
- Window 窗口管理:按
Alt+W进入(macOS 为 Option+W),移动、调整大小、居中、最大化/最小化、跨屏移动或关闭窗口,也能调整应用与系统的音量、静音和音频输出设备。 - 按任务选择整理方式:Quick 快捷分屏;Editor 自动平铺、交换窗口、切分和调整区域;Tabs 自动整理同应用窗口,也能自由组合标签组。通过 Restore 复用已保存的布局和标签模板;保存时备注可留空,模板记住的是安排,不绑定应用名单。所有模式的按键与入口均可自定义。
同时,面向从旧版本升级的用户,回顾两项自 0.9.20 起提供的配置能力:
key_help实时快捷键提示:忘记按键时,打开面板查看当前模式的按键与动作。在现有[normal.bindings]中加入"?" = "key_help",重载配置后即可按?切换显示。- Shift 层符号绑定:
?、!、+等符号可以直接写成绑定键,按实际输入的字符匹配,让常用动作有更多顺手的入口。
详细操作与视频请看 窗口管理总览;提示面板与符号绑定见 配置参考。已有自定义绑定表的用户,请对照最新默认配置补入需要的新绑定。
Major feature update: from pointer control to a complete keyboard-driven workspace. Window adds movement, resizing, window-state and audio controls; Quick, Editor, and Tabs provide split layouts, tiling, and tab groups. Restore reuses saved arrangements with your current windows. All mode bindings and entry points are configurable. Also highlighted for users upgrading from older versions: live key_help hints and direct Shift-layer symbol bindings, available since 0.9.20. See the window management guide for instructions and demos.
0.9.21
新增键盘模拟鼠标侧键点击,支持 Windows 和 macOS。在现有 [normal.bindings] 中加入以下配置,重载后进入 Normal 模式,点按 T / Y 即可模拟两个侧键:
t = "mouse_x1"
y = "mouse_x2"侧键通常用于后退 / 前进,具体行为由应用决定;也支持 press mouse_x1、release mouse_x1 和 toggle mouse_x2 等按下、释放及锁定操作。
Added keyboard-triggered mouse side-button clicks on Windows and macOS. Add the bindings above to your existing [normal.bindings], reload the configuration, then tap T / Y in Normal mode. Side buttons usually navigate Back / Forward, depending on the application. Explicit press, release, and toggle actions also support these buttons.
0.9.20
- 新增实时按键提示面板,可查看当前模式可用的按键与动作,并自定义面板样式。
- 新增鼠标侧键绑定,支持组合键及按住执行动作。
- 支持直接绑定
?、!、+等符号;网页配置模拟器新增完整符号键位和按键提示预览。
Added a live key-help panel with customizable styling, mouse side-button bindings with chord and hold support, and direct symbol bindings such as ?, !, and +. The web configuration simulator now includes all shifted symbol keys and a key-help preview.
0.9.19
- Window Mover 默认快捷键改为
Primary+D,可在配置中自定义;Primary+S独立切换鼠标所在显示器。 - 网页配置模拟器新增窗口移动和
precision_toggle、slow_toggle、fast_toggle动作配置,支持导入、编辑和导出。
Window Mover now defaults to Primary+D, with configurable bindings and independent Primary+S pointer-display switching. The web configuration simulator now supports importing, editing, and exporting window-movement and speed-toggle actions.
0.9.18
修复状态栏 Reload Configuration 后新配置的按键路由丢失,保存并重载后无需退出程序。
Fixed lost key routes after Reload Configuration, so saved settings take effect without quitting.
0.9.17
新增 precision_toggle、slow_toggle 和 fast_toggle 速度模式切换功能,按下即可进入速度模式,无需持续按住。
Added precision_toggle, slow_toggle, and fast_toggle speed-mode toggles. Press once to enter a speed mode without holding the key down.
0.9.16
改进 Window Mover:最大化窗口现在可直接移到另一块显示器。
Improved Window Mover: maximized windows now move directly to another display while staying maximized。
0.9.15
新增 Window Mover 插件:将鼠标放在应用窗口上,按 Primary+S+D 即可把窗口和鼠标一起移到下一块显示器,并保持窗口内的相对位置。单独按 Primary+S 仍只切换鼠标所在显示器;可使用 move_window previous 或 move_window <显示器编号> 自定义其他目标。
Added the Window Mover plugin: point at an application window and press Primary+S+D to move both the window and pointer to the next display while preserving the pointer's relative position. Primary+S alone still switches the pointer display. Configure move_window previous or move_window <display number> for other destinations.
0.9.13
重整内部配置、模式与运行时边界并优化大批量 UI Hint 标签生成,在保持原有匹配、遮挡和显示层切换语义的同时减少分配;Windows 正式签名版现在支持下载后验证同一发布者、自动替换和重启,启动失败会恢复旧版本。
Reorganized the internal configuration, mode, and runtime boundaries and optimized large UI Hint label batches without changing matching, occlusion, or display-layer switching semantics. Signed Windows releases can now verify the same publisher, replace and restart automatically after downloading, and restore the previous version if startup fails.
0.9.12
修复 macOS 上 UI Hint 视觉识别失败、状态栏图标不显示、运行中撤销辅助功能权限可能造成输入卡住,以及滚动列表的窗口外元素仍生成标签的问题。
Fixed UI Hint visual recognition failures, missing top status icons, input becoming unresponsive after Accessibility access was revoked, and hints appearing for off-screen list items on macOS.
0.9.11
提升输入与 UI Hint 的响应速度,减少 OCR 扫描等待,并加强 Windows 与 macOS 的取消和资源清理,让连续使用更流畅稳定。
Improved input and UI Hint responsiveness, reduced OCR scan waits, and strengthened cancellation and resource cleanup on Windows and macOS for smoother, more reliable repeated use.
0.9.10
修复拖拽自动释放后鼠标按住提示和按下颜色可能残留的问题,并减少模式指示器刷新时的临时分配与重复处理,让输入状态清理和指针提示更稳定、轻快。
Fixed held-mouse text and pressed colors sometimes remaining after automatic drag release, while reducing temporary allocations and duplicate work in shared indicator and input-state handling.
0.9.9
新增可选的修饰键拖拽自动释放:长按鼠标键后可透传任意组合的修饰键,并在指针停止移动后自动松开鼠标键;默认关闭。
Added optional automatic release for modifier-assisted dragging: after holding a mouse button, any modifier combination can pass through and the button is released when pointer movement stops; disabled by default.
0.9.8
修复与此前鼠标长按同类的键盘 toggle 状态问题:多个修饰键现在可在激活键前后立即锁定,松开物理键后仍保持按下,且不会把 toggle 激活键组合透传给当前窗口。
Fixed the keyboard toggle state issue caused by the same kind of input transition as the earlier mouse long-press bug: multiple modifiers can now latch immediately in either order, remain held after their physical keys are released, and no longer pass the toggle activation chord to the focused window.
0.9.7
修复 Issue #1:鼠标按键进入按下状态前可能意外触发一次点击;同时将 Rust 工具链升级至 1.98。
Fixed Issue #1, where a click could be triggered accidentally before a mouse button entered its held state, and upgraded the Rust toolchain to 1.98.
0.9.6
UI Hint 针对常见的 129–256 个标签新增会话级复用工作区、精确的 X 轴扫描和二元重叠组快速路径,
UI Hint now uses a reusable session workspace, an exact X-axis sweep, and a fast path for two-label overlap groups in the common 129–256-label range while preserving the inline path through 128 labels.
0.9.5
Windows UI Hint 现在扫描每轮提交时鼠标下的窗口组,窗口上下文变化会立即清除旧标签并重新定位,不占用失败重试次数;Hybrid 同时共享单份扫描计划,并在返回 Normal 或 Idle 时完整取消识别与释放本轮资源。
Windows UI Hint now scans the window group under the pointer at submission time. Window-context changes immediately clear stale hints and retarget without consuming retries, while Hybrid shares one scan plan and fully cancels recognition and releases generation resources when returning to Normal or Idle.
0.9.4
跨平台 UI Hint 统一使用零分配文字分析和精确前缀高亮,并修正最终视觉层切换。
Cross-platform UI Hint now shares allocation-free text analysis and exact prefix highlighting, with corrected final visual-layer cycling.
0.9.3
UI Hint 标签进一步收紧边距并校正跨平台文字垂直居中,输入前缀现在按实际字符范围精确变色;macOS 同时减少每个标签的原生图层,避免窄字母高亮残缺或溢出。
UI Hint labels now use tighter spacing and improved cross-platform vertical centering, while exact typed-prefix coloring on macOS also uses fewer native layers to prevent incomplete or overflowing highlights.
0.9.2
Windows UI Hint 默认改用 Hybrid,并行合并 UI Automation 与视觉结果以补足窗口控制按钮;标签更紧凑易读且位置略微上移,同时进一步加快分块 OCR 的首批显示与覆盖层响应,修复重扫位置更新竞态,并收紧资源清理与安全边界。
Windows UI Hint now defaults to Hybrid, merging UI Automation and visual results in parallel to cover window controls, with more compact, readable, and slightly higher labels, earlier tiled OCR results, faster overlay response, a rescan position-race fix, and tighter cleanup and safety boundaries.
0.9.1
Windows 系统 OCR 会按 CPU 与图片尺寸自动并行切分、流式显示每块结果,并按实际可用能力跳过不需要的识别资源。
Windows system OCR now tiles by CPU and image size, streams completed regions, and skips unavailable OCR resources entirely.
0.9.0
Windows UI Hint 新增按需双 OCR,扫描结果更完整;同时降低截图延迟与峰值内存,退出后立即清理识别资源。
Windows UI Hint adds on-demand dual OCR with lower capture latency, lower peak memory, and immediate cleanup after scanning.
0.8.14
进一步降低普通输入与 UI Hint 的尾延迟和临时分配,并收紧 Windows/macOS 原生线程与 Unsafe 安全边界。
Further reduce input and UI Hint tail latency and temporary allocations while tightening native thread and unsafe boundaries on Windows and macOS.
0.8.13
UI Hint 扫描结果改为零拷贝传递,快捷键注入减少临时分配,并进一步收紧跨平台 Unsafe 边界。
UI Hint now consumes scan results without cloning, chord injection avoids temporary allocations, and cross-platform unsafe boundaries are tighter.
0.8.12
修复 Windows/macOS 检查更新失败、Windows 模拟器入口误开文件管理器及更新线程退出清理问题。
Fix update checks on Windows and macOS, open the simulator in the Windows browser, and clean up update workers reliably.
0.8.11
新增从 Windows 托盘或 macOS 顶部状态图标一键将当前配置安全带入网页模拟器,并修复 macOS 检查更新闪退及更新线程退出清理问题。
Open the current configuration safely in the web simulator from the Windows tray or macOS top status icon, and fix macOS update-check crashes and worker cleanup on exit.
0.8.10
UI Hint 退出后会立即取消过期扫描、重复进入依然快速,并修复 macOS 撤销辅助功能权限时可能卡住的问题。
UI Hint now cancels stale scans immediately on exit, keeps repeated entry fast, and fixes a potential hang when macOS Accessibility permission is revoked.
0.8.9
UI Hint 扫描与重叠切换更稳定,启动和输入响应更快、内存占用更低,并进一步收紧原生资源与 Unsafe 安全边界。
UI Hint scanning and overlap switching are more reliable, startup and input are faster with lower memory use, and native resource and unsafe boundaries are tighter.
0.8.8
输入响应和 UI Hint 扫描更快、内存与安装体积更小。
Input response and UI Hint scanning are faster with lower memory use and a smaller package.
0.8.7
Windows 和 macOS 的光标与提示移动更加流畅,组合按键和长按操作也更快、更省内存。
Cursor and indicator movement is now smoother on Windows and macOS, while key combinations and hold actions are faster and use less memory.
0.8.6
修复 n = "toggle":可单独长按 n 让它保持按下,和键盘或鼠标按键组合时无论先后顺序都能正确锁定,短按 n 仍会全部松开。
Fixed n = "toggle": hold n alone to keep it pressed, use it with keyboard or mouse keys in either order to lock them correctly, and tap n to release everything.
0.8.5
Windows 和 macOS 的移动、显示、按键响应及界面查找更快、更省内存,同时保持原有配置和操作方式不变。
Windows and macOS now feel faster and use less memory for movement, display, keyboard input, and UI search, with no changes to existing configuration or controls.