| 
 
	
		| View previous topic :: View next topic |  
		| Author | Message |  
		| Вахмурка 
 
  
 Joined: 27 Dec 2004
 Posts: 2586
 Location: Большая деревня Москва
 
 | 
			
				|  (Separately) Posted: Wed Jan 20, 2010 17:30    Post subject: |   |  
				| 
 |  
				| Забавно, что тот же самый прием использовал и я для сортировки результатов поиска по пути (см. мою ссылку на "Тотальные хитрости" выше). Похоже, наклевывается некое обобщение под рабочим названием "Использование произвольной пересортировки результатов поиска". _________________
 Сайт PowerPro+Total Commander
 Скрипты PowerPro для Total Commander
 * * *
 «Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
 |  |  
		| Back to top |  |  
		|  |  
		| sa 
 
 
 Joined: 29 Apr 2009
 Posts: 2709
 
 
 | 
			
				|  (Separately) Posted: Wed Jan 20, 2010 18:31    Post subject: |   |  
				| 
 |  
				| А для любителей подробного режима файловой панели всё ещё проще. Достаточно завести пользовательский набор колонок а-ля "Подробный" и по команде "Файлы на панель" список результатов поиска сразу предстанет в привычном виде. Если потребуется увидеть его в виде - всё в одну строку с путями, необходимо уже потом переключаться в классический подробный режим панели. 	  | Avada wrote: |  	  | Значит, найден способ в любом случае привести панель результатов в кратком режиме к удобочитаемому виду. | 
 |  |  
		| Back to top |  |  
		|  |  
		| Avada 
 
  
 Joined: 01 Aug 2008
 Posts: 10443
 Location: Россия, Саратов
 
 | 
			
				|  (Separately) Posted: Wed Jan 20, 2010 21:18    Post subject: |   |  
				| 
 |  
				| Вахмурка sa
 Как я понял, будущая обобщённая статья обещает быть весьма содержательной. Особенно если учесть, что этот материал практически не освещался в книге по TC (глава по поиску там и без того получилась слишком большой).
 _________________
 Даже самая богатая фантазия
 Не представит себе наши безобразия.
 |  |  
		| Back to top |  |  
		|  |  
		| sa 
 
 
 Joined: 29 Apr 2009
 Posts: 2709
 
 
 | 
			
				|  (Separately) Posted: Fri Jan 22, 2010 12:57    Post subject: |   |  
				| 
 |  
				|  	  | Avada wrote: |  	  | найден способ в любом случае привести панель результатов в кратком режиме к удобочитаемому виду. | 
 Не стоит только забывать, что у этого удобочитаемого и привычного вида есть существенный недостаток по сравнению с показом по Ctrl-B: сортировка файлов и подкаталогов выполняется с учётом пути (невидимого при этом!), и файлы с одинаковыми именами, например, оказываются разбросанными по списку. 	  | sa wrote: |  	  | А для любителей подробного режима файловой панели ... список результатов поиска сразу предстанет в привычном виде. | 
 Если только кто-нибудь, не превратит этот минус в плюс (по примеру Вахмурки в его "Тотальной хитрости").
 |  |  
		| Back to top |  |  
		|  |  
		| Avada 
 
  
 Joined: 01 Aug 2008
 Posts: 10443
 Location: Россия, Саратов
 
 | 
			
				|  (Separately) Posted: Fri Jan 22, 2010 14:11    Post subject: |   |  
				| 
 |  
				| sa Замечание верное. Но "кто предупреждён — тот вооружён". И потом, все эти трюки являются всего лишь дополнением (да, с некоторыми издержками, но и с определёнными удобствами) к обычным способам работы. Кроме того, есть ещё такая штука как выделение всех файлов с текущим путём и последующая фильтрация в панели по критерию выделения. Правда, в панели результатов последняя операция, похоже, необратима — обратно перейти к полному списку результатов поиска уже не получится.
 _________________
 Даже самая богатая фантазия
 Не представит себе наши безобразия.
 |  |  
		| Back to top |  |  
		|  |  
		| sa 
 
 
 Joined: 29 Apr 2009
 Posts: 2709
 
 
 | 
			
				|  (Separately) Posted: Fri Jan 22, 2010 14:59    Post subject: |   |  
				| 
 |  
				| Я в своём пользовательском наборе а-ля "Подробный" "вооружился" дополнительной колонкой "Имя" из внутреннего tc-плагина. На панели от неё присутствует только половинка буквы И, но для задания привычной сортировки по имени этого вполне хватает. 	  | Avada wrote: |  	  | Но "кто предупреждён — тот вооружён" | 
 |  |  
		| Back to top |  |  
		|  |  
		| Avada 
 
  
 Joined: 01 Aug 2008
 Posts: 10443
 Location: Россия, Саратов
 
 | 
			
				|  (Separately) Posted: Fri Jan 22, 2010 15:27    Post subject: |   |  
				| 
 |  
				| sa Да, я этот трюк тоже знаю и рекомендую к применению.
 _________________
 Даже самая богатая фантазия
 Не представит себе наши безобразия.
 |  |  
		| Back to top |  |  
		|  |  
		| sa 
 
 
 Joined: 29 Apr 2009
 Posts: 2709
 
 
 | 
			
				|  (Separately) Posted: Sat Feb 20, 2010 17:41    Post subject: |   |  
				| 
 |  
				| Заметил, что фокус с "кратким просмотром" результатов поиска не работает, если результат один. Предлагаю скрипт  (с использованием TCWSHelp), навеянный обсуждением и предназначенный для вывода результатов поиска на панель.
 Сам вижу в нём ряд недостатков (проблема с раскладкой клавиатуры, например) и надеюсь на помощь форумчан в их устранении.
 Надеюсь, всё же, что хотя бы для демонстрации фокусов с панелью результатов поиска, он может быть полезен.
  	  | Code: |  	  | '================================================================================
