| 
 
	
		| View previous topic :: View next topic |  
		| Author | Message |  
		| Mangust88 
 
 
 Joined: 01 Nov 2010
 Posts: 18
 
 
 | 
			
				|  (Separately) Posted: Wed Nov 03, 2010 20:28    Post subject: Произвольная фильтрация |   |  
				| 
 |  
				| Здравствуйте! Юзаю тотал 7.5. У меня вопрос. В тотале есть такая штука как "Показать только выделенные файлы и папки". Проблема в том, что эта выборка файлов и папок не сохраняется, и при смене вкладок или если убрать фокус с тотала, а потом опять переключиться на тотал, вся выборка сбрасывается. Приходится опять искать нужное на панели. Такая же история с быстрым поиском. КАК ЭТОГО ИЗБЕЖАТЬ?
 Когда это действительно необходимо, тогда я делаю так: запускаю пустой поиск с опцией "Глубина вложенности"="Только текущий", потом файлы на панель,потом выделяю нужное и жму "Показать только выделенное". В этом случае все типтоп, выборка сохраняется при переключении между вкладками. Но это не выход.
 А фильтрацией невозможно выделить именно то, что нужно.
 Хелп ми плиз!
 |  |  
		| Back to top |  |  
		|  |  
		| sa 
 
 
 Joined: 29 Apr 2009
 Posts: 2707
 
 
 | 
			
				|  (Separately) Posted: Wed Nov 03, 2010 21:17    Post subject: |   |  
				| 
 |  
				| Мне помогает в подобных случаях временный список исключений. Либо можно просто "ручками" сначала добавить ненужные для показа файлы/каталоги к списку исключений ТК, а по ненадобности убрать их оттуда.
 |  |  
		| Back to top |  |  
		|  |  
		| Avada 
 
  
 Joined: 01 Aug 2008
 Posts: 10443
 Location: Россия, Саратов
 
 | 
			
				|  (Separately) Posted: Wed Nov 03, 2010 21:37    Post subject: |   |  
				| 
 |  
				| Mangust88 Даже при беглом просмотре даже стандартного меню "Выделение" (не говоря уж про расширенное) легко найти блок команд, где есть и "Сохранить выделение", и "Восстановить выделение", и "Сохранить выделение в файл", и "Загрузить выделение из файла". Файл сохраняется в том каталоге, где выполняется фильтрация. Намёк понятен?
 _________________
 Даже самая богатая фантазия
 Не представит себе наши безобразия.
 |  |  
		| Back to top |  |  
		|  |  
		| Mangust88 
 
 
 Joined: 01 Nov 2010
 Posts: 18
 
 
 | 
			
				|  (Separately) Posted: Wed Nov 03, 2010 22:08    Post subject: |   |  
				| 
 |  
				| sa Спасибо! Удобно, уже ближе к идеальному решению
   
 Avada
 Так и делал до некоторого времени, но это ваще не вариант. А то что "список исключений" я проморгал, это да, виноват
 |  |  
		| Back to top |  |  
		|  |  
		| sa 
 
 
 Joined: 29 Apr 2009
 Posts: 2707
 
 
 | 
			
				|  (Separately) Posted: Wed Nov 03, 2010 22:36    Post subject: |   |  
				| 
 |  
				|  	  | Mangust88 wrote: |  	  | уже ближе к идеальному решению | 
 Чем не дотягивает?
  |  |  
		| Back to top |  |  
		|  |  
		| Mangust88 
 
 
 Joined: 01 Nov 2010
 Posts: 18
 
 
 | 
			
				|  (Separately) Posted: Wed Nov 03, 2010 23:42    Post subject: |   |  
				| 
 |  
				| Не эстетично ) К тому же работает одновременно только для одной вкладки
 
 Last edited by Mangust88 on Thu Nov 04, 2010 00:09; edited 1 time in total
 |  |  
		| Back to top |  |  
		|  |  
		| Avada 
 
  
 Joined: 01 Aug 2008
 Posts: 10443
 Location: Россия, Саратов
 
 | 
			
				|  (Separately) Posted: Thu Nov 04, 2010 00:08    Post subject: |   |  
				| 
 |  
				|  	  | Mangust88 wrote: |  	  | но это ваще не вариант | 
 Да? И почему же? Только конкретно, пожалуйста.
 А список исключений лично я предпочитаю использовать по его прямому назначению.
 _________________
 Даже самая богатая фантазия
 Не представит себе наши безобразия.
 
 Last edited by Avada on Thu Nov 04, 2010 13:42; edited 1 time in total
 |  |  
		| Back to top |  |  
		|  |  
		| Mangust88 
 
 
 Joined: 01 Nov 2010
 Posts: 18
 
 
 | 
			
				|  (Separately) Posted: Thu Nov 04, 2010 00:14    Post subject: |   |  
				| 
 |  
				|  	  | Quote: |  	  | Да? И почему же? Только конкретно, пожалуйста. | 
 очевидно же, окна разные вылезают и, повторюсь, работает одновременно только для одной вкладки
 |  |  
		| Back to top |  |  
		|  |  
		| sa 
 
 
 Joined: 29 Apr 2009
 Posts: 2707
 
 
 | 
			
				|  (Separately) Posted: Thu Nov 04, 2010 00:58    Post subject: |   |  
				| 
 |  
				|  	  | Avada wrote: |  	  | А список исключений лично я предпочитаю использовать по его прямому назначению. | 
 То есть галка "Исключить (не показывать) следующие файлы и каталоги" в диалоге настройки списка исключений не совсем соответствует его прямому назначению?
 
 
  	  | Mangust88 wrote: |  	  | Такая же история с быстрым поиском. КАК ЭТОГО ИЗБЕЖАТЬ? | 
 Избежать не знаю как, а восстановить последний использованный фильтр быстрого поиска можно с помощью Ctrl+Shift+S.
 |  |  
		| Back to top |  |  
		|  |  
		| Mangust88 
 
 
 Joined: 01 Nov 2010
 Posts: 18
 
 
 | 
			
				|  (Separately) Posted: Thu Nov 04, 2010 09:16    Post subject: |   |  
				| 
 |  
				| Спасибо, очень кстати 	  | sa wrote: |  	  | а восстановить последний использованный фильтр быстрого поиска можно с помощью Ctrl+Shift+S. | 
 |  |  
		| Back to top |  |  
		|  |  
		| Avada 
 
  
 Joined: 01 Aug 2008
 Posts: 10443
 Location: Россия, Саратов
 
 | 
			
				|  (Separately) Posted: Thu Nov 04, 2010 13:59    Post subject: |   |  
				| 
 |  
				|  	  | Mangust88 wrote: |  	  | очевидно же, окна разные вылезают и, повторюсь, работает одновременно только для одной вкладки | 
 Тогда, прошу прощения, в первом посте надо было яснее формулировать исходную задачу. Там присутствуют фильтрация в текущей панели по маске/шаблону и быстрый поиск (который в данном случае на самом деле быстрый фильтр) опять же в текущей панели, но нет ровно ничего касающегося инструментария исключений, действующего чаще всего для указанных объектов, находящихся в самых разных местах.
 
 
  	  | sa wrote: |  	  | То есть галка "Исключить (не показывать) следующие файлы и каталоги" в диалоге настройки списка исключений не совсем соответствует его прямому назначению? | 
 Галка-то соответствует. Применение функции исключений как суррогата фильтрации в текущей панели (при наличии специальных механизмов для этого) не вполне соответствует. Разумеется, технически это можно сделать. Но вообще говоря, список исключений формируется на долговременную перспективу, а не на ближайшие пять минут. Вопрос удобства не обсуждаю, хозяин — барин.
 _________________
 Даже самая богатая фантазия
 Не представит себе наши безобразия.
 
 Last edited by Avada on Thu Nov 04, 2010 14:30; edited 1 time in total
 |  |  
		| Back to top |  |  
		|  |  
		| sa 
 
 
 Joined: 29 Apr 2009
 Posts: 2707
 
 
 | 
			
				|  (Separately) Posted: Thu Nov 04, 2010 14:10    Post subject: |   |  
				| 
 |  
				| Согласен. 	  | Mangust88 wrote: |  	  | Не эстетично ) | 
 
 
 Простейшим решением вопроса будет не затирание временного списка исключений постоянным при каждом вызове скрипта (как сейчас), а его очередное пополнение. Удаляться временный список в таком случае будет либо вызовом скрипта при отсутствии невыделенных файлов, либо “ручками”. (Замечу что, если  его не удалить, то и при новом сеансе ТК скрипт будет пополнять именно его, а не существующий постоянный список). 	  | Mangust88 wrote: |  	  | К тому же работает одновременно только для одной вкладки | 
 Привожу скрипт для рассматриваемого варианта:
 
  	  | Code: |  	  | '  File:         IgnoreTempListAdd.vbs
