Уменьшить скорость воспроизведения макроса

Столкнулись с проблемой в использовании Far? Здесь можно получить помощь.
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Уменьшить скорость воспроизведения макроса

Post by Shmuel »

Latest post of the previous page:

У меня на машине не наблюдается заметной разницы времени входа в папку с полмиллионом файлов между Фар2 и Фар3.
Для сортировки Unsorted: Фар3=850 ms, Фар2 - точно не измерял, по ощущениям - примерно 1 секунда.

P.S. Раскраска отключена в обоих случаях.
Last edited by Shmuel on Wed 14 Aug, 2019 01:21, edited 1 time in total.
Yegor
Posts: 1329
Joined: Mon 04 Apr, 2005 13:41
Location: San Ramon, CA / Kharkov, UA
Has thanked: 32 times
Been thanked: 61 times

Уменьшить скорость воспроизведения макроса

Post by Yegor »

Shmuel wrote: Wed 14 Aug, 2019 01:20 P.S. Раскраска отключена в обоих случаях.
А вот это ключевой момент, у меня была включена с настройками "из коробки". И действительно, без подсветки, скорость у Far2 сравнима с Far3, но кто использует Фар без подсветки?
Мы не можем ждать милостей от Фара, взять их у него — наша задача! (C) Мичурин
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Уменьшить скорость воспроизведения макроса

Post by Shmuel »

Yegor wrote: Wed 14 Aug, 2019 01:47 но кто использует Фар без подсветки?
Я, все годы, исключительно без подсветки.
User avatar
Smitis
Posts: 1709
Joined: Fri 18 Mar, 2005 12:51
Location: Питер
Has thanked: 23 times
Been thanked: 55 times

Уменьшить скорость воспроизведения макроса

Post by Smitis »

RoxMarty wrote: Thu 08 Aug, 2019 14:48 Именно на шаге копирования/вставки может возникнуть ошибка, ФАР не успевает будто копировать, а уже пытается вставить, причём при запуске цикла ещё раз - уже может успеть сделать правильно
Какой-нибудь сторонний менеджер буфера обмена, типа CLCL или какой-нибудь другой программы, отслеживающий буфер, не стоит?

П.С.
Я с задержкой работы буфера уже сталкивался. Кажется, это был уже FAR3. Причины не нашёл и даже предложил добавить команды для работы с внутренним буфером напрямую viewtopic.php?f=6&t=7576 (идея не прошла).
Потом, когда потребность в таких макросах отпала, я заподозрил, что дело могло быть в сторонней программе, отслеживающей буфер, но проверять уже не стал.
Разум когда-нибудь победит.
User avatar
Xerox
Posts: 395
Joined: Sun 20 Oct, 2019 15:50
Has thanked: 354 times
Been thanked: 9 times

Уменьшить скорость воспроизведения макроса

Post by Xerox »

Еще не решили проблему с нажатиями?
А тема-то архи-нужная и архи-важная.
Какая же автоматизация и продуктивность может если нажатия слать не умеем?

я уверен что проблема с посыланием нажатий решается с помощью NirCmd.
Ну или AutoHotKey, но NirCmd проще и слать нажатия умеет не хуже.
Слать нажатия из самого ФАРа может быть проблематичным изза того что он ФАР сам шлет и сам же и ловит,
и может быть что не может ловить то что сам себе послал во время того когда занят посыланием или чем таким.
внешняя утилита в силу своей внешнисти может эффективнее это делать
User avatar
Xerox
Posts: 395
Joined: Sun 20 Oct, 2019 15:50
Has thanked: 354 times
Been thanked: 9 times

Уменьшить скорость воспроизведения макроса

Post by Xerox »

В этой теме обсуждалось нечто близкое к здесь, и я привел рабочий пример использования NirCmd для ФАРа:
viewtopic.php?p=156790#p156790
User avatar
zg
zero-gravity
Posts: 6036
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 185 times
Contact:

Уменьшить скорость воспроизведения макроса

Post by zg »

Xerox wrote: Sun 24 Nov, 2019 17:15Еще не решили проблему с нажатиями?
какие проблемы?
User avatar
Xerox
Posts: 395
Joined: Sun 20 Oct, 2019 15:50
Has thanked: 354 times
Been thanked: 9 times

Уменьшить скорость воспроизведения макроса

Post by Xerox »

Еще пример, вызывает диалог архивирования файла:

Code: Select all

start /min "" cmd /c "nircmd sendkey shift down & waitfor abc123 /T 1 & nircmd sendkey f1 down & waitfor abc123 /T 1 & nircmd sendkey shift up & waitfor abc123 /T 1 & nircmd sendkey f1 up"
Можно как-то изящнее было залепить, но как пример пойдет.
И, самое важное место в скрипте, ето WAIT=1 секунда (waitfor abc123 /T 1) между каждым нажатием.
Потому что если ФАРу слишком быстро приходят нажатия (увы, как оказалось, и "внешние" нажатия тоже), то он их теряет
внутренний FARовский sleep думаю не помогает потому что ФАР и засыпает, а спросонья нажатия опять не ловятся
User avatar
Xerox
Posts: 395
Joined: Sun 20 Oct, 2019 15:50
Has thanked: 354 times
Been thanked: 9 times

Уменьшить скорость воспроизведения макроса

Post by Xerox »

zg wrote: Sun 24 Nov, 2019 17:59
Xerox wrote: Sun 24 Nov, 2019 17:15Еще не решили проблему с нажатиями?
какие проблемы?
Нажатия клавиш (send key)
Топикстартер шлет нажатия клавиш в ФАР (из ФАРа), и они у него плохо шлются.
Опять что-то не так?
Технически его вопрос наверное не так поставлен если придираться,
но по сути как раз про это и речь про что я писал, чтобы победить его проблему
Last edited by Xerox on Sun 24 Nov, 2019 18:15, edited 3 times in total.
User avatar
zg
zero-gravity
Posts: 6036
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 185 times
Contact:

