技能 i18n-localization
🌍

i18n-localization

安全

为您的应用添加国际化支持

此技能帮助开发者检测硬编码字符串并管理多语言应用的翻译。它为 React、Vue 和 Python 项目提供实现模式。

支持: Claude Codex Code(CC)
🥉 76 青铜
1

下载技能 ZIP

2

在 Claude 中上传

前往 设置 → 功能 → 技能 → 上传技能

3

开启并开始使用

测试它

正在使用“i18n-localization”。 在我的 React 项目上运行 i18n 检查器

预期结果:

  • 检查器扫描您的代码文件和 locale JSON 文件,然后报告找到的语言、缺失的翻译键,以及需要转换为使用翻译键的包含硬编码字符串的文件。

正在使用“i18n-localization”。 如何在 Next.js 中设置 i18n?

预期结果:

  • 使用 next-intl 库。创建包含 locale JSON 文件的 messages 文件夹,在 layout 中设置 provider,并在组件中使用 useTranslations hook 访问翻译。

正在使用“i18n-localization”。 i18n 的最佳实践是什么?

预期结果:

  • 使用翻译键(如 'common.buttons.submit')代替原始文本字符串,按功能命名空间组织翻译,使用 ICU 格式支持复数,使用 Intl API 处理日期和数字,并从一开始就规划 RTL 支持。

安全审计

安全
v1 • 2/25/2026

All static findings evaluated as false positives. The skill provides i18n best practices documentation and a Python checker script. No actual security risks detected.

2
已扫描文件
402
分析行数
0
发现项
1
审计总数
未发现安全问题
审计者: claude

质量评分

45
架构
100
可维护性
87
内容
50
社区
100
安全
91
规范符合性

你能构建什么

审计现有代码库的 i18n 就绪状态

运行 i18n 检查器以查找代码库中的硬编码字符串和缺失的翻译键

学习 i18n 最佳实践

参考文档为您的框架实现适当的国际化模式

设置 RTL 语言支持

使用 CSS 逻辑属性配置应用以支持从右到左的语言

试试这些提示

检查硬编码字符串
使用 i18n 检查器脚本扫描我的项目目录以查找硬编码字符串。运行:python scripts/i18n_checker.py <project_path>。分析结果并解释需要翻译的内容。
实现 React i18n
展示如何在 React 项目中设置 react-i18next。包括 provider 设置、翻译文件结构,以及如何在组件中使用 useTranslation hook。
添加 RTL 支持
解释如何为阿拉伯语或希伯来语添加 RTL(从右到左)支持。展示所需的 CSS 更改以及如何处理方向切换。
检查 locale 文件一致性
使用 i18n 检查器验证所有翻译键是否存在于我的 locale JSON 文件中。报告每种语言缺失的键。

最佳实践

  • 使用翻译键(如 'common.buttons.submit')代替原始文本字符串
  • 按功能命名空间组织翻译(auth.json、errors.json 等)
  • 使用 CSS 逻辑属性(margin-inline-start)以实现 RTL 兼容

避免

  • 直接在组件中硬编码面向用户的字符串
  • 将翻译后的字符串与普通文本拼接
  • 假设文本长度在所有语言中保持不变

常见问题

i18n 和 L10n 有什么区别?
i18n(国际化)是使应用可翻译的过程。L10n(本地化)是针对特定语言区域的实际翻译工作。
此技能会自动翻译字符串吗?
不,此技能检测硬编码字符串并指导您使用模式。翻译必须手动完成或使用单独的翻译服务。
检查器支持哪些框架?
i18n_checker.py 脚本支持 React、Vue 和 Python 项目。
如何处理阿拉伯语等 RTL 语言?
使用 CSS 逻辑属性代替 left/right,向 html 添加 dir='rtl' 属性,并用阿拉伯语或希伯来语进行测试。
什么是翻译命名空间?
命名空间将翻译组织成组,如 common、auth、errors。这使翻译文件在大型应用中更易于管理。
如何处理复数形式?
使用 ICU 消息格式,它支持复数规则,如 {count, plural, one {# item} other {# items}}

开发者详情

文件结构