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

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

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 мая 2022

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

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

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

  Развернуть 1 комментарий
Ника Денисова Главред, тренер по тайм-менеджменту 17 мая 2022

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

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

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

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

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

  Развернуть 1 комментарий
Катерина Проничева Организатор уютной семейной жизни Бомбически Эпичный Джедай 20 мая 2022

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


От себя добавлю код, как вставлять 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 мая 2022

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

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

😎

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

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


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