AHK — лучший ускоритель работы клавиатуры

 Публичный пост
16 мая 2022  246

Tags: #AHK #скрипты #HotKeys

AutoHotkey, запуск

Расскажу про лучший ускоритель для работы - AutoHotkey. AHK - это свободная утилита под Windows с открытыми исходным кодом.

Что по факту делает AHK: ты нажимаешь программируемую клавишу/сочетание в ответ получаешь программируемое действие.
Таким образом способов взаимодействия - бесконечное количество!
Расскажу про свой опыт использования.

https://www.autohotkey.com/ - качаем AHK, устанавливаем

Возможно, вам стоит посмотреть пару туториалов по использованию AHK. Вот неплохие ресурсы, на которых годная инфа:

А далее расскажу о своём скрипте и как я это под себя делал. (сам скрипт внизу статьи, а в ссылках можно скачать его)

Скачали, установили, открыли мой файлик (или сами напечатали прогу - внизу текст программы)
Совет: можно кинуть файлик по пути
C:\Users\q2pj\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
И он будет запускаться с запускам Windows

Приложения для помощи (Найти клавишу, Windows spy)

1-е приложение для помощи - "AHK_Lx64 НАЙТИ_КЛАВИШУ" (в ссылках можно скачать) или найти в гугле и скачать самостоятельно
Как работает: жмяк по клавише - пишет код(vk и sc, нам нужен vk) - его вставлять в AHK как клавишу использования (примеры: vk32, vk33, и т.д.) Нужно для того, чтоб работало на разных раскладках

Пример кодов клавиш в самом скрипте
Пример кодов клавиш в самом скрипте

2-е приложение устанавливается с AHK - Windows spy (показывает правильные названия окон)
Как открыть: ПКМ по AHK файлу в трее - Windows spy


Для работы с браузером, например - это "ahk_exe browser.exe" (3-я строка)
Для работы с браузером вписываем в скрипт 3-ю строку (ahk_exe browser.exe)
Для работы с браузером вписываем в скрипт 3-ю строку (ahk_exe browser.exe)

Язык скриптов - как писать скрипты самому

Писать сами файлики не сложно - достаточно понять паттерны языка. Если программировали на других языках - вообще изи.
Денёк разберетесь - и можно затачивать под себя файлик. Но даже без программирования - можно пользоваться моим скриптом - тоже ускорит вас значительно!

Функциональные клавиши в скрипте обозначаются так:

табличка с обозначением зажималок (Ctrl, Shift)
табличка с обозначением зажималок (Ctrl, Shift)

Просто клавиши можно найти в приложении "AHK_Lx64 НАЙТИ_КЛАВИШУ"

Пример: vk31 - это клавиша 1
Пример: vk31 - это клавиша 1

Пример кодов клавиш в самом скрипте
Пример кодов клавиш в самом скрипте

Паттерны и примеры программирования смотрим на сайте
https://komputer03.ru/avtomatizirujte-svoju-rabotu-s-autohotkey

Поиск-вики: ищем тут, а после в гугл
https://ahk-wiki.ru/tutorial

Функциональные клавиши: 2-7 и др.

Я иногда программирую и пишу мысли в Obsidian - и мне часто нужны эти клавиши: @":#[]{}. Но переключаться английский/русский не вариант(так-как очень много переключений, замедляет работу) А если 3 языка на клаве - так вообще ацтой!
Для этого и AHK подходит идеально.
Зажимаем левый alt+(любая клавиша 2-7, и д.р.) - настраивается в начале моего скрипта

Все эти клавиши нажимаются с левым ALT
Все эти клавиши нажимаются с левым ALT

F1 - справка

Создал справку для привыкания работы с горячими клавишами
Ах да, если ставите горячие клавиши в AHK - они идут первым приоритетом в операционной системе (если у вас с любым приложением и AHK хоткеи конфликтуют - приложение не сработает, а AHK сработает)

Win + F1 - справка по AHK

HotKeys:
win+F2-cmd 
win+F3-VPN
win+F8 - воспроизведение

ctrl+L - выделить строку 
win+o - obsidian
alt+(любая клавиша2-7)
win+c - поиск в гугл выделенного текста

https://ahk-wiki.ru/msgbox - про вывод текста в окне
Совет: нажатие Ctrl+C во время показа MsgBox копирует его текст в буфер обмена. Можно выводить разные MsgBox по разным горячкам. И читать справочную информацию или копировать нужные текста.

Скрипты

