want-to-type
为 DSH 打字过程添加主题特效、萌宠陪伴、连击动画和打字音效。支持中文输入法、浅色与深色界面,以及中英文切换。
主题
| 主题 | 底部效果 | 打字效果 | 连击 | 音效 |
|---|---|---|---|---|
| 奶油手帐 | 猫狗萌宠 | 骨头饼干 | 手帐贴纸 | 连贯钢琴旋律 |
| DeepSeek | 蓝鲸 | 气泡 | 鲸鱼水花 | 气泡音 |
| 极光流星 | 流光 | 小光晕烟花 | 青紫热力 | biu 激光音 |
| 点阵节奏 | LED 点阵 | 蓝绿粒子 | 像素进度条 | 真实青轴键盘录音 |
打字、底部、全屏、连击与音效均可独立开关。主题卡片单排展示;音效开关在左下角,语言切换在右下角。音效默认关闭,开启或点击预览可试听。
使用
从 npm 安装到 DSH 的当前 profile:
plugin_manager action: install_bundle target: "@moonkingdom/want-to-type@1.3.0"
也可以把此目录作为本地插件加载(plugin_manager 的 install_bundle,target 传绝对路径)。入口配置见 package.json 与 cordis.patch.yml。刷新 DSH 后,可从输入框旁的键盘图标选择主题并设置特效。
此项目依赖 DSH 提供的 ModuleLoader、React 和 UI slots,不能作为独立网页直接运行。运行资源均随 client.js 内嵌,无需构建,也不依赖运行时外部资源下载。
首次使用默认奶油手帐,语言自动跟随系统;手动选择中文或 EN 后保存。配置仅保存在当前浏览器的 dsh.want-to-type.config.v1。
动效与音效规则
- 全屏光晕:最近一秒超过 4 次有效按键,并持续 1 秒后显示;维持速度时持续展示,降速或停止输入后淡出。奶油手帐为暖色,DeepSeek 为浅蓝色,极光与点阵为彩虹色。
- 连击:沿用 1 秒计数窗口。热力画面整体缩放为原设计的 30%;手帐和鲸鱼背景保持稳定,仅数字和内部细节运动。
- 萌宠与鲸鱼:跟随物理键位,停止输入后消退;鲸鱼肚子、眼睛及眼睛外框均为不透明白色。
- 钢琴:三段原创八小节乐句,按谱面节奏随输入推进;停打后暂停,30 秒内续奏,超过 30 秒随机换另一段从头开始。预览不改变实际乐句进度。
- 键盘:内嵌真实 Cherry MX Blue ABS 采样;不同键位采用不同录音,空格与退格使用独立采样。
- 长按重复、快捷键与输入法提交不重复计速或发声;输入法组词期间的物理按键可正常触发。
- 尊重系统减少动态效果设置;切换后台、窗口失焦、关闭开关或卸载时清理对应效果。
仅在 DSH 的 textarea/contenteditable 内响应输入,不申请操作系统输入监控或辅助功能权限,不新增运行时网络请求。
开发与检查
无需安装依赖,使用支持 Node.js 内置测试运行器的版本:
node --check client.js
npm test
测试使用 DOM、Canvas 与 Web Audio 替身,覆盖主题、配置、输入法、连击、速度触发、音效、乐句续奏与资源清理。最终视觉和声音以 DSH 实际运行效果为准。
目录
client.js:客户端逻辑及内嵌素材。index.js:DSH 宿主入口。cordis.patch.yml:插件挂载配置。locale/:插件元数据翻译。tests/:无依赖测试。
第三方素材
素材来源、修改说明与版权许可见 THIRD_PARTY_NOTICES.md 和 LICENSE-*.txt。原作者的署名与许可随项目保留。
发布
已发布到 npm:@moonkingdom/want-to-type。版本号遵循 SemVer,engines.dsh 限制最低 DSH 版本;发布前执行 npm pack --dry-run 核对文件清单,再用 npm publish 上传。
GitHub 仓库的可见性由仓库设置单独控制。
No comments yet. Be the first to write one.