примеры для статьи на Хабре: вставить ссылку
- benches - бенчмарки нормализации
- tests - тесты нормализации
- data - "запечённые" данные декомпозиции
- composing - нормализация строк
- test_data - данные для тестирования и бенчмарков
- парсинг UCD: https://github.com/gpawru/unicode_data
- запекание данных: https://github.com/gpawru/unicode_bakery
make test
make bench
(результат - в виде CSV)
язык | NFС | NFKС | NFС (dec) | |||
---|---|---|---|---|---|---|
ICU4X | my | ICU4X | my | ICU4X | my | |
arabic | 892 | 473 | 1391 | 466 | 1156 | 656 |
chinese | 781 | 245 | 1811 | 470 | 787 | 248 |
czech | 105 | 71 | 589 | 333 | 1995 | 1041 |
dutch | 107 | 73 | 164 | 112 | 104 | 73 |
english | 156 | 105 | 179 | 105 | 163 | 106 |
french | 104 | 73 | 239 | 152 | 607 | 312 |
german | 103 | 73 | 201 | 122 | 287 | 171 |
greek | 959 | 442 | 1454 | 441 | 1988 | 997 |
hebrew | 893 | 477 | 1316 | 469 | 851 | 472 |
hindi | 851 | 470 | 1147 | 477 | 844 | 481 |
italian | 139 | 92 | 212 | 128 | 319 | 178 |
japanese | 852 | 236 | 1559 | 268 | 1274 | 414 |
korean | 900 | 355 | 1446 | 361 | 4504 | 2905 |
persian | 841 | 444 | 1290 | 464 | 910 | 506 |
polish | 106 | 71 | 524 | 272 | 1033 | 581 |
portuguese | 105 | 74 | 201 | 129 | 459 | 252 |
russian | 799 | 454 | 1299 | 450 | 865 | 497 |
serbian | 806 | 475 | 1268 | 473 | 800 | 476 |
spanish | 121 | 82 | 236 | 147 | 516 | 253 |
thai | 1046 | 571 | 1471 | 618 | 1052 | 575 |
turkish | 114 | 78 | 591 | 303 | 1063 | 590 |
ukrainian | 794 | 441 | 1282 | 439 | 937 | 523 |
vietnamese | 568 | 304 | 1225 | 530 | 3814 | 2047 |