Как видно со справки выше, у меня есть скрипты для работы с разными приложениями. Расскажу подробнее.
Один из первых скриптов, которые вам советую освоить - это быстрый поиск в гугл.
Как работает: Копируете текст в любом приложении, жмякаете горячку (win+c) и открывается браузер по умолчанию с гуглом, и в поиск вписывается выделенный текст, нажимается поиск

#c::
{ 
 Send, ^c
 Sleep 50 
 Run, https://www.google.com/search?q=%clipboard%
 Return
}

Волшебно...

По такому же принципу работает CMD(win+F2); открыть выделенную ссылку с VPN в опере(win+F3); пауза/воспроизведение проигрывателя; выделение строки(ctrl+L);

Ещё примеры использования

Я чаше всего AHK использую в фоне (с автоматическим запуском в win), так как описал. Но есть еще примеры, которые находил на просторах инета:

  • GTA RP - написание длинных одинаковых текстов 1 клавишей https://www.youtube.com/results?search_query=ahk+gta+rp (чаше всего видосы по AHK в ютубе ради гта и делают)
  • Minecraft - добывания бесконечного булыжника на одном месте. Создаётся цикл: Зажать ЛКМ пару сек, подождать, зажать ЛКМ пару сек (я так использовал, иногда поигрываю ради ностальжи)
  • Запуск множества приложений 1-ой кнопкой и закрытие их (что б не счелкать ЛКМ много раз самому)
  • Просто любые ускорители работы (потенциал AHK ограничен вашей фантазией)

Вывод

Жаль, что такого функционала нет по умолчанию в Windows, но AHK много не весит, ресурсов много не жрет.
Если научитесь пользоваться - даёт огромнейший буст в роботе с напечатанием текстов и работе с приложениями!
Спасибо за время, надеюсь, что вам понравится приложуха и я писал эту рекомендационную статью не зря.

Всем бобра!

Текст скрипта

