LINUX.ORG.RU

Midnight Commander научился работать с бета версией unzip 6.10c

 ,


0

2

Сабж. Обновил unzip до бета версии - В unzip появилась возможность выбора кодировки имен файлов внутри архива - (исходники со слакбилдом здесь: https://yadi.sk/d/R5gssgBH3QU8ig), и внезапно обнаружил, что свежий Midnight Commander 4.8.20 таки не поломался.

Раньше, напоминаю, Midnight Commander был несовместим с unzip 6.10c, поскольку там поменялись опции командной строки. А со старым стабильным unzip'ом Midnight Commander в zip архивах, где в именах есть не-ASCII символы, отображает их вопросительными знаками, и отказывается их извлекать. Зато, вплоть до последнего времени, можно было извлекать файлы с именами в ASCII-символах.

Но, теперь всему этому пришёл конец! Теперь можно поставить Midnight Commander 4.8.20 и unzip 6.10c, и в этом Midnight Commander'е не-ASCII символы сразу будут отображаться правильно, и файлы с этими именами будут корректно извлекаться!

★★★★★

Ну круто, чо. 2018-й на носу.

anonymous
()

mc офигенная штука - никаких архиваторов не надо - сам все умеет, сильно не дооценивал его раньше - ну уж теперь то маст хев.

amd_amd ★★★★★
()
Ответ на: комментарий от amd_amd

Таки нужны - сторонные архиваторы.
Вот наример, открываешь архив одного браузера с mc.
Открываешь исходник другого браузера - mc завис.

Но такое, лишь при работе с очень большими архивами. И bsdtar - универсальней и проще.

blitz
()
и в этом Midnight Commander'е не-ASCII символы сразу будут отображаться правильно, и файлы с этими именами будут корректно извлекаться!

Если вы меняете версию unzip, то mc не должен влиять на отображение знаков вопроса. Или у вас с этой версией 6.10c в mc 4.8.19 проблема?

buka14
()
Ответ на: комментарий от buka14

Прежние версии Midnight Commander'а вообще не могли работать с бета версией unzip'а, поскольку, повторяю, в ней поменялись опции командной строки. Раньше Midnight Commander работал только со стабильной версией unzip'а, которая ещё не поддерживает iconv. Теперь же Midnight Commander научился работать и с бета версией unzip'а, которая позволяет ему через iconv правильно читать имена файлов.

saahriktu ★★★★★
() автор топика

Раньше, напоминаю, Midnight Commander был несовместим с unzip 6.10c, поскольку там поменялись опции командной строки

Хех, а ещё во времена DN все опции архиваторов можно было настроить в конфиге, а не хардкодить :)

KRoN73 ★★★★★
()

unzip 6.10c

В генту еще не завезли:

eix -I unzip
[I] app-arch/unzip
     Доступные версии:      6.0_p20 (~)6.0_p21 (~)6.0_p21-r2 {bzip2 natspec unicode}
     Установленные версии:  6.0_p21-r2(03:18:42 27.11.2017)(bzip2 unicode -natspec)
     Домашняя страница:     http://www.info-zip.org/
     Описание:              unzipper for pkzip-compressed files

anonymous
()

Что толку, если архив через mc извлекается медленно и быстрее прочитать справку к unzip и после воспользоваться его вызовом из командной строки?

grem ★★★★★
()
Ответ на: комментарий от KRoN73

Хех, а ещё во времена DN все опции архиваторов можно было настроить в конфиге, а не хардкодить :)

А кто сказал, что в mc это совсем уж захардкожено ? Всё в /usr/lib/mc/ext.d/archive.sh. И я, кстати, не вижу различий в этом файле у 4.8.20 и 4.8.19

AS ★★★★★
()
Ответ на: комментарий от grem

если архив через mc извлекается медленно

это ты на tar проверял? Так неудивительно! Заходишь ты внутрь tar, он пока пробежит по всему архиву, имена файлов соберет - вот один лаг. Затем выделил ты файлы, начал распаковывать - он пока все эти файлы по-одному вытащит из тара... - вот тебе и вторые тормоза. Виноват в этом tar, конечно, а не mc.

Deleted
()
Ответ на: комментарий от Deleted

Нет, я именно о zip-архивах. Насколько помню, даже внутрь архива не нужно заходить было, но проверю ещё раз.

Помню, что это только на zip наблюдал.

grem ★★★★★
()
Последнее исправление: grem (всего исправлений: 2)
Ответ на: комментарий от grem

а, прости, невнимательно прочитал. Проверил, подтверждаю, заметно на глаз. Думаю, дело похожее, в том, что ты выделяешь файлы в mc и он их вытаскивает по-одному из архива

Deleted
()
Ответ на: комментарий от slapin

а чё у меня тар не тормозит на больших архивах,

наверно, ты делаешь просто «tar xf» для всего архива - чему там тормозить. А mc лезет за каждым файлом по-отдельности

Deleted
()

перенесите тему сюда, раз отдельный раздел выделили

kiotoze ★★★★
()
Ответ на: комментарий от KRoN73

Аминь. Чё творят, а? Чиста всплакнул.

По теме:
Ползём в папочку конфига сего чуда. В ней неожиданно находим /etc/mc/mc.ext
Читаем, что там на zip (да и на другие) вызывается мегофайл /usr/lib/mc/ext.d/archive.sh
Не поверишь! Нажав заветный поиск, мы ВнЕзАпНо! находим строку, отвечающую за вызов заветного архиватора.

Дальше начинается самое интересное! Надо резко открыть новый эмулятор терминала, набрать команду вызова архиватора (возможно, даже man %subj%, так сказать). Резко переключившись на предыдущий эмулятор, набрать команду и НЕ ЗАТЕРЕВ лишнего!

Ура! Хак удался!

Deleted
()

А чем эта бета unzip лучше патченного Фроловым 6.0?
Я имею в виду вот это:

unzip:
Установлен: 6.0-20ubuntu1+i18n4
Кандидат: 6.0-20ubuntu1+i18n4
Фиксатор пакета: 6.0-20ubuntu1+i18n4
Таблица версий:
*** 6.0-20ubuntu1+i18n4 610
500 http://ppa.launchpad.net/frol/zip-i18n/ubuntu/ trusty/main i386 Packages

Да, если что: у меня этот бинарник вертится на jessie и LMDE2, этот же патченный распаковщик собирается для Суси и идет из коробки в Альте.

PVOzerski ★★★
()
Ответ на: комментарий от saahriktu

Эта версия умеет работать с iconv'ом?

Я так понял, что аналогичный функционал реализован без iconv.
Цитирую информацию со странички Дмитрия Фролова:

Unzip - applied natspec patch from http://sisyphus.ru/ru/srpm/Sisyphus/unzip/patches/0 to support decoding of filenames in archives, created with different charset on Windows. Fixes bug #580961.

Zip - applied natspec+asdos patch from

http://www.opennet.ru/tips/info/2494.shtml to support automatically encoding file names from current locale to a Windows encoding and create archives with DOS-compatible filenames by default. This is to complement changes to unzip utility.



P7zip - Use natspec library to encode/decode filenames in ZIP archives according to a charset used on Windows. Store file names in DOS-compatible format. Fixes bug #580961 in file-roller.

Libnatspec - used to detect appropriate charsets based on your locale. You need to set up your locale correctly.

PVOzerski ★★★
()
Последнее исправление: PVOzerski (всего исправлений: 2)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.