[Tools] Open File Shell For TC

Обсуждение только плагинов и утилит для Total Commander.

Модераторы: d-view, Моторокер, Avada, CaptainFlint, Nik

Аватара пользователя
CaptainFlint
Сообщения: 6239
Зарегистрирован: Вт дек 14, 2004 22:34
Контактная информация:

Сообщение CaptainFlint »

Yams
Поздравляю с выходом новой версии (1.3) и с появлением нового пользователя. :) В связи с появлением возможности открывать несколько файлов по F4 решил я, наконец, попробовать эту прожку взамен любимого, но, увы, не лишённого определённых багов ChoiceEditor'а.

Есть предложение по улучшению.
1. Зря для сохранения иконок был выбран формат BMP. В некоторых случаях получается картинка, подобная этой:
http://img288.imageshack.us/img288/2161/oftc4zv.png
Лучше использовать ICO или PNG. Ну или, на худой конец, и в тот же BMP можно писать полупрозрачность (в "дополнительный" байт)...
2. На той же картинке видно, что иконка самой программы не шибко красиво смотрится. Предлагаю сделать стандартный мультиформатный значок, который будет отображаться с максимальным качеством, доступным на данной системе.
3. Это совсем уж мелкая мелочь, для вылизывания. Когда наводишь курсор на программу, в тултипе отображается список расширений. И этот список заканчивается запятой. Просто некрасиво. :)
Аватара пользователя
Yams
Сообщения: 115
Зарегистрирован: Пн окт 17, 2005 16:31
Откуда: Тверь
Контактная информация:

Сообщение Yams »

2CaptainFlint
Спасибо за поздравление! И спасибо за выбор :) Надеюсь, он останется надолго.

По пунктам отвечу:
1) Формат Bmp выбран был просто потому, что желания думать не было :) Просто накидал примерный код, и всё. Замечания о поводу некрасивостей были, но пока я на них не обращал книмания. Пожалуй, действительно стоит исправить!
2) Иконка самой программы... Вот чего у меня плохо получается, так это придумывать иконки. На каждую у меня уходит примерно часа по два. Всё думаю, а как лучше - вопрос в левом верхнем углу или в правом нижнем? И какого цвета? :) И как-то полупрозрачность уже особо не учитывается. Как есть, так есть. Но теперь исправить стоит!
3) О, не заметил! К таким вещам я обычно отношусь придирчиво. Спасибо, исправлю![/b]
Аватара пользователя
CaptainFlint
Сообщения: 6239
Зарегистрирован: Вт дек 14, 2004 22:34
Контактная информация:

Сообщение CaptainFlint »

Yams
Ещё парочка баг-репортов.
1. Если при создании файла по Shift+F4 курсор находится на элементе перехода в родительский каталог [..], то у OFSTC сносит крышу - помимо созданного, открывается ещё какой-то дополнительный файл (ещё не выяснил, какой именно), Тотал при этом выдаёт MessageBox "Нет выбранных файлов" (это явно его реакция на посылку клавиши F4). Да и вообще, по Shift+F4 часто происходят нехапланированные действия (прожка усердно пытается открыть файлы, которые были выделены раньше, даже если сейчас выделение уже давно снято).
2. Нередко программка забывает восстанавливать буфер обмена. Очень обидно бывает - скопировал текст в буфер, открыл текстовый файлик по F4, чтобы туда сбросить содержимое буфера - а фигу, содержимое теперь - имя самого файлика. Приходится заново лезть туда, откуда копировал, и хорошо ещё, если программа не закрыта.
Аватара пользователя
CJ Flash
Сообщения: 128
Зарегистрирован: Ср фев 15, 2006 18:50
Откуда: Череповец

Сообщение CJ Flash »

