View previous topic :: View next topic |
Author |
Message |
LonerD
Joined: 04 Jan 2011 Posts: 1168 Location: Донецк
|
(Separately) Posted: Mon Apr 20, 2015 00:54 Post subject: |
|
|
AHK последняя? (я юникодовую использую, хотя должна и с Ansi работать)
http://ahkscript.org/download/
Тогда не знаю.
Теоретически 524 - снимает выделение, 330 . Mode выделяет файлы/каталоги, 2021 - копирует в буфер обмена имена с путями, потом содержимое буфера передаётся в переменную FileList. (затем в списке фильтруются лишние строки, он передаётся в буфер, и из буфера загружается выделение).
Попробуй ещё между SendMessage-коммандами вставить паузы...
Sleep, 200 (или другое число в миллисекундах).
LonerD wrote: | А что мешает сделать? |
Незнание как это сделать . Команда 2033 не загружает выделение при показе без каталогов.
Ага. Понял! Попробую добавить и эту фишку.
Flasher wrote: | Как у меня не хочешь сделать? |
Я твой и не смотрел ))
Вроде ж и у тебя режим выделения и шаг параметрами задаются. _________________ Win11 x64 Eng | TC DreamLair eternal pre-α |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon Apr 20, 2015 02:07 Post subject: |
|
|
LonerD wrote: | AHK последняя? | Поставил последнюю - то же самое. Я думаю, дело в цикле.
LonerD wrote: | Незнание как это сделать | У меня мог посмотреть.
LonerD wrote: | Вроде ж и у тебя режим выделения и шаг параметрами задаются. | Посмотри название. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
LonerD
Joined: 04 Jan 2011 Posts: 1168 Location: Донецк
|
(Separately) Posted: Mon Apr 20, 2015 05:15 Post subject: |
|
|
Flasher wrote: | LonerD wrote: | AHK последняя? | Поставил последнюю - то же самое. Я думаю, дело в цикле. |
Пока не представляю от чего может зависеть.
Нет, не в цикле, так как ты сказал, что "Пусто". То есть я так понимаю - отображается пустое окошко. А переменная FileList (список всех обрабатываемых файлов/каталогов) в цикле не изменяется.
Попробуй перед циклом вставить
msgbox, % FileList
Единственный нюанс (не знаю как в твоём скрипте) - в моём варианте есть некое ограничение на размер (то ли на количество файлов, то ли и длина имён/путей учитывается). У меня 60 тысяч файлов обрабатываются нормально, а вот более 90 тысяч из каталога WinSxS - не хотять...
Проблема возникает между копированием списка файлов в буфер и отработкой цикла... В чём причина - не могу понять .Увеличение лимита переменной не помогает (хотя дефолтный лимит 64 Мб, а у меня список файлов - меньше 20). Паузы всякие - тоже не помогают...
Команда StringReplace, FileList, FileList, % Path, , All
(удаление пути каталога из списка файлов, чтоб путь остался относительный) - не отрабатывает
Flasher wrote: | У меня мог посмотреть. |
Посмотреть мало, надо понять алгоритм. Тут в своих скриптах через некоторое время не разберусь, а в чужом да без комментариев - сходу "не осилил" )).
В итоге разобрался, не знал про такую фишку с выделением.
Flasher wrote: | Посмотри название. |
Ага, понял, может потом добавлю.
Скрипт обновил. Теперь при отображении файлов без каталогов тоже отрабатывает. _________________ Win11 x64 Eng | TC DreamLair eternal pre-α |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon Apr 20, 2015 05:42 Post subject: |
|
|
LonerD wrote: | Нет, не в цикле, так как ты сказал, что "Пусто". | Пусто - не пусто, а выделение хоть и кривое, но есть. Похоже, что в цикле пропускаются какие-то имена, то ли с цифрами, то ли с какими-то навороченными именами типа как у торрентов.
Пишу первым параметром 3, а он выделяет в DirBranch файл под курсором.
LonerD wrote: | В чём причина - не могу понять . | А ты буферный текст просто записать в какой-нибудь txt можешь?
У меня тоже иногда возникают нестабильности на больших списках. То выделяет как надо, то всё подряд. Проблема в стандартной склейке/разбивке.
LonerD wrote: | В итоге разобрался, не знал про такую фишку с выделением. | Я лет 5 назад и сам не знал. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
LonerD
Joined: 04 Jan 2011 Posts: 1168 Location: Донецк
|
(Separately) Posted: Mon Apr 20, 2015 17:33 Post subject: |
|
|
Flasher wrote: | Пишу первым параметром 3, а он выделяет в DirBranch файл под курсором. |
А... ну да... Совсем забыл. Если нет выделения - команда 2021 копирует в буфер путь к текущему файлу под курсором, а потом он и обрабатывается соответственно.
Вроде где-то на форуме уже обсуждали как побороть этот нюанс... Да, точно, вот знакомый автор тему создавал.
Flasher wrote: | А ты буферный текст просто записать в какой-нибудь txt можешь? |
Попробую.
Добавлено спустя 1 час 51 минуту:
Ну вот, ради такой финтифлюшной проверки пришлось раздуть скрипт в два раза (и єто не предел). А всё потому, что кто-то не добавил в Тотал команду копирования в буфер только выделенных файлов и каталогов...
Обновил скрипт, добавил проверку.
Остаётся открытым вопрос о случае когда в каталоге всего один элемент (файл или каталог) а курсор находится на строке перехода на уровень выше. Или же когда в каталоге нет вообще ничего...
Тогда команда 2021 (Копировать в буфер имена с UNC-путями) вместо того, чтобы скопировать в буфер ничего (то есть просто очистить буфер) высвечивает модальное окошко "No files selected". Как эту дрянь обойти - пока не знаю.
PS. Ёжики зелёные, придумал. Оказывается совсем несложно проверить наличие файла под курсором прежде чем пытаться копировать имена выделенных файлов в буфер обмена (хотя метод и неочевидный). Проверка наличия файлов в каталоге тоже решается несложно средствами AHK. _________________ Win11 x64 Eng | TC DreamLair eternal pre-α |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon Apr 20, 2015 21:57 Post subject: |
|
|
LonerD wrote: | А... ну да... Совсем забыл. | Ты о чём? 3 - это выделение только папок.
LonerD wrote: | Обновил скрипт | Теперь похоже на правду. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
LonerD
Joined: 04 Jan 2011 Posts: 1168 Location: Донецк
|
(Separately) Posted: Mon Apr 20, 2015 22:07 Post subject: |
|
|
Flasher wrote: | Ты о чём? 3 - это выделение только папок. |
О том, что мы выделяем каталоги командой 3303. Их при просмотре без каталогов нет, то есть ничего не выделено. Но скрипт об этом не знает, и копирует в буфер имена и пути выделенных элементов командой 2021. Так как выделения нет - то команда копирует имя и путь к файлу под курсором, и скрипт его дальше обрабатывает. Потому и получалось, что при 3 (выделение только папок) выделялся файл.
Сейчас работаю над проблемой с каталогами, в которых один или ноль файлов/подкаталогов. Пытаюсь добиться чтобы Тотал не высвечивал своё окошко. Идею понял, а скомбинировать пока не получается. _________________ Win11 x64 Eng | TC DreamLair eternal pre-α |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon Apr 20, 2015 22:16 Post subject: |
|
|
LonerD wrote: | Так как выделения нет - то команда копирует имя и путь к файлу под курсором, и скрипт его дальше обрабатывает. | А, ну да, я то в своём использую механизм Хелпера, там он берёт только выделенное. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
sa
Joined: 29 Apr 2009 Posts: 2569
|
(Separately) Posted: Mon Apr 20, 2015 22:38 Post subject: |
|
|
Flasher
LonerD
По мне, опция выделения только в файлах, каталогах или повсеместно, притянута за уши. Напомните, если её кто-то запрашивал. Неужели пользователь не в состоянии показать в панели требуемые конкретно ему объекты и уже затем обработать их зеброй? А если ему нужно обработать только какую-то группу файлов или сочетание только определённых папок и файлов? Всё это тянуть в скрипт и заводить кучу кнопок с разными параметрами или оперативно менять параметры кнопки, припоминая, какой по счёту параметр, за что отвечает и что 1 это всё, а 3 - только папки? |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon Apr 20, 2015 22:54 Post subject: |
|
|
sa
Это моя инициатива, никем за уши не притянутая. Пользователь в состоянии убрать и отфильтровать, но это лишние движения. А на тот момент вообще про фильтр папок с cd речь не могла идти.
Менять в одной кнопке параметр - это бред. Кто этим вообще занимается? Люди создают меню либо бар в виде меню и там уже - пункты/кнопки с соотв. параметрами и описаниями. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
sa
Joined: 29 Apr 2009 Posts: 2569
|
(Separately) Posted: Mon Apr 20, 2015 23:14 Post subject: |
|
|
Flasher
И под каждый шаг (знать бы ещё, какие шаги потребуются) заводить по 3 кнопки? |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon Apr 20, 2015 23:18 Post subject: |
|
|
sa
Это каждый сам определяет для себя. Кому-то одного шага достаточно, кому-то - пары. Или ты предлагаешь каждый раз в окне спрашивать? _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
sa
Joined: 29 Apr 2009 Posts: 2569
|
(Separately) Posted: Mon Apr 20, 2015 23:28 Post subject: |
|
|
Я предпочёл бы иметь одну кнопку, в которой изменяемым параметром был только шаг. Никаких наворотов с папками и файлами. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon Apr 20, 2015 23:30 Post subject: |
|
|
Это не навороты, это жизненная необходимость. Я мог бы ещё понять, если бы параметра было 2, а не 3(4). А поскольку это не так, то и говорить тут больше особо не о чем. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
sa
Joined: 29 Apr 2009 Posts: 2569
|
(Separately) Posted: Mon Apr 20, 2015 23:39 Post subject: |
|
|
Если для тебя это жизненная необходимость, то хоть параметры придумай для опции, отличные от размера шага, например A, F, D. |
|
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
|