Skip to content

Commit fcd8bfc

Browse files
committed
Misc1
1 parent c316a4f commit fcd8bfc

File tree

32 files changed

+202
-75
lines changed

32 files changed

+202
-75
lines changed

Packer-Doc.md

Lines changed: 24 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,16 @@
33
## 注意事项
44
- 文件地址中,目录分隔符**一律使用正斜杠**
55
- 地址相关
6-
- 下述说明中,**完整地址**永远指从**仓库根目录**算起的地址,例如对根目录下的`CONTRIBUTING.md`应为`CONTRIBUTING.md`,1.12版本资源包的`pack.png`应为`projects/1.12.2/pack.png`
7-
- 下述说明中,**相对地址**永远指从**特定命名空间的文件夹**算起的地址,例如对仓库中的`projects/1.18/assets/minecraft/minecraft/font/default.json`应为`font/default.json`
8-
- 下述说明中,**目标地址**永远指**分发的资源包中**,该文件应当被放置的位置,例如上一条中提及的文件应为`assets/minecraft/font/default.json`
6+
- 下述说明中,**完整地址**永远指从**仓库根目录**算起的地址,例如对根目录下的`CONTRIBUTING.md`应为`CONTRIBUTING.md`;对1.12版本资源包的`pack.png`应为`projects/1.12.2/pack.png`
7+
- 下述说明中,**相对地址**永远指从**特定命名空间的文件夹**算起的地址,例如对仓库中的`projects/1.18/assets/minecraft/minecraft/font/default.json`应为`font/default.json`
8+
- 下述说明中,**目标地址**永远指**分发的资源包中**,该文件应当被放置的位置,例如对上一条中提及的文件,应为`assets/minecraft/font/default.json`
99
- 文件相关
1010
- 下述说明中,**语言文件**永远指可以被打包器解读为**映射表**的文件。这包括了所有 **`lang/`下的`.lang``.json`文件**
1111
- 下述说明中,**文本文件**永远指含有**文本内容**,但**不属于语言文件**的文件。这包括了非语言文件的`.txt``.md``.json`文件。
1212
- 下述说明中,**非文本文件**永远指**不属于以上两类**的文件,如图片或其他二进制文件。
1313
- 本次打包器更新以后,对于**非文本文件**无需特殊处理:打包器会按照文件拓展名自动识别文件类型。
1414

15-
<!-- 下面的部分内容是从我的fork处,尚未完工(短期内也不会完工)的wiki摘录+修改而来的。有些地方用XML注释格式去掉了部分内容,但是我没有完全删掉,因为还打算复制回去的。 --->
15+
<!-- 下面的部分内容是从我的fork处,尚未完工(短期内也不会完工)的wiki摘录+修改而来的。有部分地方用XML注释格式去掉了部分内容,但是我没有完全删掉,因为还打算复制回去的。 --->
1616

1717
## 配置文件
1818

@@ -24,6 +24,8 @@
2424

2525
目前而言,所有配置文件都需要填写全部项——无关项可以填写空集合,但不能不填,更不能写null。有计划在将来优化这一行为。
2626

27+
#### 全局配置文件
28+
2729
**全局**配置文件`./config/packer/<version>.json`的格式如下:
2830

2931
- 根标签 object
@@ -36,7 +38,7 @@
3638
- `exclusionNamespaces` list<br>被打包器排除的 **[namespace]** | **(命名空间)**。<br>暂时闲置,以待后续需求。
3739
- string<br>排除的命名空间。<!--以[S部分](./S.-本仓库的结构向导)中定义的 **[namespace]** | **(命名空间)**为准。-->
3840
- `floating` object<br>打包流程中的*可变配置*,可能被文件结构中的**局域配置文件**改写。包含的内容都是**低于**命名空间层级的,因为局域配置文件就是放在命名空间一级中的。
39-
- `inclusionDomains` list<br>强制包含的 **[domain]**。<br>一般而言,用于通常不会包含**语言标识符**`domain`。<br>一般而言会包含`font``textures`因为这两处往往包含非文本文件(尽管也可能有文本文件),且字体修复已经需要用到这两个domain;其他内容多半会出现在*局域配置*中。
41+
- `inclusionDomains` list<br>强制包含的 **[domain]**。<br>一般而言,用于通常不会包含**语言标识符**`domain`。<br>一般而言会包含`font``textures`因为这两处往往不带语言标识符,且字体修复已经需要用到这两个domain;其他内容多半会出现在*局域配置*中。
4042
- string<br>强制包含的domain名称。<!--以[S部分](./S.-本仓库的结构向导)中定义的 **[domain]** 为准。-->
4143
- `exclusionDomains` list<br>强制排除的 **[domain]**。<br>暂时闲置,或可用于排除一些策略相关的零散文件。
4244
- string<br>强制排除的domain名称。<!--以[S部分](./S.-本仓库的结构向导)中定义的 **[domain]** 为准。-->
@@ -49,13 +51,15 @@
4951
- `destinationReplacement` object<br>打包时采用的目标地址替换。<br>可以用于移动文件,但暂时闲置;使用**检索策略**中的`singleton`也可以实现地址替换,但需要在每个模组下配置。
5052
- `<查询语句>` string<br>用以替换**正则表达式**`<查询语句>`匹配对象的内容,可以是一个或多个字符,甚至可以在这里用**正则替换语句**
5153

54+
#### 局域配置文件
55+
5256
**局域**配置文件`./projects/<version>/assets/<mod-name>/<namespace>/local-config.json`的格式与全局配置文件中,`floating`标签下的内容(*可变配置*)一致。
5357

5458
### 文件容斥顺序
5559

