Skip to content

Commit 839805e

Browse files
SlimeSBmamaruo
andauthored
贡献方针修改 (#4978)
* +机翻预审查 +质量要求 * 格式改动 * 添加超链接 * 将两份标准移动到机翻审查参考 * Update CONTRIBUTING.md * 判断和处置 * Squashed commit of the following: commit e8cefb4d2eea829df0906bc3108125005c271e33 Author: SlimeSB <86453765+SlimeSB@users.noreply.github.com> Date: Sun Jun 22 19:48:49 2025 +0800 迁移 commit 66b98b0 Author: SlimeSB <86453765+SlimeSB@users.noreply.github.com> Date: Sun Jun 22 14:57:23 2025 +0800 之后重写翻译理论哲学 commit 2eaf58d Author: SlimeSB <86453765+SlimeSB@users.noreply.github.com> Date: Sun Jun 22 14:54:00 2025 +0800 删去过时文件 commit 79ef54a Author: SlimeSB <86453765+SlimeSB@users.noreply.github.com> Date: Fri Jun 20 16:03:44 2025 +0800 Update 翻译用语共识.md commit 764c86a Author: SlimeSB <86453765+SlimeSB@users.noreply.github.com> Date: Sat May 24 13:23:59 2025 +0800 Update 我的翻译哲学.md commit 995b8bf Author: SlimeSB <86453765+SlimeSB@users.noreply.github.com> Date: Tue May 20 22:38:20 2025 +0800 Create 我的翻译哲学.md Update 我的翻译哲学.md Update 我的翻译哲学.md commit 93ca411 Author: SlimeSB <86453765+SlimeSB@users.noreply.github.com> Date: Mon Feb 17 17:05:26 2025 +0800 共识修改 标点 对砖与砖块的翻译 修改 修订 矿石翻译 commit e48f398 Author: SlimeSB <86453765+SlimeSB@users.noreply.github.com> Date: Mon Feb 17 14:13:02 2025 +0800 检查单草稿 commit b6e3390 Author: SlimeSB <86453765+SlimeSB@users.noreply.github.com> Date: Mon Feb 17 14:12:08 2025 +0800 添加文档 * 译后编辑 * Create 仓库Wiki.md * 迁移至 #5008 * packer doc忘改回来了 * - docs - 规范 * Update CONTRIBUTING.md * Merge branch 'main' into CONTRIBUTING * 树状图,表述优化 * 排版 似乎没用 * copilot 审查意见 * Github -> GitHub * Update CONTRIBUTING.md Co-authored-by: mamaruo <37480168+mamaruo@users.noreply.github.com> * 又一处**空格 * Project Slug用途 --------- Co-authored-by: mamaruo <37480168+mamaruo@users.noreply.github.com>
1 parent 2b22c53 commit 839805e

1 file changed

Lines changed: 58 additions & 60 deletions

File tree

CONTRIBUTING.md

Lines changed: 58 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66

77
- [贡献方针](#贡献方针)
88
- [仓库结构](#仓库结构)
9-
- [翻译用语共识](#翻译用语共识)
109
- [翻译贡献方针](#翻译贡献方针)
1110
- [总则](#总则)
1211
- [Pull Request 相关规定](#pull-request-相关规定)
@@ -30,29 +29,28 @@
3029
Minecraft-Mod-Language-Package
3130
├─.github --------------- // GitHub 相关配置文件
3231
├─config ---------------- // 配置文件
33-
└─packer -------------- // 打包器配置文件
32+
└─packer ------------- // 打包器配置文件
3433
├─projects -------------- // 翻译文件
35-
│ └─(Minecraft 版本) ---- // 不带 fabric 字样的是用于 Forge 和 NeoForge 模组的
36-
│  └─assets
37-
│  ├─(CurseForge 项目名称) ---- // 见下
38-
│  │ └─(命名空间) ------------- // 见下
39-
│  │ └─lang ----------------- // 语言文件文件夹
40-
│  │ ├─en_us.json --------- // English (United States) 语言文件
41-
│  │ └─zh_cn.json --------- // 中文 (简体) 语言文件
42-
│ ├─(Modrinth 项目名称)------- // 见下
43-
│  │ └─(命名空间) ------------- // 见下
44-
│  │ └─lang ----------------- // 语言文件文件夹
45-
│  │ ├─en_us.json --------- // English (United States) 语言文件
46-
│  │ └─zh_cn.json --------- // 中文 (简体) 语言文件
47-
│  ├─minecraft
48-
│  │ └─minecraft -------------- // Minecraft 原版使用的命名空间
49-
│  │ ├─font
50-
│  │ │ └─glyph_sizes.bin ---- // 全角标点修复文件
51-
│  │ └─textures
52-
│  │ └─font --------------- // 全角标点修复文件
53-
│  └─1UNKNOWN ----------------- // 存放不在 CurseForge 和 Modrinth 上发布的模组
54-
│  └─(命名空间)
55-
│  └─lang
34+
│ ├─assets
35+
│ │ ├─(项目名称) ------------- // 见下
36+
│ │ │ └─(Minecraft 版本) ---- // 不带 fabric 字样的是用于 Forge 和 NeoForge 模组的
37+
│ │ │ └─(命名空间) -------- // 见下
38+
│ │ │ └─lang ------------- // 语言文件文件夹
39+
│ │ │ ├─en_us.json ----- // English (United States) 语言文件
40+
│ │ │ └─zh_cn.json ----- // 中文 (简体) 语言文件
41+
│ │ ├─minecraft
42+
│ │ │ └─(Minecraft 版本)
43+
│ │ │ └─minecraft ---------- // Minecraft 原版使用的命名空间
44+
│ │ │ ├─font
45+
│ │ │ │ └─glyph_sizes.bin - // 全角标点修复文件
46+
│ │ │ └─textures
47+
│ │ │ └─font ----------- // 全角标点修复文件
48+
│ │ └─1UNKNOWN --------------- // 存放不在 CurseForge 和 Modrinth 上发布的模组
49+
│ │ └─(Minecraft 版本)
50+
│ │ └─(命名空间)
51+
│ │ └─lang
52+
│ ├─packer-example ----- // Packer 配置示例,展示打包策略的用法
53+
│ └─templates ---------- // 资源包模板文件(pack.mcmeta、pack.png 等)
5654
└─src --------------- // 各种自动化工具的源码
5755
├─Formatter ------- // 格式化工具,曾用于统一翻译文件格式
5856
├─Language.Core
@@ -61,45 +59,42 @@ Minecraft-Mod-Language-Package
6159
└─Uploader -------- // 上传器,用于将资源包文件上传到文件分发服务器
6260
```
6361

64-
**CurseForge 项目名称**以匠魂为例,它的 CurseForge 页面地址是 `https://www.curseforge.com/minecraft/mc-mods/tinkers-construct`,则 `CurseForge 项目名称``tinkers-construct`。因为它是唯一的,被用来追溯模组来源
62+
**项目名称(Project Slug)**文件夹名称取自模组在发布平台上的 Slug(URL 中的唯一标识符),仅用于 bot 爬取模组信息,不影响打包等策略
6563

66-
**命名空间(Namespace)**:以匠魂为例,用压缩软件打开模组文件(JAR 格式),它的 en_us.json 的路径为 `assets/tconstruct/lang/en_us.json`,则 `{命名空间}``assets/``/lang` 之间的内容,即 `tconstruct`。一个模组可能有多个命名空间。命名空间介绍见 [Minecraft Wiki](https://zh.minecraft.wiki/w/%E5%91%BD%E5%90%8D%E7%A9%BA%E9%97%B4ID?variant=zh-cn#%E5%91%BD%E5%90%8D%E7%A9%BA%E9%97%B4)
64+
- **CurseForge 来源**:以匠魂为例,它的 CurseForge 页面地址是 `https://www.curseforge.com/minecraft/mc-mods/tinkers-construct`,则 Slug 为 `tinkers-construct`,直接用作文件夹名。
65+
- **Modrinth 来源**:以 Clean F3 为例,它的 Modrinth 页面地址是 `https://modrinth.com/mod/clean-f3`,则 Slug 为 `clean-f3`。为了与 CurseForge 上发布的模组作以区分,所有仅在 Modrinth 上发布的模组,需在其 Slug 前添加 `modrinth-` 前缀作为区分,即文件夹名为 `modrinth-clean-f3`
6766

68-
**Modrinth 项目名称**:以 Modrinth 独占模组 Clean F3 为例,它的 Modrinth 页面地址是 `https://modrinth.com/mod/clean-f3`,则在 `mod/` 后的内容 `clean-f3``{Modrinth 项目名称}`**主体**部分,而为了与 Curseforge 上发布的模组作以区分,所有仅在 Modrinth 上发布的模组,在其之前需要添加 `modrinth-` 作为区分。综上,它的 `{Modrinth 项目名称}``modrinth-clean-f3`
67+
综上,项目名称即文件夹名,可能是 `tinkers-construct`(CurseForge 模组)或 `modrinth-clean-f3`(Modrinth 独占模组),因 Slug 具有唯一性,被用来追溯模组来源。
68+
69+
**命名空间(Namespace)**:以匠魂为例,用压缩软件打开模组文件(JAR 格式),它的 en_us.json 的路径为 `assets/tconstruct/lang/en_us.json`,则 `{命名空间}``assets/``/lang` 之间的内容,即 `tconstruct`。一个模组可能有多个命名空间。命名空间介绍见 [Minecraft Wiki:命名空间](https://zh.minecraft.wiki/w/%E5%91%BD%E5%90%8D%E7%A9%BA%E9%97%B4ID?variant=zh-cn#%E5%91%BD%E5%90%8D%E7%A9%BA%E9%97%B4)
6970

7071
仓库中“命名空间”文件夹下的目录结构与[资源包](https://zh.minecraft.wiki/w/%E8%B5%84%E6%BA%90%E5%8C%85)的相应结构相同,其他可用资源包加载的本地化文件亦可接收。
7172

72-
projects 文件夹下只标出模组所属的大版本号,其中的模组翻译文件应满足以下优先级:
73+
**项目名称(Project Slug)** 文件夹下只标出模组所属的大版本号,其中的模组翻译文件应满足以下优先级:
7374

7475
1. 模组活跃更新的 Minecraft 版本优先。
7576
2. 若所有小版本都活跃更新,则 Minecraft 版本高者优先。
7677

77-
78-
* 例:Minecraft 版本 1.19.2 与 1.19.4 均属同一大版本号 1.19 下的子版本。
79-
若某一模组在两个版本上的开发均活跃,由于 1.19.4 的版本号更高,因此优先考虑该模组在 1.19.4 下的译名标准化情况与适配情况。
80-
这一优先级不会影响到模组在其他大版本下(如 1.18、1.12 等)的分支。
81-
82-
## 翻译用语共识
83-
84-
1. “材料 + 质/制 + 中心词”的翻译,如“铁质涡轮”或“铁制涡轮”,二者皆合理。只需单模组内统一。
85-
2. 关于“木制品名称”的翻译,可参考 [#4525](https://github.com/CFPAOrg/Minecraft-Mod-Language-Package/issues/4525) 的解决方法。
86-
78+
- 例:Minecraft 版本 1.19.2 与 1.19.4 均属同一大版本号 1.19 下的子版本。
79+
若某一模组在两个版本上的开发均活跃,由于 1.19.4 的版本号更高,因此优先考虑该模组在 1.19.4 下的译名标准化情况与适配情况。
80+
这一优先级不会影响到模组在其他大版本下(如 1.18、1.12.2 等)的分支。
8781

8882
## 翻译贡献方针
8983

9084
以下内容只针对 [projects](./projects) 文件夹下的贡献。
9185

9286
### 总则
9387

94-
- 翻译**必须**符合 [Minecraft 模组简体中文翻译规范与指南](https://cfpa.site/TransRules/)的规定
95-
- **拒绝**接收机器翻译(含生成式 AI)、生硬翻译。
88+
- 翻译**必须**遵守 [Minecraft 模组简体中文翻译指南](https://cfpa.site/TransRules/)
89+
- **拒绝**接收机器翻译(含生成式 AI)、生硬翻译(不符合中文表达习惯的)
9690
- 若直接提交此类翻译,该 PR 将被打上“生硬翻译”标签。
97-
- 若作者不及时进行有效修改,PR 可能会依照本仓库的[搁置规则](#搁置规则)处理。
98-
- 翻译**必须**在审校后才能进入仓库。
91+
- 若提交者未及时进行有效修改,依照本仓库的[搁置规则](#搁置规则)处理。
92+
- 已经过译后编辑,且**满足指南要求**的机器翻译可以接收。
93+
- 提交的翻译**必须**在审查后才能进入仓库。
9994

10095
### Pull Request 相关规定
10196

102-
可查看[视频教程](https://www.bilibili.com/video/BV1yqgge9EVK/)[文字教程](https://github.com/CFPAOrg/Minecraft-Mod-Language-Package/wiki/%E4%BD%BF%E7%94%A8-GitHub-%E6%8F%90%E4%BA%A4%E7%BF%BB%E8%AF%91)来学习。注意,视频或文字教程都只介绍了 Pull Request 的使用方法,贡献方针仍需阅读。同时,我们默认翻译贡献者已拥有一定的 Github 基础知识。
97+
可查看[视频教程](https://www.bilibili.com/video/BV1yqgge9EVK/)[文字教程](https://github.com/CFPAOrg/Minecraft-Mod-Language-Package/wiki/%E4%BD%BF%E7%94%A8-GitHub-%E6%8F%90%E4%BA%A4%E7%BF%BB%E8%AF%91)来学习。注意,视频或文字教程都只介绍了 Pull Request 的使用方法,贡献方针仍需阅读。同时,我们默认翻译贡献者已拥有一定的 GitHub 基础知识。
10398

10499
视频或文字教程中与翻译贡献方针不同的地方,以本方针为准。
105100

@@ -117,11 +112,13 @@ projects 文件夹下只标出模组所属的大版本号,其中的模组翻
117112

118113
- **必须**提交 PR 至`main`分支。
119114
- **必须**路径合规,详见[仓库结构](#仓库结构)
120-
- **必须**包含简体中文、翻译源语言的语言文件。
121-
- 若翻译源语言不是英语,且模组有英语语言文件,则**必须**包含英语语言文件。
115+
- **必须**包含简体中文、项目源语言的语言文件。
116+
- 项目源语言是指模组作者使用的语言,且该语言本地化文件是**由模组作者提供**的。
117+
- 即使项目源语言不是英语,只要模组有英语语言文件,那么英语语言文件也**必须**提交。
122118
- **建议**每个 PR 仅含一个模组。
123119
- 若多个模组的中文总行数不超过 200,**建议**合并为一个 PR。
124120
- **建议**用相关词语填写提交消息(Commit Message),如`提交``更新``修改``删除`
121+
- **建议**新创建一个分支(branch)来提交翻译,而不是直接将修改放到你自己的`main`分支提交。
125122

126123
<!--
127124
### Weblate
@@ -136,37 +133,38 @@ projects 文件夹下只标出模组所属的大版本号,其中的模组翻
136133

137134
#### 审查规则
138135

139-
- 审查的基本依据****[翻译贡献方针](#翻译贡献方针)
140-
- 审查流程**必须**满足本文档[翻译审查](#翻译审查)内容所述。
141-
- 审查过程中各方****遵守[礼仪](https://zh.wikipedia.org/wiki/Wikipedia:%E7%A4%BC%E4%BB%AA)[备用](https://share.weiyun.com/LRvx1omf))。
136+
- 翻译审查的基本依据****[翻译贡献方针](#翻译贡献方针)
137+
- 翻译审查的流程**必须**满足本文档[翻译审查](#翻译审查)内容所述。
138+
- 翻译审查过程中各方****遵守[礼仪](https://zh.wikipedia.org/wiki/Wikipedia:%E7%A4%BC%E4%BB%AA)[备用](https://share.weiyun.com/LRvx1omf))。
142139

143140
#### 审查人
144141

145142
- 任何人都能利用 GitHub 提供的[相关功能](https://docs.github.com/zh/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/commenting-on-a-pull-request)来审查 PR 中翻译。所有参与审查的用户即为审查人。
146-
- [CFPA团队](https://github.com/CFPAOrg) 的成员(Member)和[仓库](https://github.com/CFPAOrg/Minecraft-Mod-Language-Package)的协作者(Collaborator)是具有团队官方性质的审查人。
147-
- 至少一位具有官方身份的审查人对 PR 给出批准(Approval)审查后,PR 才能合并。
148-
- 审查人在给出批准审查后****给 PR 加上“即将合并”标签,此后需至少等待 24 小时,若等待期间没有新动态则可以合并 PR。
149-
- “动态”包括但不限于 PR 作者发送提交(Commit)、审查人提出意见。
143+
- [CFPA 团队](https://github.com/CFPAOrg) 的成员(Member)和[本仓库](https://github.com/CFPAOrg/Minecraft-Mod-Language-Package)的协作者(Collaborator)是具有团队官方性质的审查人,统称为管理员。
144+
- 至少一位管理员对 PR 给出批准(Approval)意见后,PR 才能合并。
145+
- 管理员在给出批准意见后****给 PR 加上“即将合并”标签,此后需至少等待 24 小时,若等待期间没有新动态则可以合并 PR。
146+
- “动态”包括但不限于 PR 作者提交(Commit)、审查人评论。
147+
- 管理员有根据常识判断和处置包含不适宜内容 PR 的权力。处置措施包括但不限于:要求使用中立表述、删减、关闭 PR、限制用户提交。
150148

151149
#### PR 作者
152150

153151
- PR 作者****对审查作出合理回应,或接受建议,或提出异议。
154-
- 在接受审查人的建议后,PR 作者****解决(Revolve)相应的对话(Conversation)。
155-
- 若拒绝审查人的建议,或和审查人的观点相左,PR 作者**不应**急于解决(Revolve)对话(Conversation)
152+
- 在接受审查人的建议后,PR 作者****解决(Resolve)相应的对话(Conversation)。
153+
- 若拒绝审查人的建议,或和审查人的观点相左,PR 作者**不应**急于解决对话(Resolve conversation)。
156154
- PR 作者****及时做出回应,否则 PR 可能会按[搁置规则](#搁置规则)关闭。
157-
- PR 作者如遇到 Git/GitHub 操作上的困难,****先询问后操作,避免造成混乱。
155+
- PR 作者如遇到 Git/GitHub 操作上的困难,请先询问后操作,避免造成混乱。
158156

159157
### 搁置规则
160158

161159
搁置规则用于解决由于 PR 作者迟迟不出面响应审查要求而导致的 PR 积压问题。
162160

163-
1. 若 PR 中存在未作者未响应的审查超过 7 天,审查人有权提及(@)PR 作者,提醒其相应审查意见,然后加上“即将被搁置”标签。
164-
2. 若“即将被搁置”标签存在超过 7 天,PR 作者将被视为无法回应。此时
161+
1. 若 PR 中存在作者未响应的评论超过 7 天,审查人有权提及(@)PR 作者,提醒其处理相应审查意见,然后加上“即将被搁置”标签。
162+
2. 若“即将被搁置”标签存在超过 7 天,PR 作者将被视为无法回应。此时
165163
- 2.1 若存在要求 PR 作者参与的审查意见,PR 将被加上“即将拒收”标签。1 天后 PR 将被关闭。
166164
- 2.2 若审查意见都无需 PR 作者参与,PR 将被加上“即将拒收”标签。1 天缓冲期内官方审查人**可以**直接采纳审查意见,并终止计时,转入合并流程。
167165
3. 在 1、2 所述过程中,若 PR 作者做出了回应,标签将被清除,计时重新从 1 开始。
168166

169-
因搁置而关闭的 PR,PR 作者若想继续更新,可重新打开(Reopen)PR。
167+
因搁置而关闭的 PR,PR 作者若想继续更新,可联系管理员重新打开(Reopen)PR。
170168

171169
### 公示规则
172170

@@ -198,7 +196,7 @@ projects 文件夹下只标出模组所属的大版本号,其中的模组翻
198196

199197
<!--### config/spider/config.json
200198
201-
> Spider目前暂时停用,以下事项仅作参考。
199+
> Spider 目前暂时停用,以下事项仅作参考。
202200
203201
- `"version"`:游戏版本,**请勿修改**
204202
- `"spider_conf"`:爬虫相关设置
@@ -227,12 +225,12 @@ projects 文件夹下只标出模组所属的大版本号,其中的模组翻
227225
- 增加新翻译版本
228226
- 需要将所有项填写一遍,同时需要更新 `.github/workflows/packer.yml``.github/workflows/pr-packer.yml``.github\boring-cyborg.yml`,以及 [CFPABot](https://github.com/Cyl18/CFPABot) 等相关服务。没有规划最好不要乱动。
229227
- 更改字符替换表
230-
- 修改`characterReplacement`,格式与已有文本一致。对于**基础多语种平面(BMP)**以外的字符,最好用 **UTF-16 代理对**书写。
228+
- 修改`characterReplacement`,格式与已有文本一致。对于 **基础多语种平面(BMP)** 以外的字符,最好用 **UTF-16 代理对**书写。
231229
- 同时可能需要修改字体文件。
232230
- 处理非文本文件
233231
- 参考 [Packer-Doc](Packer-Doc.md) 对其的描述。
234232
- 停止对某模组的支持
235-
- 把该模组的 `CurseForge 项目名称``命名空间`中的加入相应的 `exclusionMods``exclusionDomains`(二者取其一)。
233+
- 把该模组的`项目名称`/`命名空间`加入`exclusionMods`/`exclusionDomains`(二者取其一)。
236234

237235
## 联系我们
238236

0 commit comments

Comments
 (0)