i18n-helper

$npx mdskill add laolaoshiren/claude-code-skills-zh/i18n-helper

Scans code for hardcoded strings and generates i18n translation files.

  • Extracts user-visible hardcoded text from source files.
  • Supports react-intl, vue-i18n, i18next, gettext, and more.
  • Detects project framework and existing i18n setup automatically.
  • Outputs language files and a report with translation completeness.

SKILL.md

.github/skills/i18n-helperView on GitHub ↗
---
name: i18n-helper
description: 国际化/本地化助手 — 扫描代码中的硬编码文本、生成 i18n 配置、批量翻译
---

# 🌍 i18n-helper — 国际化/本地化助手

## 触发条件
当用户要求以下操作时激活此技能:
- 扫描代码中的硬编码中文/英文文本
- 为项目添加国际化支持(i18n)
- 批量提取和翻译语言文件
- 检查翻译完整性(缺失 key 检测)

## 工作流程

### 1. 项目分析
- 检测项目类型(React/Vue/Angular/Node.js/Python/Java 等)
- 识别已使用的 i18n 框架(react-intl, vue-i18n, i18next, gettext 等)
- 扫描源代码目录结构

### 2. 硬编码文本扫描
- 在 `.js/.jsx/.ts/.tsx/.vue/.py/.java/.go` 等文件中搜索硬编码字符串
- 排除:变量名、URL、正则表达式、import 路径、日志调试信息
- 标记:用户可见的 UI 文本、错误提示、通知消息

### 3. 语言文件生成
根据项目框架生成对应格式:
- **JSON** (i18next/react-intl): `{ "key": "value" }`
- **YAML** (vue-i18n): `key: value`
- **PO/POT** (gettext): 标准格式
- **Properties** (Java): `key=value`

### 4. 代码替换
- 将硬编码文本替换为 i18n 函数调用
- 保持原有格式和变量插值
- 示例:
  ```javascript
  // 替换前
  alert('保存成功');
  // 替换后
  alert(t('alert.saveSuccess'));
  ```

### 5. 完整性检查
- 对比主语言文件与翻译文件的 key 差异
- 输出缺失翻译的 key 列表
- 统计翻译完成度百分比

## 输出格式
```markdown
## 📊 i18n 扫描报告

### 硬编码文本
| 文件 | 行号 | 内容 | 建议 key |
|------|------|------|----------|
| src/App.tsx | 42 | '欢迎使用' | page.welcome |

### 语言文件
已生成 `locales/zh-CN.json` 和 `locales/en-US.json`

### 翻译完整性
- zh-CN: 45/45 (100%) ✅
- en-US: 42/45 (93.3%) ⚠️ 缺少 3 个 key
```

## 支持的 i18n 框架
- react-intl / FormatJS
- vue-i18n
- i18next / react-i18next / next-i18next
- Angular @ngx-translate
- Python gettext / Flask-Babel
- Java ResourceBundle / Spring MessageSource
- Go go-i18n

## 注意事项
- 不要翻译技术术语(API、SDK、HTTP 等)
- 保留变量占位符 `{name}` `{{count}}` `%s` 等格式
- 复数形式和性别变体需要特殊处理
- 日期、数字、货币格式需使用 locale 感知的格式化函数

More from laolaoshiren/claude-code-skills-zh

SkillDescription
api-tester依据真实 OpenAPI、路由实现和现有测试生成并验证 API 测试。用于用户要求测试接口、补集成测试、验证 API 契约、生成回归用例或排查接口兼容性时;区分“生成测试”和“执行请求”的授权,不猜测状态码、响应结构或 SLA,不在未确认环境中发送写请求。
changelog-genChangelog 生成器 - 从 Git 历史自动生成 CHANGELOG
db-migrator数据库迁移助手 - Schema 对比、迁移脚本生成
dep-auditor审计 Node.js、Python、Go、Rust、JVM、Ruby 项目的依赖漏洞、版本健康度与许可证事实;当用户要求检查 package.json、lockfile、requirements、go.mod、Cargo.toml、pom.xml、Gemfile.lock,或生成不改依赖的中文审计报告时使用
ds-mapper项目目录结构地图 - 生成带说明的可视化目录树,快速理解任意代码库
env-manager环境变量管理器:扫描、校验、同步 .env 文件,生成安全配置模板
error-translator编程错误消息翻译专家 — 将英文错误消息翻译成中文,解释原因并提供修复方案
eslint-fix安全诊断并修复 ESLint error、warning 和配置兼容问题。用于用户要求运行 lint、解释 ESLint 报错、限定范围自动修复或迁移 ESLint 配置时;优先使用项目锁定的包管理器与版本,先预检再修改,不自动下载最新版或批量改写无关源码。
github-actions-gen分析真实项目并生成或修订安全、可验证的 GitHub Actions workflow;当用户要求创建 CI、测试矩阵、构建、Release、部署、缓存、Secrets、OIDC、PR 自动化或排查 workflow 配置时使用
log-analyzer日志分析助手 — 智能解析日志文件,识别异常模式,定位问题根因