'  File:         Поиск файлов по шаблону.vbs
 '  Description:  Поиск файлов по шаблону с последующим выводом на панель.
 '  Parameters:   Первый параметр (обязательный): номер строки шаблона в
 '      отсортированном по алфавиту списке шаблонов поиска.
 '      Для корректного выполнения скрипта создайте в TC хотя бы один шаблон.
 '      Вывод на панель осуществляется без участия пользователя только в случае
 '      доступности кнопки "Feed to listbox" ("Файлы на панель") по истечении
 '      устанавливаемой паузы для ожидания завершения поиска и совпадении языка
 '      меню TC и раскладки клавиатуры (см. комментарии по тексту скрипта).
 '        Второй параметр (может отсутствовать): номер пользовательского набора
 '      колонок для панели с результатами поиска (1...99) или
 '       B (или К) - для краткого режима,
 '       F (или П) - для подробного режима,
 '       T (или Э) - для режима эскизов.
 '      Режим панели применяется к панели с результатами только при условии, что
 '      поиск успешно завершился (или прерван) в пределах устанавливаемой паузы и
 '      вывод на панель прошёл без участия пользователя, иначе второй параметр
 '      просто переключает режим активной файловой панели
 '  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, n
 Set TCS = CreateObject("TCScript.Helper")
 TCS.LockTC True
 TCS.SendCommand 501 'cm_SearchFor
 TCS.SendKeystroke "+{Tab}{End}{Tab}{End}{Home}"
 For n = 1 To WScript.Arguments(0)-1
 TCS.SendKeystroke "{DOWN}"
 Next
 TCS.SendKeystroke "{Enter}"
 TCS.SendKeystroke "{Enter}"
 wscript.sleep(1000)
 ' Пауза для ожидания завершения поиска (в миллисекундах), по истечении
 'которой посылается комбинация клавиш для вывода файлов на панель.
 'Если при этом поиск не успел завершиться, то по его окончании вывод
 'выполняется самим пользователем
 If Instr(1, UCase(TCS.INIRead _
 (TCS.MainINI, "Configuration", "LanguageIni", "0")), _
 "_RUS") = 0 Then 'Проверка: если меню TC не русифицированное...
 '  TCS.SendKeystroke "^+1"
 ' Раскомментировать предыдущую строку, если переключение на английский язык
 'настроить в региональных стандартах на Ctrl+Shift+1. Иначе команда
 '"Feed to &listbox" выполняется без участия пользователя только для
 'английской раскладки клавиатуры
 TCS.SendKeystroke "%l"
 Else                           'иначе, если меню русифицированное...
 '  TCS.SendKeystroke "^+2"
 ' Раскомментировать предыдущую строку, если переключение на русский язык
 'настроить в региональных стандартах на Ctrl+Shift+2. Иначе команда
 '"Фай&лы на панель" выполняется без участия пользователя только для
 'русской раскладки клавиатуры
 TCS.SendKeystroke "%k"
 '  TCS.SendKeystroke "^+1"
 ' Раскомментировать предыдущую строку, если переключение на английский язык
 'настроено на Ctrl+Shift+1 и есть желание переключиться с русского на
 'английский перед выходом из скрипта
 End If
 If WScript.Arguments.Count > 1 then
 Select Case UCase(WScript.Arguments(1))
 Case "B","К"  'Краткий (Эскизы - Краткий)
 TCS.ClearClip
 TCS.SendCommand 3301 'cm_SelectAllBoth
 TCS.SendCommand 2017 'cm_CopyNamesToClip
 TCS.SendCommand 524  'cm_ClearAll
 If UBound(Split(TCS.GetTextFromClip,vbNewLine)) = 0 Then
 MsgBox "Результатов поиска один (возможно ноль)." & _
 vbNewLine & "Режим файловой панели не изменялся!", _
 vbOKOnly + vbSystemModal, "Поиск файлов по шаблону.vbs"
 Else
 TCS.SendCommand 269  'cm_SrcThumbs  или 271 'cm_SrcCustomView1
 TCS.SendCommand 301  'cm_SrcShorth
 TCS.SendCommand 330  'cm_SrcNegOrder
 TCS.SendCommand 330  'cm_SrcNegOrder
 ' Закомментировать две предыдущие строки, чтобы ширина колонок в кратком режиме
 'не подстраивалась под самое длинное имя файла на панели результатов поиска -
 'в данном варианте с помощью двукратной сортировки панели в обратном порядке.
 'После закомменирования ширина колонок на панели результатов поиска будет
 'наследоваться от последнего применённого краткого режима на активной файловой
 'панели, либо составит половину её ширины, если наследования не было или если
 'найденные файлы поместились в одну колонку на панели.
 'Поведение указано для значения ключа BriefViewWidthLimit=0
 end if
 Case "F","П"  'Подробный (Эскизы - Подробный)
 TCS.SendCommand 269  'cm_SrcThumbs или 271 'cm_SrcCustomView1
 TCS.SendCommand 302  'cm_SrcLong
 Case "T","Э"  'Эскизы
 TCS.SendCommand 269  'cm_SrcThumbs
 Case Else     'Пользовательский набор колонок
 n =  WScript.Arguments(1)     'cm_SrcCustomView
 If n > 0 and n < 30 Then
 TCS.SendCommand 270 + n
 ElseIf n > 29 and n < 100 Then
 TCS.SendCommand 7500 + n
 Else
 MsgBox "Не верно задан второй параметр: режим панели!", _
 vbOKOnly + vbCritical, _
 "Поиск файлов по шаблону.vbs"
 End If
 End Select
 End If
 TCS.LockTC False
 Set TCS = Nothing
 Wscript.Quit
 
 | 
 Его можно повесить на кнопку:
 
 Диск и путь к файлу “Поиск файлов по шаблону.vbs”, а также параметры нужно заменить на свои. 	  | Code: |  	  | TOTALCMD#BAR#DATA
