Update from Sync Service
This commit is contained in:
162
AI工程/SoftwareLocalizationSkill.md
Executable file
162
AI工程/SoftwareLocalizationSkill.md
Executable file
@@ -0,0 +1,162 @@
|
||||
# Software Localization Skill
|
||||
|
||||
> AI 驱动的软件本地化/翻译技能
|
||||
>
|
||||
> 归档:2026-04-23
|
||||
|
||||
---
|
||||
|
||||
## 📊 基本信息
|
||||
|
||||
| 项目 | 数据 |
|
||||
|------|------|
|
||||
| **名称** | localization |
|
||||
| **作者** | aaronbrethorst |
|
||||
| **来源** | https://github.com/aaronbrethorst/claude-skills/tree/main/localizer |
|
||||
| **Stars** | ⭐ 4 |
|
||||
| **文件** | 7 个(SKILL.md + 6 个支撑文件) |
|
||||
|
||||
---
|
||||
|
||||
## 🎯 核心定位
|
||||
|
||||
**软件本地化/翻译技能** — 将项目翻译成新语言、添加新语言环境、创建翻译、本地化字符串或处理 i18n/l10n 文件。
|
||||
|
||||
支持**自动检测**任何项目类型的本地化框架。
|
||||
|
||||
---
|
||||
|
||||
## 🔄 工作流程(6步)
|
||||
|
||||
### Step 1: Detect Project Type
|
||||
|
||||
检测项目使用的本地化框架和文件格式。
|
||||
|
||||
| 框架 | 位置 | 格式 | 关键模式 |
|
||||
|------|------|------|----------|
|
||||
| React (react-i18next) | `public/locales/`, `src/locales/` | JSON | `{"key": "value"}` |
|
||||
| React (react-intl) | `src/translations/`, `lang/` | JSON | `{"key": {"defaultMessage": "..."}}` |
|
||||
| Vue (vue-i18n) | `src/locales/`, `locales/` | JSON/YAML | `{"key": "value"}` |
|
||||
| Angular | `src/assets/i18n/`, `src/locale/` | JSON/XLIFF | JSON 或 XML |
|
||||
| iOS | `*.lproj/Localizable.strings` | Strings | `"key" = "value";` |
|
||||
| Android | `res/values-*/strings.xml` | XML | `<string name="key">value</string>` |
|
||||
| Rails (i18n) | `config/locales/` | YAML | `en:\n key: value` |
|
||||
| Django | `locale/*/LC_MESSAGES/` | PO/POT | `msgid "key"\nmsgstr "value"` |
|
||||
| .NET (resx) | `Resources/`, `*.resx` | XML | `<data name="key"><value>...</value></data>` |
|
||||
| Flutter | `lib/l10n/`, `assets/translations/` | ARB/JSON | `{"key": "value", "@key": {...}}` |
|
||||
| Go (go-i18n) | `locales/`, `translations/` | JSON/TOML | Various |
|
||||
| PHP (Laravel) | `resources/lang/` | PHP/JSON | `return ['key' => 'value'];` |
|
||||
| Next.js | `messages/`, `locales/` | JSON | `{"namespace": {"key": "value"}}` |
|
||||
| Gettext | `*.po`, `*.pot` | PO | msgid/msgstr pairs |
|
||||
|
||||
### Step 2: Validate Target Language
|
||||
|
||||
验证目标语言是否为有效的 ISO 639 语言代码。
|
||||
|
||||
**需要确认的情况**:
|
||||
- **"Chinese"** → 需要确认:繁体(zh-TW/zh-HK)、简体(zh-CN/zh-Hans)?
|
||||
- **"Spanish"** → 需要确认:西班牙(es-ES)、拉丁美洲(es-419)、墨西哥(es-MX)?
|
||||
- **"Portuguese"** → 需要确认:巴西(pt-BR)还是葡萄牙(pt-PT)?
|
||||
- **"Serbian"** → 需要确认:西里尔文(sr-Cyrl)还是拉丁文(sr-Latn)?
|
||||
- **"Norwegian"** → 需要确认:Bokmål(nb)还是Nynorsk(nn)?
|
||||
- **"Malay"** → 需要确认:马来西亚(ms-MY)、新加坡(ms-SG)、文莱(ms-BN)?
|
||||
|
||||
### Step 3: Extract Source Strings
|
||||
|
||||
加载英语源文件并解析所有可翻译字符串。
|
||||
|
||||
**注意**:
|
||||
- **精确保留 keys** — 不修改 key 名称
|
||||
- **注意占位符** — `{name}`, `{{count}}`, `%s`, `%d`, `%@` 等
|
||||
- **注意 HTML/标记** — `<b>`, `<a href="...">` 等
|
||||
- **注意复数形式** — `one`, `other`, `few`, `many`
|
||||
- **注意上下文** — ICU 消息格式、性别变化等
|
||||
|
||||
### Step 4: Dual Translation(双翻译)
|
||||
|
||||
使用两个独立子代理(`translator-alpha` 和 `translator-beta`)进行翻译。
|
||||
|
||||
### Step 5: Verification(验证)
|
||||
|
||||
第三个子代理 `translator-adjudicator` 比较两个翻译结果,选择最佳翻译。
|
||||
|
||||
### Step 6: Output
|
||||
|
||||
生成正确格式的本地化文件。
|
||||
|
||||
---
|
||||
|
||||
## 📁 支持文件
|
||||
|
||||
| 文件 | 说明 |
|
||||
|------|------|
|
||||
| `SKILL.md` | 主技能文件(8.3 KB) |
|
||||
| `ADJUDICATOR_INSTRUCTIONS.md` | 裁判指令(6.0 KB) |
|
||||
| `ISO_CODES.md` | ISO 639 语言代码参考(3.5 KB) |
|
||||
| `TRANSLATOR_INSTRUCTIONS.md` | 翻译员指令(4.8 KB) |
|
||||
| `translator-adjudicator.md` | 裁判代理配置 |
|
||||
| `translator-alpha.md` | Alpha 翻译代理配置 |
|
||||
| `translator-beta.md` | Beta 翻译代理配置 |
|
||||
|
||||
---
|
||||
|
||||
## 🧠 三代理架构
|
||||
|
||||
```
|
||||
用户请求
|
||||
↓
|
||||
[检测项目类型] → [验证语言代码] → [提取源字符串]
|
||||
↓
|
||||
┌─────────────────┬─────────────────┐
|
||||
↓ ↓ ↓
|
||||
translator-alpha translator-beta 两个独立翻译代理
|
||||
↓ ↓ ↓
|
||||
↓ ↓ ↓
|
||||
translator-adjudicator 裁判代理(选择最佳)
|
||||
↓
|
||||
输出最终翻译文件
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 💡 核心亮点
|
||||
|
||||
1. **自动框架检测** — 支持 React/Vue/iOS/Android/Rails/Django/.NET/Flutter/Go/PHP 等
|
||||
2. **双翻译验证** — 两个独立翻译 + 裁判选择,质量更高
|
||||
3. **ISO 语言代码验证** — 确保语言代码正确
|
||||
4. **精确字符串提取** — 保留占位符、HTML、复数形式等
|
||||
|
||||
---
|
||||
|
||||
## 📦 安装方式
|
||||
|
||||
```bash
|
||||
# 使用 skills.sh
|
||||
npx skills add aaronbrethorst/claude-skills
|
||||
|
||||
# 或下载本地
|
||||
wget skill.zip
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🔗 相关资源
|
||||
|
||||
| 资源 | 链接 |
|
||||
|------|------|
|
||||
| GitHub | https://github.com/aaronbrethorst/claude-skills/tree/main/localizer |
|
||||
| SkillsMP | https://skillsmp.com/skills/aaronbrethorst-claude-skills-localizer-skill-md |
|
||||
| Manus | https://manus.im/features/agent-skills |
|
||||
|
||||
---
|
||||
|
||||
## AI工程索引
|
||||
|
||||
相关笔记:
|
||||
- [[INDEX_AI工程]] - AI工程知识索引
|
||||
- [[ClaudeCode完全研究]] - Claude Code 完整指南
|
||||
- [[claude-code-best-practice详解]] - 最佳实践详解
|
||||
|
||||
---
|
||||
|
||||
*整理:知识库管理员 | 归档:2026-04-23*
|
||||
Reference in New Issue
Block a user