Тема: AHK: Несколько вопросов по работе горячих клавиш и Sent режимов
С основными функциями программы AHK, и вопросов не имею. Но вот чем больше я копаюсь с назначением горячих клавиш, тем меньше чего понимаю. Поэтому прошу знатоков подтвердить или исправить сделанные мною выводы.
1) Почему НИГДЕ не сказано, что при ФИЗИЧЕСКОМ удержании клавиши начинается её автоповтор. Я целый день долбался, пытаясь выяснить причину, почему скрипт тормозит безбожно при активации-удержании хоткея. Авторы скорее всего считают, что конечный пользователь сам должен до этого догадаться.
1а) Как точно ведёт себя системный автоповтор клавиш при их ВИРТУАЛЬНОМ удержании разными режимами Sent команд? Тут я разобраться никак не могу.
2) из описания SendInput и SendPlay:
2а) "Кроме того они буферизуют физические нажатия на клавиши и кнопки мыши..." - в какой буфер буферизирует -в буфер физ. нажатий?. Что дает эта буферизация - последовательность нажатий вместо одновременности?
2б)" которые происходят во время посылки," - как я понимаю, буферизация ФИЗ нажатий ведётся ТОЛЬКО при ВИРТУАЛЬНЫХ нажатиях командами SendInput или SendPlay? Во всех остальных случаях ФИЗ нажатия не буферизируются.
2в) " что не позволяет нажатиям пользователя смешиваться с теми, которые посылает скрипт. ". Как я понимаю, виртуальный буфер перекрывает физический? А после опустошения виртуального выполняются команды из очереди команд физического буфера.
2г) #MaxThreadsBuffer off - какой буфер отключает эта команда: физический или виртуальный? Как я понял отключается виртуальный и работает только физический, и то ТОЛЬКО при использовании SendInput или SendPlay.
3)При включении режима CapsLock (физ или вирт способом), постоянно отсылается команда {CapsLock down}?
4) Пример:
ф::
msgbox 1
Return
~ф & в::
msgbox 2
Return
4а) Почему "ф" команда отсылается активному окну, если перед ней нет "~". Почему нужно перелапачивать весь код "а вдруг где есть ~ф"
4б) Почему "msgbox 1" срабатывает при ОТПУСКАНИИ "ф", а не при нажатии?
Где об этом написано? После таких сюрпризов нелестные слова в адрес разработчиков и HELPописателей вырываются сами собой...