View previous topic :: View next topic |
Author |
Message |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Fri Feb 12, 2010 18:01 Post subject: |
|
|
sa
Раз говорим А, надо говорить и B. Почему не нужны?
Тогда выделение и поиск будет производиться не только по типам файлов, но и по типам папок, и тогда придётся самому мышкой указывать тот файл, с которого начнётся поиск. А это не есть правильно и добавляет доп. манипуляции.
P.S.: а вообще господин создатель не должен побрезговать новой подобной командой в Тотале. Было бы неплохо написать ему в хотелку. |
|
Back to top |
|
 |
sa
Joined: 29 Apr 2009 Posts: 2693
|
(Separately) Posted: Fri Feb 12, 2010 18:39 Post subject: |
|
|
Flasher wrote: | придётся самому мышкой указывать тот файл, с которого начнётся поиск | Меня устраивает именно такой способ.
CaptainFlint wrote: | Как вариант, можно это всё загнать в макрос. | Ничего, что загнал? Для работы нужен TCWSHelp:
Code: | ' Description: Перейти к следующему расширению
' Requirements: WSH Helper for TC by Volniy
' Installation: Создайте для скрипта, например, кнопку на панели инструментов TC
Option Explicit
Dim TCS
Set TCS = CreateObject("TCScript.Helper")
TCS.LockTC True
TCS.SendCommand 527 'cm_SelectCurrentExtension
TCS.SendCommand 525 'cm_ExchangeSelection
TCS.SendCommand 2053 'cm_GotoNextSelected
TCS.SendCommand 524 'cm_ClearAll
TCS.LockTC False
Set TCS = Nothing
Wscript.Quit
|
|
|
Back to top |
|
 |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Fri Feb 12, 2010 18:45 Post subject: |
|
|
Вот хорошо, что ты скрипт создал, сразу и вылезли на поверхность те нюансы, о которых я писал, и насчёт папок и насчёт перехода на первый файл по окончанию списка.
Доверши пожалуйста, если не трудно.) |
|
Back to top |
|
 |
sa
Joined: 29 Apr 2009 Posts: 2693
|
(Separately) Posted: Fri Feb 12, 2010 18:56 Post subject: |
|
|
Я ничего не создавал, а только записал языком скрипта предложения, которые высказали CaptainFlint и Avada. |
|
Back to top |
|
 |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Fri Feb 12, 2010 19:04 Post subject: |
|
|
Да я понимаю. Просто я знаю, что если я также скопом напишу в той же последовательности свои команды у меня ничего не выйдет, так как там должны выполняться определённые условия. Если ты в этом(скриптинге) понимаешь, то я тебя прошу по-отечески. Мне вовсе не обязательно выполнять список тех команд, что я указал. Мне достаточно, чтобы выполнялись след. условия:
1. Переход происходил только по файлам (не по папкам)
2. по нахождению курсора на последнем файле и нажатию кнопки происходил перескок на первый.
Last edited by Flasher on Fri Feb 12, 2010 19:06; edited 1 time in total |
|
Back to top |
|
 |
Avada

Joined: 01 Aug 2008 Posts: 10419 Location: Россия, Саратов
|
(Separately) Posted: Fri Feb 12, 2010 19:04 Post subject: |
|
|
Flasher
В чём смысл завершающего перехода на первый файл?
Что касается папок, то проблема легко решается добавлением после команды инверсии (cm_ExchangeSelection) следующей командой cm_ClearAllFolders, т.е. снятия выделения только с папок. _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
 |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Fri Feb 12, 2010 19:16 Post subject: |
|
|
Avada wrote: | Flasher
В чём смысл завершающего перехода на первый файл? | Ну я мог бы также и спросить: в чём смысл перехода на первый файл с другим расширением? Ну раз спросили: Буква с диал. поиска < Помним? Вот если осуществлять переход по набору текста, то по окончанию списка происходит переход на первый файл, удовлетворяющий условию(это не я придумал). Когда файлов много в папке, бывает проще нажимать только одну кнопку, а не искать другую, типа Home или cm_GoToFirstFile.
Avada wrote: | Что касается папок, то проблема легко решается добавлением после команды инверсии (cm_ExchangeSelection) следующей командой cm_ClearAllFolders, т.е. снятия выделения только с папок. | Вот спасибо, сейчас буду пробовать. |
|
Back to top |
|
 |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Fri Feb 12, 2010 19:40 Post subject: |
