TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое

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

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

Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

plutus писал(а):Возможно ли сделать..
Возможно.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
plutus
Сообщения: 11
Зарегистрирован: Чт мар 22, 2012 15:13

Сообщение plutus »

Спасибо, работает
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

MVV
В продолжение обсуждения, начатого в теме по Autorun, отвечаю на вопрос, заданный там.
Нет, если взять для кнопки указанную там строку (с отбрасыванием ShellExec и заменой путей на мои, естественно) правильно не срабатывает.
[cut="Код кнопки"]TOTALCMD#BAR#DATA
"%Commander_path%\Utils\TCFS2\TCFS2.exe" '/ef "tcd(`\\\Virtual Panel`,,S) tcm(570, 1)"'

C:\Totalcmd\Wciconex.dll



-1[/cut]Отображается сообщение об ошибке — [cut="вот такое"]

Код: Выделить всё

---------------------------
TCFS2
---------------------------
Error:
Unavailable key

Actions:
'/ef

Terminate process?
---------------------------
ОК   Отмена   
---------------------------
[/cut]А если нажать "Отмена", то [cut="ещё одно"]

Код: Выделить всё

---------------------------
TCFS2
---------------------------
Error:
Unavailable key

Actions:
tcd(`\\\Virtual Panel`,,S) tcm(570, 1)'

Terminate process?
---------------------------
ОК   Отмена   
---------------------------
[/cut]
Может быть, там что-то в синтаксисе менять надо?
Даже самая богатая фантазия
Не представит себе наши безобразия.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Да, там лишние кавычки:

Код: Выделить всё

TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Utils\TCFS2\TCFS2.exe
/ef "tcd(`\\\Virtual Panel`,,S) tcm(570,1)"
Wcmicons.dll,52
[cut="P.S.:"]Я думаю, маленькие коды в спойлеры пихать не стоит.[/cut]
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

Flasher
Да, так с кнопкой всё работает.
[cut="P.S."]Мне было просто интересно поэкспериментировать с возможностями спойлеров. Следовать своему примеру никого, разумется, не призываю.[/cut]
Последний раз редактировалось Avada Вс авг 25, 2013 17:42, всего редактировалось 1 раз.
Даже самая богатая фантазия
Не представит себе наши безобразия.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Avada
Происходит, просто ты не успеваешь этого заметить:
"tcd(`\\\Virtual Panel`,,S) delay(500) tcm(570,1)"
:wink:
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

Flasher
Да, происходит, я уже разобрался и успел поправить пост (сначала забыл отключить активацию Virtual Panel через Autorun другим способом).
Остаётся выяснить, в каком виде эту строку дать не в кнопке, а в Autorun.

MVV
Кстати, по заголовку темы. Может быть, из "TCFS2 + TCFS2Tools - перевод ТС в полноэкранный режим" оставить только первую половину с названиями? А то поясняющая часть уже как-то слабо отражает реальную функциональность... :wink:
Даже самая богатая фантазия
Не представит себе наши безобразия.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Avada писал(а):Остаётся выяснить, в каком виде эту строку дать не в кнопке, а в Autorun.
Ответил в той теме.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Avada,
В Autorun как раз давать надо в виде, который я там приводил: строка параметров должна быть заключена во внешние кавычки, причём отличные от двойных (т.к. двойные используются в самой строке).

Согласен, название темы можно расширить.

Flasher,
С отправкой по tcm(570,1) у меня работает и без delay(500).
Avada писал(а):Мне было просто интересно поэкспериментировать с возможностями спойлеров.
Я почти на 100% уверен, что это были первые спойлеры, которые я видел на этом форуме. Выглядит интересно. Думаю, кнопка в интерфейсе редактора сообщения бы не помешала.
Последний раз редактировалось MVV Вс авг 25, 2013 13:54, всего редактировалось 1 раз.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

MVV писал(а):С отправкой по tcm(570,1) у меня работает и без delay(500).
Так задержку я привёл для проверки работоспособности. См. контекст.
MVV писал(а):Думаю, кнопка в интерфейсе редактора сообщения бы не помешала.
Это уже обсуждалось.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
sa
Сообщения: 2758
Зарегистрирован: Ср апр 29, 2009 18:56

Сообщение sa »

Примерчик с ожиданием закрытия окна поиска. Кнопка запускает поиск, максимум 10 секунд ждёт его окончания, ежесекундно пытаясь вызвать результаты поиска на панель и, в случае закрытия окна поиска в отведённое время, переводит панель в краткий режим:

Код: Выделить всё

TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Utils\TCFS2\TCFS2.exe /ef "tcm(501,1) delay(200) send(`{BKSP}+{TAB}{RIGHT}~(%ш%o){TAB 2}{UP}{ENTER}`, findwnd(`TFindFile`))
if(wait_for_s(findwnd(`TFindFile`)==0, 10), tcm(301,1))"
WCMICONS.DLL,47
Поиск файлов/каталогов не старше 1 часа с выводом на панель и переходом в краткий режим

0
-1
Для правильной работы кнопки нужно добавить в TCFS2.ini макрос:

Код: Выделить всё

wait_for_s=if(#2<=0, 0, if (#1, 1, 0*send(`~(%л%l)`, findwnd(`TFindFile`))*delay(1000)+wait_for_s(#1, #2-1)))
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Жесть! :D
Кстати, вместо Shift+Tab и Right можно просто послать Ctrl+Tab.

А ещё можно написать общую команду для поиска с заданным именем поискового шаблона, тогда не надо будет настраивать параметры на лету.

Задумался, не добавить ли цикл for (который можно использовать и со счетчиком, и как while, если не проверять значение счетчика), чтобы избежать рекурсивных вызовов макросов...
sa
Сообщения: 2758
Зарегистрирован: Ср апр 29, 2009 18:56

Сообщение sa »

MVV писал(а):А ещё можно написать общую команду для поиска с заданным именем поискового шаблона
Я с подобной кнопки и начал. :) Просто для примера не стал заморачивать созданием шаблона.
Да, у себя после поиска я перевожу панель не в краткий режим, а в режим со своим набором колонок (используется команда 278).
MVV писал(а):не добавить ли цикл for
Хорошо бы...
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Добавил цикл.

TCFS2 Build 400

Функция loop с одним параметром, цикл крутится, пока параметр возвращает 1. Как только вернул 0, конец цикла, и возвращается число сделанных итераций. В выражении цикла можно узнать номер итерации с помощью переменной @ (начиная с 0). Задержка между итерациями - в том же выражении с помощью delay.

В инишнике пример использования (переделал макрос wait_for).
sa
Сообщения: 2758
Зарегистрирован: Ср апр 29, 2009 18:56

Сообщение sa »

MVV
Loop работает.

Предыдущая кнопка, но уже без дополнительного макроса (соответственно без необходимости правки TCFS2.ini ) и с увеличенным до двух минут временем ожидания окончания поиска:

Код: Выделить всё

TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Utils\TCFS2\TCFS2.exe /ef "tcm(501,1) delay(200) send(`{BKSP}^{TAB}~(%ш%o){TAB 2}{UP}{ENTER}`, findwnd(`TFindFile`)) loop(@<=120 && if(findwnd(`TFindFile`)==0, 0, send(`~(%л%l)`, findwnd(`TFindFile`))+delay(1000)))
if(findwnd(`TFindFile`)==0, tcm(301,1))"
WCMICONS.DLL,47
Поиск файлов/каталогов не старше 1 часа с выводом на панель и переходом в краткий режим


-1
Ответить