拼英:一种汉字拉丁化方案 | PIN.spell YING.brave : YI.single ZHONG.breed HAN.dynasty ZI.symbol LA.drag DING.stem HUA.ize FANG.quadrilateral AN.incident

目标

汉字与编码一一对应
以拼音为基础
加入英语单词来区分同音字

算法

1. 生成从汉字到拼音的映射表

为每个汉字选择一个拼音(使用数据源A和数据源B)
如果数据源B中含有该汉字,选择数据源B中的第一个拼音
如果数据源B中不含有该汉字,而且它有一个5声调(轻声)的拼音,选择这个拼音
否则,选择字典顺序的第一个拼音

2. 生成英语单词词频

扫描整个数据源A,计算每一个英语单词的出现次数

3. 生成拼英码

按照数据源A的顺序,依次处理每一个汉字:
对于某一个汉字的英文解释里面的所有英文单词,计算以下数值
定义 In-Quote 为是否该词出现在某对括号包含的文字里
定义 Upper-Case 为是否该词使用了大写字母,例如人名和国家名
定义 Score-Value 为(单词在英文解释的长度) + (单词的长度 * 单词的词频)
把单词按照 In-Quote, Upper-Case, Score-Value, 和单词字符串进行排序
然后选择第一个没有被使用的编码,编码是无声调拼音 + 点 + 英文单词
如果所有单词都已经被占用了,则尝试使用无意义的字母,如下:
a;b;c;d;e;f;g;h;i;j;k;l;m;n;o;p;q;r;s;t;u;v;w;x;y;aa;ba;ca;da;ea;fa;ga;ha;ia;ja;ka;la;ma;na;oa;pa;qa;ra;sa;ta;ua;va;wa;xa;ya;ae;be;ce;de;ee;fe;ge;he;ie;je;ke;le;me;ne;oe;pe;qe;re;se;te;ue;ve;we;xe;ye

数据源

A. 汉字词频和拼音 http://lingua.mtsu.edu/chinese-computing/statistics/char/list.php?Which=MO (Modern Chinese Character Frequency List by Jun Da 笪骏 (jda@mtsu.edu))
B. 常用汉字的常用拼音 http://zein.se/patrick/3000char.html (The most common Chinese characters in order of frequency, by © 2003 – 2009 Patrick Hassel Zein )