统计与调试
stats / debug / system 三个小域的配置项——输入统计、日志级别与滚动、向系统登记的名称
三个体量很小的顶层域:输入统计 [stats]、日志调试 [debug]、系统集成 [system]。
输入统计
[stats]
enabled = true
track_english = true
speed_factor = 0.85| 键 | 类型 | 可选值 | 默认 | 说明 |
|---|---|---|---|---|
enabled | 布尔 | — | true | 是否统计输入字数、按键数等数据 |
track_english | 布尔 | — | true | 是否把英文输入计入统计 |
speed_factor | 小数 0.119 新增 | — | 0.85 | 打字速度显示值的修正系数,不影响任何字数统计。出厂取 < 1 是经验折价:打错后退格重打,字符被计两遍而耗时只算一遍,速度恒偏高。填 ≥ 1 只会让显示值重新偏离真实手速。暂无设置界面入口,需要时改配置文件 |
日志调试
[debug]
log_level = "info"
log_max_size_mb = 10
log_max_files = 10| 键 | 类型 | 可选值 | 默认 | 说明 |
|---|---|---|---|---|
log_level | 枚举 | off 0.121 新增 / trace / debug / info / warn / error | info | 日志级别。留空等同 info(那是「没选过」,不是「选了关闭」)。off = 完全不记日志:主日志文件不创建(而不是创建了但为空),启动轨迹文件 startup_stage.log 也一并停写 |
log_max_size_mb | 整数 | — | 10 | 单个日志文件的大小上限(MB),超出后滚动 |
log_max_files | 整数 | — | 10 | 保留的旧日志文件数上限(不含主文件)。服务每次启动都会滚动一次,故该值约等于"能回溯最近几次运行" |
日志文件的序号 0.121 新增
服务日志每一份都带序号,规则只有一句话:数字越小越新,.1 是当前正在写的那一份。
logs\wind_input.1.log ← 最新(正在写)
logs\wind_input.2.log
logs\wind_input.3.log ← 更旧此前当前那份叫 wind_input.log(无序号)、历史才带 .1 / .2——收日志时这套行不通:打包整个 logs 目录发过来,「没有序号的那个才是最新」完全不是自明的,按名字排序它还排在 .1 后面。现在与设置程序的 wind_setting.1.log … .5.log 完全一致,两份日志一个规则。
升级时会自动迁移:旧的无序号文件被搬进 .1,原有 .N 整体后移一位,历史不丢。
TSF 端日志的开关另有落点
宿主进程里的 TSF DLL 在 DllMain 里就要读到自己的日志级别,那时 IPC 还没连上,故它不读 config.toml,而读日志根目录下的 tsf_log_config。设置页「高级 → 日志设置」把三个模块(输入法服务 / TSF 端 / 设置程序)并排列出,各写各的落点。这个文件里的两个键:
mode/level—— TSF 端写不写日志、写到什么级别,设置页的「TSF 端日志级别」改的就是它dump_hotkey——Ctrl+Shift+F12的日志导出,出厂关闭 0.121 新增。它的拦截排在所有闸门之前,开着就意味着只要本输入法激活,这个键永远到不了宿主——而它在 VS / JetBrains 里是有主的快捷键
修改后需重启
log_level 改动后需重启输入法服务。排查问题时可临时调到 debug 或 trace,排查完调回 info——低级别日志量大且会拖慢输入。
日志位置
日志文件在 %LOCALAPPDATA%\WindInput\logs\,见配置文件与数据目录。
系统集成(system)
[system] 装的是「怎样向 Windows 登记自己」,不是输入行为。共同特点:改动需管理员权限才能落地,且对已启动的宿主进程不生效(宿主是启动时读的)。
[system]
dota2_compat = false # Valve 游戏兼容:改登记名称
dota2_compat_name = "拼音输入法" # 开启后要登记的名称| 键 | 类型 | 默认 | 说明 |
|---|---|---|---|
dota2_compat | 布尔 | false | 把本输入法在系统里登记的名称改为下一项的值。Dota 2 等起源2 引擎游戏按名称逐字比对一张内置白名单,表内的由游戏自己绘制候选,表外的拿不到候选。⚠️ 开启后语言栏、Windows 设置、输入法切换列表里显示的都是那个名字 |
dota2_compat_name | 字符串 | "拼音输入法" 0.122 新增 | 要登记的名称,0.122 起可自定义 0.122 新增。⛔ 必须与游戏内表逐字一致,差一个字符就不命中且没有任何报错——表现为「开了开关也还是没候选」。⚠️ 留空 = 回到出厂值,不是关闭;关闭请把上一项设为 false。长度上限 127 个字符 |
界面入口与取舍见高级设置 · 游戏兼容,命令行见 wind_input system dota2-compat。
对这篇文档有疑问,或发现内容有误?
欢迎到文档仓库提 issue,写明问题时附上本页链接即可。