Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Фильтр отбора с пользовательским шаблоном
Goto page Previous  1, 2, 3  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
DeathStalker



Joined: 01 Sep 2006
Posts: 331
Location: Санкт-Петербург

Post (Separately) Posted: Thu Apr 30, 2009 10:48    Post subject: Reply with quote

Проблему с раскладками можно решить если название шаблона будет только из цифр, ведь они при любой раскладке работают Wink
Минус только в том, что название из цифр плохо передает смысл Sad
_________________
Гугль - это Матрица, чем меньше его спрашивать, тем слабее будут машины во время Великой Битвы
TC10.00b6 x86 Windows 10 x64 (Windows 7 x64)
Back to top
View user's profile Send private message
Dave



Joined: 26 Apr 2009
Posts: 24

Post (Separately) Posted: Thu Apr 30, 2009 11:12    Post subject: Reply with quote

DeathStalker wrote:
Проблему с раскладками можно решить если название шаблона будет только из цифр, ведь они при любой раскладке работают Wink
Минус только в том, что название из цифр плохо передает смысл Sad

Хороший вариант, у кого проблемы с раскладками
А главное, можно имя шаблона оставить прежнее, только перед ним поставить уникальный цифровой код , к примеру шаблон
"1008 Не старше 1 часа"
А в скрипте прописать строку TCS.SendKeystroke "1008"
вместо строки TCS.SendKeystroke "Не старше 1 часа"
Back to top
View user's profile Send private message
sa



Joined: 29 Apr 2009
Posts: 2693

Post (Separately) Posted: Fri May 01, 2009 12:33    Post subject: Reply with quote

Dave wrote:
На всякий случай - у меня Win XP Rus SP3, Тотal Commander 7.04a

У меня Win XP Professional SP2, Тотal Commander 7.04a. Наверное сказывается различие в ОС. Для себя проблему с раскладками решил добавлением в скрипт сочетания клавиш для переключения на русский язык (когда-то назначил в региональных стандартах на Ctrl+Shift+2) и последующего возврата на английский (Ctrl+Shift+1).
Получилось что-то вроде TCS.SendKeystroke "{TAB}^+2Файлы не старше 1 часа^+1{ENTER}". Минус такого способа - "несанкционированное" переключение языка ввода с русского на английский, но по мне это скорее плюс. Обратный эффект(переключение с английского на русский) будет, если не добавлять в конце Ctrl+Shift+1.
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2226
Location: Москва, Россия

Post (Separately) Posted: Mon May 04, 2009 10:51    Post subject: Reply with quote

sa wrote:
Минус такого способа - "несанкционированное" переключение языка ввода с русского на английский

Лучше использовать не "горячие клавиши", а функцию SetLocale:
Code:
currentLocale = SetLocale("ru") 'При желании можно SetLocale("en-us")
TCS.SendKeystroke "Файлы не старше 1 часа"
SetLocale(currentLocale)

_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
sa



Joined: 29 Apr 2009
Posts: 2693

Post (Separately) Posted: Thu May 06, 2010 13:49    Post subject: Reply with quote

В другой теме нашлось простое решение в виде кнопки, либо пользовательской команды, в которой используется команда cd с фильтром
Code:
cd >Файлы не старше 1 часа
Back to top
View user's profile Send private message
Andrey_A



Joined: 10 Apr 2009
Posts: 394
Location: Сочи

Post (Separately) Posted: Thu May 06, 2010 14:32    Post subject: Reply with quote

В этой теме тоже есть скрипты обсуждаемой вами теме
http://forum.wincmd.ru/viewtopic.php?p=60456&highlight=#60456
Я сам пользуюсь расширенным скриптом:
Code:
'Пометить файлы с заданной строкой фильтра
' В параметрах прописать искомую строку
' К примеру *.doc;*.txt
' или" >Архивы"
' вылетает окно (если 0, то помечает файлы в папке, если 1, то сначала раскрывает подпапки, а потом помечает)
Filters = WScript.Arguments(0)

Dim TCS
Set TCS = CreateObject("TCSCRIPT.Helper")

Find_String = InputBox("Введите число 1, если хотите, чтобы выделение произошло и в ПОДПАПКАХ           (по умолчанию выделение происходит только в ТЕКУЩЕЙ папке)", "Выделить по фильтру ")
If Len(Find_String) = 0 Then
   Find_String = 0
End If

If Find_String <> 0 Then
    TCS.SendCommand "cm_DirBranch"
    TCS.Pause = 2000
    TCS.SendCommand "cm_SpreadSelection"
    TCS.SendKeystroke (Filters & "{Enter}")
