Skip to content

Commit

Permalink
readme
Browse files Browse the repository at this point in the history
  • Loading branch information
garywill committed Dec 3, 2023
1 parent 05df8ab commit e6f16ff
Showing 1 changed file with 26 additions and 17 deletions.
43 changes: 26 additions & 17 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,9 @@
> ![](https://user-images.githubusercontent.com/32130780/175266740-caad17d0-39c8-4d5d-a02a-ec04a16ddab5.png)
- 私用码段字符(PUA)
- 非汉、又非ASCII的不常用字符(对中文&编程用户)




## 截图预览

![Screenshot](https://repository-images.githubusercontent.com/395479775/5b0eff04-c615-4b80-bc87-091443360351)
Expand Down Expand Up @@ -59,6 +61,8 @@ UI对字符类型的示意:
- 浅红色: 是日本新字体(即,仅日文使用的简化字)
- 蓝色: 是组合字符(无宽度无间距,用于给前一字符加声调等)




## 用字和编码问题的背景知识链接

Expand Down Expand Up @@ -106,6 +110,7 @@ UI对字符类型的示意:
</details>



## 进阶用户

web支持GET参数:`https://garywill.github.io/cc-visualize/?s=%s`
Expand All @@ -114,19 +119,8 @@ CLI用法为`node cli.js`(不需要再安装其他npm包)。可自行简单

在web中,每次检查完成后,在web控制台也会输出与cli类似的检查结果统计

<details>
<summary>其他(一般不用看)</summary>

文件名以`pre`开头的为预处理脚本。用于将原始数据生成`.js`包装的数据文件(文件内容类似`xxxx.xxx = { ..很多行... }`),以便于web使用。预处理应按以下顺序运行:
1. unicode (陆表、港表数据也是取自于此)
1. cns (台表数据取自于此)
1. edu
1. opencc (需要edu数据)
1. summary (总数据,最后处理)

我把整合了汉字关联、汉字属性的数据文件以“map”命名。具体一点,`map`仅繁简关联,`map2`是供正常使用的,`map3`是把“不必要的关联”也关联进来了的

</details>

## 字符编码数据来源及处理说明

Expand All @@ -139,7 +133,7 @@ CLI用法为`node cli.js`(不需要再安装其他npm包)。可自行简单
<details>
<summary>展开详细数据来源及处理说明</summary>

### Unicode Character Database (UCD)
### 数据来源 之 Unicode Character Database (UCD)

当前UCD版本:15.1

Expand Down Expand Up @@ -196,7 +190,7 @@ UCD提供txt(文件数量多)和[xml](https://www.unicode.org/Public/15.1.0/
13 2020年3月 14 2021年9月 15 2022年9月 15.1 2023年9月
```

### 中华地区官方中文教育制定的常用字表(地区代号:CN+HK+TW)
### 数据来源 之 中华地区官方中文教育制定的常用字表(地区代号:CN+HK+TW)

参看[汉字规范#現代規範 - wikipedia](https://zh.wikipedia.org/wiki/%E6%B1%89%E5%AD%97%E8%A7%84%E8%8C%83#%E7%8F%BE%E4%BB%A3%E8%A6%8F%E7%AF%84)

Expand Down Expand Up @@ -242,21 +236,21 @@ UCD提供txt(文件数量多)和[xml](https://www.unicode.org/Public/15.1.0/
"牀":{"rel":[""],"isEdu_HK":true},
```

### CNS 11643 的字源数据
### 数据来源 之 CNS 11643 的字源数据

来自台湾的编码「中文標準交換碼」 (CNS 11643) 的[官方网站](https://www.cns11643.gov.tw/pageView.jsp?ID=59)上,可链接到[对应的数据下载页面](https://data.gov.tw/dataset/5961)(目前约10万字)。数据中包含有以上甲~丙表、以及其他教育汉字字表的字符编码信息,以及它们由CNS 11643到Unicode的转换表

《國中小教科書常用字》 来自下载数据包内,有500多字(此名称在其他地方找不到说明)。它 + CNS11643数据包内的《次常用國字標準字體表》 ≈ 真正的《次常用國字標準字體表》


### CCCII (尚未)
### 数据来源 之 CCCII (尚未)

来自台湾的编码[「中文資訊交換碼」(CCCII,以前又叫EACC)](https://en.wikipedia.org/wiki/Chinese_Character_Code_for_Information_Interchange)将正、简、异、日几种字形的汉字字符分开区域编排,且收录异体数量多。并且,在这种编码下,只要在编码上平移特定的量,就能找到所关联的汉字,不一定要专门的关联表(也因此同一字有时需要多个编码,因为繁简关系不只有一个对应)

据说1987年版本收录5.3万字符。1989的稿收录7.5万字符(4.4万独立字和3.1万变体),这种编码采用的系统少,资料少


### OpenCC
### 数据来源 之 OpenCC

OpenCC含有中文繁简关系、日本用字与中文汉字关系

Expand Down Expand Up @@ -291,8 +285,23 @@ OpenCC含有中文繁简关系、日本用字与中文汉字关系
> - 已在\[港表 ∪ 台表甲\]中,且不在\[陆表一 ∪ 陆表二\]中的字,若有简体属性,取消此属性
> - 已在\[陆表一 ∪ 陆表二\]中,且不在\[港表 ∪ 台表甲 ∪ 台表乙\]中的字,若有繁体属性,取消此属性
#### 数据预处理的方法

文件名以`pre`开头的为预处理脚本(要先cd进入`pre_xxxx`所在目录再运行)。用于将原始数据生成`.js`包装的数据文件(文件内容类似`xxxx.xxx = { ..很多行... }`),以便于web使用。预处理应按以下顺序运行,且只要其中一个更新过,其排序之后的也必须更新:
1. unicode (陆表、港表数据也是取自于此)(每年需要人工下载跟进)
1. cns (台表数据取自于此)(每年需要人工下载跟进)
1. edu
1. opencc (需要edu数据)
1. summary (总数据,最终应使用的)

我把整合了汉字关联、汉字属性的数据文件以“xxxx-data-map”命名。具体一点,`map`仅繁简关联,`map2`是供正常使用的,`map3`是把“不必要的关联”也关联进来了的

</details>





## 方向及限制

1. 因不同地区、文化圈、系统,不同的历史流行输入法、字体,机构所沿用的信息系统的原因,所谓汉字“规范”、“通行”、“正常”字符到底该依照哪个(统一字、部首字符、兼容字,还是暂用私用码,甚至不用万国码而用另一套编码?),本项目(至少目前)无法收录和处理完整的这类信息。
Expand Down

0 comments on commit e6f16ff

Please sign in to comment.