Страница 82 из 88
Как присвоить сочетание клавиш иконке на панели инструментов
Добавлено: Вс янв 16, 2022 20:25
HankHank
Доброго времени присутствующим.
Интересует, можно ли присвоить сочетание клавиш иконке, созданной на панели инструментов TC?
К примеру, есть кнопка на панели, выполняющая сжатие 7Z с максимальной степенью сжатия:
Команда:
%COMMANDER_PATH%\Plugins\arc\7z\7zG.exe a -t7z –ssw
Параметры:
-mx9 -r %T%N.7z %P%S
Путь запуска:
%COMMANDER_PATH%\Plugins\arc\7Z\
Файл значка:
%COMMANDER_PATH%\Plugins\arc\7Z\7zG.exe
Можно ли присвоить этой кнопке сочетание клавиш?
Если нельзя с кнопкой, как иначе привязать сжатие этим архиватором к сочетанию клавиш?
Спасибо.
Добавлено: Вс янв 16, 2022 20:42
Avada
HankHank
На панели инструментов создаются не иконки, а кнопки, причём никаких назначений клавиш кнопке, естественно, нет и быть не может.
Любое назначение клавиш в таких случаях делается по стандартному шаблону в два шага:
1. Создаётся
пользовательская команда (с префиксом em_) в диалоге, очень похожем на диалог создания кнопки.
2. Этой команде
назначается клавиатурный вызов.
Всё. Обсуждать тут, собственно, больше нечего, а к текущей теме вопрос практически не имеет отношения.
Добавлено: Пн окт 03, 2022 18:48
Scorpkoms
Доброго времени уважаемые,есть консоль Локальная политика безопасности (secpol.msc)
хотел на кнопку поставить в ТС,но что то только по абсолютному пути запускается,а он уж
больно длинный.Переменные прописывал,не помогло,может я что то пропустил? Спасибо.
Win7_64,TC 9.51.
Добавлено: Вт окт 04, 2022 06:33
Avada
Scorpkoms
Замечание за нарушение правил форума с переносом сообщения куда следует из "Обмена кнопками", где подобные вопросы в принципе задаваться не должны, о чём говорилось уже многократно.
Перемещение файлов каталога в родительский
Добавлено: Пн апр 03, 2023 16:42
ДругТогоСамого
Просидел уже 8 часов на форуме. Много полезного. Спасибо всем!
Что нужно: Скрипт или кнопка, при нажатии на которую перемещаются все файлы каталога в родительский. (И, в идеале, открывается окно родительской папки, та что уровнем выше и удаляется дочерняя пустая папка).
Поиском пользовался. Нашло 76 результатов. Пролистал 55 страниц. Потратил 8 часов. Проще спросить. )
Спасибо.
Добавлено: Вт апр 04, 2023 04:24
Monarch-LFV
ДругТогоСамого
Утилита
TCIMG с кодом кнопки:
Код: Выделить всё
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Plugins\exe\TCIMG\TCIMG.exe
moves=%WL||:://0//(.+\\).+\\.+\\?//$1 tcimg=$cm2002 <IF> <info=d1"%p"//> = 0 <THEN> delsm="%p"||1||upd<1> <ENDIF>
%COMMANDER_PATH%\Plugins\exe\TCIMG\TCIMG.dll,66
Переместить выделенные объекты на уровень вверх и удалить родительскую папку, если она пустая (и так же если все подкаталоги пустые)
Путь до утилиты впишите ваш.
Добавлено: Вт апр 04, 2023 10:59
ДругТогоСамого
Monarch-LFV писал(а):Monarch-LFV
Спасибо
Добавлено: Чт апр 27, 2023 13:44
sa
ДругТогоСамого
Без утилит.
Добавлено: Сб фев 24, 2024 14:11
sa
Orion9
Кнопку попробовал, работает.
Может, пример команды не самый показательный: если команде cm_SwitchColorsByFileType (2957) назначить в кнопке значок, то TC будет сам отображать его по-разному, в зависимости от состояния ключа ColorFilters.
Добавлено: Сб фев 24, 2024 23:25
Orion9
sa
Вы правы. Пример не совсем удачный, т.к. он не раскрывает весь потенциал связки Autorun+TCFS2 для переключения иконок на кнопках панели инструментов, а ведь он огромен!
Например, можно использовать не только внутренние команды, но и пользовательские команды + скрипты со сложыми алгоритмами и действиями, которые будут записывать результат своей работы в ini-файл, а затем передавать его в Autorun. Ну а там уже можно раскрыть case по полной
Небольшой демо-эксперимент:
Четыре кнопки выпадающего меню из файла панели включают подсветку нужных файлов, меняя шаблон ColorFilter2, который располагается сразу за шаблоном Autorun (ColorFilter1=>Autorun) в секции цветов [Colors]. При этом иконка самого выпадающего меню переключается соответствующим образом через переменную %HIGHLIGHT_ICON%
autorun.cfg
Код: Выделить всё
SetMessageAction "HighlightMessage" SetColorFilter
Func SetColorFilter()
IniRead /R sFilter %COMMANDER_INI% "Colors" "ColorFilter2" ">0"
Switch sFilter
Case ">0"
SetEnv HIGHLIGHT_ICON "%COMMANDER_PATH%\Icons\Clsw\1.ico"
Case ">Аудиодорожек > 1"
SetEnv HIGHLIGHT_ICON "%COMMANDER_PATH%\Icons\Clsw\3.ico"
Case ">2"
SetEnv HIGHLIGHT_ICON "%COMMANDER_PATH%\Icons\Clsw\5.ico"
Case ">Siblings"
SetEnv HIGHLIGHT_ICON "%COMMANDER_PATH%\Icons\Clsw\4.ico"
EndSwitch
SendCommand 2945
EndFunc
Код: Выделить всё
TOTALCMD#BAR#DATA
%Commander_Path%\Bars\test0001.bar
%HIGHLIGHT_ICON%
1
-1
test0001.bar
Код: Выделить всё
[Buttonbar]
Buttoncount=4
button1=%COMMANDER_PATH%\Icons\Clsw\1.ico
cmd1=%COMMANDER_PATH%\Utilites\TCFS2\TCFS2.exe
param1=/ei hlt0
menu1=Выключить подсветку
button2=%COMMANDER_PATH%\Icons\Clsw\3.ico
cmd2=%COMMANDER_PATH%\Utilites\TCFS2\TCFS2.exe
param2=/ei hlt1
path2=
iconic2
menu2=Аудиодорожек > 1
button3=%COMMANDER_PATH%\Icons\Clsw\5.ico
cmd3=%COMMANDER_PATH%\Utilites\TCFS2\TCFS2.exe
param3=/ei hlt2
path3=
iconic3=
menu3=Кодек HEVC
button4=%COMMANDER_PATH%\Icons\Clsw\4.ico
cmd4=%COMMANDER_PATH%\Utilites\TCFS2\TCFS2.exe
param4=/ei hlt_sib
path4=
iconic4=
menu4=Сиблинги
TCFS2.ini
Код: Выделить всё
hlt0=set_tcini(Colors, ColorFilter2, `>0`) tcm(2957, 1) tcm(2957, 1) msg(regmsg(HighlightMessage), 0, 0)
hlt1=set_tcini(Colors, ColorFilter2, `>Аудиодорожек > 1`) tcm(2957, 1) tcm(2957, 1) msg(regmsg(HighlightMessage), 0, 0)
hlt2=set_tcini(Colors, ColorFilter2, `>2`) tcm(2957, 1) tcm(2957, 1) msg(regmsg(HighlightMessage), 0, 0)
hlt_sib=set_tcini(Colors, ColorFilter2, `>Siblings`) tcm(2957, 1) tcm(2957, 1) msg(regmsg(HighlightMessage), 0, 0)
[Searches]
Код: Выделить всё
Аудиодорожек > 1_SearchFor=
Аудиодорожек > 1_SearchIn=
Аудиодорожек > 1_SearchText=
Аудиодорожек > 1_SearchFlags=0|002002000020||||||||22220|0000|||
Аудиодорожек > 1_plugin="tcmediainfo.Stream Count.Audio only" > 1
2_SearchFor=
2_SearchIn=
2_SearchText=
2_SearchFlags=0|002002000020|||||||||0000|||
2_plugin="tcmediainfo.Video Format" contains evc
Siblings_SearchFor=
Siblings_SearchIn=
Siblings_SearchText=
Siblings_SearchFlags=0|002002000020|||||||||0000|||
Siblings_plugin=file.Sibling != ""
Шаблон ">0" не существует, поэтому при его выборе подсветка отключается. Пример, конечно, сыроват, но как демо подойдет

