Skip to content

Commit 94f99ef

Browse files
authored
Merge pull request #231 from opentiny/lhs/docs-i18n-skill
chore: add docs-i18n skill
2 parents a748c25 + 1f3839e commit 94f99ef

1 file changed

Lines changed: 147 additions & 0 deletions

File tree

.agents/skills/docs-i18n/SKILL.md

Lines changed: 147 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,147 @@
1+
---
2+
name: docs-i18n
3+
description: >-
4+
Sync GenUI SDK docs between Chinese and English when adding, editing, renaming,
5+
or deleting documentation under docs/. Use when the user modifies docs/src/,
6+
docs/demos/, docs/demos/en/, zh-theme.ts, en-theme.ts, or asks to update
7+
English docs, i18n docs, or mirror Chinese documentation changes.
8+
---
9+
10+
# GenUI SDK 文档国际化
11+
12+
完整约定见仓库根目录 `docs/I18N.md`。修改中文文档时(共享 demo、仅改图片等例外除外),**必须同步**英文镜像与导航配置。
13+
14+
## 目录映射
15+
16+
| 类型 | 中文 | 英文 |
17+
|------|------|------|
18+
| Markdown | `docs/src/<path>.md` | `docs/src/en/<path>.md` |
19+
| Demo | `docs/demos/<path>.vue` | `docs/demos/en/<path>.vue` |
20+
| 图片 | `docs/src/public/`(共用,无需复制) | 同上 |
21+
| 中文导航 | `docs/.vitepress/config/zh-theme.ts` ||
22+
| 英文导航 || `docs/.vitepress/config/en-theme.ts` |
23+
24+
**路径规则**
25+
26+
- 文档:`docs/src/examples/chat/foo.md``docs/src/en/examples/chat/foo.md`(在 `src/` 后插入 `en/`
27+
- Demo:`docs/demos/chat/foo.vue``docs/demos/en/chat/foo.vue`(在 `demos/` 后插入 `en/`,文件名相同)
28+
29+
## 工作流程
30+
31+
根据用户操作选择对应流程,完成后执行「验证清单」。
32+
33+
### 新增文档
34+
35+
1. 编写中文 `docs/src/<path>.md`
36+
2. 有交互示例时:
37+
- 中文:`docs/demos/<name>.vue`
38+
- 含中文 UI/文案时:`docs/demos/en/<name>.vue`(翻译 UI 文案、alert、Schema label 等;代码注释可翻译或保留)
39+
- 纯英文、无文本、或 i18n 演示类 demo → 共用中文版,不建 `demos/en/` 镜像
40+
3. 图片放入 `docs/src/public/`(中英文共用)
41+
4.`zh-theme.ts` 对应 sidebar 添加条目:
42+
```ts
43+
{ text: '中文标题', link: '/examples/chat/my-feature' },
44+
```
45+
5. 创建并翻译 `docs/src/en/<path>.md`
46+
6.`en-theme.ts` 对应 sidebar 添加条目(链接带 `/en` 前缀):
47+
```ts
48+
{ text: 'English Title', link: '/en/examples/chat/my-feature' },
49+
```
50+
7. 本地预览:`cd docs && pnpm dev`
51+
52+
### 修改文档
53+
54+
| 变更类型 | 同步动作 |
55+
|----------|----------|
56+
| 改正文 / 标题 / 代码块 | 更新 `docs/src/en/` 下对应文件(翻译变更部分) |
57+
| 改 demo 引用或逻辑 | 同步 `docs/demos/``docs/demos/en/` 中对应 `.vue`(如有) |
58+
| 改 sidebar 文案或顺序 | 同步更新 `zh-theme.ts``en-theme.ts` 对应条目 |
59+
| 仅改图片 | 无需动英文 md(public 共用) |
60+
61+
### 重命名 / 移动
62+
63+
1. 移动中文 md → 同步移动 `docs/src/en/` 下镜像文件
64+
2. 移动 demo → 同步移动 `docs/demos/en/` 下镜像文件(如存在)
65+
3. 更新 `zh-theme.ts``en-theme.ts` 中所有相关 `link`
66+
4. 检查文档内相对路径引用是否仍有效
67+
68+
### 删除文档
69+
70+
1. 删除 `docs/src/<path>.md`
71+
2. 删除 `docs/src/en/<path>.md`
72+
3. 删除关联 demo(`docs/demos/``docs/demos/en/` 下对应文件)
73+
4.`zh-theme.ts``en-theme.ts` 移除对应 sidebar 条目
74+
75+
## 英文文档编写规则
76+
77+
### 路径调整(从中文复制时必改)
78+
79+
英文 md 比中文多一层 `en/``<demo>` 与图片的相对路径需**多加一层 `../`**,并将 demo 路径指向 `demos/en/`
80+
81+
```markdown
82+
<!-- 中文 docs/src/examples/chat/foo.md -->
83+
<demo vue="../../../demos/chat/foo.vue" />
84+
85+
<!-- 英文 docs/src/en/examples/chat/foo.md -->
86+
<demo vue="../../../../demos/en/chat/foo.vue" />
87+
```
88+
89+
- 文档内互相引用:相对路径写法与中文相同
90+
- sidebar / nav 的 `link`:英文必须带 `/en` 前缀(如 `/en/guide/quick-start`
91+
92+
### 翻译原则
93+
94+
- 翻译自然、技术准确的英文,勿逐字机翻
95+
- 保留 API 名称、组件名、包名、文件名、路径(如 `@opentiny/genui-sdk-vue``GenuiChat`
96+
- 代码块:仅翻译注释与字符串字面量;结构、导入、类型与中文一致
97+
- 标题层级、章节顺序、代码块行高亮(如 `{12-19}`)与中文版对齐
98+
99+
### Demo 需翻译的内容
100+
101+
| 类型 | 示例 | 处理 |
102+
|------|------|------|
103+
| UI 文案 | `<button>新建会话</button>` | 译成英文 |
104+
| 代码注释 | `// 获取会话对象` | 翻译或保留 |
105+
| Schema 内容 | `label: '姓名'` | 译成英文 |
106+
| alert 消息 | `alert('复制成功')` | 译成英文 |
107+
108+
### 无需国际化的 Demo
109+
110+
以下 demo 无需创建 `demos/en/` 镜像,直接共用中文版:
111+
112+
- 纯英文内容的 demo
113+
- 国际化示例 demo(如 `i18n.vue`,本身演示 i18n 功能)
114+
- 无文本内容的 demo
115+
116+
## 导航配置对照
117+
118+
两个 theme 文件结构镜像,修改时成对维护:
119+
120+
- `zh-theme.ts``nav` / `sidebar``link``/en` 前缀
121+
- `en-theme.ts`:相同路径结构,`link``/en` 开头;`text` 为英文
122+
123+
sidebar 按路径前缀分组(`/guide/``/components/``/examples/``/schema/``/advanced/`),新增条目放入与中文版相同的分组与层级。
124+
125+
## 验证清单
126+
127+
完成同步后逐项确认:
128+
129+
```markdown
130+
- [ ] docs/src/en/ 下存在对应的翻译文件,路径正确
131+
- [ ] zh-theme.ts 与 en-theme.ts 均有对应 sidebar 条目且 link 正确
132+
- [ ] zh-theme.ts 与 en-theme.ts 顶层 nav 映射一致,英文 link 带 /en 前缀
133+
- [ ] 英文 md 中 <demo> 路径多一层 ../,且指向 demos/en/ 下对应文件(如需)
134+
- [ ] demo 含中文内容时已在 docs/demos/en/ 提供镜像
135+
- [ ] 删除场景下无残留英文文件、demo、sidebar 条目
136+
- [ ] 可选:cd docs && pnpm dev 本地预览中英文页面
137+
```
138+
139+
## 快速定位镜像文件
140+
141+
```text
142+
中文:docs/src/examples/chat/history.md
143+
英文:docs/src/en/examples/chat/history.md
144+
145+
中文 demo:docs/demos/chat/history.vue
146+
英文 demo:docs/demos/en/chat/history.vue
147+
```

0 commit comments

Comments
 (0)