LinuxForum.Fans
Тема

Некорректное отображение имён файлов в ZIP-архивах, созданных в Window

Автор: wpab 20 сообщений 2273 просмотров
25.12.2014 10:30 #406859

Воспользовался советом из темы "Полезные советы для openSUSE 13.2" о некорректном отображение имён файлов в ZIP-архивах, но не помогло.
Как удалось выяснить причина в установленной локали:


$ locale
LANG=uk_UA.UTF-8
LC_CTYPE="uk_UA.UTF-8"
LC_NUMERIC="uk_UA.UTF-8"
LC_TIME="uk_UA.UTF-8"
LC_COLLATE="uk_UA.UTF-8"
LC_MONETARY="uk_UA.UTF-8"
LC_MESSAGES="uk_UA.UTF-8"
LC_PAPER="uk_UA.UTF-8"
LC_NAME="uk_UA.UTF-8"
LC_ADDRESS="uk_UA.UTF-8"
LC_TELEPHONE="uk_UA.UTF-8"
LC_MEASUREMENT="uk_UA.UTF-8"
LC_IDENTIFICATION="uk_UA.UTF-8"
LC_ALL=

Пример №1:


$ unzip -l 1.zip
Archive: 1.zip
Length Date Time Name
--------- ---------- ----- ----
387584 2014-08-28 07:49 èÇïàìäÇÉìêë ÅïÇì_2014.doc
--------- -------
387584 1 file

Пример №2:


$ LANG=ru_UA.utf8 unzip -l 1.zip
Archive: 1.zip
Length Date Time Name
--------- ---------- ----- ----
387584 2014-08-28 07:49 КАЛЕНДАРНИЙ ПЛАН_2014.doc
--------- -------
387584 1 file
25.12.2014 12:46 #406878

7-zip в Crossover (в wine тоже должен работать) — и никаких проблем.

25.12.2014 12:48 #406880

просто надо локаль поменять.

25.12.2014 15:02 #406892

Как вариант, можно пересобрать unzip с alt'овским патчем для поддержки enconv'а... Если интересно, то могу позже отыскать его...

25.12.2014 15:21 #406896
"Fat-Zer" написал:
Как вариант, можно пересобрать unzip с alt'овским патчем для поддержки enconv'а...

Этот?

text
rusxmms patch

ТС'у не помог.

25.12.2014 15:24 #406897

wpab,
Покажите:
[console]zypper se -s rcc[/console]


Кодировка ru_UA не планируется к использованию?

25.12.2014 15:31 · отредактировано #406898
Показать
# zypper se -s rcc
Завантаження даних сховища...
Читання встановлених пакунків...

S | Назва | Тип | Версія | Арх. | Сховище
--+--------------------+---------+-----------------------------+--------+-------------------
| libircclient-devel | пакунок | 1.6-8.1.5 | x86_64 | openSUSE-13.2-Oss
| libircclient-devel | пакунок | 1.6-8.1.5 | i586 | openSUSE-13.2-Oss
| libircclient-doc | пакунок | 1.6-8.1.5 | x86_64 | openSUSE-13.2-Oss
| libircclient-doc | пакунок | 1.6-8.1.5 | i586 | openSUSE-13.2-Oss
| libircclient1 | пакунок | 1.6-8.1.5 | x86_64 | openSUSE-13.2-Oss
| libircclient1 | пакунок | 1.6-8.1.5 | i586 | openSUSE-13.2-Oss
i | librcc-devel | пакунок | 0.2.12-2.1.2 | x86_64 | openSUSE-13.2-Oss
v | librcc-devel | пакунок | 0.2.12-2.1.2 | i586 | openSUSE-13.2-Oss
i | librcc0 | пакунок | 0.2.12-2.1.2 | x86_64 | openSUSE-13.2-Oss
v | librcc0 | пакунок | 0.2.12-2.1.2 | i586 | openSUSE-13.2-Oss
| librcc0-32bit | пакунок | 0.2.12-2.1.2 | x86_64 | openSUSE-13.2-Oss
i | rcc-runtime | пакунок | 0.2.12-2.1.2 | x86_64 | openSUSE-13.2-Oss
v | rcc-runtime | пакунок | 0.2.12-2.1.2 | i586 | openSUSE-13.2-Oss
| texlive-rccol | пакунок | 2013.81.1.2csvn15878-16.1.7 | noarch | openSUSE-13.2-Oss
| texlive-rccol-doc | пакунок | 2013.81.1.2csvn15878-16.1.7 | noarch | openSUSE-13.2-Oss
i | unzip-rcc | пакунок | 6.00-26.1.2 | x86_64 | (Системні пакунки)
v | unzip-rcc | пакунок | 6.00-26.1.2 | x86_64 | openSUSE-13.2-Oss
v | unzip-rcc | пакунок | 6.00-26.1.2 | i586 | openSUSE-13.2-Oss
25.12.2014 15:53 #406901