|
|
Avada wrote: | добавлением после команды инверсии (cm_ExchangeSelection) следующей командой cm_ClearAllFolders, т.е. снятия выделения только с папок. | Работает, но только там где нет папок, если курсор на первой строке(переход в род. катал.), пишет "Такие файлы не найдены". И переход на первый в силе. 
Last edited by Flasher on Fri Feb 12, 2010 19:47; edited 1 time in total |
|
Back to top |
|
 |
Avada

Joined: 01 Aug 2008 Posts: 10419 Location: Россия, Саратов
|
(Separately) Posted: Fri Feb 12, 2010 19:41 Post subject: |
|
|
Flasher
Скрипт, вообще-то, делался под изначальный запрос — переход на начало следующей по расширению группы файлов, далее к следующей и пр. Зачем это надо, объяснялось в первом посте. Про возврат к началу списка из его конца там разговора не было.
Если циклический переход по списку вообще кому-то в данном случае требуется (аналогия с быстрым поиском притянута здесь несколько за уши), он должен выполняться, разумеется, не добавлением перехода к первому файлу списка как завершающей команды, которая попросту прикончит результат действия предыдущей цепочки команд для каждого отдельного перехода между группами. Прикончит до того, как юзер успеет результатами навигации воспользоваться. _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
 |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Fri Feb 12, 2010 19:54 Post subject: |
|
|
Avada
То что не было разговора в первом посте не мешает поднимать из раза в раз неучтённые моменты с усовершенствованием задачи, если прослеживать цепочку тем форума. Или я ошибаюсь?
И зачем мне сейчас это было объяснять? Я об этом писал, что нет смысла пихать в один список. Вот мне то, как раз нужен ответ на вопрос, как добиться таки поставленной цели. Не буду же я заносить это в отдельную ветку, не правда ли?  |
|
Back to top |
|
 |
Avada

Joined: 01 Aug 2008 Posts: 10419 Location: Россия, Саратов
|
(Separately) Posted: Fri Feb 12, 2010 23:44 Post subject: |
|
|
Flasher
В отдельную ветку не надо. Неучтённые моменты — дело хорошее, но я внимательно следил за развитием дискуссии и прекрасно вижу, что команда cm_GoToFirstFile в теме появилась, строго говоря, ни с грушки, ни с петрушки и совершенно не вытекала из предыдущего обсуждения. Впрочем, ладно, уже разобрались. А как добиться, пусть ответят специалисты по скриптам, это вне моей компетенции.
Flasher wrote: | Работает, но только там где нет папок, если курсор на первой строке(переход в род. катал.), пишет "Такие файлы не найдены". |
Не понял. Как курсор вообще оказался в рамках нашей задачи на строке перехода в родительский каталог? _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
 |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Sat Feb 13, 2010 03:04 Post subject: |
|
|
Avada wrote: | Не понял. Как курсор вообще оказался в рамках нашей задачи на строке перехода в родительский каталог? | А там, где ставилась задача, момент с положением курсора и не обговаривался. Поэтому продолжаем "диспут" на предмет усовершенствования.) Там где папки присутствуют, при нахождении курсора на строке перехода в р.к., выполняется команда очищения от них, поэтому с этой строки всё работает, когда же папок нет, всплывает та самая петрушка с ненахождением того, что можно очистить. Решаемо, нет?
В общем ждём'с плагинописцев. |
|
Back to top |
|
 |
Avada

