跳转至

📊 输入统计 Lua:你的私人打字效率仪表盘

这不仅仅是一个简单的字数计数器,而是一个带有本地数据库驱动、支持任意时间切片查询、甚至内置“段位系统”的硬核效率分析工具。

在万象中,你可以随时唤出这个极客风的仪表盘,全面洞悉自己的输入习惯与指尖速度。


🖥️ 一、 酷炫的视觉面板

当你输入对应的触发码(如 /tj 查生涯总计)时,候选项会瞬间展开为一个信息密度极高的统计面板。你可以直接用数字键选择对应的行上屏分享,或者按空格/回车将其作为一个整体上屏。

面板展示示例:

※ 生涯统计 · 效率仪表盘
───────────────
📊 综合数据
  均速:68    上屏:71426
  峰速:78    字数:164196
🏆 段位:💨·行云流水
───────────────
⚡ 核心效率
  平均编码:2.77 键/字
  词组连打:92.2 %
───────────────
📈 字词分布
  [1]  17% ▓░░░░░░░░░
  [2]  52% ▓▓▓▓▓░░░░░
  [3]  17% ▓░░░░░░░░░
  [4]   9% ░░░░░░░░░░
  [∞]  3% ░░░░░░░░░░
───────────────
◉ 方案:自然万象
◉ 平台:fcitx-rime 5.1.13

⚡ 二、 默认触发指令字典

系统预设了以下快捷触发指令(可在配置文件中自定义):

  • /rtj —— 日统计 (查今日)
  • /ztj —— 周统计 (查本周)
  • /ytj —— 月统计 (查本月)
  • /ntj —— 年统计 (查本年)
  • /tj —— 生涯统计 (查历史总和)
  • /qctj —— 清除数据 (危险操作,默认设置较长以防误触)

⏳ 杀手锏:时光机模式 (/htj)

由于万象采用了更深度的数据库设计,你可以穿越时空,查询过去的任意一天或某个特定区间的打字数据:

  • 单日查询:输入 /htj20231015,直接查看 2023 年 10 月 15 日的输入效率。

  • 区间查询:输入 /htj20231015t20240102(以 t 为连接符),即可生成这几个月内的专属统计汇总。


💾 三、 底层架构:本地化碎片聚合 DB

传统的输入法统计插件通常只记录一个干瘪的“总字数”,而万象的 input_statistics.lua 彻底重构了数据存储维度。

引擎会在你配置的本地路径下(默认 lua/stats)生成轻量级的数据库文件,以“天”为最小维度记录你的所有上屏数据(包含键数、字数、词长分布等)。 当你查询周、月、年或任意区间时,Lua 脚本会动态调取数据库中的切片进行极速聚合计算。这不仅保证了数据的绝对安全可控,更让细粒度的数据回溯成为了可能。


🛠️ 四、 高级自定义:打造你的专属系统

上述的所有触发词、数据库路径,甚至面板上显示的“称号段位”,都可以通过你的 .custom.yaml 文件(建议配在 wanxiang.custom.yaml 的末尾或顶层节点)进行高度魔改。

比如,你可以抛弃默认的“打字流派”段位,换成一套中二感拉满的“修真流”体系。

自定义配置节点解析:

# 在 custom 文件中顶格添加或修改
input_stats:
  db_name: "lua/stats"  # 自定义统计数据库路径(保持默认即可)
  triggers:
    clear: "/qctj"      # 清除数据指令
    today: "/rtj"       # 日统计指令
    week: "/ztj"        # 周统计指令
    month: "/ytj"       # 月统计指令
    year: "/ntj"        # 年统计指令
    total: "/tj"        # 生涯指令
    history: "/htj"     # 时光机指令

  # 👇 称号魔改区 (按字数阶段解锁称号)
  # 格式为 "字数阈值:称号名称"
  titles:  
    - "0:初入道途·炼气期"
    - "10000:小有所成·筑基期"
    - "50000:凝真化虚·金丹期"
    - "100000:破茧成蝶·元婴期"
    - "500000:掌控法则·化神期"
    - "1000000:破碎虚空·渡劫期"

💡 提示:如果你在配置中不写 titles 节点,系统会默认使用自带的一套“打字流派”(如:略有小成、行云流水等)段位。如果配置了,就会被你的自定义内容覆盖。