Диск:\путь\к\файлу\Поиск файлов по шаблону.vbs
 1 b
 WCMICONS.DLL,47
 Поиск файлов по шаблону с последующим выводом на панель
 
 
 -1
 | 
 |  |  
		| Back to top |  |  
		|  |  
		| sa 
 
 
 Joined: 29 Apr 2009
 Posts: 2709
 
 
 | 
			
				|  (Separately) Posted: Tue Mar 02, 2010 10:45    Post subject: |   |  
				| 
 |  
				| А не правильнее ли такое поведение считать не штатным, а багом? Тем более, что при переключении в любой другой режим файловой панели (подробный, эскизов, комментариев, с пользовательским набором колонок) потери результатов не наблюдается. 	  | Avada wrote: |  	  | При попытке переключения на краткий режим мы просто вернёмся из панели результатов поиска в стандартную файловую панель TC и потеряем все наши результаты. Это штатное поведение. | 
 |  |  
		| Back to top |  |  
		|  |  
		| Avada 
 
  
 Joined: 01 Aug 2008
 Posts: 10443
 Location: Россия, Саратов
 
 | 
			
				|  (Separately) Posted: Tue Mar 02, 2010 12:42    Post subject: |   |  
				| 
 |  
				| sa Не правильнее. Хотя бы потому, что утверждение про "любой другой режим" ошибочно. Возврат в стандартную панель при таком переключении происходит также для подробного режима и дерева. А режим комментариев в панели результатов вообще нормально не поддерживается. Остаются пользовательские колонки и эскизы.
 Кроме того, Гислер явным образом говорил, что это фича, из которой просто предусмотрены некоторые исключения.
 У меня уже с месяц как накоплен материал по всем этим нюансам, но в связи с большой загрузкой по русификации TC 7.51 сейчас нет, к сожалению, времени всё это представить в удобочитаемом виде.
 _________________
 Даже самая богатая фантазия
 Не представит себе наши безобразия.
 |  |  
		| Back to top |  |  
		|  |  
		| sa 
 
 
 Joined: 29 Apr 2009
 Posts: 2709
 
 
 | 
			
				|  (Separately) Posted: Tue Mar 02, 2010 13:25    Post subject: |   |  
				| 
 |  
				| Да, насчёт подробного режима я переборщил: сказалась "полезность" скрипта 	  | Avada wrote: |  	  | Возврат в стандартную панель при таком переключении происходит также для подробного режима | 
  . Дерево вроде не упоминал. В то же время не в пользу такой фичи говорит ситуация, когда поиск запускается из режима эскизов или пользовательских колонок: ведь в этом случае результаты поиска не теряются при переключении в том числе и на краткий и на подробный режимы панели.
 |  |  
		| Back to top |  |  
		|  |  
		| Avada 
 
  
 Joined: 01 Aug 2008
 Posts: 10443
 Location: Россия, Саратов
 
 | 
			
				|  (Separately) Posted: Tue Mar 02, 2010 13:50    Post subject: |   |  
				| 
 |  
				| sa А поведение с пользовательскими колонками и эскизами — это заплатки, которые Гислер по реквестам посетителей форумов постепенно добавлял для частных случаев основного функционала. Поэтому и такая чересполосица сейчас.
 _________________
 Даже самая богатая фантазия
 Не представит себе наши безобразия.
 |  |  
		| Back to top |  |  
		|  |  
		| sa 
 
 
 Joined: 29 Apr 2009
 Posts: 2709
 
 
 | 
			
				|  (Separately) Posted: Tue Mar 02, 2010 17:50    Post subject: |   |  
				| 
 |  
				| Ещё одна фича: вернёмся из панели результатов не в тот каталог, из которого запускали поиск, а в каталог, который открыт на противоположной(!) панели - для случая, если эти каталоги принадлежат одному диску. 	  | Avada wrote: |  	  | При попытке переключения на краткий режим мы просто вернёмся из панели результатов поиска в стандартную файловую панель TC и потеряем все наши результаты. Это штатное поведение. | 
 |  |  
		| Back to top |  |  
		|  |  
		| Avada 
 
  
 Joined: 01 Aug 2008
 Posts: 10443
 Location: Россия, Саратов
 
 | 
			
				|  (Separately) Posted: Thu Apr 01, 2010 13:18    Post subject: |   |  
				| 
 |  
				| Пока мы дискутировали, пришёл лесник... пардон, Гислер, и без лишних слов продемонстрировал, что он тут считает багом, а что фичей. Без лишних слов — потому что в истории версий 7.51/7.55 это изменение явным образом не описано. А состоит оно в том, что теперь переключение режима не выбрасывает из результатов поиска ни в подробном, ни в кратком режиме. Режим переключается — результаты остаются. Чтобы действительно выйти в обычную файловую панель, надо перечитать текущее содержимое. Можно всем известными клавишами, а можно просто нажать кнопку текущего диска.
 Нерешённых проблем, похоже, осталось две:
 1. В результатах поиска режим комментариев включается без отображения самих комментариев.
 2. На режим дерева в результатах поиска переключиться можно, а вот с него дальше — уже нет, результаты сбрасываются.
 _________________
 Даже самая богатая фантазия
 Не представит себе наши безобразия.
 |  |  
		| Back to top |  |  
		|  |  
		| Igor_A. 
 
  
 Joined: 23 Mar 2006
 Posts: 83
 
 
 | 
			
				|  (Separately) Posted: Thu Apr 01, 2010 13:42    Post subject: |   |  
				| 
 |  
				| Не знаю кто как, а я крайне не доволен такой "самодержавной" уверенностью г-на Гислера в признании им старой "фичи" багом ( |  |  
		| 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
 
 |