Joined: 01 Aug 2008 Posts: 10419 Location: Россия, Саратов
|
(Separately) Posted: Sat Feb 13, 2010 09:42 Post subject: |
|
|
Flasher
Не плагинописцев, а скриптописцев. Мне задача циклического перехода не по плечу, а то, что она в общем виде не решается простой последовательностью одних и тех же команд (и потому не может быть воспроизведена просто вызовом этих команд без скрипта) — факт.
И по исходным условиям задачи совершенно очевидно, что на момент запуска скрипта курсор должен находиться на произвольном файле произвольной группы, поскольку мы ищем следующее расширение. Но никак не на строке перехода в родительский каталог.
И вообще, по первоначальному запросу результат достигнут. Если нужен другий результат – надо формулировать модифицированный вариант задачи заново. От и до. _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
 |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Sat Feb 13, 2010 17:34 Post subject: |
|
|
Avada wrote: | Flasher
Не плагинописцев, а скриптописцев. | Эко я так промахнулся. На язык не то слово встало в полусне.) Quote: | Мне задача циклического перехода не по плечу...— факт. | Это я уже и так понял.
Quote: | И по исходным условиям задачи совершенно очевидно, что на момент запуска скрипта курсор должен находиться на произвольном файле произвольной группы, поскольку мы ищем следующее расширение. Но никак не на строке перехода в родительский каталог. | То что мы ищем след. расширение, вовсе не означает, что оно должно находиться на каком-то определённом файле. Скрипт может подходить как один из универсальных способов навигации. Возьмём, предположим, команду cm_GotoNextSelected, по сути она должна предполагать что курсор находится уже на каком-то выделенном файле, но, как можно убедиться, это не так, и работает она стабильно и при нахождении курсора на строке перехода, и на любом предшествующем непомеченном файле.
Quote: | Если нужен другой результат – надо формулировать модифицированный вариант задачи заново. От и до. | Я вот уже не первый год читаю форум, и что-то впервые такое "надо" вижу. Если человеку нужно было бы добавить какую-то определённую функцию для скрипта, то тот, кто компетентен([как пример - Batya), по желанию справлялся с новой задачей, а не просил написать заново все старые условия + новое. Ладно, педантичность - дело тонкое. Пишу:
При нахождении курсора в любой части панели (строка перехода в родительский каталог, любая папка, любой файл) должен выполняться циклический переход курсора на первый файл(не папку) с другим расширением, соответственно по окончанию списка курсор должен перескакивать на первый файл(не папку) в панели. При этом кнопка(соч. клавиш) должна работать как при наличии папок в директории, так и без них. |
|
Back to top |
|
 |
Avada

Joined: 01 Aug 2008 Posts: 10419 Location: Россия, Саратов
|
(Separately) Posted: Sat Feb 13, 2010 18:36 Post subject: |
|
|
Flasher wrote: | То что мы ищем след. расширение, вовсе не означает, что оно должно находиться на каком-то определённом файле. |
А где ещё может находиться следующее расширение, кроме как на каком-то определённом файле? Навигация выполняется на конкретный файл (по любому варианту условий – первый в следующей группе), а не на деревню дедушке.
Flasher wrote: | то тот, кто компетентен(как пример - Batya), по желанию справлялся с новой задачей, а не просил написать заново все старые условия + новое |
Угу. Особенно если сам же начинал решать исходную задачу, следил за продолжением темы и не имел вопросов по точности формулировки условий. Но он пока здесь не проявился. Я просто пытаюсь людям облегчить работу — только и всего.
И по формулировке задачи:
Flasher wrote: | [При нахождении курсора в любой части панели (строка перехода в родительский каталог <...> должен выполняться циклический переход курсора на первый файл(не папку) с другим расширением |
Это к вопросу о педантичности. Какое может быть другое расширение относительно элемента списка, никакого расширения не имеющего по определению? Кроме того, другой файл может быть как предыдущим, так и последующим относительно текущего.
Если взять за основу и подправить предыдущую формулировку, то задача в корректном виде. ИМХО, звучит примерно так:
При нахождении курсора на любой строке файлового списка (строка перехода в родительский каталог, любая папка, любой файл) должен выполняться — согласно алфавитному порядку расширений — переход курсора на первый файл (не папку) следующей группы, а по окончании списка — циклический переход на первый файл (не папку) в панели. При этом навигация должна работать как при наличии папок в списке, так и без них. _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
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
|