RFC Info 翻译指南
本指南面向想要为RFC Info项目贡献翻译或改进现有翻译的贡献者。
📋 目录
项目结构
rfcInfo/
├── i18n/
│ ├── zh-Hans/ # 简体中文(基准语言)
│ ├── ja/ # 日语
│ ├── fr/ # 法语
│ ├── de/ # 德语
│ └── it/ # 意大利语
│ └── docusaurus-plugin-content-docs/
│ └── current/
│ ├── rfc-791/ # RFC文档目录
│ │ ├── index.md
│ │ └── ...
│ └── ...
├── scripts/
│ ├── verify-translations.sh # 翻译验证脚本
│ └── build-all-locales.sh # 多语言构建脚本
└── docs/
└── TRANSLATION_GUIDE.md # 本文档
翻译流程
1. 选择要翻译的RFC
查看现有翻译状态:
bash scripts/verify-translations.sh
2. 准备翻译环境
# 克隆项目
git clone <repository-url>
cd rfcInfo
# 安装依赖
npm install
# 启动开发服务器(可选语言)
npm start -- --locale ja
3. 创建/编辑翻译文件
新RFC翻译
# 创建目录结构(以rfc-XXXX为例,ja为例)
mkdir -p i18n/ja/docusaurus-plugin-content-docs/current/rfc-XXXX
# 复制英文或中文版本作为模板
cp -r i18n/zh-Hans/docusaurus-plugin-content-docs/current/rfc-XXXX/* \
i18n/ja/docusaurus-plugin-content-docs/current/rfc-XXXX/
编辑现有翻译
直接编辑对应语言目录下的Markdown文件。
文件格式规范
Front Matter格式
每个Markdown文件必须包含标准的Front Matter:
---
id: unique-identifier
title: RFC XXXX - 文档标题
sidebar_label: 侧边栏标签
sidebar_position: 1
---
示例(日语)
---
id: introduction
title: RFC 6797 - HTTP Strict Transport Security (HSTS)
sidebar_label: はじめに
sidebar_position: 1
---
# 1. Introduction (はじめに)
HTTP Strict Transport Security (HSTS) は...
Markdown内容规范
-
保留技术术语的英文原文
错误: HSTS は HTTP 厳格トランスポートセキュリティです
正确: HSTS (HTTP Strict Transport Security、HTTP厳格トランスポートセキュリティ) は -
使用双语标注重要概念
## 2. Terminology (用語)
- **User Agent (ユーザーエージェント)**: ...
- **HSTS Host (HSTSホスト)**: ... -
保持代码块和示例不变
\`\`\`http
Strict-Transport-Security: max-age=31536000; includeSubDomains
\`\`\` -
链接格式
内部链接: [1. Introduction](/docs/rfc/6797/Introduction.html)
外部链接: [RFC 2616](https://tools.ietf.org/html/rfc2616)
术语表
通用技术术语
| 英文 | 中文 | 日语 | 法语 | 德语 | 意大利语 |
|---|---|---|---|---|---|
| Request | 请求 | リクエスト | Requête | Anfrage | Richiesta |
| Response | 响应 | レスポンス | Réponse | Antwort | Risposta |
| Header | 头部 | ヘッダー | En-tête | Header | Intestazione |
| Protocol | 协议 | プロトコル | Protocole | Protokoll | Protocollo |
| Security | 安全性 | セキュリティ | Sécurité | Sicherheit | Sicurezza |
RFC特定术语
| 术语 | 说明 | 翻译建议 |
|---|---|---|
| MUST | RFC 2119关键词 | 保持大写,添加本地化说明 |
| SHOULD | RFC 2119关键词 | 保持大写,添加本地化说明 |
| MAY | RFC 2119关键词 | 保持大写,添加本地化说明 |
| User Agent | HTTP概念 | 保留英文+本地化 |
| Origin Server | HTTP概念 | 保留英文+本地化 |
质量检查
自动检查
运行验证脚本:
bash scripts/verify-translations.sh
检查项目:
- ✅ 目录结构完整性
- ✅ RFC数量一致性
- ✅ 无空目录
- ✅ 重要RFC覆盖情况
手动检查清单
- Front Matter格式正确
- 标题层级正确(#, ##, ###)
- 技术术语双语标注
- 代码块格式正确
- 链接有效
- 无明显语法错误
- 语言流畅自然
本地预览
# 启动指定语言的开发服务器
npm start -- --locale ja
# 或构建静态站点
npm run build -- --locale ja
在浏览器中访问 http://localhost:3000 查看效果。
提交流程
1. 创建分支
git checkout -b translation/ja/rfc-XXXX
2. 提交更改
git add i18n/ja/docusaurus-plugin-content-docs/current/rfc-XXXX/
git commit -m "feat(i18n): 添加RFC-XXXX日语翻译"
提交信息规范:
feat(i18n): 添加RFC-XXXX <语言>翻译
fix(i18n): 修复RFC-XXXX <语言>翻译中的错误
docs(i18n): 改进RFC-XXXX <语言>翻译
3. 推送并创建Pull Request
git push origin translation/ja/rfc-XXXX
在GitHub上创建Pull Request,描述清楚:
- 翻译的RFC编号和标题
- 翻译的语言
- 特殊说明(如果有)
4. 代码审查
等待项目维护者审查。可能需要:
- 修改术语翻译
- 调整格式
- 补充说明
翻译技巧
1. 保持技术准确性
翻译时优先保证技术内容的准确性,其次才是语言的流畅度。
2. 参考其他RFC
查看同类RFC的翻译,保持术语一致性。
3. 使用注释
对难以翻译的部分,可以添加翻译注释:
> **译注**: 此处的"origin server"指...
4. 分段翻译
不要一次性翻译整个RFC,建议:
- 先翻译Front Matter和目录
- 逐节翻译主要内容
- 最后处理附录和参考文献
常见问题
Q: 是否需要翻译RFC原文中的代码示例?
A: 不需要。代码、HTTP头部、URL等应保持原样。只翻译注释和说明文字。
Q: 如何处理专有名词?
A: 首次出现时使用"英文 (本地化翻译)"格式,后续可只用英文或翻译。
Q: 翻译后如何测试?
A: 使用 npm start -- --locale <语言代码> 启动开发服务器,在浏览器中检查。
Q: 发现现有翻译有错误怎么办?
A: 创建issue报告,或直接提交PR修复。
联系方式
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Email: [维护者邮箱]
参考资源
感谢您为RFC Info项目贡献翻译! 🎉