; верхний регистр 2-7 , хъжэ\<>/
!vk32::SendInput {@} 
!vk33::SendInput {#}
!vk34::SendInput {;}
!vk36::SendInput {:}
!vk37::SendInput {?}
!vk38::SendInput {*}
!vkBA::SendInput {:}
!vkDB::SendInput {[}
!vkDD::SendInput {]}
!vkBC::SendInput {<}
!vkBE::SendInput {>}
!vkC0::SendInput {~}
!vkBF::SendInput {/}
!vkDC::SendInput {\}
!vkDE::SendInput {"}

; вместо 2х дефисов тире 
::--::—  

; вместо ddd - дата, в формате yyyy-MM-dd 
:*:ddd:: 
FormatTime, CurrentDateTime,, yyyy-MM-dd  
SendInput %CurrentDateTime%
return

; Win+F1- справка по прграмме с любого уголка WIN
#F1::
MsgBox,
, HotKeys:
, win+F3-VPN`nwin+F8 - воспроизведение`nwin+F12 - поверх окон`n`n
, ctrl+L - выделить строку `n, win+o - obsidian`n, alt+(любая клавиша2-7)`n
, win+c - поиск в гугл выделенного текста`n, win+y- поиск в youtube `n
return 

; Win+F3 - Запустить оперу и открыть ссылку через впн
#F3::
Send, ^c
Run, D:\Programms\OperaGX\launcher.exe, max
sleep, 2000
IfWinExist ahk_exe opera.exe
{
WinActivate
sleep, 2500
Click 175,53
sleep, 100
Click 50,69
sleep, 100
Click 200,0
sleep, 100
Send, ^v {ENTER}
return
}

; Win+F8 Пауза/Плей
#F8::
DetectHiddenWindows, on
IfWinExist ahk_exe browser.exe
    SendInput, {Media_Play_Pause}
Return

; Win+F12 - выбранное окно поверх других
#F12:: Winset, Alwaysontop, , A

; ctrl+L - выделить строку
^vk4C::
send {HOME}{SHIFTDOWN}{END}{SHIFTUP}  
return

; Win+с - поиск выделеного в google
#c::
{ 
 Send, ^c
 Sleep 50 
 Run, https://www.google.com/search?q=%clipboard%
 Return
}

; Win+y - поиск выделеного в youtybe
#y::
{ 
 Send, ^c
 Sleep 50 
 Run, https://www.youtube.com/results?search_query=%clipboard%
 Return
}

; Win+o - открыть Obsidian и добавить запись
#vk4F::
IfWinExist ahk_exe Obsidian.exe
{
WinActivate
Sleep 50
Send, ^o
return
}
else
{
Run C:\Users\q2pj\AppData\Local\Obsidian\Obsidian.exe
Sleep 1500 
WinActivate ahk_exe Obsidian.exe
Send, ^o
return
}


Links (важно для изучения):
https://www.autohotkey.com/ - скачать AHK
https://drive.google.com/file/d/1hGRjqlqhGBQa7XmZ5kNRn1-4fiONz-B2/view?usp=sharing - скачай мой файл скриптов+найти клавишу
https://ahk-wiki.ru/tutorial - туториал
https://komputer03.ru/avtomatizirujte-svoju-rabotu-s-autohotkey - сайт с примерами

Аватар Александр
Александр @svir
Бомж медиум класса. Недопрограммист (python)-
📍Харьков, Украина

@svir1 - tg

Использую notion (иерархическая система знаний, home, архивы(фильмотека, готовка) и таблицы с БД), obsidian (ЦЕТТЕЛЬ), google keep (мелкие заметки, синхронизация пк и телефона) больше 3-х лет.

11 комментариев 👇
Александр Скачков, Руководитель финансовой службы 17 мая в 11:17

Тема крутая, но изложили сложновато (imho) :) Много лет назад сталкивался с этим приложением, но забросил. Пожалуй, стоит возобновить.

  Развернуть 1 комментарий

@skalex, согласен. Это моя проблема. Как-то буду решать (что слишком сложно говорю для большинства)
А по вопросу сложная статья или нет: можно разбираться самому с английским интернетом, Википедией - я ссылки дал :)
спасибо за комментарий

  Развернуть 1 комментарий

Я может не тем местом читала, но не увидела, а для чего собственно вы используете эту штуку, кроме быстрого поиска в Гугле? Какие сценарии работы?

  Развернуть 1 комментарий

@uksare, перед " выводом " - Ещё примеры использования
А по моей программе - не очень детально описал, мо1 провтык.
Исправляю:
Быстрая печать символов:@#[]~
Поиск в гугле, + добавил поиск в ютубе(добавляется аналогично)
Открытие cmd и вход в определенную папку через cd
Открытие obsidian через шорткат и нажатие последевательно ctrl+o (для создания заметки)
Открытие выделенной ссылки через VPN в другом браузере (опера)
Пауза/снятие с паузы в любом проигрывателе

  Развернуть 1 комментарий
Давыдов Александр, ТаймМенеджмент.рф - основатель проекта 17 мая в 17:16

Спасибо за статью, для меня не актуально, но чувствую, что очень удобно, если применимо к вашей работе на ПК =)

  Развернуть 1 комментарий
Катерина Проничева, Организатор уютной семейной жизни 20 мая в 11:09

Огромное спасибо за код для вставки символов независимо от раскладки клавиатуры!


От себя добавлю код, как вставлять emodji

:::text::{U+1F34A}

пишите :text
и AHK заменяет его на emodji c указанным Unicode (в данном случае - на 🍊 )
какой код у emodji можно посмотреть, например, на сайте https://unicode-table.com


и ещё простой скрипт, который два минуса -- заменяет на короткое тире —

::--::— 


скрипт для вставки текущей даты в удобном формате (заменяет строку ddd)

:*:ddd:: 
FormatTime, CurrentDateTime,, yyyy-MM-dd  
SendInput %CurrentDateTime%
return
  Развернуть 1 комментарий

@ezzick, а вот это круто, не знал про такой функционал у ahk

  Развернуть 1 комментарий

Хорошая утилита! Уменя даже в списке идей на развитие есть "автоматизируй рутину!" как раз с помощью этой штуки.

Пока себе сделал хоткеи на часто-используемые программы, так же ввод символов без переключения на другую раскладку.
Ещё хочу создание заметки в ноушн сделать, но всё время откладываю.

  Развернуть 1 комментарий

@ivtroitskiy, используй расширение для браузера. Там есть разные функции с заметками

  Развернуть 1 комментарий

@svir, спасибо за наводку! Ещё нюанс, что у меня часто инфа для сохранения не в браузере.

  Развернуть 1 комментарий
Юлия Жукова, преподаватель, писатель 22 мая в 19:30

У меня вот в связи с использованием Обсидиана постоянно есть задача в русской раскладке печатать # и квадратные скобки. Пыталась я под это дело приспособить AHK... Что хочу сказать... Видимо, забивала гвозди микроскопом, потому что нашла там всё, что угодно, кроме того, что мне было нужно, и поняла, что дальнейшее изучение займёт существенно больше ресурсов, чем позволяет важность задачи, и забила. Потом научилась редактировать раскладку, и надобность отпала.

  Развернуть 1 комментарий

😎

Автор поста открыл его для большого интернета, но комментирование и движухи доступны только участникам Клуба

Что вообще здесь происходит?


Войти  или  Вступить в Клуб