wpab,
Попробуйте:
[console=root]zypper rm unzip && zypper install --force unzip-rcc[/console]

25.12.2014 15:55 #406902
verg написал:
wpab,
Покажите:
[console]zypper se -s rcc[/console]


Кодировка ru_UA не планируется к использованию?

Вы имели ввиду изменить значение "RC_LC_CTYPE" в файле /etc/sysconfig/language на "uk_UA.UTF-8" ?
Вы уверены что если это сработает с ZIP-архивами то ничего другого в системе не сломается?

25.12.2014 15:56 #406903
"wpab" написал:
Вы имели ввиду изменить значение "RC_LC_CTYPE" в файле /etc/sysconfig/language на "uk_UA.UTF-8" ?

У вас сейчас какое значение?
Нет, не сломается. Всегда можно вернуть обратно.

25.12.2014 16:02 #406904
verg написал:
wpab,
Попробуйте:
[console=root]zypper rm unzip && zypper install --force unzip-rcc[/console]

не помогло

25.12.2014 16:03 #406905
verg написал:
[quote="wpab"]Вы имели ввиду изменить значение "RC_LC_CTYPE" в файле /etc/sysconfig/language на "uk_UA.UTF-8" ?

У вас сейчас какое значение?
Нет, не сломается. Всегда можно вернуть обратно.[/quote]

Сейчас пустые кавычки.
Ладно сейчас попробую и отпишусь.

25.12.2014 16:07 #406907

Покажите:
[console]grep INSTALLED_LANGUAGES /etc/sysconfig/language
grep RC_LANG /etc/sysconfig/language[/console]

25.12.2014 16:11 · отредактировано #406908

Поставил:

RC_LC_CTYPE="ru_UA.UTF-8"

Помогло! Ура!


grep INSTALLED_LANGUAGES /etc/sysconfig/language
INSTALLED_LANGUAGES=""

grep RC_LANG /etc/sysconfig/language
# Local users will get RC_LANG as their default language, i.e. the
RC_LANG="uk_UA.UTF-8"
25.12.2014 17:45 #406916

wpab,
Обновил совет I.
Новый текст:
I.) Некорректное отображение имён файлов в ZIP-архивах, созданных в Windows
Выполнить:
[console=root]zypper in unzip-rcc[/console]

Для локали uk_UA.UTF-8 выполните:
[console=root]yast2 sysconfig set RC_LC_CTYPE="ru_UA.UTF-8"[/console]

25.12.2014 19:48 #406935
"Fat-Zer" написал:
не знаю, что это... я говорил про это

Там одного поля ягода.

26.12.2014 16:12 · отредактировано #406997

Всем спасибо!
Как можно сообщить авторам патча unzip-rcc чтоб пофиксили?

26.12.2014 21:34 #407012

"verg" написал:
RC_LC_CTYPE
что означает префикс RC_? Это чисто сусёвая фича, или ещё где есть? Зачем оно нужно?
27.12.2014 08:47 #407068
"wpab" написал:
Как можно сообщить авторам патча unzip-rcc чтоб пофиксили?

это похоже сусевский патч... так что в его багзиллу и писать...

Войдите или зарегистрируйтесь, чтобы ответить.