LogoUnimeType 文档

应用兼容性

聊天应用、终端和代码编辑器使用的捕获与替换路径。

不同 macOS 应用通过 IMKTextInput 暴露的文本能力不同,因此 UnimeType 保留了少量 明确的兼容性例外。

应用捕获规则替换规则
微信(com.tencent.xinWeChat可读时使用段落,否则使用输入缓冲精确选区或已验证的光标退格替换
VS Code(com.microsoft.VSCode优先使用输入缓冲精确选区或已验证的光标退格替换
VS Code Insiders(com.microsoft.VSCodeInsiders优先使用输入缓冲精确选区或已验证的光标退格替换
Terminal(com.apple.Terminal优先使用输入缓冲可用时走普通范围,否则走光标退格替换
Ghostty(com.mitchellh.ghostty优先使用输入缓冲可用时走普通范围,否则走光标退格替换
Xcode普通段落或句子捕获普通已提交文本范围替换
其他编辑器普通段落或句子捕获普通已提交文本范围替换

为什么需要光标退格替换

某些宿主能报告光标,却不执行文档相对替换范围。如果光标仍精确位于捕获文本末尾, UnimeType 会发送一组有边界的 Backspace 事件,再插入已提交的替换文本。该过程不会 创建标记组合文本。

待执行替换绑定到同一客户端和同一输入缓冲版本,并有两秒超时。如果光标、客户端 或源文本不再匹配,替换会被取消。

验证边界

宿主能够暴露结果范围时,UnimeType 会回读并与请求替换文本比较。不一致会显示 替换失败。如果宿主接受插入却不暴露结果文本,UnimeType 只能记录替换已发送, 不能声称完成了回读验证。

宿主无法提供可用范围时的恢复方法见状态与故障排查

目录

English