Page 1 of 147

Observer — распаковка файлов из различных контейнеров

Posted: Mon 31 Aug, 2009 11:29
by Ariman
Тема для обсуждения плагина Observer.
Плагин предназначен только для распаковки файлов. Запаковка/редактирование архивов не планируется.

Хотелки/баги:

Известные проблемы:

Планируемые новые модули:

Если "ничего не работает", то прежде чем писать сюда:


Сторонние модули:
  • Dir — поддержка вывода команд dir и ls в качестве виртуального архива.
  • Inno Setup — поддержка файлов Inno Setup (сделан на основе innounp).
  • cab — распаковка нестандартных .cab архивов (Windows Update и др.)

Observer — распаковка файлов из различных контейнеров

Posted: Fri 09 Oct, 2009 16:29
by AlexII


В отличие от других плагинов, не понимает кавычки при доступе через префикс.
Работает:

Code: Select all

observe:C:\Install\Adobe Photoshop\Adobe Photoshop Creative Suite 2.0\Adobe Photoshop CS2.msi
Так нет:

Code: Select all

observe:"C:\Install\Adobe Photoshop\Adobe Photoshop Creative Suite 2.0\Adobe Photoshop CS2.msi"

Re: Observer — распаковка файлов из различных контейнеров

Posted: Fri 09 Oct, 2009 18:01
by John Doe
Наконец-то! Спасибо, Ariman!

Добавлю к багам:
С nsis как-то слишком выборочно работает. Например дистрибутивы 7-zip'а не открывает.

Пожелания:
- распаковка скрипта nsis
- поддержка inno

Вопрос: операции добавления/удаления/изменения файлов не предусмотрены по идеологическим причинам, или можно надеяться что когда-нибудь?

Re: Observer — распаковка файлов из различных контейнеров

Posted: Fri 09 Oct, 2009 18:09
by Wave
Вроде бы 7zip умеет всё то же, нэ?
Ну и хотелось бы, чтобы новопоявляющиеся плагины были под ФАР2 или ФАР1.7х+ФАР2.

Re: Observer — распаковка файлов из различных контейнеров

Posted: Fri 09 Oct, 2009 18:12
by Kerberos464
жаль, что нет поддержки контейнеров Acronis True Image ;(
очень бы хотелось.

Re: Observer — распаковка файлов из различных контейнеров

Posted: Fri 09 Oct, 2009 18:22
by Wave
О, это да, кстати!
Только они, гады, меняют формат от версии к версии.

Observer — распаковка файлов из различных контейнеров

Posted: Fri 09 Oct, 2009 19:23
by Ariman
AlexII wrote:
readme_ru.txt wrote:3. Системные требования.
Минимальная версия FAR-а для работы плагина 1.70, build 2087 (релиз).
Вижу в реальности :):

Code: Select all

   ╔══════════════════════ Ошибка ═══════════════════════╗
   ║    Этот модуль требует FAR более высокой версии     ║
   ║ C:\Program Files\Far\Plugins\Observer\4Observer.dll ║
   ║          Требуется версия FAR - 1.75.2587.          ║
   ║           Текущая версия FAR - 1.75.2565.           ║
   ║                     Продолжить                      ║
   ╚═════════════════════════════════════════════════════╝
Загрузил свежую версию. Заработало.
Действительно, надо бы текст подправить. Обновил хедеры от версии новее, а подписать забыл. :)
AlexII wrote: В отличие от других плагинов, не понимает кавычки при доступе через префикс.
Спасибо, подправим.
John Doe wrote: Добавлю к багам:
С nsis как-то слишком выборочно работает. Например дистрибутивы 7-zip'а не открывает.
ОК. Проверю.
John Doe wrote: Пожелания:
- распаковка скрипта nsis
- поддержка inno
Скрипт будет. Одна из причин форка кода для nsis-а была в том чтобы врубить скрипт, который в официальном дистре не включен.
А насчет inno, чем innounp не подходит? Вполне врооде работает.
John Doe wrote:Вопрос: операции добавления/удаления/изменения файлов не предусмотрены по идеологическим причинам, или можно надеяться что когда-нибудь?
Ну разве что в ISO образы. В инсталтяоры бессмысленно делать.
fibre wrote:жаль, что нет поддержки контейнеров Acronis True Image ;(
очень бы хотелось.
А есть на них спецификация хотя бы неофициальная? Или код какой? Реверсить код акрониса как то нет желания. :)
Wave wrote:Вроде бы 7zip умеет всё то же, нэ?
Не совсем. Исошки он только классические распаковывает (nrg, bin, mdf не умеет). Поддержка MSI фиг пойми какая. А код nsis-а хоть почти тот же, но мне у них некоторые вещи с именами файлов не понравились.
Wave wrote:Ну и хотелось бы, чтобы новопоявляющиеся плагины были под ФАР2 или ФАР1.7х+ФАР2.
Будет. Просто хочу пока обкатать код на той версии, которой чаще пользуюсь. Плагин на самом деле юникодный внутри, перевести на 2-ю версию Фара дело быстрое.

Re: Observer — распаковка файлов из различных контейнеров

