i18nMate - VS Code AI JSON 翻译插件
🛡️ 代码安全第一的 i18n JSON 翻译工具
在 VS Code 里右键一键,安全精准地将 i18n JSON 文件翻译为多国语言,完美保护代码占位符。
✨ 特性
- 🛡️ 占位符保护:100% 保护
{name}、{{variable}}、%s、%d、ICU MessageFormat 等占位符
- ⚡ 无缝工作流:右键 JSON 文件 → 选择语言 → 自动生成翻译文件
- 🎯 精准翻译:OpenAI GPT-4o-mini + JSON Mode,确保输出合法 JSON
- 📦 大文件支持:自动分块翻译(≤200 keys/块),带进度条
- 💾 本地缓存:24 小时翻译缓存,避免重复 API 调用
- 🔀 冲突策略:目标文件已存在时,支持覆盖/合并/取消
- 🔐 安全认证:JWT + VS Code SecretStorage 加密存储
🚀 快速开始
- 在 VS Code 扩展市场搜索 i18nMate 并安装
- 右键点击任意 JSON 文件 → 选择 i18nMate: Translate to...
- 选择目标语言 → 等待翻译完成
📖 使用方法
翻译文件
- 在 VS Code 资源管理器中,右键点击
.json 文件
- 选择
i18nMate: Translate to...
- 从语言列表中选择目标语言
- 翻译完成后,翻译文件会自动在同目录下生成
登录
- 执行命令
i18nMate: Login,输入邮箱即可(新用户自动注册)
查看用量
- 执行命令
i18nMate: Show Usage,查看当前使用次数
🆓 免费
i18nMate 目前完全免费使用!所有功能开放:
- ✅ 无限翻译次数
- ✅ 占位符保护
- ✅ 大文件支持
- ✅ 本地缓存
- ✅ 进度条
🗂️ 文件命名规则
| 源文件 |
目标文件 |
说明 |
en.json |
ja.json |
语言标签替换 |
zh-CN.json |
ja.json |
语言标签替换 |
messages.json |
messages.ja.json |
追加语言后缀 |
⚙️ 配置
| 设置 |
默认值 |
说明 |
i18nMate.serverUrl |
(API 地址) |
后端 API 服务器地址 |
i18nMate.cacheEnabled |
true |
是否启用本地翻译缓存 |
🏗️ 项目结构
i18nMate/
├── src/ # VS Code 插件源码
│ ├── extension.ts # 入口文件
│ ├── commands/
│ │ ├── translateCommand.ts # 翻译命令
│ │ └── authCommands.ts # 认证命令
│ ├── services/
│ │ ├── authService.ts # 认证服务
│ │ ├── translateService.ts # 翻译服务
│ │ └── cacheService.ts # 缓存服务
│ ├── utils/
│ │ ├── constants.ts # 常量定义
│ │ ├── jsonUtils.ts # JSON 工具函数
│ │ └── logger.ts # 日志工具
│ └── types/
│ └── index.ts # 类型定义
├── api/ # Cloudflare Worker 后端
│ ├── src/
│ │ └── index.ts # API 入口
│ ├── supabase-schema.sql # 数据库 Schema
│ └── wrangler.toml # Worker 配置
├── docs/
│ └── PRIVACY.md # 隐私政策
├── package.json
├── tsconfig.json
└── MVP_PLAN.md
🔧 开发
# 安装依赖
npm install
# 编译
npm run compile
# 监听模式
npm run watch
# 打包 .vsix
npm run package
📄 隐私政策
隐私政策包含在扩展包内的 docs/PRIVACY.md 文件中。
📝 许可证
MIT
由 i18nMate 团队用 ❤️ 构建
| |