Мурло стандартизатора
Oct. 17th, 2009 03:35 pmЖили мы - не тужили, и вдруг захотелось нам в распределенном проекте файлов с русскими именами. С этим делом во всех уважающих себя операционных системах нынче порядок - имена хранятся в юникоде, чтобы всем было одинаково неудобно. Хоть китайскими иероглифами имена вводи.
Вот и ввели. На чрезвычайно уважающей себя операционной системе МакОС. Потом все эти файлы уехали на sourceforge.net, а оттуда - на машину с другой весьма уважаемой операционной системой. Да, впрочем, и с третьей тоже, несмотря на новизну.
Файл называется "слойка" (это не кондитерское, а... нет, лучше не начинать, да это и неважно).
Ожидали файл с именем слойка, а получилось - слойка. Видите разницу?
(Кто совсем не видит - назовитесь.)
Стандарт предписывает хранить имена файлов, используя канонические представления символов юникода. Для буквы "й" каноническое представление - U+0438 CYRILLIC SMALL LETTER I + U+0306 COMBINING BREVE. Этой, пардон за каламбур, буквы стандарта, судя по всему, пока строго придерживается только МакОС. Вот так и живем.
Вот и ввели. На чрезвычайно уважающей себя операционной системе МакОС. Потом все эти файлы уехали на sourceforge.net, а оттуда - на машину с другой весьма уважаемой операционной системой. Да, впрочем, и с третьей тоже, несмотря на новизну.
Файл называется "слойка" (это не кондитерское, а... нет, лучше не начинать, да это и неважно).
Ожидали файл с именем слойка, а получилось - слойка. Видите разницу?
(Кто совсем не видит - назовитесь.)
Стандарт предписывает хранить имена файлов, используя канонические представления символов юникода. Для буквы "й" каноническое представление - U+0438 CYRILLIC SMALL LETTER I + U+0306 COMBINING BREVE. Этой, пардон за каламбур, буквы стандарта, судя по всему, пока строго придерживается только МакОС. Вот так и живем.