5660
介于在配置文件中出现了多种包含/排除文件的配置项,有必要说明以下这些项生效的顺序:
5761
1. `exclusionMods``exclusionNamespaces`在进入命名空间前即会排除相应的文件夹——甚至不会加载其中的`local-config.json`。<br>当然,如果是通过*检索策略*访问的,则这一项不会生效。
58-
2. 在剩下的命名空间中,检索文件。下面的配置项可能会被*局域配置*修改,除了`targetLanguages`以外。
62+
2. 在剩下的命名空间中,检索文件。下面的配置项可能会被当地的*局域配置*修改,除了`targetLanguages`以外。
5963
3. 在所有检索到的文件中,排除掉`exclusionPaths`指定的文件,即便是通过*检索策略*访问的。
6064
4. 在剩下的文件中,直接包含`inclusionPaths``inclusionDomains`指定的文件。
6165
5. 在剩下的文件中,排除掉`exclusionDomains`指定的文件。
@@ -133,4 +137,17 @@
133137

134138
组合文件可以和其他打包策略混合使用,以修改组合中效果不好的部分,或者添加非组合的内容。
135139

136-
组合文件理论上可以放在任何位置,使用任何名称;因此,打包器的*基础配置*没有办法排除掉这些文件。不过,为了方便,最好将其汇总在一个位置,采用明确的名称,以便在*局域配置*中排除。
140+
组合文件理论上可以放在任何位置,使用任何名称;因此,打包器的*基础配置*没有办法排除掉这些文件。不过,为了方便,最好将其汇总在一个位置,采用明确的名称,以便在*局域配置*中排除。
141+
142+
## 配置注解
143+
144+
上述配置全部采用`json`格式书写;这导致的一个问题就是,`json`格式严格意义上是**不支持注释**的!
145+
为了解决这一问题,在使用这些内容时,最好在对应的命名空间内附上**注解文件**。当然,这不是必须的,但最好这么做。
146+
同时,也可以在此写下对该目录内容的特殊注释。
147+
148+
原则上注解文件可以采用任何形式,但建议写到*命名空间目录下的`README.md`文件*中——打包的全局配置默认会排除这一文件。
149+
同样的,注解文件的形式也没有特殊限定,但尽量统一为佳。
150+
151+
一些注解文件的例子为[这个](projects/1.16/assets/minecraft/minecraft/README.md)[这个](projects/1.18/assets/minecraft/minecraft/README.md)[这个](projects/1.18/assets/macaws-furniture/mcwfurnitures/README.md)
152+
153+
> 原则上,这些注解甚至可以自动生成。

config/packer/1.12.2.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@
1919
"exclusionDomains": [],
2020
"exclusionPaths": [
2121
"packer-policy.json",
22-
"local-config.json"
22+
"local-config.json",
23+
"README.md"
2324
],
2425
"inclusionPaths": [],
2526
"characterReplacement": {

config/packer/1.16-fabric.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@
1515
"exclusionDomains": [],
1616
"exclusionPaths": [
1717
"packer-policy.json",
18-
"local-config.json"
18+
"local-config.json",
19+
"README.md"
1920
],
2021
"inclusionPaths": [],
2122
"characterReplacement": {

config/packer/1.16.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@
1515
"exclusionDomains": [],
1616
"exclusionPaths": [
1717
"packer-policy.json",
18-
"local-config.json"
18+
"local-config.json",
19+
"README.md"
1920
],
2021
"inclusionPaths": [],
2122
"characterReplacement": {

config/packer/1.18-fabric.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,8 @@
1717
"exclusionDomains": [],
1818
"exclusionPaths": [
1919
"packer-policy.json",
20-
"local-config.json"
20+
"local-config.json",
21+
"README.md"
2122
],
2223
"inclusionPaths": [],
2324
"characterReplacement": {

config/packer/1.18.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,8 @@
2020
"exclusionDomains": [],
2121
"exclusionPaths": [
2222
"packer-policy.json",
23-
"local-config.json"
23+
"local-config.json",
24+
"README.md"
2425
],
2526
"inclusionPaths": [],
2627
"characterReplacement": {

config/packer/1.19.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@
1515
"exclusionDomains": [],
1616
"exclusionPaths": [
1717
"packer-policy.json",
18-
"local-config.json"
18+
"local-config.json",
19+
"README.md"
1920
],
2021
"inclusionPaths": [],
2122
"characterReplacement": {

config/packer/1.20-fabric.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@
1515
"exclusionDomains": [],
1616
"exclusionPaths": [
1717
"packer-policy.json",
18-
"local-config.json"
18+
"local-config.json",
19+
"README.md"
1920
],
2021
"inclusionPaths": [],
2122
"characterReplacement": {

config/packer/1.20.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@
1515
"exclusionDomains": [],
1616
"exclusionPaths": [
1717
"packer-policy.json",
18-
"local-config.json"
18+
"local-config.json",
19+
"README.md"
1920
],
2021
"inclusionPaths": [],
2122
"characterReplacement": {
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
## 概述
2+
3+
该命名空间存放了用于`Minecraft-Mod-Language-Package`汉化资源包的字体修正包。内容主要包括:
4+
- 基于1.16+对拓展区的支持,直接实现**元素符号**正常显示。
5+
- 全面调整了**各类标点符号**的宽度。
6+
- 针对**省略号****破折号**的显示做了特别优化:
7+
- **省略号**现在可以*模拟*等距点——虽说不是完美等距,但看起来差不多。
8+
- 单个**破折号**在显示时可以*连起来*了。
9+
10+
### 局部配置参考
11+
12+
- `indirect`@`projects/1.16/assets/minecraft/minecraft`<br>直接引用了[1.16处的字体修正包](../../../../1.16/assets/minecraft/minecraft/README.md)

0 commit comments

Comments
 (0)