Yams
Обнаружил в последней версии сабжа глюк: при передаче файла программе Akelpad (http://akelpad.net.ru), последняя выдаёт ошибку "Невозможно открыть файл". Сразу скажу - с ChoiceEditor'ом такой проблемы не наблюдалось.
Аватара пользователя
Yams
Сообщения: 115
Зарегистрирован: Пн окт 17, 2005 16:31
Откуда: Тверь
Контактная информация:

Сообщение Yams »

2CaptainFlint:

Спасибо, отловлю глюки! А вообще, с буфером обмена я попытаюсь расстаться. Мне что-то не нравится, что буфер обмена приходится использовать. Сейчас пытаюсь перейти на низкоуровневый код, почти получается доломиться до списка файлов в TC. Уже понял, каким образом получить номера выделенных строк, осталось только разобраться, как можно получить сами эти строки, т.е. полные пути до файлов. Пока вот не очень получается, SendMessage, собака, возвращает ахинею. Думаю, добъю в ближайшие 2-3 дня.
А про Shift+F4 даже и не знал. По поводу открытия старых файлов - это всё буфер обмена, собака :x

2CJ Flash:

С AkelPad'ом, я чувствую, мне придётся вообще работать отдельно :) Редактор почему-то при передаче в командной строке имени файла умудряется съедать один символ в расширении. В результате вместо Readme.txt от пытается открыть Readme.tx и почему такое происходит, я пока не выснил. Нав., нужно будет ввести список программ, с которыми стоит работать аккуратно и нежно :lol:
Спасибо за замечание!
Ник
Сообщения: 1256
Зарегистрирован: Ср дек 15, 2004 09:33
Откуда: Москва

Сообщение Ник »

Yams писал(а):С AkelPad'ом, я чувствую, мне придётся вообще работать отдельно :) Редактор почему-то при передаче в командной строке имени файла умудряется съедать один символ в расширении. В результате вместо Readme.txt от пытается открыть Readme.tx и почему такое происходит, я пока не выснил.
ListEdit то же самое :(
Аватара пользователя
Yams
Сообщения: 115
Зарегистрирован: Пн окт 17, 2005 16:31
Откуда: Тверь
Контактная информация:

Сообщение Yams »

2Ник:
ListEdit то же самое
Попробую придумать какой-нибудь псевдоязык, чтобы можно было "разговаривать" с такими программами. Т.е. создавать для них командную строку ровно так, как они хотят :)

А так, пользуйтесь ConTEXT'ом! Или Edit+, отличные редакторы! И подсветки на любой вкус :)
Аватара пользователя
CaptainFlint
Сообщения: 6239
Зарегистрирован: Вт дек 14, 2004 22:34
Контактная информация:

Сообщение CaptainFlint »

Yams
Ишшо баг-репорт. Невозможно назначить редактор для файлов без расширения: точки в имени файла нет, соответственно, он находит последнюю точку во всём пути (ежели таковая есть), ну и вписывает весь этот кусок в качестве "расширения". Задать пустое расширение вручную тоже, естественно, не удаётся (по той же причине).

PS: Скоро ли ожидается апдейт? ;)
Аватара пользователя
Athari
Сообщения: 81
Зарегистрирован: Сб дек 18, 2004 23:37
Откуда: Казань
Контактная информация:

Сообщение Athari »

Пока вот не очень получается, SendMessage, собака, возвращает ахинею. Думаю, добъю в ближайшие 2-3 дня.
Скорее всего, придется встраиваться в адресное пространство TC. Когда список получает запрос на инфу по элементу, он этот адрес за свой принимает и никак не может писать в буфер в твоем адресном пространстве. Если хочешь, у меня где-то исходники на такое дело валялись...
Аватара пользователя
Yams
Сообщения: 115
Зарегистрирован: Пн окт 17, 2005 16:31
Откуда: Тверь
Контактная информация:

Сообщение Yams »

2CaptainFlint:
Вот чего не предусмотрел, того не предусмотрел :) Придётся рассмаривать отдельно, сделаю в след. версии. А так, обновление выложено! В основном косметические изменения: там поправить, там сделать более стабильно. Добавилась поддержка COMMANDER_PATH, и программа при регистрации пишет себя в Ini-файл TC именно с этим ключём.
Пока никак не поправил баги с Shift+F4 на [..] - элементе, и мне кажется, что я тут ничего поделать не смогу. Но это только кажется, пока говорить ничего не буду.
Также не поправлены возможные ошибки с буфером обмена. Думаю, это будет самым большим недостатком программы. Попробую связаться с Гислером, спросить его об этом. М.б., подскажет! :)
В остальном, пользуйтесь на здоровье!

2Athari:
Скорее всего, придется встраиваться в адресное пространство TC
Не, такой способ тоже не поможет. И виной тому сам ListBox. Если у ListBox'а прописано свойство "не содержит строк" (не помню, как это свойство пишется на английском, сырцов под рукой нет), то сам список ни за что не вернёт строку, он вернёт указатель на некую область памяти. А структура этой области памяти известна только самому разработчику, и более никому. Потому-то здесь и тупик!
Аватара пользователя
CaptainFlint
Сообщения: 6239
Зарегистрирован: Вт дек 14, 2004 22:34
Контактная информация:

Сообщение CaptainFlint »

