让国际化不再是体力活:一键扫描、自动替换、即时生成语言包,前端项目 10 分钟接入 i18n。
基于 Babel/ Vue 官方编译器解析 AST,自动将中文替换为唯一 key,并把翻译结果写入 locale/*.json。内置 Prettier 保持代码风格一致,默认读取你工程根目录的 Prettier 配置。
- 开箱即用:零改造接入;一键扫描当前文件/目录,自动替换中文并写入
zh.json。 - 稳定可靠:基于 AST 的精准替换,兼容 Vue/React/TS/JS 与模板/JSX/字符串字面量等多种场景。
- 体验顺滑:格式化集成 Prettier,同步更新语言包;编辑器内联回显原文案,方便校对。
- 自动翻译:内置免费 Google 翻译;可切换百度/DeepL,满足高质量与高配额需求。
- 团队友好:统一 key 生成规则,可配置忽略词/文件类型,支持 MD5 key 去重,保障多人协作的一致性。
-
VS Code(推荐):从 VS Code Marketplace 安装
-
链接:https://marketplace.visualstudio.com/items?itemName=wu529778790.i18n-automatically
-
命令行:
code --install-extension wu529778790.i18n-automatically
-
-
Cursor:从 Open VSX 安装(Cursor 扩展搜索基于 Open VSX)
-
链接:https://open-vsx.org/extension/wu529778790/i18n-automatically
-
命令行:
cursor --install-extension wu529778790.i18n-automatically
-
也可以在 Cursor 的扩展页直接搜索安装
-
- ✅ 免费谷歌翻译(插件自带)
- ✅ 百度翻译
- ✅ DeepL 翻译
vue对比图:https://www.diffchecker.com/WjmYT5g4/
jsx对比图:https://www.diffchecker.com/bYgP5eUP/
ts对比图:https://www.diffchecker.com/IRWBVjHe/
js对比图:https://www.diffchecker.com/VyO3Zw6b/
tsx对比图:https://www.diffchecker.com/OaZLu99x/
一键扫描当前文件中的中文,替换成 key,同时把原文写入 zh.json。
选择任意目录,递归扫描并替换中文,批量生成/合并到 zh.json。
从 zh.json 一键生成任意语言包(默认 en),支持覆盖合并与增量更新。
输入框里面填写要翻译成的语言,名称按照翻译对应的。
比如免费谷歌翻译:https://cloud.google.com/translate/docs/languages?hl=zh-cn
比如百度翻译:https://api.fanyi.baidu.com/doc/21
比如deepL:https://developers.deepl.com/docs/api-reference/languages
要注意的是deepL这里都是大写
替换后在每行尾部显示当前语言的文案,点击即可在 zh/en/... 之间切换,所见即所得地核对翻译。
| 属性 | 描述 | 默认值 |
|---|---|---|
| i18nFilePath | 指定国际化文件的根目录。 | '/src/i18n' |
| autoImportI18n | 是否自动导入i18n模块。 | true |
| i18nImportPath | 自动导入i18n模块的路径。 | '@/i18n' |
| templateI18nCall | 在 Vue 模板中调用翻译函数的语法。 | '$t' |
| scriptI18nCall | 在 JavaScript 文件中调用翻译函数的语法。 | 'i18n.global.t' |
| keyFilePathLevel | 生成的语言包的键中文件路径的层级。 | 2 |
| excludeDebugContexts | 是否跳过调试上下文中文(console/throw/assert/debugger)。设为 true 可跳过扫描日志。 | false |
| excludedExtensions | 排除的文件后缀名 | [".svg",".png",".jpg",".jpeg",".gif",".bmp",".ico",".md",".txt",".json",".css",".scss",".less",".sass",".styl"] |
| excludedStrings | 排除的字符串 | ["宋体","黑体","楷体","仿宋","微软雅黑","华文","方正","苹方","思源","YYYY年MM月DD日"] |
| freeGoogle | 默认自带免费谷歌翻译 | true |
| baidu.appid | 百度翻译的应用ID。 | - |
| baidu.secretKey | 百度翻译的密钥。 | - |
| deepl.authKey | DeepL 翻译的认证密钥。 | - |
| deepl.isPro | 是否为 DeepL Pro 版本。 | false |
| useMd5Key | 使用 MD5 生成 key,相同文本生成相同 key 实现去重。 | false |
插件支持两种 key 生成策略:
默认情况下,插件使用组件文件路径和唯一标识符生成 key,格式为:组件名-文件UUID-序号
例如:HomePage-a1b2c3-1、UserProfile-d4e5f6-2
优势:
- 不同的语境下翻译可能不一样
当设置 useMd5Key: true 时,插件会使用中文文本的 MD5 值作为 key。
优势:
- 自动去重:相同的中文文本在不同文件中会生成相同的 key,避免重复翻译
- 一致性:同一段文案在整个项目中使用统一的 key
- 维护性:修改文案时不需要手动维护多个 key
示例:
{
"5d41402abc4b2a76b9719d911017c592": "你好世界",
"098f6bcd4621d373cade4e832627b4f6": "测试文本"
}推荐场景:
- 大型项目,有大量重复文案
- 多人协作开发,需要避免重复 key
- 希望简化国际化文件管理
不用使用任何配置,插件自带,直接使用即可。
由于你懂的原因,使用免费谷歌翻译要富强
默认的免费谷歌翻译环境取决于你的网络,并不一定稳定。有问题,可以参考下面的链接
免费谷歌翻译依赖于:https://github.com/vitalets/google-translate-api#readme
百度翻译自己申请key既免费又稳定,而且量大管饱,高级版免费调用量调整为100万字符/月
https://api.fanyi.baidu.com/doc/21
按照流程申请百度翻译api权限
然后点击开发者信息, https://api.fanyi.baidu.com/manage/developer,复制appid和secretKey到配置文件中
提示:这里要选择高级版本。只要实名认证了,都可以高级版本,api没有那么多限制
https://www.deepl.com/zh/pro-api
- 注册 DeepL 账户并获取 API 密钥
- 可以选择免费版本(每月50万字符)或专业版本
- 将
authKey复制到配置文件中 - 如果使用专业版本,请将
isPro设置为true
DeepL 翻译服务具有更高的翻译质量,支持多种语言,适合对翻译质量有较高要求的项目。
https://github.com/wu529778790/i18n-automatically
安装依赖
yarnF5 启动, 调试
下载打包依赖
yarn add @vscode/vsce -g打包
vsce package --yarn







