等 AI 的时候,背个单词。
程序员每天有近 8 小时泡在终端里——用 Claude Code、Codex、Qwen Code 等 AI CLI 时等模型响应,跑命令、跑测试、跑部署时等执行结束。这些等待的碎片时间每天累计相当可观,却几乎全部被浪费。
waitword 把这些时间变成词汇积累:状态栏常驻一张单词卡,每 15 秒自动切换,等待时的每一次抬眼都是一次复习。同一批单词全天几十次重复曝光,靠高频重复自然记牢——不再需要额外抽出时间面对枯燥的单词书。无需评分、无需交互、没有后台进程:上班的同时,无痛地把单词背了。
在 Claude Code 状态栏中的效果:
-
自动轮换:每 15 秒切换一个词(单词 + 音标 + 释义 + 中英例句),无需任何操作
-
内置七大词库:四级(默认)、六级、高考、考研、雅思、托福、程序员英语,共 28,000+ 词,开箱即用,一条命令切换
-
每日批次:每天固定 30 个词循环滚动(约 7 分钟一轮),次日自动更换下一批
-
quiz 主动测试:
waitword quiz对当日批次做拼写回忆测试,答错的词自动加入次日批次 -
cloze 挖空:每第 4 个词先隐藏拼写、数秒后自动揭晓,在被动曝光中加入主动回忆
-
多端接入:Claude Code / Qwen Code 状态栏、tmux、starship、zsh / bash、WezTerm
-
零开销:单个二进制文件、无依赖、毫秒级启动、无后台进程
显示哪张卡片是墙钟时间的纯函数:
index = (自纪元天数 × 每日批量 + (unix秒 / 间隔) % 每日批量) % 词库大小
因此无状态、无守护进程、无数据库——各界面定期调用 waitword now 即可,且多端天然同步:同一时刻所有界面显示同一个词。
方式一、方式三依赖 Go 1.22 及以上(方式二直接下载二进制,无需 Go)。先检查是否已安装:
go version # 输出 go1.22 或更高即可未安装 Go 时:
- macOS:
brew install go - Debian / Ubuntu:
sudo apt install golang-go - Windows 及其他平台:从 go.dev/dl 下载对应安装包
# 方式一:go install(推荐)
go install github.com/lukyFun/waitword@latest
go install将二进制安装至$(go env GOPATH)/bin(默认~/go/bin)。若提示command not found: waitword,需将该目录加入 PATH:echo 'export PATH="$HOME/go/bin:$PATH"' >> ~/.zshrc && source ~/.zshrc # bash 用户将 ~/.zshrc 替换为 ~/.bashrc
# 方式二:从 Releases 页下载预编译二进制(macOS / Linux / Windows),放入 PATH,无需 Go
# 方式三:源码构建
git clone https://github.com/lukyFun/waitword && cd waitword
go build -o waitword . && mv waitword ~/bin/waitword now输出一张单词卡即安装成功。默认词库为大学英语四级,切换其他词库见"三、进阶使用"。
当前支持的终端与效果:
- 常驻自动轮换(状态栏常驻,每 15 秒切换):Claude Code、Qwen Code、tmux、WezTerm
- 随提示符刷新(每次命令结束、提示符重绘时显示一张单词卡):zsh、bash、starship、PowerShell / Windows Terminal
- 暂不支持:Codex CLI、Gemini CLI——官方尚未开放自定义 statusline(openai/codex#20140);可在 tmux 中运行二者,效果相同
运行对应命令,回车确认即可——写入了哪个文件、如何生效,以命令输出的提示为准:
waitword adapter claude-code # Claude Code
waitword adapter qwen-code # Qwen Code
waitword adapter tmux # tmux —— 普通终端(Terminal.app / iTerm2)要自动轮换用它
waitword adapter zsh # zsh;bash 用户:waitword adapter bash
waitword adapter starship # starship
waitword adapter powershell # PowerShell —— 仅打印片段,按提示粘贴到 $PROFILE
waitword adapter wezterm # WezTerm —— 仅打印片段,粘贴到 return config 之前--remove 撤销写入;--print 仅打印、不修改文件。
zsh / bash / starship / PowerShell 为随提示符刷新:每次命令结束显示一张单词卡,不在空闲时自动换词;需要自动轮换请用 tmux 或 AI CLI statusline。
内置七大词库(除 coder 外绝大多数词条带音标与中英例句):
cet4四级英语词汇(默认,3739 词)cet6六级英语词汇(2078 词)gaozhong高考必备词汇(3665 词)kaoyan考研英语词汇(4533 词)ielts雅思词汇(3427 词)toeflTOEFL 词汇(9212 词)coder程序员英语(1700 词,无例句)
waitword deck list # 查看全部词库(内置 + 已导入)
waitword deck use toefl # 切换激活词库
waitword deck import my.tsv --name my # 导入自定义词库
waitword deck remove my # 删除已导入词库自定义词库支持 TSV / CSV(列:word ⇥ 音标 ⇥ 释义 ⇥ 英文例句 ⇥ 例句翻译,word 之后的列可省略)与 qwerty-learner / kajweb 扁平 JSON。kajweb/dict 的嵌套导出格式使用 scripts/convert_kajweb.py 转换。同名导入词库会覆盖内置词库。
waitword quiz对当日批次做拼写回忆测试:显示释义与首尾字母提示,输入完整单词作答;直接回车为放弃本题,q 提前退出。答错与放弃的词会自动加入次日批次继续曝光,测试结束显示正确率。
waitword config # 查看当前配置
waitword config set interval 15 # 每词展示秒数
waitword config set daily 30 # 每日批量
waitword config set cloze_every 4 # 挖空频率(0 为关闭)
waitword config set prefix 📖 # 状态栏前缀
waitword today # 查看当日批次数据目录为 ~/.config/waitword/,可用环境变量 $WAITWORD_DIR 覆盖。
更新即替换二进制文件,与安装方式对应:
waitword version # 查看当前版本
go install github.com/lukyFun/waitword@latest # go install 方式
# Releases 方式:下载新版覆盖旧文件
# 源码方式:git pull && go build -o waitword .waitword uninstall # 列出待删内容并确认;-y 跳过确认纯曝光的记忆效果弱于主动回忆,因此设计了 cloze 挖空(周期性回忆测试)与每日批次(同一批 30 词全天重复,而非全词库单次漂过)。waitword 不替代 Anki 等主动复习工具,定位是利用原本无产出的等待时间。
核心功能
- FSRS-lite(可选):跳过已标记"认识"的词
- 更多内置词库:专四专八、GRE、SAT 等
终端扩展
- iTerm2 状态栏组件(需 iTerm2 Python API)
- Codex CLI / Gemini CLI(待官方开放自定义 statusline)
- Homebrew tap / Scoop 分发
代码以 MIT 协议发布。内置六大词库的数据来源于 GitHub 开源词库项目(kajweb/dict 等),版权归原始来源所有,随本项目分发仅为集成便利;如有权利异议请提 issue。同时致谢 qwerty-learner 与 ECDICT——本工具的导入格式即为与它们互操作而设计。
本项目由 拉丁解牛说技术 开发维护,同时是 舌尖英语 的作者——一款发音优先的英语学习应用(网页版 word.askwhat.top,微信小程序搜索「舌尖英语」)。
MIT © lukyFun