Добавлено: Вт фев 27, 2024 11:08
sa
Orion9
иконки должны быть в виде отдельных файлов
Можно номер иконки из библиотеки задать непосредственно в кнопке, но альтернативные иконки (из разных библиотек) должны в этом случае иметь один и тот же номер (в примере это 79):
Код: Выделить всё
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Utils\TCFS2\TCFS2.exe
/ef "tcm(2957) msg(regmsg(ColorMessage)) tcm(2945)"
%COLOR_ICON%,79
Цвета для типов файлов: вкл/выкл
-1
Файлы значков (в autorun.cfg) WCMICONS.dll и WCMICON2.DLL.
Добавлено: Ср фев 28, 2024 00:11
Orion9
sa
Прикольно.
Так ведь можно и все значки одним махом поменять! Т.е. использовать разные группы значков для разных режимов, например, для более подходящего отображения в DarkMode. Что-то вроде:
Код: Выделить всё
Func SwitchDarkMode()
SendCommand 2950
IniRead dMode %COMMANDER_INI% "Configuration" "DarkMode" 0
If dMode = 0 Then
SetEnv BAR_ICONS "%COMMANDER_PATH%\LIGHT.DLL"
Else
SetEnv BAR_ICONS "%COMMANDER_PATH%\DARK.DLL"
EndIf
SendCommand 2945
EndFunc
Добавлено: Сб апр 13, 2024 10:47
Kspeh
Кнопка для монтирования образа в виртуальный диск PowerISO
- а можно сделать то же самое, но чтобы монтировалось Alcohol Portable? Он безплатный.
Добавлено спустя 33 минуты:
Orion9
- спасибо. У меня выскакивает ошибка в строке кода 308:
timestamp := FileGetTime(main_bar)
- не удаётся найти указанный файл. И потом 350:
Local inibar := IniRead(main_bar, "Buttonbar")
Я переименовал бар по умолчанию в main_bar.bar и в main_bar.br2 но ничего не изменилось. Перемещал их в папку Bars - нашёл где-то в скрипте такой путь, создал папку, но безрезультатно. Подскажите, пожалуйста, как исправить.
И, кстати, хорошо бы добавить кнопку возвращения назад, на основной бар.
Добавлено: Сб апр 13, 2024 13:31
Orion9
Kspeh
Я посмотрю.
А у вас главная панель где располагается? Попробуйте переименовать (или скопировать) ее просто в "Main.bar" и положить в папку Bars. Но в Wincmd.ini в секции [Buttonbar], в таком случае, должен быть ключ указывающий путь к панели по умолчанию (главной панели) Buttonbar=%Commander_Path%\Bars\Main.bar
Добавлено: Сб апр 13, 2024 13:43
Kspeh
Да, теперь работает, спасибо. Правильно, когда оно выглядит как баллоны с "i", 20 штук, если подвести курсор, то всплывает название плагина с датой обновления? Кнопку возврата в майн я сейчас сам у себя сделаю, но так-то неплохо было бы добавить, чтобы она уже была.
Успехов Вам.