История изменений
Исправление saahriktu, (текущая версия) :
Что ужасного в том, что все переходят на юникод?
В неэкономном использовании памяти в тех случаях, когда избыточно хватает местных однобайтных кодировок. Я тут уже 6-ти битную кодировку пилю для компактного хранения текстов, а то и 8 бит на символ - слишком жирно. Да и посимвольное смещение в строках в программах на Си с юникодом уже не работает. Раньше было гораздо проще. Вот кусок кода из того шелла, что я пытался пилить 10 лет назад:
if (strncmp(clstr, "cd ", 3) == 0) {
if (strncmp(clstr + 3, "~", 1) == 0) {
(void) chdir(getenv("HOME"));
clstr += 2;
}
(void) chdir(clstr + 3);
continue;
}
Исправление saahriktu, :
Что ужасного в том, что все переходят на юникод?
В неэкономном использовании памяти в тех случаях, когда избыточно хватает местных однобайтных кодировок. Я тут уже 6-ти битную кодировку пилю для компактного хранения текстов, а то и 8 бит на символ - слишком жирно. Да и посимвольное смещение в строках в программах на Си с юникодом уже не работает. Раньше было гораздо проще. Вот кусок кода из того шелла, что я пытался пилить 10 лет назад:
if (strncmp (clstr, "cd ", 3) == 0)
{
if(strncmp(clstr+3,"~",1)==0){(void) chdir (getenv ("HOME"));clstr+=2;}
(void) chdir (clstr + 3);
continue;
}
Исходная версия saahriktu, :
Что ужасного в том, что все переходят на юникод?
В неэкономном использовании памяти в тех случаях, когда избыточно местных однобайтных кодировок. Я тут уже 6-ти битную кодировку пилю для компактного хранения текстов, а то и 8 бит на символ - слишком жирно. Да и посимвольное смещение в строках в программах на Си с юникодом уже не работает. Раньше было гораздо проще. Вот кусок кода из того шелла, что я пытался пилить 10 лет назад:
if (strncmp (clstr, "cd ", 3) == 0)
{
if(strncmp(clstr+3,"~",1)==0){(void) chdir (getenv ("HOME"));clstr+=2;}
(void) chdir (clstr + 3);
continue;
}