✨InputTip✨
喜欢这个项目?请给它一个 ⭐️ 或 赞赏 💰
Tip
- InputTip 使用 AutoHotkey(AHK) 语言编写
- InputTip 只适用于 Windows 系统: Win10 以上可用,以下未知
托盘菜单
指的是鼠标右键点击任务栏托盘区域的 InputTip 后显示的菜单
-
一个输入法状态管理工具:实时提示(鼠标样式、符号显示) + 窗口自动切换状态 + 快捷键切换状态
- 请查阅 更新日志
-
如果有使用问题,请先确保当前使用的 InputTip 是最新版本
-
然后查看相关的文档
- 本页面中包含的内容
- 常见问题(FAQ)
- 输入法和应用窗口兼容情况
- issues
- ...
-
如果还有问题,可以创建 issues 或前往 腾讯频道 或 QQ 反馈交流群(451860327) 交流反馈
Tip
如果这里无法正常显示,可前往官网查看
Tip
- 推荐使用,它拥有 exe 版本 不具备的额外特性,且没有 exe 版本 所存在的缺陷
- 详情参考: 关于 zip 与 exe 版本的区别以及相关说明
-
下载仓库的最新代码压缩包
InputTip-main.zip
-
在仓库的 Releases (发行版) 中下载
InputTip.zip
-
使用 Scoop
Warning
- 不推荐使用,和 zip 版本 相比,它缺少了一些特性,且有一些缺陷
- 详情参考: 关于 zip 与 exe 版本的区别以及相关说明
-
完成 安装 后,运行对应文件即可
-
设置开机自启动:
托盘菜单
=>开机自启动
-
设置
所有配置菜单的字体大小
- 你可以设置字体大小来优化配置菜单在不同屏幕上的显示效果
托盘菜单
=>其他设置
=>配置菜单字体大小
-
使用 鼠标方案:
托盘菜单
=>状态提示 - 鼠标方案
=>加载鼠标样式
-
使用 符号方案:
托盘菜单
=>状态提示 - 符号方案
=>指定符号的类型
-
更多相关配置在
托盘菜单
中查看
- 取消
开机自启动
:托盘菜单
=>开机自启动
- 退出:
托盘菜单
=>退出
- 如果使用了 鼠标方案,鼠标样式可能无法完全恢复,需要在系统设置中重新设置
- 删除下方的 目录结构及数据 中展示的相关目录即可
-
zip 版本
InputTip-zip/ ├── InputTip.bat # 启动脚本 ├── src/ ├── InputTip.ini # 配置文件 ├── InputTipCursor/ # 鼠标样式 ├── InputTipSymbol/ # 图片符号 └── ... # 其他源代码文件 └── ... # 其他文件
-
exe 版本
- 没有根目录,建议新建一个目录,将
InputTip.exe
放入其中再运行
InputTip-exe/ ├── InputTip.exe # 主程序 ├── InputTip.ini # 配置文件 ├── InputTipCursor/ # 鼠标样式 ├── InputTipSymbol/ # 图片符号 └── ...
- 没有根目录,建议新建一个目录,将
-
如果你需要备份 InputTip 的数据以便于后续使用,请备份它们
InputTip.ini
InputTipCursor
(如果没有修改,可以忽略)InputTipSymbol
(如果没有修改,可以忽略)
-
如果使用 WinGet 安装 abgox.InputTip
- 这些数据文件或文件夹会保存在
$env:LocalAppData\Microsoft\WinGet\Packages\abgox.InputTip_Microsoft.Winget.Source_8wekyb3d8bbwe
中 - 可以正常通过 WinGet 更新、卸载,不会删除这些数据文件和文件夹
- 这些数据文件或文件夹会保存在
Caution
- 它是 zip 版本 独有的功能,因为 exe 版本 无法实现它
- 如果你不熟悉 AutoHotkey(AHK) 语言开发 (v2 版本),不要随意进行更改
- 不要修改
plugins
目录以外的其他源代码文件
- 不要修改
- 在
src
目录下有一个plugins
目录 - 目录中添加了一个空的
InputTip.plugin.ahk
文件 - InputTip 会引入这个文件,你可以在其中添加自定义功能,比如 自定义热键、自定义热字串 等
- 或者,在
plugins
目录中新建.ahk
文件,然后在InputTip.plugin.ahk
中#Include
它 plugins
目录的特点:
- 使用多套鼠标样式,根据输入法状态加载不同的鼠标样式
- 默认使用 多彩水滴 Oreo 光标
- 默认中文状态为 红色,英文状态为 蓝色,大写锁定为 绿色
- 在 更多已适配的鼠标样式 中有提供它们的左手镜像版本
- 自定义鼠标样式
-
根据输入法状态显示不同的 符号
-
它有两种显示位置
- 在鼠标附近显示:
托盘菜单
=>在鼠标附近显示符号
- 在输入光标附近显示:
- 需要搭配 符号的名单机制 使用
托盘菜单
=>符号的黑/白名单
- 在鼠标附近显示:
-
注意: 在输入光标附近显示会涉及到调用 DLL 获取应用窗口中的输入光标位置信息
- InputTip 将通过 光标获取模式 尝试获取到输入光标位置信息
- 部分应用可能会因为 DLL 调用出现兼容性问题
- 它们应该从
符号的白名单
中移除 - 或者,使用
在鼠标附近显示符号
- 它们应该从
- 部分应用可能必须使用某个特殊模式才能获取
- 可以通过
托盘菜单
=>光标获取模式
进行指定并测试
- 部分应用可能会因为 DLL 调用出现兼容性问题
- 如果获取不到:
- 符号无法显示
- 这就只能使用 鼠标方案 或者
在鼠标附近显示符号
- 获取到了,符号位置有偏差,但在此应用中,所有窗口的偏差相同:
- 符号会显示,但符号显示的位置有偏差
- 由于偏差相同,可以通过
偏移量
、特殊偏移量
解决
- 获取到了,符号位置有偏差,且在此应用中,不同窗口的偏差不同:
- 符号会显示,但符号显示的位置有偏差
- 由于偏差不同,无论如何设置,都会有窗口出现位置错误,目前无解
- 参考示例:
- 在 vscode v1.100 版本中,编辑界面和终端界面符号位置有不同偏差
- 在 vscode v1.101 版本中已修复
- InputTip 将通过 光标获取模式 尝试获取到输入光标位置信息
Tip
- 使用 AutoHotkey 官方论坛中的解决方案实现,方案由 Descolada 提出
- 建议使用 Microsoft OpenJDK 21
- 如果使用其他版本的 JDK 或 JRE,需要自行测试可用性
- 例如 Adoptium Temurin,测试后发现: JDK 版本无效,JRE 版本有效
Warning
- 如果不使用 符号方案,或者使用
在鼠标附近显示符号
,只需要将相关进程添加到符号的白名单
中,无需以下步骤
-
启用
Java Access Bridge
-
如果以下命令不存在,请检查 步骤 1
-
如果以下命令不能正常运行,请检查环境变量是否配置正确
java -version
jabswitch -enable
-
-
托盘菜单
=>更多设置
=>JAB/JetBrains IDE 支持
-
托盘菜单
=>光标获取模式
,设置 JetBrains IDE 的光标获取模式为JAB
-
如果未生效,请依次尝试以下操作并查看是否生效
- 重启 InputTip:
托盘菜单
=>重启
- 重启正在运行的 JetBrains IDE
- 重启系统
- 重启 InputTip:
Tip
如果有多块屏幕,副屏幕上可能有坐标偏差,需要通过 托盘菜单
=> 特殊偏移量
手动调整
Tip
- 可以直接使用 已经适配的一些鼠标样式
-
你需要在
InputTipCursor
目录下创建一个文件夹 -
文件夹不应该放在
default
文件夹下 -
文件夹中只能包含鼠标样式文件(后缀名为
.cur
或.ani
) -
必须使用以下表格中的文件名(大小写都可以)
-
每个文件都不是必须的,但建议至少添加
Arrow
,IBeam
,Hand
文件名(类型) 说明 Arrow 普通选择 IBeam 文本选择/文本输入 Hand 链接选择 AppStarting 后台工作 Wait 忙碌 SizeAll 移动 SizeNWSE 对角线调整大小 1 (左上 => 右下) SizeNESW 对角线调整大小 2 (左下 => 右上) SizeWE 水平调整大小 SizeNS 垂直调整大小 No 无法(禁用) Help 帮助选择 Cross 精度选择 UpArrow 备用选择 Pin 位置选择 Person 人员选择 Pen 手写 -
详情参考 微软文档: 关于光标(游标)
Warning
- 你应该尽量让三种状态下的鼠标样式文件夹中包含的鼠标样式文件的数量和类型是一致的
- 比如:
- 如果中文状态的目录路径下有
IBeam.cur
或IBeam.ani
文件,英文状态或大写锁定的目录路径下没有。 - 则切换到中文状态时,会加载中文状态的
IBeam.cur
- 但是再切换到英文或大写锁定时,
IBeam
类型的鼠标样式不会变化,因为英文和大写锁定缺少对应的样式文件
- 如果中文状态的目录路径下有
Tip
如果你不使用 符号方案,可以直接忽略
Tip
- InputTip 使用 【通用】 和 【自定义】 模式兼容各类输入法,默认使用 【通用】 模式
- 如果你了解了 【自定义】 模式,建议直接使用 【自定义】 模式去配置规则,状态识别更稳定
-
【通用】
-
微软拼音,微软五笔,微软仓颉...
指定窗口自动切换状态
和状态切换快捷键
存在缺陷- 只有当聚焦到输入框时,微软输入法才能正常切换输入法状态
- 这可能会导致 InputTip 去模拟按键切换输入法状态时切换失效
- 大写锁定除外,因为它是通过模拟输入
CapsLock
按键实现,不受其他影响
-
美式键盘 ENG
指定窗口自动切换状态
和状态切换快捷键
存在缺陷- 它只有英文状态和大写锁定这两种输入法状态
- 因此,只有英文状态和大写锁定的输入法状态切换有效
-
手心输入法: 使用
Shift
切换中英文状态无法正常识别,需要参照下方的使用方式- 首先,确保输入法状态正确
- 通过
Shift
将输入法状态切换为中文,然后不再使用Shift
切换状态(此时可以在手心输入法设置中关闭Shift
切换功能) - 后续只能使用
Ctrl + Space
进行中英文状态切换,否则状态识别有误
- 通过
- 其次,修改 InputTip 的配置
托盘菜单
=>输入法模式
=>实现切换输入法状态的方式
,选择模拟输入 Ctrl + Space
- 首先,确保输入法状态正确
-
小鹤音形输入法
-
谷歌输入法
-
...
-
【自定义】
-
一个万能的模式,根据规则列表依次匹配,需要根据实际情况添加一条或多条规则
-
详情参考: 关于【自定义】模式
-
可以通过
输入法模式
=>自定义
使用以下已知可用的规则配置:-
配置项
默认状态
选择中文状态
(英文状态
相反) -
-
经过测试,
v10.11.4
版本中,添加以下规则即可顺序 状态码规则 切换码规则 输入法状态 1 257 英文
-
-
-
经过测试,
v0.16.1
版本中,添加以下规则即可顺序 状态码规则 切换码规则 输入法状态 1 偶数 英文
-
-
-
经过测试,
v3.0
版本中,添加以下规则即可顺序 状态码规则 切换码规则 输入法状态 1 奇数 英文
-
-
-
- ImTip - aardio
- KBLAutoSwitch - flyinclouds
- AutoHotkeyScripts - Tebayaki
- language-indicator - yakunins
- RedDot - Autumn-one
- InputTip v1 在鼠标附近显示带文字的方块符号,后来 InputTip v2 版本默认通过不同颜色的鼠标样式来区分
- 之后看到了 RedDot - Autumn-one 和 language-indicator - yakunins 的设计,通过不同颜色加上小符号来判断不同输入法状态
- InputTip 也参照了这样的设计,简单直接,其实就是 InputTip v1 中带文字的方块符号,去掉文字,加上不同的背景颜色