Тема: AHK: Подскажите как с помощью AutoHotkey можно реализовать многофункци
Я задавал вопрос на разных ресурсах forum.ixbt.com bestfree.ru/forum и мне посоветовали обратиться на этот.
К сожалению, по видимому моя идея довольно не ординарна, поэтому сразу прошу прощенье за долгое изложение. Как изложить её в двух словах, а тем более реализовать не нашел. Хотя в то же время она довольно проста и возможно уже, где то реализована.
Хочу к кнопкам мыши присвоить определенные комбинации с клавиатуры.
Но присвоить так, что бы одна кнопка мыши при разном нажатии производила разные действия.
Просто в качестве примера возьму левую кнопку мыши:
1- нажатие - стандартная функция (открытие папок, запуск приложений и т.д.)
2 – двойное нажатие – назначить комбинацию Alt+Tab. Но как то так назначить что бы при возникновении меню можно было выбирать между запущенными и открытыми приложениями. Т.е. двойной щелчок левой вызывает меню Alt+Tab но при запущенном меню одинарный щелчке левой (а возможно и лучше правой) эмулирует нажатие Tab . А правая (или если правая назначена именно при запуске окна на функцию табуляции, то левая) эмулирует выбор приложения. В общем, что бы при запущенном меню аналогичном Alt+Tab можно было бы быстро с помощью двух клавиш мыши и выбрать нужное окно и перемещаться между запущенными окнами. На первый взгляд это может показаться совершенно бесполезной функцией, т.к. можно просто произвести те же действия с помощью клавиатуры. Но у тех, у кого есть мышь лоджитек с аналогичным меню и настройками могут подтвердить, на сколько это удобнее и быстрее. Особенно если за компьютером приходится долго работать и часто переключатся между приложениями. Так по пару долей секунд - экономятся часы, которые бы уходили на то, что бы дотянуться до клавиши Alt+Tab на клавиатуре.
3 – эмуляция зажатия Ctrl. при зажатой все той же левой кнопки мыши.
Т.е. действия при одинарном и двойном щелчке описаны выше, теперь еще можно присвоить какое то действие на ту же нажатую и удерживаемую кнопку мыши. Это бы дало возможность, зажав кнопку мыши масштабировать, используя колесо прокрутки, не прибегая к нажатию его на клавиатуре. Но повторюсь, если кнопка не зажата, а просто нажата один раз - выполнялась её обычная функция.
Таким образом, в теории можно расширить функционал одной кнопки мыши до как минимум 3х. А если на манипуляторе 2е кнопки, то можно задействовать их сочетание. К примеру: нажатые две кнопки одновременно – сворачивают все окна ( повесить на них Win+D или Ctrl+F ) или любую другую часто используемую комбинацию, или даже жесты мыши с массой различных простеньких комбинаций заданных к примеру в gMote. Можно так же было бы некоторые сочетания сделать локальными (работающими по разному, в разных приложениях) но описанные мною выше должны быть глобальны (работающие везде вне зависимости от того какое приложение запущено).
Ну это я так привел на вскидку самые основные и нужные возможности.
Можно было бы назначить на дополнительные кнопки мыши эти и аналогичные часто востребованные функции (быстрое переключение между приложениями и окнами, масштабирование, навигация (вперед назад) и т.д.) Конечно, можно для этого задействовать клавиатуру или вовсе не использовать данные функции. Но когда к ним привыкаешь, особенно если приходится много работать за компьютером, то понимаешь что с ними на много быстрее и удобнее. Данный расширенный функционал был бы полезен не только для мышей с доп. кнопками, но и для тех у кого их навпротив нехватает. К примеру: у меня на работе на одной мыши поломано колесо, так же думал переназначить функцию колеса, к примеру: на двойной щелчке какой то из кнопок. Кстати раньше были мыши и вовсе без колеса прокрутки, и это не кого не смущало, а теперь попробуйте поработать с такой мышью, когда вы привыкли к данной функции. И вы поймете, что почувствовал я когда вместо многофункциональной лоджитек взял в руки «деревянную» гигабитовскую мышь с намного меньшим функционалом.
Для реализации обычного переназначения существуют такие программы как MKey, XMouseButtonControl а возможно и другие. Не буду очередной раз описывать преимущества и недостатки данных программ. скажу только, что не смотря на их большие возможности именно задача многофункциональности одной и той же кнопки у них проработана очень плохо. И мне её так и не удалось настроить. Присвоив какую то одну комбинацию той или иной кнопки, добавить для неё же другую функцию либо невозможно, либо проблематично. Другое дело Key Manager – но данная программа к сожалению платная и не смотря на все её удобства она не справилась с задачей. Хотя может я просто не разобрался или попалась плохая версия (пробовал1.9 Build 312 Portable) или какой то конфликт с другими программами. А возможно просто данные возможности в ней хотя и предусмотрены в отличии от предыдущих,, но работают не корректно.
Часто при настройки, одной кнопки она, почему то уже не срабатывает при комбинации её с другой. К примеру: если я назначил на двойной щелчке левой кнопки мыши клавишу CTRL то одинарный щелчке просто перестает работать. Или если я назначаю комбинацию Alt+Tab на одновременно зажатую и левую и правую кнопку мыши, то почему то Alt+Tab срабатывает при нажатии одной правой кнопки, а левая перестает работать.
Поэтому пока единственная альтернатива AutoHotKey
Это по идеи очень перспективная программа, богатый функционал, возможность сохранения в эхэ, написания скриптов. В общем возможности далеко выходят даже за рамки потребностей описанный, в моей идеи. Но программа сложная, скорей всего рассчитана на опытных программистов. Пока разобрался, как и куда писать код она перестала запускаться. Я её пробовал распаковать в другое место, перезагрузить компьютер. Но она все равно, почему то пишет: «Error at line 34». и не запускается. Очень странно, т.к. программа простенькая и портативная. Пока нет времени с ней разбираться, т.к. даже для описание и проработки данных задач убил уже не один день…
Но решил остановиться именно на данной программе. Хотя для того что бы реализовать данную задачу надо по меньшей мере запустить программу, а потом еще и разобраться в принципе записи кода, задании алгоритма, его проработки и т.д. В общем без сторонней подсказки вряд ли удастся… .Можно было бы попросить кого то за деньги решить данную проблему и создать подобную программу. Но не смотря на то, что идея весьма перспективна, я за неё реализацию платить не стану по двум основным причинам. 1 - с моей зарплатой... только кому то и платить - самому на жизнь не хватает ((.2 – по большому счету можно и обойтись без данной программы, как в прочем и без компьютера в целом.
Просто думал, может, кто сталкивался с данной проблемой и подскажет... Или кому то данная идея понравится и захочет реализовать для собственного пользования, а за одно и поделится с другими – теми, кто её могут улучшить и отработать, исправив ошибки и чем то дополнив.