Yams
Пока никак не поправил баги с Shift+F4 на [..] - элементе, и мне кажется, что я тут ничего поделать не смогу. Но это только кажется, пока говорить ничего не буду.
Ну, это ещё ладно, жить можно.
Также не поправлены возможные ошибки с буфером обмена.
А вот это обидно... :( Этот баг успел уже основательно подзадолбать. Может, можно исправить хотя бы, чтобы при Shift+F4 буфер обмена нормально восстанавливался, а? А то это - самая часто используемая ситуация, и именно это действие гарантированно грохает содержимое буфера. :( При использовании обычного F4 ошибка возникает крайне редко, её ещё можно пережить. А вот Shift+F4... Я уже начинаю подумывать о возвращении обратно на ChoiceEditor...

Также есть ещё несколько моментов для будущих версий (т.е. некритичных).
1. Было бы очень удобно, если бы после открытия файлов выделение в Тотале автоматом снималось. Лучше это, конечно, сделать опцией (а то мне такое будет удобно, а кому-то, наоборот, лучше, чтобы файлы оставались выделенными).

2. Если курсор стоит на невыделенном файле, и при этом в панели есть несколько выделенных, то при нажатии F4 открываются как выделенные, так и текущий, на котором стоит курсор. Вот последнее, ИМХО, лишнее. Ведь все операции в Тотале выполняются либо над выделенными файлами, либо (если их нет) над текущим файлом, но никогда над всеми ими одновременно.

3. В 1.4 картинки не хранятся больше в папке Icons. А где же? Неужто каждый раз заново дёргаются прямо из EXE-файлов? Если да - то обязательно надо переделать обратно, на кэширующий вариант, но кэширующий не в BMP, а в 32-bit ICO или PNG, например. А то вдруг некоторые из программ на сетевых дисках лежат?..
Аватара пользователя
CJ Flash
Сообщения: 128
Зарегистрирован: Ср фев 15, 2006 18:50
Откуда: Череповец

Сообщение CJ Flash »

Yams писал(а):2CJ Flash:

С AkelPad'ом, я чувствую, мне придётся вообще работать отдельно :) Редактор почему-то при передаче в командной строке имени файла умудряется съедать один символ в расширении. В результате вместо Readme.txt от пытается открыть Readme.tx и почему такое происходит, я пока не выснил. Нав., нужно будет ввести список программ, с которыми стоит работать аккуратно и нежно :lol:
Спасибо за замечание!
Гм, вот что показывает мне менеджер процессов Process Killer в качестве командной строки для запущенного AkelPad`a:
"E:\Soft\Used\Akepad\Akelpad.exe" "E:\SOFT\USED\TOTALCMD\OpenFileTC\OpenFileTC_rus.txt"
Вроде никаких "обрезаний" не наблюдается...

PS: А вот командная строка при использовании ChoiceEditor`a:
E:\Soft\Used\Akepad\akelpad.exe E:\SOFT\USED\TOTALCMD\OpenFileTC\OpenFileTC_rus.txt
The past was yesterday...

TC 8.51a x32, #116718 Personal licence
Kitsune
Сообщения: 2
Зарегистрирован: Ср дек 22, 2004 21:50

Сообщение Kitsune »

У меня после установки последней версии 1.4 при нажатии на F4 вообще выдает сообщение "Файл не найден". Что я только не пробовал: и вернуться к Чузу, и напрямую прописать путь до редактора.
Помогло лишь переименнование папки!!
Вест реестр прошерстил - не нашёл ничего путного. В чем трабла?
Аватара пользователя
CaptainFlint
Сообщения: 6239
Зарегистрирован: Вт дек 14, 2004 22:34
Контактная информация:

Сообщение CaptainFlint »

Yams
На случай, если ты не видел: на оф. форуме появилась темка по твоей прожке, ответил бы. :) A то товарисч Clo очень интересуется вопросом распространения справки (в частности)...
http://ghisler.ch/board/viewtopic.php?t=10026
Аватара пользователя
Yams
Сообщения: 115
Зарегистрирован: Пн окт 17, 2005 16:31
Откуда: Тверь
Контактная информация:

Сообщение Yams »

Прошу прощения, что долго молчал! :(

2CaptainFlint:
Было бы очень удобно, если бы после открытия файлов выделение в Тотале автоматом снималось.
Это не сложно :) Обязательно сделаю.
Если курсор стоит на невыделенном файле, и при этом...
Э-э-э... Я и думал, что этот момент встретит недоумение. Исправлю, обязательно. Просто я таким образом пытался снять вопрос: а по какому файлу анализитуется открытие редактора? В текущей ситуации указатель Тотала и показывает, какое раширение будет определяющим при выборе EXE. Но исправлю. Попробую каким-то другим образом этот момент анализировать.
А то вдруг некоторые из программ на сетевых дисках лежат?
А про сеть-то я и не подумал :( Исправлю. Точнее, сделаю опциональным. Мне лично по сети Exe запускать пока не нужно, потому я и решил выдёргивать иконки из EXE постоянно, минуя кэш.

2Kitsune:
Если честно, то я не до конца понимаю проблемы. На многих машинах я тестировал OpenFileTC, и подоную ошибку лишь встретил единожды: при первом запуске OpenFileTC я забыл перегрузить TotalCommander. После перегрузки У МЕНЯ ошибок не было. Но у других были, причём последовательность действий я контролировал. такая вот ошибка вылезала :( Попробую исправить, но решение не гарантирую :(

Ещё раз 2CaptainFlint:
Спасибо за информацию! Так бы и оставался в неведении.
Ответить