Кнопки для 7-Zip
Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер
Респекты респектами, конечно, но давайте ближе к нашим баранам (кнопкам 7z). пре-бета версия - http://upload.com.ua/get/901904649/ (исправленная версия)
Подключение:
1. Распаковываем архивчик в папочку с тоталом.
2. Вытягиваем Smart7z.exe как кнопку на панель.
3. Прописываем параметры - %P%N %T%M
Пока поддерживается только 2 режима:
1. В панели источника отмечен 7z архив, в панели приемника - папка (действие - указанный архив распаковывается в указанную папку).
2. В панели источника отмечена папка, в панели приемника - существующий 7z архив (действие - указанная папка добавляется к указанному (существующему!) архиву).
Осталось добавить обработку ещё 2 ситуаций: папка - папка и архив - архив.
Уже поддерживается все 4 режима.
В будущем возможно изменить параметры кнопки на "%P%S - %T%R" (без кавычек) и обрабатывать списки выделенных файлов\папок.
Подключение:
1. Распаковываем архивчик в папочку с тоталом.
2. Вытягиваем Smart7z.exe как кнопку на панель.
3. Прописываем параметры - %P%N %T%M
Пока поддерживается только 2 режима:
1. В панели источника отмечен 7z архив, в панели приемника - папка (действие - указанный архив распаковывается в указанную папку).
2. В панели источника отмечена папка, в панели приемника - существующий 7z архив (действие - указанная папка добавляется к указанному (существующему!) архиву).
Осталось добавить обработку ещё 2 ситуаций: папка - папка и архив - архив.
Уже поддерживается все 4 режима.
В будущем возможно изменить параметры кнопки на "%P%S - %T%R" (без кавычек) и обрабатывать списки выделенных файлов\папок.
Последний раз редактировалось Samwatas Пн сен 06, 2010 19:59, всего редактировалось 4 раза.
Ладно, пусть будет пре-бета версия
- http://upload.com.ua/get/901904649/ (исправленная версия)
Реализовано все четыре варианта (папка-папка, папка-архив, архив-папка, архив-архив).
Параметры кнопки те же, что и раньше.
Реализовано все четыре варианта (папка-папка, папка-архив, архив-папка, архив-архив).
Параметры кнопки те же, что и раньше.
Последний раз редактировалось Samwatas Пн сен 06, 2010 19:06, всего редактировалось 2 раза.
Когда я делал свою кнопку, мне показалось, что одновременная работа с двумя панелями лишь затрудняет пользование кнопкой. У меня архив распаковывается в папку с именем архива рядом с самим архивом. Дабы не затирать одноименную папку, если она уже существует, к имени папки добавляется штамп дата_время. Аналогично производится и упаковка выделенных объектов (файлов/папок). Здесь имя архива формируется несколько иначе. Обновления архива я не предусматривал, не было у меня в нем необходимости, т.к., задачи были несколько иные...Samwatas писал(а):В панели источника отмечен 7z архив, в панели приемника - папка (действие - указанный архив распаковывается в указанную папку).
Удобнее ли будет пользователю следить за двумя панелями сразу, а то распакуешь архив в другую панель, а там стояла не та папка, а какая нибудь системная и выгребай потом из нее "мусор"!?!?
Вы так не считаете?
PS
Включение компонентов архиватора в кнопку считаю не верным решением по следующим причинам:
1 Включен только 7zG, а он на х86 и небольшом ОЗУ проигрывает 7z при работе с большими архивами. 7z можно заставить работать со словарем 128 МБ, а вот с 7zG это вряд ли удастся сделать из-за фрагментированности ОЗУ.
2 У пользователя может быть уже установлен архиватор, так зачем же ему еще дополнительные файлы за которыми нужно следить и обновлять при обновлении архиватора!?
3 У пользователя может быть х64 система и архиватор х64, и он (пользователь), при использовании встроенных в кнопку компонентов, лишится всех прелестей х64 архиватора и не сможет использовать свое ОЗУ в полной мере.
PPS
Вариант архив-архив работает странно. Из добавляемого архива (1) в обновляемом (2) появляется структура папок архива 1 и файлы из корня этого архива, а файл из вложенной папки архива 1 появляется в архиве 2, но нулевой длины.
Win7 SP1 Ultimate x64, TC8.52a x64
Отвечаю по порядку:
Не буду спорить насчёт двух панелей, замечу только, что тотал - это двухпанельный менеджер, поэтому он заточен на работу с 2-мя панелями. Мне кажется, это дело привычки. Хотя я для того и выложил кнопку, чтобы выслушать разные мнения (если большинство выскажется за изменение поведения кнопки то это не сложно будет сделать).
Распаковка архива: я распаковываю архив в указанную папку, вы создаете папку с именем архива (в которую и распаковываете архив). На мой взгляд, оба метода имеют недостатки (я тоже не люблю, когда при распаковке архива в папку с архивом высыпается всё содержимое, однако мне также не очень нравится, когда при распаковке выпадает папка, внутри которой ещё одна папка (прямо матрёшка какая-то) внутри которой уже идут папки с файлами). При желании можно сделать более умную распаковку (если в корне архива только одна папка или один файл, то распаковывать всё это как есть, если же там несколько папок и\или файлов, то создать папку с именем архива для распаковки уже в нее). Это было бы немного лучше, как считаете?
По поводу включения компонентов архиватора - я больше затачивал под портативное использование тотала (если я пришёл куда-то и принёс что-то в 7з-архиве, а там архиватор не установлен, да ещё и устанавливать нельзя или нежелательно?). Если кому-то хочется положить другую версию, то тут нет никаких проблем при условии что там используются те же параметры командной строки (только не забудьте переименовать исполняемый файл в 7zG.exe).
П.С. Архив я перезалил (исправил одну маленькую ошибку).
Не буду спорить насчёт двух панелей, замечу только, что тотал - это двухпанельный менеджер, поэтому он заточен на работу с 2-мя панелями. Мне кажется, это дело привычки. Хотя я для того и выложил кнопку, чтобы выслушать разные мнения (если большинство выскажется за изменение поведения кнопки то это не сложно будет сделать).
Распаковка архива: я распаковываю архив в указанную папку, вы создаете папку с именем архива (в которую и распаковываете архив). На мой взгляд, оба метода имеют недостатки (я тоже не люблю, когда при распаковке архива в папку с архивом высыпается всё содержимое, однако мне также не очень нравится, когда при распаковке выпадает папка, внутри которой ещё одна папка (прямо матрёшка какая-то) внутри которой уже идут папки с файлами). При желании можно сделать более умную распаковку (если в корне архива только одна папка или один файл, то распаковывать всё это как есть, если же там несколько папок и\или файлов, то создать папку с именем архива для распаковки уже в нее). Это было бы немного лучше, как считаете?
По поводу включения компонентов архиватора - я больше затачивал под портативное использование тотала (если я пришёл куда-то и принёс что-то в 7з-архиве, а там архиватор не установлен, да ещё и устанавливать нельзя или нежелательно?). Если кому-то хочется положить другую версию, то тут нет никаких проблем при условии что там используются те же параметры командной строки (только не забудьте переименовать исполняемый файл в 7zG.exe).
П.С. Архив я перезалил (исправил одну маленькую ошибку).
-
Serge Yolkin
- Сообщения: 664
- Зарегистрирован: Сб июл 25, 2009 11:12
Лучше, если только папка. Некоторые программы в виде одного файла при первом запуске создают еще несколько, так что даже один файл - лучше в отдельную папку. А идея интересная. Очень хотел бы попробовать в исполняемом виде. И, действительно, можно без архиватора.Samwatas писал(а):При желании можно сделать более умную распаковку (если в корне архива только одна папка или один файл, то распаковывать всё это как есть, если же там несколько папок и\или файлов, то создать папку с именем архива для распаковки уже в нее). Это было бы немного лучше, как считаете?
Я это знаю.Samwatas писал(а):тотал - это двухпанельный менеджер
- установка в противоположной панели принимающей папки, а часто и создание оной ввиду ее отсутствия - лишние телодвижения.
- извлечение без предупреждения может привести к печальным последствиям в случае случайного нажатия на кнопку (могут быть затерты нужные файлы в не санкционированном месте). В моем варианте будет просто создана новая папка не затирающая ни чего и удалить ее будет легко, если нажатие на кнопку было ошибочным.
При этом теряется информация об исходной структуре архива, а иногда она очень важна. Мы, например, не сможем узнать, была ли у Вас в архиве кнопки папка или же все было упаковано без папки. Я от такого варианта отказался.Samwatas писал(а):можно сделать более умную распаковку
Тогда ясно "откуда ноги растут", это на любителя.Samwatas писал(а):затачивал под портативное использование
Исходников-то нет и не ясно какие они у Вас, эти параметры. А хотелось бы на них взглянуть, т.к., думаю и в них можно найти предмет для обсуждения... Вот после этого можно вернутся и к вопросу портабельности...Samwatas писал(а):при условии что там используются те же параметры командной строки
И еще... 7-Zip распаковывает очень много типов архивов (и не только архивов), почему нужно ограничиваться только расширением .7z?
Win7 SP1 Ultimate x64, TC8.52a x64
Вполне возможно, поэтому достаточно реализовать "умную" распаковку, чтобы избавиться от этого недостатка (правда буду ли я реализовывать всё это, учитывая мою лень?).- установка в противоположной панели принимающей папки, а часто и создание оной ввиду ее отсутствия - лишние телодвижения
Случайно нажать на кнопку конечно можно, однако случайно перезаписать файлы нельзя (поскольку 7з как и большинство архиваторов запрашивает подтверждение), тем не менее можно добавить вывод окошка типа "вы действительно хотите распаковать этот архив, или просто случайно ткнули в кнопку?" хотя это тоже будет лишнее телодвижение.извлечение без предупреждения может привести к печальным последствиям в случае случайного нажатия на кнопку (могут быть затерты нужные файлы в не санкционированном месте).
Опять же не буду спорить (вполне возможно для вас это важно), однаку лично у меня никогда не возникало такой нужды и я даже не могу представить, для чего это мне может хоть когда-нибудь понадобиться.При этом теряется информация об исходной структуре архива, а иногда она очень важна. Мы, например, не сможем узнать, была ли у Вас в архиве кнопки папка или же все было упаковано без папки. Я от такого варианта отказался.
По-моему, портативные программы достаточно удобны. Лично я по возможности стараюсь использовать портативки кроме случаев, когда программа ассоциирует себя с какими-то файлами или прописывается в контекстное меню и т.д. Большинство производителей софта это поняло и тоже облегчает процесс портабелизации своим пользователям, взять хотя бы тот же тотал - сперва начиналось с ключа UseIniInProgramDir, потом пошли переменние типа %COMMANDER_PATH% и внутренние файловые ассоциации и т.д.Тогда ясно "откуда ноги растут", это на любителя.
Тот же броузер - переставил Виндовс, а в портативном Файрфоксе или Опере всё по прежнему: закладки, сессии, логины и пароли - всё на месте.
Вам нужны исходники? Вы тоже балуетесь Автоитом?Исходников-то нет и не ясно какие они у Вас, эти параметры. А хотелось бы на них взглянуть, т.к., думаю и в них можно найти предмет для обсуждения..
Параметры пока стандартные (строго по хелпу):
Для упаковки - 7z.exe а архив.7z папка_упаковки\*
Для распаковки - 7z.exe x архив.7z -o_папка_распаковки
Дополнительные ключи (типа -m, -t и др.) пока не используются (это пока бета версия кнопки
Ну во-первых тема называется "Кнопки для 7-Zip", во-вторых архивы zip и rar неплохо поддерживаются самим тоталом, остальные... Ну для исо есть плагин (хотя и для 7z он тоже есть, но он меня не очень впечатляет), остальное довольно редкое (хотя всякие гзипы-бзипы у линуксоидов и встречаются часто, тем не менее). Хотя при большой необходимости и это можно добавить. Конкретно вам это нужно, или вы просто спросили?И еще... 7-Zip распаковывает очень много типов архивов (и не только архивов), почему нужно ограничиваться только расширением .7z?
7-Zip - это название архиватора, а 7z - это основной формат этого архиватора, но далеко не единственный и поддержка кнопкой распаковки других типов архивов не противоречит названию темы.Samwatas писал(а):тема называется "Кнопки для 7-Zip"
Я высказал лишь свое мнение, а впрочем кнопка Ваша и Вам принимать решения, себе я уже сделал что хотел.
Win7 SP1 Ultimate x64, TC8.52a x64
Повторюсь, из других форматов рар и зип поддерживаются тоталом, остальные достаточно редкие, хотя если будут запросы, то это можно добавить. Хотя Вам, я так понимаю, это не нужно, поскольку себе вы уже сделали необходимый набор кнопок. Кстати, позвольте полюбопытствовать, сколько у вас кнопок такой направленности, и чем они сделаны (обычные батники?)?gora писал(а):... а 7z - это основной формат этого архиватора, но далеко не единственный и поддержка кнопкой распаковки других типов архивов не противоречит названию темы.Samwatas писал(а):тема называется "Кнопки для 7-Zip"
