用途 该项目用来解决技术圈术语发音不统一的问题,例如 kubectl、nginx、GIF、SQL、JSON 等常见但读法有争议的名称。它不是让用户去记忆 IPA 音标,而是通过操作系统自带的文本转语音引擎,把词典中预设的重拼写朗读出来,让用户直接听到正确读法。
词典规模与结构 词典 data/pronunciations.tsv 是唯一数据源,共 1,903 个条目,其中 1,283 条带有可引用来源。词条覆盖云与 DevOps(kubectl、nginx、Kubernetes、helm、Istio 等)、语言与框架(Django、Vue、Vite、Pydantic 等)、数据库(PostgreSQL、SQLite、MySQL、MongoDB 等)、计算机科学术语与缩写(GIF、JSON、SQL、GUI、sudo、regex 等)以及发行版与工具(Linux、Debian、Ubuntu、LaTeX、emacs 等)。每个条目有 10 列:word、ipa、respelling_us、alt_ipa、alt_respelling_us、source_url、source_label、category、confidence、notes。confidence 标签分为 creator-clarified(创作者明确说明)、community-consensus(社区共识)和 contested(仍有争议)。对没有可靠来源的条目,项目选择留空 source_url 而不编造。
主要能力
- 多读音支持:对 GIF、SQL、GUI、char、regex 等存在真实争议的词,CLI 会在主读音后用语音“or:”串联替代读音;--solo 参数可跳过替代读音。
- 单文件 Bash CLI:say-it 命令无需 npm 运行时、无需 sudo,自动检测 macOS 的 say、Linux 的 espeak-ng/espeak 或 Windows PowerShell 的 System.Speech。
- 编辑器与网页集成:提供 VS Code 扩展(悬停显示 IPA 和播放按钮、⌘⇧' 朗读选中内容、搜索全部 1,903 条词条)、Chrome/Edge/Brave 浏览器扩展、Raycast、Alfred、Cursor、Codex、Kiro、Continue 等集成。
- AI 侧集成:提供 Claude Code 技能和 MCP 服务器,使 AI 在回答“X 怎么读/怎么发音”时输出音频而非音标猜测;同一 Agent Skill 也适用于 Codex CLI 和 Kiro。
- GitHub Action:扫描 PR 中变更的 Markdown/MDX 文件,在任务摘要中生成带来源的发音词汇表,无需 API key、依赖安装或网络请求。
- 网页版:pronounce.renlab.ai 可浏览全部 1,903 条条目(1,283 条有来源),支持音频、语音搜索、互动测验,并提供中文页面 /zh;该站点是 PWA,可离线使用,优先播放已提交的 MP3,Web Speech 仅作回退。
使用方式 在 macOS/Linux/WSL/git-bash 下执行 ./install.sh,会把 CLI 安装到 ~/.local/bin/say-it,词典安装到 ~/.local/share/say-it/pronunciations.tsv;如果存在 Claude Code,则同时安装 pronounce-word 技能到 ~/.claude/skills/,并视目录存在情况安装到 ~/.agents/skills/(Codex CLI)和 ~/.kiro/skills/(Kiro)。确保 ~/.local/bin 在 $PATH 中。Linux 需安装 espeak-ng(sudo apt install espeak-ng 或 brew install espeak-ng)。Windows 通过 WSL 或 git-bash + PowerShell 使用。也可跳过安装直接使用浏览器版本。常用命令包括 say-it GIF、say-it --why JSON、say-it quiz,以及 --alt [N]、--all、--solo、--why、--json、--md、--no-dict、list、search、repl、stream、doctor、export、benchmark、badge、cheatsheet 等参数。CLI 默认使用 macOS 的 Samantha(通用美式)语音,-v <voice> 可切换;词典设计上仅覆盖通用美式英语。用户可在 ~/.config/say-it/pronunciations.local.tsv 放置本地覆盖词典,其优先级更高。
适用场景 适合开发者在站会、技术分享、面试或与国际团队沟通前,快速确认项目名称的标准读法;也适合文档团队通过 GitHub Action 为 Pull Request 自动生成发音词汇表,或让 AI 助手在对话中直接朗读术语。
限制 词典仅提供通用美式英语(GenAm)读音,不覆盖其他口音;Linux 的 espeak-ng 和 Windows 的 PowerShell 后端为尽力而为,macOS 的 say 后端质量最佳。Chrome/Edge/Brave 扩展目前只能通过侧载安装,尚未上架 Chrome Web Store。部分条目暂无来源,仅带置信度标签。云 TTS(ElevenLabs/OpenAI)和 Anki 导出属于规划中的功能。项目采用 MIT 许可证。