New user registration is currently disabled due to spam abuse / Регистрация новых пользователей в настоящее время приостановлена из-за злоупотреблений спаммерами

Не отображаются картинки

Сообщаем о найденных ошибках сюда

Не отображаются картинки

Postby lexxion » Thu May 28, 2009 9:18 am

Проблема такая.
Если ресурсы к словарю (картинки) упакованы в zip-архив, то не отображаются те из них, имена которых набраны кириллицей. Если те же картинки не упакованы и лежат в отдельной папке, то видно все.
lexxion
 
Posts: 12
Joined: Thu May 21, 2009 4:14 pm

Re: Не отображаются картинки

Postby ikm » Thu May 28, 2009 1:16 pm

Сейчас имена при поиски внутри zip-файлов кодируются в системную кодировку. Для windows это будет cp1251, для linux utf8 или koi8-r. Так как совершенно непонятно, в какой кодировке сейчас создается большинство zip-архивов популярными утилитами, не очень понятно, какое поведение должно тут быть правильным. По старому стандарту в zip-ах вообще только CP437 и всё :) А в jar-файлах (которые zip-ы внутри) например требуется использовать всегда utf8. Могу только сказать, что в linux стандартный zip пишет имена как есть, в той кодировке, в которой они хранятся в файловой системе.

Если кто-то готов поисследовать эту тему - вперед. В частности, если кто-то может сделать несколько крохотных zip-архивов, содержащих файлы с русскими именами в winrar, 7zip, winzip и других подобных популярных программах и их выложить - сделайте и выложите, а я посмотрю, что там и как внутри.
ikm
Автор GoldenDict
 
Posts: 1595
Joined: Wed Feb 04, 2009 10:40 am

Re: Не отображаются картинки

Postby lexxion » Thu May 28, 2009 5:21 pm

Спасибо за ответ.
Сейчас сделал архивы для сравнения десятком утилит. Явные отличия, похоже, проявляют немногие.
http://www.onlinedisk.ru/file/148631/
Если нужно, сделаю в другом виде или на другом обменнике.
Еще постараюсь найти обобщенную инфу по теме.
lexxion
 
Posts: 12
Joined: Thu May 21, 2009 4:14 pm

Re: Не отображаются картинки

Postby ikm » Thu May 28, 2009 8:21 pm

Короче, они все используют CP866. Кроме TUGZip, который использует CP1251 в оглавлении, и CP866 в записи самого файла (что смахивает на глюк, но реально используется лишь первый, тот что в оглавлении). Ежели кто знает, как под виндовс перекодировать строку в "ту кодировку", которой в русской винде соответствует CP866 - просьба отписаться. Есть у меня ощущение, что это т.н. OEM encoding.
ikm
Автор GoldenDict
 
Posts: 1595
Joined: Wed Feb 04, 2009 10:40 am


Return to Ошибки

Who is online

Users browsing this forum: No registered users and 24 guests