View previous topic :: View next topic |
Author |
Message |
D1P

Joined: 20 Dec 2004 Posts: 2973 Location: Тбилиси
|
(Separately) Posted: Sat Sep 19, 2009 12:40 Post subject: |
|
|
sa wrote: | Ну восстановить-то фильтр нетрудно: Ctrl-Shift-S. |
А вот за это - спасибо, не знал. Фактически это решает начальную проблему, остаётся только проблема с логикой поведения Escape. _________________ База знаний о Total Commander
Блог |
|
Back to top |
|
 |
sa
Joined: 29 Apr 2009 Posts: 2694
|
(Separately) Posted: Sat Sep 19, 2009 21:47 Post subject: |
|
|
D1P wrote: | остаётся только проблема с логикой поведения Escape. |
Видимо концепция быстрого фильтра заключается в том, что он в самом деле должен быстрым и не предполагает каких-то длительных операций, которые нельзя прерывать по Escape, то есть он работает по принципу - или всё сразу, или ничего. Для других целей есть обычные фильтры. Но и с ними не всё одинаково: при включенном фильтре "Только выделенные файлы" команда "Подсчёт размеров подкаталогов текущего каталога" работает для отфильтрованных каталогов, а команда "Показать все файлы без подкаталогов" не учитывает фильтр... |
|
Back to top |
|
 |
sa
Joined: 29 Apr 2009 Posts: 2694
|
(Separately) Posted: Fri Oct 16, 2009 16:29 Post subject: |
|
|
Для вызова последнего использованного фильтра, минуя клавиатуру, завёл себе кнопку на панели задач.
Ввиду отсутствия соответствующей внутренней команды, использовал сценарий (файл: Send_Ctrl-Shift-S.vbs):
Code: | '===========================================================
' Посылает комбинацию клавиш Ctrl+Shift+S
'===========================================================
Dim WSH
Set WSH = WScript.CreateObject("WScript.Shell")
WSH.SendKeys "^+S"
Set WSH = Nothing
Wscript.Quit |
Сценарий повесил на кнопку:
Code: | TOTALCMD#BAR#DATA
Диск:\путь\к\файлу\Send_Ctrl-Shift-S.vbs
Totalcmd.exe,26
Вывести диалог быстрой фильтрации/поиска и применить последний использованный фильтр
0
-1
|
Диск и путь к файлу Send_Ctrl-Shift-S.vbs нужно заменить на свои.
Может, кому пригодится... |
|
Back to top |
|
 |
sa
Joined: 29 Apr 2009 Posts: 2694
|
(Separately) Posted: Thu Apr 10, 2014 09:47 Post subject: |
|
|
Приспособил такую кнопку для упрощения работы с фильтром быстрого поиска:
Code: | TOTALCMD#BAR#DATA
cd *.*
wcmicons.dll,13
Показать все файлы (при активном фильтре быстрого поиска - с его учётом)
-1
| Применяю её, в том числе и при активном фильтре быстрого поиска, когда нужно показать все файлы, если некоторые из них оказались скрытыми после применения фильтров типа "Программы", "Только выделенные объекты", "Файлы не старше 1 часа" и т.п. Дело в том, что внутренняя команда cm_SrcAllFiles (Ctrl+F10) отключает фильтр быстрого поиска и приходится применять его заново.
По такому же принципу завёл и пользовательскую команду, которую использую вместо cm_SrcAllFiles в случаях, когда нужно сохранить активность фильтра.
Add
Порой требуется ввести быстрый фильтр поверх уже имеющегося (то есть новый фильтр применить к отфильтрованным объектам).
Кнопка с использованием утилиты TCFS2:
Code: | TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Utils\TCFS2\TCFS2.exe
/ef "tcm(3301) tcm(2023) tcm(524) send(`^+S`) send(`{BS 100}`)"
%COMMANDER_PATH%\Totalcmd.exe,26
Ввести быстрый фильтр (при уже активном - поверх него)
-1
| Без утилиты TCFS2 примерным аналогом в TC будет связка команд 3301,2023,524,2915.
Внимание! Поскольку задействованный в кнопке режим показа только выделенных файлов сильно зависит от изменений в файловой системе (и даже от переключения на другую программу с последующим возвратом в TC), то последний активный фильтр в панели в итоге (после изменений в файловой системе, например) может оказаться применённым ко всем объектам, а не к предварительно отфильтрованным. Увидеть до этого отобранные файлы всё же можно - с помощью команды "Восстановить выделение". |
|
Back to top |
|
 |
sa
Joined: 29 Apr 2009 Posts: 2694
|
(Separately) Posted: Fri Apr 18, 2014 11:39 Post subject: |
|
|
Тихо сам с собою, я веду беседу.
sa wrote: | Увидеть до этого отобранные файлы всё же можно - с помощью команды "Восстановить выделение". | Либо с помощью такой кнопки:
Code: | TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Utils\TCFS2\TCFS2.exe
/ef "tcm(529) tcm(2023) tcm(3304) tcm(3305) send(`^+S`)"
wcmicons.dll,42
Восстановить выделение и применить последний использованный фильтр быстрого поиска
-1
| Она пригодится для восстановления выделения и быстрого фильтра (созданного с иcпользованием предложенной выше кнопки "Ввести быстрый фильтр…") в том числе и в ранее посещённой вкладке, где фильтр автоматически сбрасывается при переключении на другие вкладки панели.
Осторожно: внутреннее сохранение выделения происходит не только по воле пользователя, но и автоматически при обращении к большинству файловых операций в TC. |
|
Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|