'  Description:  Формирует временный список исключений из невыделенных в панели
 '    файлов/каталогов. Если временный список исключений (tempignore.txt) отсутствует,
 '    а постоянный список (по умолчанию - tcignore.txt) имеется, то постоянный список
 '    добавляется в начало создаваемого временного списка.
 '    При наличии временного списка исключений он (временный список) только пополняется
 '    невыделенными в панели файлами/каталогами, без какой-либо проверки актуальности
 '    строк постоянного списка в нём.
 '     Способы прекращения действия временного списка исключений:
 '    а) вызвать скрипт при отсутствии невыделенных файлов, то есть, если выделены все
 '    или выделять нечего (файл временного списка при этом удаляется),
 '    б) вызвать внутреннюю команду "Использовать список исключений файловых имён: вкл/выкл"
 '    (два или один раз, в зависимости от желания/нежелания использовать постоянный список
 '    исключений),
 '    в) закончить сеанс TC.
 '    В вариантах б) и в) файл временного списка не удаляется и используется
 '    при очередном вызове скрипта в том же или новом сеансе TC.
 '  Parameters:   Нет
 '  Requirements: WSH Helper for TC by Volniy
 '  Installation: Создайте для скрипта, например, кнопку на панели инструментов TC
 '  Autor:        sa
 
 Option Explicit
 Dim WSH, FSO, TCS, IgFile, IgTempFile, IgPath, IgPathExp, IgEnabled, MsgStr, S, S_exp, F1, IgSize, MsgMode
 Set WSH = CreateObject("WScript.Shell")
 Set FSO = CreateObject("Scripting.FileSystemObject")
 Set TCS = CreateObject("TCScript.Helper")
 '========== Изменяемые параметры ===============================================
 'Режим информационных сообщений: 2 -назойливый, 1 -щадящий, 0 -без сообщений
 MsgMode = 1
 '===============================================================================
 TCS.LockTC True
 IgFile = "tcignore.txt"
 IgTempFile = "tempignore.txt"
 IgPath = "%COMMANDER_PATH%\"
 IgPathExp = TCS.TCPath & "\"
 IgEnabled = TCS.INIRead (TCS.MainINI, "Configuration", "IgnoreListFileEnabled", 0)
 MsgStr = ""
 IgSize = 0
 S = TCS.INIRead (TCS.MainINI, "Configuration", "IgnoreListFile", 0)
 S_exp = WSH.ExpandEnvironmentStrings(S)
 If FSO.FileExists(S_exp) Then
 IgPath = Left(S, InStrRev(S,"\"))
 IgPathExp = Left(S_exp, InStrRev(S_exp,"\"))
 IgFile = Right(S,len(S)-len(IgPath))
 IgSize =  FSO.GetFile(S_exp).size
 else
 Set F1 = FSO.CreateTextFile(IgPathExp & IgFile, True)
 F1.Close
 Set F1 = Nothing
 end if
 TCS.SendCommand (3321) 'cm_ExchangeSelBoth
 TCS.SendCommand (530) 'cm_SaveSelection
 TCS.SendCommand (480) 'cm_IgnoreConfig
 TCS.SendKeystroke "+{TAB 6}{ENTER}010{ENTER}{LEFT}{TAB 4}{ENTER}"
 if FSO.GetBaseName(TCS.INIRead (TCS.MainINI, "Configuration", "IgnoreListFile", 0)) = "010" then
 if IgEnabled = 0 then MsgStr = "Задействована функция исключений файловых имён."
 if not FSO.FileExists(IgPathExp & IgTempFile) then
 FSO.CopyFile IgPathExp & IgFile, IgPathExp & IgTempFile
 MsgStr = MsgStr & chr(13) & "Создан и применён временный список исключений."
 else
 if MsgMode = 2 then MsgStr = MsgStr & chr(13) & "Временный список исключений пополнен и применён."
 end if
 TCS.INIWrite TCS.MainINI , "Configuration", "IgnoreListFile", IgPath & IgTempFile
 TCS.SendCommand (529) 'cm_RestoreSelection
 TCS.SendCommand (480) 'cm_IgnoreConfig
 TCS.SendKeystroke "+{TAB 5}{ENTER}{TAB 2}{ENTER}"
 TCS.INIWrite TCS.MainINI, "Configuration", "IgnoreListFile", IgPath & IgFile
 else
 MsgStr = "Невыделенных файлов/каталогов не найдено."
 if FSO.FileExists(IgPathExp & IgTempFile) then
 FSO.DeleteFile(IgPathExp & IgTempFile)
 MsgStr = MsgStr & chr(13) & "Временный список исключений удалён."
 end if
 if IgEnabled = 1 then
 TCS.SendCommand (2922) 'cm_SwitchIgnoreList
 if IgSize > 0 then
 TCS.SendCommand (2922) 'cm_SwitchIgnoreList
 MsgStr = MsgStr & chr(13) & "Используется постоянный список исключений."
 else
 MsgStr = MsgStr & chr(13) & "Действие функции исключений файловых имён прекращено."
 end if
 end if
 end if
 if MsgMode > 0 and MsgStr <> "" then MsgBox MsgStr, vbSystemModal, "IgnoreTempListAdd.vbs"
 TCS.LockTC False
 Set WSH = Nothing
 Set FSO = Nothing
 Set TCS = Nothing
 Wscript.Quit
 
 | 
 
 Last edited by sa on Wed Nov 10, 2010 13:55; edited 3 times in total
 |  |  
		| Back to top |  |  
		|  |  
		| sa 
 
 
 Joined: 29 Apr 2009
 Posts: 2707
 
 
 | 
			
				|  (Separately) Posted: Thu Nov 04, 2010 14:30    Post subject: |   |  
				| 
 |  
				|  	  | Avada wrote: |  	  | Но вообще говоря, список исключений формируется на долговременную перспективу, а не на ближайшие пять минут. | 
 Гислер тоже так полагал, когда вводил в диалог настройки списка исключений кнопки "Добавить все выделенные с путями" и "Добавить все выделенные"?
 К тому же, мой способ никоим образом на затрагивает пользовательский (постоянный) список исключений "tcignore.txt".
 |  |  
		| Back to top |  |  
		|  |  
		| Avada 
 
  
 Joined: 01 Aug 2008
 Posts: 10443
 Location: Россия, Саратов
 
 | 
			
				|  (Separately) Posted: Thu Nov 04, 2010 14:46    Post subject: |   |  
				| 
 |  
				|  	  | sa wrote: |  	  | Гислер тоже так полагал, когда вводил в диалог настройки списка исключений кнопки "Добавить все выделенные с путями" и "Добавить все выделенные"? | 
 Думаю, что да. Особенно для второй кнопки.
  Потому что это просто способ обойтись без ручного ввода имён в списке исключений, быстро формируя список на "полуавтомате". Задача заменить первой кнопкой фильтрацию в текущей панели тут однозначно не преследовалась, а вторая кнопка для этой задачи просто непригодна. 
 
  	  | sa wrote: |  	  | К тому же, мой способ никоим образом на затрагивает пользовательский (постоянный) список исключений "tcignore.txt". | 
 Не спорю ни с этим, ни правом на существование самого способа. Напомню, речь изначально шла только о прямом назначении механизма исключений. Однако уже не раз бывало, что эти прямые назначения расширялись пытливыми пользователями, как говорил классик, "до чёрт знает каких пределов". Никакого противоречия.
 _________________
 Даже самая богатая фантазия
 Не представит себе наши безобразия.
 |  |  
		| Back to top |  |  
		|  |  
		| Mangust88 
 
 
 Joined: 01 Nov 2010
 Posts: 18
 
 
 | 
			
				|  (Separately) Posted: Thu Nov 04, 2010 20:24    Post subject: |   |  
				| 
 |  
				| sa Работает!
  Прям вот спасибо от души! ) |  |  
		| 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
 
 |