From 47da84c160bd37ee4a849d7204635bcc41b2a0d0 Mon Sep 17 00:00:00 2001 From: FNS Service Date: Thu, 23 Apr 2026 14:31:40 +0800 Subject: [PATCH] Update from Sync Service --- AI工程/SoftwareLocalizationSkill.md | 162 ++++++++++++++++++++++++++++ 1 file changed, 162 insertions(+) create mode 100755 AI工程/SoftwareLocalizationSkill.md diff --git a/AI工程/SoftwareLocalizationSkill.md b/AI工程/SoftwareLocalizationSkill.md new file mode 100755 index 0000000..a7feaa2 --- /dev/null +++ b/AI工程/SoftwareLocalizationSkill.md @@ -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 | `value` | +| Rails (i18n) | `config/locales/` | YAML | `en:\n key: value` | +| Django | `locale/*/LC_MESSAGES/` | PO/POT | `msgid "key"\nmsgstr "value"` | +| .NET (resx) | `Resources/`, `*.resx` | XML | `...` | +| 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/标记** — ``, `` 等 +- **注意复数形式** — `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* \ No newline at end of file