Else
    TCS.SendCommand "cm_SpreadSelection"
    TCS.SendKeystroke (Filters & "{Enter}")
End If

Set TCS = Nothing


Иногда хочется пометить файлы в подпапках, он его выполняет
У меня тоже была проблема с несанкционированным переключением на английский. Я стал брать название шаблона в кавычки - проблем стало меньше
>"Файлы не старше 1 часа"
Back to top
View user's profile Send private message
sa



Joined: 29 Apr 2009
Posts: 2693

Post (Separately) Posted: Thu May 06, 2010 14:39    Post subject: Reply with quote

sa wrote:
нашлось простое решение

Я имел ввиду, что это решение обходится встроенными средствами ТК - без всяких скриптов, переключений языков и т.д. и по месту занимает всего на 4 символа больше, чем само название фильтра.
Back to top
View user's profile Send private message
Вахмурка



Joined: 27 Dec 2004
Posts: 2586
Location: Большая деревня Москва

Post (Separately) Posted: Thu May 06, 2010 16:02    Post subject: Reply with quote

http://powerpro.wincmd.ru/Scripts/SelectFilter.htm
Работает на любых раскладках.
_________________
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Back to top
View user's profile Send private message
sa



Joined: 29 Apr 2009
Posts: 2693

Post (Separately) Posted: Thu May 06, 2010 16:29    Post subject: Reply with quote

Кнопка с командой: cd >Файлы не старше 1 часа
Работает на любых раскладках.
Back to top
View user's profile Send private message
Andrey_A



Joined: 10 Apr 2009
Posts: 394
Location: Сочи

Post (Separately) Posted: Fri May 07, 2010 22:21    Post subject: Reply with quote

Quote:
cd >Файлы не старше 1 часа

А как будет обратная строка через этот же шаблон, т.е все файлы кроме этих - все файлы кроме старше 1 часа
к примеру, если через расширения, то
Code:
cd *.doc;*.txt

показать все файлы с этими расширениями
Code:
cd *.* | *.doc;*.txt

паказать все, кроме этих
А через шаблон обратную сторону медали можно посмотреть, сколько ни старался, у меня не получилось
Back to top
View user's profile Send private message
CaptainFlint



Joined: 14 Dec 2004
Posts: 6193
Location: Москва

Post (Separately) Posted: Tue May 11, 2010 13:52    Post subject: Reply with quote

Andrey_A wrote:
А как будет обратная строка через этот же шаблон, т.е все файлы кроме этих - все файлы кроме старше 1 часа

Через этот же — никак, надо новый шаблон.
_________________
Почему же, ё-моё, ты нигде не пишешь "ё"?
Back to top
View user's profile Send private message
sa



Joined: 29 Apr 2009
Posts: 2693

Post (Separately) Posted: Tue May 11, 2010 15:09    Post subject: Reply with quote

CaptainFlint wrote:
никак, надо новый шаблон.

Ещё бы придумать, из чего его смастерить...
Back to top
View user's profile Send private message
Вахмурка



Joined: 27 Dec 2004
Posts: 2586
Location: Большая деревня Москва

Post (Separately) Posted: Tue May 11, 2010 15:54    Post subject: Reply with quote

Quote:
надо новый шаблон
Да, кстати, что-то не придумывается. Отрицательные числа вводятся, но не работают. Очевидное решение: выделить то, что моложе одного часа и обратить выделение. Но можно ли действительно сваять шаблон?
_________________
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Back to top
View user's profile Send private message
Rodny



Joined: 24 Jan 2007
Posts: 949
Location: Могилёв, Беларусь

Post (Separately) Posted: Tue May 11, 2010 16:18    Post subject: Reply with quote

Может с плагином Age?

Нету времени сейчас экспериментировать
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2226
Location: Москва, Россия

Post (Separately) Posted: Tue May 11, 2010 16:20    Post subject: Reply with quote

Также можно использовать ScriptContentPlugin с vbs-скриптом:
Code:
Dim FSO
Set FSO = CreateObject("Scripting.FileSystemObject")
If FSO.FileExists(FileName) Then
  content = Abs(DateDiff("h", Now, FSO.GetFile(FileName).DateLastModified))
Else
  content = Abs(DateDiff("h", Now, FSO.GetFolder(FileName).DateLastModified))
End If
Set FSO = Nothing

_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander All times are GMT + 4 Hours
Goto page Previous  1, 2, 3  Next
Page 2 of 3

 
Jump to:  
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