[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: DVD-плеер



On 2010.08.10 at 15:34:02 +0400, Иван Лох wrote:

> On Tue, Aug 10, 2010 at 02:16:12PM +0300, Elena Egorova wrote:
> > vlc же абсолютно взрывает мозг своей неспособностью работать с
> > русскими именами файлов. В котором открыть файл невозможно НИКАК. А
> 
> Это нормальное поведение. Glib не знает априори кодировку файлов
> в файловой системе. Если Вы не указали ее явно, то она полагается

Это - не нормальное поведение. Glib-у вообще НЕХРЕН знать про
существование кодировок. Glib-у передали последоватльность байт, которая
с точки зрения пользователя является именем файла, и его дело - скормить
эту последовательность в системный вызов open как есть, не выполняя с
ней никаких действий.

Если имя файла надо отобразить в GUI, значит точно также надо передать
эту последовательность байт в XmbDrawString. Она как-нибудь разберется.
Она, в отличие от  Glib и Gtk имеет представление о локали.

То, что делает в данном случае GLIB называется неестественный интеллект.
За который надо бить канделябрами. Ибо дело программы - делать что юзер
сказал.

Но вообще-то вся GLib лишний уровень абстракции. Который только портит
жизнь. Если тебе нужно писать  на С - пиши на C и НЕ ПОЛЬЗУЙСЯ левыми
фреймоврками. Системные вызовы, libc, libX11.

А если тебе нужно писать на языке высокого уровня - возьми ЯЗЫК высокого
уровня. scheme, python, tcl. Но не пытайся делать из C язык высокого
уровня посредсвом библиоте. Выйдет дерьмовина вроде Gtk.

Впрочем, бывает еще хуже - называется Qt. Там не только для строк свою
обвязку в графическом тулките изобрели - там уже и к звуку интерфейсы, и
к базе данных и так далее. И все это на C++ у которого ABI между разными
версиями одного и того же компилятора, не говоря уж о разных
компиляторах не совместим.




> UTF8. Теперь он смотрит на вашу локаль (KOI8-R) и конвертирует
> имя файла из UTF8 в текщую локаль. Но такая операция, как правило, 
> приводит к ошибке. В множестве символов KOI8-R просто нет таких символов.
> 
> Идея считать, что кодировка имен ФС и процесса одна и та же IMHO
> -- много большее зло.
> 
> 
> -- 
> To UNSUBSCRIBE, email to debian-russian-REQUEST@lists.debian.org
> with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
> Archive: [🔎] 20100810113402.GA7454@nano.ioffe.rssi.ru">http://lists.debian.org/[🔎] 20100810113402.GA7454@nano.ioffe.rssi.ru
> 


Reply to: