Изобретаю свою кодировку символов, решил начать с разбора уже созданного: CP1251.gz IBM866.gz ISO-8859-5.gz KOI-8.gz MAC-CYRILLIC.gz
Всего в них 348 символов, при этом только 225 встречаются сразу в 3 файлах и только 191 символ во всех пяти. Это что за избыток? Если бы оптимально подойти, так даже юникод бы был не нужен.
Взял википедию, распарсил (100 метров текста, без html), получил такую статистику:
7930095 -- 32 ( )
3121686 -- 1080 (и)
3047308 -- 10 (newline)
2727631 -- 1072 (а)
2660128 -- 1077 (е)
2507843 -- 1086 (о)
2016752 -- 1090 (т)
1864330 -- 1085 (н)
1801039 -- 1089 (с)
1560947 -- 1088 (р)
1243790 -- 1074 (в)
1157556 -- 1082 (к)
1087145 -- 46 (.)
968049 -- 1076 (д)
967860 -- 111 (o)
918355 -- 1083 (л)
907342 -- 105 (i)
891229 -- 101 (e)
831035 -- 115 (s)
824269 -- 1087 (п)
733941 -- 97 (a)
702895 -- 1103 (я)
685540 -- 1084 (м)
673506 -- 110 (n)
664169 -- 1091 (у)
658174 -- 49 (1)
582796 -- 116 (t)
565215 -- 47 (/)
548710 -- 114 (r)
517877 -- 1099 (ы)
504408 -- 1073 (б)
454062 -- 1079 (з)
452653 -- 48 (0)
416049 -- 1100 (ь)
407703 -- 44 (,)
368651 -- 50 (2)
366363 -- 1075 (г)
352360 -- 1081 (й)
325533 -- 53 (5)
319754 -- 1078 (ж)
318320 -- 99 (c)
315863 -- 1095 (ч)
315031 -- 109 (m)
312899 -- 108 (l)
282834 -- 57 (9)
281910 -- 107 (k)
266933 -- 1094 (ц)
254630 -- 117 (u)
253757 -- 56 (8)
240258 -- 112 (p)
228629 -- 104 (h)
227408 -- 1042 (В)
224604 -- 51 (3)
215619 -- 55 (7)
208874 -- 73 (I)
201042 -- 54 (6)
192741 -- 100 (d)
189071 -- 58 (:)
181948 -- 0 ()
179733 -- 52 (4)
169519 -- 98 (b)
165862 -- 41 ())
163832 -- 40 (()
162130 -- 103 (g)
160669 -- 45 (-)
158650 -- 8212 (—)
157646 -- 1057 (С)
150448 -- 69 (E)
149826 -- 124 (|)
142652 -- 34 (")
140720 -- 1097 (щ)
134240 -- 1055 (П)
129408 -- 102 (f)
127147 -- 119 (w)
124803 -- 1054 (О)
120406 -- 1096 (ш)
118526 -- 83 (S)
117908 -- 70 (F)
117333 -- 1093 (х)
110915 -- 120 (x)
108591 -- 121 (y)
102798 -- 183 (·)
102082 -- 1048 (И)
102043 -- 1102 (ю)
96918 -- 59 (;)
95518 -- 1092 (ф)
92157 -- 42 (*)
91549 -- 1101 (э)
91527 -- 1053 (Н)
90432 -- 65 (A)
86069 -- 1059 (У)
84928 -- 66 (B)
83979 -- 1058 (Т)
80931 -- 84 (T)
77966 -- 118 (v)
74973 -- 68 (D)
72832 -- 82 (R)
72026 -- 1050 (К)
71584 -- 1056 (Р)
70031 -- 77 (M)
68987 -- 76 (L)
67174 -- 64 (@)
62347 -- 78 (N)
60582 -- 80 (P)
60075 -- 1040 (А)
57134 -- 1052 (М)
55951 -- 71 (G)
55103 -- 86 (V)
54232 -- 67 (C)
48727 -- 8226 (•)
48016 -- 1105 (ё)
46030 -- 1060 (Ф)
44632 -- 1069 (Э)
43205 -- 85 (U)
38891 -- 1047 (З)
37864 -- 1041 (Б)
34758 -- 160 ( )
33634 -- 91 ([)
33556 -- 1044 (Д)
33075 -- 93 (])
28855 -- 75 (K)
28664 -- 1043 (Г)
28593 -- 72 (H)
27359 -- 87 (W)
26463 -- 187 (»)
26459 -- 79 (O)
26457 -- 171 («)
26377 -- 1071 (Я)
25550 -- 1045 (Е)
24323 -- 106 (j)
23610 -- 122 (z)
23561 -- 33 (!)
23520 -- 88 (X)
19422 -- 2494 (া)
19010 -- 39 (')
17882 -- 61 (=)
17810 -- 231 (ç)
16799 -- 123 ({)
16721 -- 1051 (Л)
15952 -- 2480 (র)
15028 -- 2366 (ा)
14400 -- 74 (J)
13446 -- 125 (})
13122 -- 8234 ( )
12975 -- 8236 ( )
12562 -- 215 (×)
11964 -- 2495 (ি)
11930 -- 269 (č)
10506 -- 89 (Y)
10149 -- 113 (q)
9994 -- 95 (_)
9228 -- 252 (ü)
9094 -- 63 (?)
9028 -- 1063 (Ч)
8366 -- 126 (~)
8294 -- 1061 (Х)
7309 -- 1098 (ъ)
7213 -- 1064 (Ш)
6998 -- 353 (š)
6755 -- 241 (ñ)
6705 -- 60 (<)
6702 -- 62 (>)
6558 -- 2346 (प)
6157 -- 224 (à)
5734 -- 226 (â)
5723 -- 2344 (न)
5523 -- 234 (ê)
5305 -- 4312 (ი)
5301 -- 229 (å)
5296 -- 4304 (ა)
5236 -- 4325 (ქ)
5059 -- 2349 (भ)
4995 -- 1062 (Ц)
4794 -- 8206 ( )
4636 -- 233 (é)
4355 -- 2352 (र)
4242 -- 1111 (ї)
4012 -- 235 (ë)
3903 -- 90 (Z)
3857 -- 957 (ν)
3850 -- 953 (ι)
3839 -- 940 (ά)
3839 -- 951 (η)
3832 -- 954 (κ)
3829 -- 917 (Ε)
3804 -- 3618 (ย)
3796 -- 3607 (ท)
3795 -- 3652 (ไ)
3670 -- 43 (+)
3413 -- 8209 (‑)
3386 -- 7871 (ế)
3058 -- 371 (ų)
2954 -- 205 (Í)
2900 -- 1070 (Ю)
2844 -- 2350 (म)
2743 -- 1110 (і)
2696 -- 37 (%)
2588 -- 7879 (ệ)
2586 -- 232 (è)
2464 -- 8220 (“)
2458 -- 225 (á)
2412 -- 1046 (Ж)
2349 -- 8221 (”)
1842 -- 242 (ò)
1839 -- 601 (ə)
1477 -- 1377 (ա)
1442 -- 1408 (ր)
1419 -- 1397 (յ)
1413 -- 1344 (Հ)
1407 -- 81 (Q)
1241 -- 1049 (Й)
1171 -- 8470 (№)
1093 -- 38 (&)
1056 -- 8211 (–)
966 -- 8593 (↑)
849 -- 8217 (’)
847 -- 176 (°)
568 -- 228 (ä)
521 -- 3240 (ನ)
486 -- 1067 (Ы)
458 -- 35 (#)
452 -- 237 (í)
418 -- 9658 (►)
418 -- 9668 (◄)
416 -- 8594 (→)
402 -- 8230 (…)
397 -- 279 (ė)
396 -- 381 (Ž)
388 -- 1065 (Щ)
374 -- 8592 (←)
361 -- 248 (ø)
324 -- 1179 (қ)
318 -- 1178 (Қ)
284 -- 244 (ô)
282 -- 1460 (ִ)
278 -- 243 (ó)
276 -- 1025 (Ё)
268 -- 3277 (್)
261 -- 3221 (ಕ)
260 -- 3233 (ಡ)
255 -- 1068 (Ь)
251 -- 227 (ã)
249 -- 2879 (ି)
249 -- 651 (ʋ)
249 -- 2822 (ଆ)
249 -- 2835 (ଓ)
249 -- 2908 (ଡ଼)
245 -- 177 (±)
231 -- 245 (õ)
227 -- 96 (`)
223 -- 250 (ú)
203 -- 8224 (†)
Тут есть все нужное, включая «ёлочки», длинные тире "—" и прочие нужные при оформлении текста символы. Даже ế, которое оказывается не такое уж малоиспользуемое. Вопрос: чем думали авторы CP1251 + IBM866 + ISO-8859-5 + KOI-8 + MAC-CYRILLIC? Ведь если бы подойти правильно к делу создания кодировки, то острой необходимости для юникода бы и небыло!
Особенно порадовали баги в i18n, где таблицы символов местами кривые:
<U> /x55 <U0055> LATIN CAPITAL LETTER U
<U:> /x55 <U00DC> LATIN CAPITAL LETTER U WITH DIAERESIS
Похожие темы
- Форум Pythonpoint, кириллица, кодировка (2005)
- Форум кодировка кириллицы для man (2006)
- Форум Используемая память (2006)
- Форум Кириллица (2010)
- Форум кириллица (2004)
- Форум кириллица (2004)
- Форум [вещества]совсем вещества (2009)
- Форум [вещества] Просто вещества (2009)
- Форум [вещества] (2010)
- Форум [вещества] (2009)