View previous topic :: View next topic |
Author |
Message |
sa
Joined: 29 Apr 2009 Posts: 2704
|
(Separately) Posted: Thu Dec 16, 2010 19:07 Post subject: |
|
|
Flasher wrote: | Понял. Довольно долго. | Можно написать скрипт, который просто будет “впечатывать” нужную маску, а не выискивать её, тем более, что она, возможно, уже вытолкнута из списка всего в 20 строк. |
|
Back to top |
|
 |
MVV

Joined: 15 Oct 2009 Posts: 4815 Location: Ростов-Дон
|
|
Back to top |
|
 |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Thu Dec 16, 2010 19:14 Post subject: |
|
|
sa
Такой скрипт, да ещё и с выполнением выделения, сделать - три минуты, но мы же говорим о фильтре по искомой букве при самостоятельном вводе, на большой список скриптов не напосёшься.
MVV
Как минимум три хотелки мы уже сформировали. Запостить бы их ещё на офф.  |
|
Back to top |
|
 |
sa
Joined: 29 Apr 2009 Posts: 2704
|
(Separately) Posted: Fri Dec 17, 2010 11:08 Post subject: |
|
|
Flasher wrote: | на большой список скриптов не напосёшься. |
Можно использовать один скрипт (требуется Helper от Volniy), а фильтр передавать параметром:
Code: | '================================================================================
' File: Показ по фильтру.vbs
' Description: Показ файлов/каталогов по фильтру (Ctrl+F12)
' Работает при английской раскладке клавиатуры, либо нужны
' манипуляции с назначением клавиш для переключения на
' английский в региональных стандартах (см. комментарии)
' Parameters: Параметр: фильтр показа, в том числе с использованием масок
' (если с пробелами, то в кавычках). Пример: "*.doc;Мои рисунки\"
' Requirements: WSH Helper for TC by Volniy
' Installation: Создайте для скрипта, например, кнопку на панели инструментов TC
' Autor: sa
'================================================================================
Option Explicit
If WScript.Arguments.Count < 1 Then
MsgBox "Не задан параметр: фильтр показа!", _
vbOKOnly + vbCritical, _
"Показ по фильтру.vbs"
WScript.Quit
End If
Dim TCS, S
Set TCS = CreateObject("TCScript.Helper")
S = WScript.Arguments(0)
If InStr(1, S, " ", 1) > 0 Then
S = chr(34) & S & chr(34)
S = Replace (S, ";", chr(34) & ";" & chr(34),1,-1,1)
S = Replace (S, "|", chr(34) & "|" & chr(34),1,-1,1)
End If
With TCS
.SendCommand 314 'cm_SrcUserDef
' .SendKeystroke "^+1"
' Раскомментировать предыдущую строку, если переключение на английский язык
'настроить в региональных стандартах на Ctrl+Shift+1. Иначе следующая команда
'SendKeystroke не будет правильно выполняться при русской раскладке клавиатуры
.SendKeystroke S
.SendKeystroke "{Enter}"
' .SendKeystroke "^+2"
' Раскомментировать предыдущую строку, если переключение на русский язык
'настроено на Ctrl+Shift+2 и есть желание переключиться с английского на
'русский перед выходом из скрипта
End With
Set TCS = Nothing
Wscript.Quit |
Кнопка:
Code: | TOTALCMD#BAR#DATA
%COMMANDER_PATH%\VBS\Показ по фильтру.vbs
"*.doc;Мои рисунки\"
wcmicons.dll,25
Показ по фильтру
0
-1 |
Upd
Удалил строку для входа в историю (Alt+Down).
Last edited by sa on Wed Dec 22, 2010 13:52; edited 1 time in total |
|
Back to top |
|
 |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Fri Dec 17, 2010 19:13 Post subject: |
|
|
Flasher wrote: | на большой список скриптов не напосёшься | Тут стоило откорректировать: не скриптов(файлов) как таковых, а кнопок/команд/клавиш. |
|
Back to top |
|
 |
sa
Joined: 29 Apr 2009 Posts: 2704
|
(Separately) Posted: Sun Dec 19, 2010 01:42 Post subject: |
|
|
В варианте со скриптом, если создать кнопку с выпадающим меню требуемого размера, то вызов нужного фильтра делается на раз-два. В тоже время, при использовании команды cm_SrcUserDef (Ctrl+F12) требуется 4 действия. И даже для вызова шаблона (который пока невозможно создать для рассматриваемой задачи) потребовалось бы как минимум 3, а то и те же 4 действия. Так что для тех, кому эта задача актуальна, по-моему, овчинка выделки стоит. |
|
Back to top |
|
 |
sa
Joined: 29 Apr 2009 Posts: 2704
|
(Separately) Posted: Wed Dec 22, 2010 13:57 Post subject: |
|
|
Удалил из скрипта строку для входа в список истории (Alt+Down): от неё больше вреда, чем пользы.
При наличии указанной строки (она располагалась перед .SendKeystroke "^+1") скрипт верно срабатывал в случае, если была нажата клавиша NumLock, а в противном случае вместо входа в список истории происходило стирание первого символа фильтра. |
|
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
|