Уменьшить скорость воспроизведения макроса

Post by zg »

Xerox wrote: Sun 24 Nov, 2019 18:03Нажатия клавиш (send key)
Топикстартер шлет нажатия клавиш в ФАР (из ФАРа), и они у него плохо шлются.
Опять что-то не так?
Технически его вопрос наверное не так поставлен если придираться,
но по сути как раз про это и речь про что я писал, чтобы победить его проблему
а вы только первое сообщение в теме читаете? потому что здесь проблема решена и дело скорее всего не в фаре.
Last edited by zg on Sun 24 Nov, 2019 18:33, edited 1 time in total.
User avatar
Xerox
Posts: 395
Joined: Sun 20 Oct, 2019 15:50
Has thanked: 354 times
Been thanked: 9 times

Уменьшить скорость воспроизведения макроса

Post by Xerox »

zg wrote: Sun 24 Nov, 2019 18:33 а вы только первое сообщение в теме читаете? потому что здесь проблема решена и дело скорее всего не в фаре.
Это я видел:
RoxMarty wrote: Thu 08 Aug, 2019 23:47Код задержки работает и вроде пока проблем не возникало (разок из десяти правда всё же, но это лучше, чем было!)
лично меня бы один баг из десяти запусков не очень бы устраивал.
Или совсем бы не устраивал, в зависимости от задачи.
Допустим эта задача для инициатора обсуждения не настолько критичная, и пусть падает хоть каждый пятый раз.
Но лучше бы отладить механизм, или найти workaround на который можно полагаться в 1000 раз из 1000, разве нет?
За его простым вопросом скрывается более глобальный вопрос "как сделать безотказную автоматизацию ручных действий"
Лично я боюсь этих сумашедших роботов которые нажимают себе по своей программе что-то,
а на выходе может получиться черти-что, хоть, как кто-то сказал, форматирование диска.
Т.е. роботов таких надо делать максимально предсказуемыми по крайней мере, я так думаю, не?
Last edited by Xerox on Sun 24 Nov, 2019 18:51, edited 2 times in total.
User avatar
Xerox
Posts: 395
Joined: Sun 20 Oct, 2019 15:50
Has thanked: 354 times
Been thanked: 9 times

Уменьшить скорость воспроизведения макроса

Post by Xerox »

В ФАРе или нет - хороший вопрос, да.
Но из нас кажется никтоо еще не пробовал повторять те безумные кнопочки, так что мы оба занимаемся спекуляциями можно сказать.
я привел полноценный вариант решения в обход ФАРа, методом исключения можно исключить то или другое, пусть инициатор попробует я думаю
User avatar
Xerox
Posts: 395
Joined: Sun 20 Oct, 2019 15:50
Has thanked: 354 times
Been thanked: 9 times

Уменьшить скорость воспроизведения макроса

Post by Xerox »

Last edited by Xerox on Sun 24 Nov, 2019 19:03, edited 1 time in total.
User avatar
zg
zero-gravity
Posts: 6036
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 185 times
Contact:

Уменьшить скорость воспроизведения макроса

Post by zg »

Xerox wrote: Sun 24 Nov, 2019 18:44Это я видел:
т.е. дальше первого предложения вы не читали?
RoxMarty wrote: Thu 08 Aug, 2019 23:47Попробовал подставить это значение в свой изначальный код (то есть без задержек вовсе) и... в 50 случаях из 50 всё идеально прошло!
Xerox wrote: Sun 24 Nov, 2019 18:44Но лучше бы отладить механизм, или найти workaround на который можно полагаться в 1000 раз из 1000, разве нет?
для вас сейчас самое важное, если вы хотите оставаться на форуме, научиться читать.
Xerox wrote: Sun 24 Nov, 2019 18:49Но из нас кажется никтоо еще не пробовал повторять те безумные кнопочки, так что мы оба занимаемся спекуляциями можно сказать.
спекуляциями занимаетесь вы. я пробовал, разобрался и написал об этом в этой теме. у меня проблема не повторяется вообще.
AlexII
Posts: 270
Joined: Mon 10 Apr, 2006 00:53
Location: станица Григорополисская
Has thanked: 147 times
Contact:

Уменьшить скорость воспроизведения макроса

Post by AlexII »

Xerox wrote: Sun 24 Nov, 2019 17:15…и слать нажатия умеет не хуже.
Справедливости ради — намного, намного хуже.
Xerox wrote: Sun 24 Nov, 2019 18:44"как сделать безотказную автоматизацию ручных действий"
Автоматизация вообще не предусматривает «нажатий клавиш», уж больно нестабильно сие работает (Far Manager внутри себя — счастливое исключение).
User avatar
Xerox
Posts: 395
Joined: Sun 20 Oct, 2019 15:50
Has thanked: 354 times
Been thanked: 9 times

Уменьшить скорость воспроизведения макроса

Post by Xerox »

AlexII wrote: Fri 03 Jan, 2020 14:17 Автоматизация вообще не предусматривает «нажатий клавиш», уж больно нестабильно сие работает (Far Manager внутри себя — счастливое исключение).
в ФАРе тоже нестабильно, или хрупко-ломуче, этот топик тому подтверждение, хотя не все со мной согласятся тут, а то и забанят :)
Last edited by Xerox on Fri 03 Jan, 2020 15:15, edited 1 time in total.
Post Reply

Return to “Нужна помощь”