Releases: jeffliulab/vibevibe
Releases · jeffliulab/vibevibe
Release list
vibevibe 0.2.0 · 两键小键盘 + 双触发通道
装 / 升级
pip install -U vibevibe
vibevibe setup两条触发通道,同时生效
| 通道 | 按键 | 需要什么 | 给谁用 |
|---|---|---|---|
| 桌面快捷键 | Super+Shift+V(可改) |
零硬件、零权限 | 任何人,pip install 完就能用 |
| 小键盘 | F19(固定) |
两键小键盘 + 一条只针对它的 udev 规则 | 有专用硬件的人 |
为什么默认 Super+Shift+V 而不是 Ctrl+Shift+V:后者在浏览器、VS Code、终端里都是「粘贴为纯文本」。那是应用内部的绑定,任何系统层检查都看不到。应用基本不碰 Super 键(桌面环境保留键),所以最安全。
两键小键盘
用 VIA 协议直接写板子的 EEPROM:左键 → KC_F19,右键 → KC_ENTER。改的是硬件自己的存储,换台电脑插上依然生效。
热键冲突检查
- 撞系统快捷键 → 拒绝
- 撞 vibevibe 自己的快捷键 → 拒绝(两条通道同时触发,toggle 下等于连切两次,表现为「按了没反应」)
- 有 X11 keysym → 允许但警告(会同时送给当前应用)
设置 →「按键」支持按下即捕获,含组合键。
关于窗口
托盘菜单新增「关于」:版本号、当前使用的各个路径、打开日志的按钮。
推翻的两处原设计
grab 独占必须关掉。 原来把「能整个独占设备」当成专用小键盘的优势,但独占是整设备级的——会把右键的 Enter 一起吞掉。不独占也没事:F19 在 X11 里没有 keysym,漏给应用无副作用。
安全闸判据从「按键数量」改成「设备名匹配」。 实测两键小键盘声明 279 个键、比主键盘(143)还多——QMK 系固件不管物理几个键都声明整个键位范围,数量根本区分不出主键盘。
修的 bug
- 冲突检查器漏报:GNOME 加速器字符串没规范化,
<Shift><Super>space和<Super><Shift>space匹配不上;<Primary>/<Ctrl>/<Control>三种别名也没归一 - 冲突检查器误报可用:没校验主键是不是合法 keysym 名,输入中文会返回「✓ 可用」
- 推荐值写死「F13~F24」被实测打脸:这台机器十二个候选里只有 F19 和 F24 没有 keysym,改成按当前布局现算
- 托盘静默吞异常:
nohup把 stderr 丢进黑洞,跑着旧代码时点「设置」毫无反应
已知不足
- 只做了 X11(Wayland 待做)
- MuJoCo、daemon、CAN 这类同音专有名词仍会认错(所有模型都栽,包括 Whisper)
- 转写期间移动光标,文字会落到新位置
vibevibe 0.1.0
Linux 上唯一走 Qwen3-ASR 的本地中英混说听写工具。按一个键说话,松开文字就出现在光标处,全程不联网。
装
pip install vibevibe
vibevibe setup选型是实测定的
12 条本人录音 / 30 个技术词:
| 后端 | 技术词命中 | CER | 英文 WER | 平均 RTF |
|---|---|---|---|---|
| Qwen3-ASR-1.7B int4 | 77% | 0.082 | 0.213 | 0.15 |
| Qwen3-ASR-0.6B | 70% | 0.132 | 0.309 | 0.08 |
| Whisper large-v3-turbo | 60% | 0.143 | 0.503 | 0.50 |
实际使用延迟(说完到出字)0.4~0.8 秒,4 个推理线程。
纯 CPU
不碰显卡。CTranslate2 在 Blackwell(sm_120)上用 int8 会崩,而且不占显存意味着跑训练任务时听写照样能用。
内存可控
托盘图标里两个开关:
| 状态 | 内存 |
|---|---|
| 服务开 + 热加载开 | 3.9 GB |
| 服务开 + 热加载关 | 0.24 GB |
| 服务关 | 0 |
已知不足
- 只做了 X11(Wayland 待做)
- MuJoCo、daemon、CAN 这类同音专有名词仍会认错(所有模型都栽,包括 Whisper)
- hold「按住说话」模式需要专用小键盘 + udev 规则,尚未实机验证