Posted: Fri 09 Oct, 2009 21:23
by John Doe
Ariman wrote:А насчет inno, чем innounp не подходит? Вполне врооде работает.
Основная проблема описана тут. Ну и мултиарк к тому же неуникодный.
Ariman wrote:
John Doe wrote:Вопрос: операции добавления/удаления/изменения файлов не предусмотрены по идеологическим причинам, или можно надеяться что когда-нибудь?
Ну разве что в ISO образы. В инсталтяоры бессмысленно делать.
Иногда не помешало бы.

Re: Observer — распаковка файлов из различных контейнеров

Posted: Fri 09 Oct, 2009 23:03
by Maximus5
А почему "изменение" бессмысленно?

Re: Observer — распаковка файлов из различных контейнеров

Posted: Sat 10 Oct, 2009 10:41
by ccaid
новые возможности по сравнению с 7-zip alt - это плюс. но еще один архивный плагин в добавок к нескольким используемым сейчас - это минус.
нет ли дальних планов соединить тем или иным способом их? типа предложить добавленный код в 7-zip (Павлову) или сделать мод на его основе или еще как-то...

Re: Observer — распаковка файлов из различных контейнеров

Posted: Sat 10 Oct, 2009 20:04
by Ariman
Maximus5 wrote:А почему "изменение" бессмысленно?
Ну изменение, в вопросе инсталяторов, это фактически удалить+добавить. А это пересборка пакета без наличия исходного скрипта.
ccaid wrote:новые возможности по сравнению с 7-zip alt - это плюс. но еще один архивный плагин в добавок к нескольким используемым сейчас - это минус.
нет ли дальних планов соединить тем или иным способом их? типа предложить добавленный код в 7-zip (Павлову) или сделать мод на его основе или еще как-то...
Переписывать много придется. Все таки в 7-zip код стандартизирован. Да и проталкивать автору свои изменения лениво. :)

Re: Observer — распаковка файлов из различных контейнеров

Posted: Sun 11 Oct, 2009 08:44
by John Doe
Ariman wrote:
Maximus5 wrote:А почему "изменение" бессмысленно?
Ну изменение, в вопросе инсталяторов, это фактически удалить+добавить. А это пересборка пакета без наличия исходного скрипта.
Даже при наличии исходника удобно обходиться без пересборки, а уж при отсутствии - особенно.
Ariman wrote:Переписывать много придется. Все таки в 7-zip код стандартизирован. Да и проталкивать автору свои изменения лениво. :)
Observer тоже не просто будет дописать и отладить, а плагин 7-zip готовый лежит...

Очередные пожелания:

- ISO: учитывать опцию [x] Show uppercase file names in lowercase
- ISO: отображать прогресс извлечения файла

- MSI: отображать временные штампы файлов
- MSI: открывает не все файлы. Пример

Re: Observer — распаковка файлов из различных контейнеров

Posted: Mon 12 Oct, 2009 09:08
by Ariman
John Doe wrote:Даже при наличии исходника удобно обходиться без пересборки, а уж при отсутствии - особенно.
Кто ж спорит, удобно. :) Но рентабельность усилий по реализации такой функциональности весьма низкая. Если вообще реализуемо.
John Doe wrote:Observer тоже не просто будет дописать и отладить, а плагин 7-zip готовый лежит...
Все переписать и отладить еще сложнее будет :)
John Doe wrote:- ISO: учитывать опцию [x] Show uppercase file names in lowercase
Хм. Я всегда думал, что этим Фар самостоятельно заведует. Не совсем теперь понятно, как это из плагина делать. Поищем.
John Doe wrote:- ISO: отображать прогресс извлечения файла
Прогресс будет. Его пока нет ни для какого формата.
John Doe wrote:- MSI: отображать временные штампы файлов
Тут есть небольшой нюанс, в msi базе время не храниться, это надо распаковывать встроенный cab, а это притормаживает время открытия. Сейчас cab достается только если подана команда вытащить часть файлов. Подумаю над этим.
John Doe wrote:- MSI: открывает не все файлы.
Спасибо, гляну.

Re: Observer — распаковка файлов из различных контейнеров

Posted: Mon 12 Oct, 2009 10:01
by Ariman
Выложил новую версию 1.0.2. Пофикшен модуль для MSI (не все файлы открывались).

Re: Observer — распаковка файлов из различных контейнеров

Posted: Mon 12 Oct, 2009 13:45
by John Doe
Ariman wrote:
John Doe wrote:Observer тоже не просто будет дописать и отладить, а плагин 7-zip готовый лежит...
Все переписать и отладить еще сложнее будет :)
Может и так, зато после этого любое приложение использующее 7z.dll сможет читать эти форматы.
Ariman wrote:
John Doe wrote:- MSI: отображать временные штампы файлов
Тут есть небольшой нюанс, в msi базе время не храниться, это надо распаковывать встроенный cab, а это притормаживает время открытия. Сейчас cab достается только если подана команда вытащить часть файлов. Подумаю над этим.
Вроде бы msi-plus.wcx не тормозит при открытии.

Ещё одна косметическая деталь: после нажатия Enter фар "нюхает" файл выбирая какому плагину скормить. Когда очередь доходит до Observer - он выводит сообщение "Reading files list", причём это сообщение продолжает висеть даже после того как фар продолжает перебирать уже другие плагины.
В результате создаётся впечатление будто Observer тормозит.

PS
Чтобы увидеть этот эффект надо включить меню выбора плагина Options/Plugin selection/[x] File processing (OpenFilePlugin)
(А в фар 1.75 надо воспользоваться Underscore)