Кнопка-меню-список с шаблонами поиска?
Select messages from
# through # FAQ
[/[Print]\]
Goto page 1, 2, 3, 4  Next  :| |:
Total Commander -> Автоматизация Total Commander

#1: Кнопка-меню-список с шаблонами поиска? Author: kadvlad PostPosted: Sun Apr 01, 2012 22:07
    —
Хотелось бы сделать кнопку с выпадающим списком имеющихся шаблонов поиска (CTRL-F12) для быстрого применения фильтра отображения файлов в текущей директории.
Можно ли задать для каждого имеющегося шаблона отдельную команду (возможно, через пользовательские команды), чтобы поместить их в этот список?

Имеется стандартная команда
Code:
314="Активная: задать фильтр" = cm_SrcUserDef

Имеется пользовательский шаблон
Code:
[Searches]
..
Sample_SearchFor=*.ext

Как и где указать параметры − требуемый тип (расширение) файла для выделения/отображения?
Или ход мысли в принципе ошибочный?

Помогите разобраться, пожалуйста.

#2:  Author: FlasherLocation: Москва PostPosted: Sun Apr 01, 2012 22:56
    —
em_блабла: SELECTFILES <*.ext *.ex2>
TCMC.exe EMem_блабла CM2023 CM524


Last edited by Flasher on Wed Apr 04, 2012 18:40; edited 1 time in total

#3:  Author: kadvlad PostPosted: Sun Apr 01, 2012 23:08
    —
Flasher,
спасибо.

Про ТСМС думал, но не знал, как указывать <*.ext *.ex2>.

#4:  Author: kadvlad PostPosted: Mon Apr 02, 2012 22:24
    —
Flasher,
уточню вопрос.

Хотелось бы не просто автоматизацию выделения заданных типов файлов, а именно применение фильтра отображения файлов в текущей панели − именно чтобы были видны только заданные типы.

Для этого используется команда cm_SrcUserDef, но вот передать ей параметры не получается; каждый раз открывается диалоговое окно выбора шаблона.
Пробовал по аналогии с командами selectfiles и loadsearch, которые воспринимают параметры:
Code:
[em_txt]
cmd=cm_SrcUserDef
param=>Text

или
Code:
[em_txt]
cmd=cm_SrcUserDef
param=%A

где >Text - имя сохранённого шаблона поиска
%A - подстановка для Text в пользовательской команде:

Code:
em_txt >Text

Видимо, это невозможно (?)
Появилась идея реализовать задачу на vbs, эмулируя нажатие клавиш, но думаю, это слишком грубое решение )
Code:
Dim TCS
Set TCS = CreateObject("TCScript.Helper")
TCS.SendCommand(314)
TCS.SendKeystroke (">Text")
TCS.SendKeystroke ("{Enter}")
Set TCS=Nothing
Wscript.Quit

где ">Text" − название сохранённого типа шаблона поиска (CTRL-F12).

Что скажете?


Last edited by kadvlad on Tue Apr 03, 2012 11:26; edited 1 time in total

#5:  Author: sa PostPosted: Tue Apr 03, 2012 11:10
    —
kadvlad
Что-то подобное предлагалось здесь.

#6:  Author: kadvlad PostPosted: Tue Apr 03, 2012 11:24
    —
sa,
спасибо за альтернативу.

Моё решение на vbs мне показалось чуть проще, нет?
По крайней мере, манипуляций с раскладками нет.
В Вашем варианте при англ.раскладке у меня всё равно упорно выдаёт "Несоответствие типа: Sendkeystroke", а желания переназначать клавиши раскладок нет.

#7:  Author: sa PostPosted: Tue Apr 03, 2012 11:35
    —
kadvlad
Если фильтр именованный, то всё проще: вместо кнопки вызова скрипта достаточно кнопки с командой cd >Имя фильтра

#8:  Author: kadvlad PostPosted: Tue Apr 03, 2012 11:44
    —
sa
Вот!!!

Я знал, что должно быть простое и элегантное решение )
Спасибо!

#9:  Author: sa PostPosted: Tue Apr 03, 2012 13:03
    —
kadvlad wrote:
упорно выдаёт "Несоответствие типа: Sendkeystroke"

Любопытно. А как выглядит строка параметров?

#10:  Author: kadvlad PostPosted: Tue Apr 03, 2012 13:17
    —
Так же, как в указанной кнопке к скрипту.
У меня клавиатуры переключаются по CTRL-SHIFT.

надеюсь, Punto Switcher не помеха.

#11:  Author: sa PostPosted: Tue Apr 03, 2012 13:21
    —
kadvlad wrote:
У меня клавиатуры переключаются по CTRL-SHIFT.
Это не важно.
kadvlad wrote:
надеюсь, Punto Switcher не помеха
Скорее всего, дело именно в этой программе. Спасибо.

#12:  Author: FlasherLocation: Москва PostPosted: Tue Apr 03, 2012 14:18
    —
kadvlad wrote:
Хотелось бы не просто автоматизацию выделения заданных типов файлов, а именно чтобы были видны только заданные типы.
А моя команда что-то иное делает?
kadvlad wrote:
Я знал, что должно быть простое и элегантное решение )
Ну, да. Об этом уже не раз, не два, не три писалось.

Last edited by Flasher on Tue Apr 03, 2012 14:42; edited 1 time in total

#13:  Author: kadvlad PostPosted: Tue Apr 03, 2012 14:40
    —
Flasher wrote:
А моя команда что-то иное делает?

по Вашей схеме получается так:

SELECTFILES - выделили заданный тип файлов
cm_ShowOnlySelected - временно скрыли остальные (невыделенные) типы
cm_ShrinkSelection - сняли выделение

Т.е. пока всё правильно, но если обновить панель (перейти в др.каталог), выделение снимется и вернётся дефолтное cm_SrcAllFiles.
Я же хотел постоянное отображение в текущей панели только заданных типов согласно шаблонам поиска (CTRL-F12), независимо от переходов по каталогам.

В любом случае, спасибо за содействие.
Подумаю, где могу применить SELECTFILES )

#14:  Author: FlasherLocation: Москва PostPosted: Tue Apr 03, 2012 14:43
    —
kadvlad wrote:
Я же хотел постоянное отображение
Ясно. См. дописку.

#15:  Author: sa PostPosted: Tue Apr 03, 2012 23:05
    —
kadvlad wrote:
простое и элегантное решение

Только вот почти не документированное, к сожалению. См. здесь и далее.



Total Commander -> Автоматизация Total Commander


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Goto page 1, 2, 3, 4  Next  :| |:
Page 1 of 4

Powered by phpBB © 2001, 2005 phpBB Group