- Alan Arbatskiy
- Исходник Гайд AHK RegExMatch | SAMP | Пишем свой авто-ответчик
- BASS_DEVSOFTWARE
- Краткое обучение (начать здесь)
- Autohotkey в играх
- Установка Autohotkey и редактора Notepad++
- Создание первого скрипта
- Порядок исполнения команд
- Комментарии в коде и отладка
- Горячие клавиши
- Строки автозамены
- Эмуляция нажатий
- Переменные и выражения
- Логическое ветвление
- Блок кода <>
- Циклы
- Запуск программ, открытие ссылок
- Команды и функции
- Заключение
- 10 крутых скриптов AutoHotkey (и как сделать свои собственные!)
- Как создать новые скрипты AutoHotkey
- 1. Автозамена
- 2. Отключить клавиши блокировки
- 3. Переназначьте Caps Lock
- 4. Быстрый просмотр или скрытие скрытых файлов.
- 5. Быстрое отображение или скрытие известных расширений файлов
- 6. Вставьте специальные символы.
- 7. Запустите быстрый поиск в Google.
- 8. Используйте цифровую клавиатуру как мышь.
- 9. Запустите любое приложение.
- 10. Самодельные клавиши регулировки громкости.
- Содержание
- Секция авто-выполнения
- Escape-последовательности
- Комментарии
- Разбивка длинных строк на ряд более коротких
- Мобильность AutoHotkey.exe
- Конвертация скрипта в исполняемый файл EXE (ahk2exe)
- Передача скрипту параметров командной строки
Alan Arbatskiy
Активный пользователь
— 0. Вступление
Скачать биндер можно на оффициальном сайте: https://www.autohotkey.com/
После полной установки программы, нажмите ПКМ по свободному месту в папке/на рабочем столе и в разделе «Создать» выберите «AutoHotKey Script».
После этого нажмите ПКМ по созданному файлу и выберите пункт «Edit Script». В открывшемся окне можете стереть примечание от автора и начать писать свой шедевр.
— 2. Автоматическое определение языка и раскладки клавиатуры.
Данный шаг Вы можете пропустить, но тогда при неправильной раскладке клавиатуры вместо красивого текста, который вы расписывали несколько десятков минут, в чат будут отправляться сплошные вопросительные знаки, так как скрипт не будет видеть на вашей текущей раскладке бо’льшую часть нужных для набора текста символов. Во избежание этих проблем, настоятельно Вам рекомендую на следующей строке, после назначение горячей клавиши, прописать следующее:
SendMessage, 0x50,, 0x4190419,, A
Также немаловажно задать паузы между сообщениями, иначе программа может сойти с ума и начать смешивать ваши сообщения в единое целое.
Так, прописав команду Sleep и число миллисекунд после нее (1000 = 1 секунда), Вы задаете задержку между выполнениями следующих команд.
Рекомендую использовать задержку 700 между отыгровками /me /do /todo, и 1000 между сообщениями в чат (IC, /b), дабы антифлуд не триггерился на ваш скрипт. (насколько мне известно, в /f /c задержку можно ставить 200, там антифлуд почти не срабатывает).
— 4. Окончание скрипта
После того, как вы прописали все сообщения, не забудьте написать завершающую команду Return, которая останавливает чтение макроса. Иначе, если у Вас в одном файле сразу несколько скриптов, последствия будут неутешительными.
Источник
Исходник Гайд AHK RegExMatch | SAMP | Пишем свой авто-ответчик
BASS_DEVSOFTWARE
Приветствую всех!
Данная статья должна помочь разобраться новичкам в Регулярных выражениях и помочь им самостоятельно писать скрипты на автоматический ответ, при появлении в чате N-строки (по задумке).
Перед игроком появляется будто бы непреодолимая стена, посмотрев на которую, он побежит по форумам просить помощи.
Надеюсь, вы поняли структуру и что за чем идёт.
Теперь смело копируйте каркас нашего скрипта, чтобы мы смогли вместе его редактировать.
(Копируйте цельным блоком, что я предоставил вам в самом начале)
И вот мы подошли к моменту, на котором желторотики вскрывают себе вены, а новички бьются в конвульсиях, я говорю о РеГуЛяРнЫх ВыРаЖеНиЯх.
В Регулярных выражениях есть такое понятие, как литеральный текст. Звучит страшно, но расскажу максимально понятно и только то, что нужно.
Плавно подошли к написанию собственного Регулярного выражения.
Источник
Краткое обучение (начать здесь)
Оказавшись на этой странице, вероятно, вы собираетесь начать осваивать язык автоматизации Autohotkey.
В этой статье описана установка программы, ее базовые возможности и примеры кода. Наберитесь терпения, запасайтесь чаем и приступаем 🙂
Все интересующие вопросы вы можете задать в нашей группе Вконтакте.
Autohotkey в играх
Обратите внимание, что макросы запрещены во многих играх. За использование Autohotkey ваш аккаунт может быть забанен!
Кроме этого, многие современные игры имеют активный античит, препятствующий программной эмуляции нажатий. Это значит, что нажатия, воспроизводимые скриптом могут игнорироваться. Мы не содействуем читерству, и если античит блокирует работу Autohotkey в определенной игре- не будем помогать вам обойти защиту!
Стоит так же учитывать, что Autohotkey разработан для взаимодействия со средой Explorer’a и его окон. Такие команды как PixelSearch, PixelGetColor и ImageSearch вероятнее всего не будут работать в полноэкранных 3D приложениях. Чаще всего Autohotkey воспринимает окна с отрисовкой 3D как черный квадрат (цвет 0x000000). Иногда проблема решается переводом игры в оконный режим, но корректная работа все равно не гарантируется и единого решения НЕТ.
Установка Autohotkey и редактора Notepad++
Перед началом работы неплохо бы скачать Autohotkey с оффициального сайта.
После запуска инсталятора выбираем Unicode версию программы, иначе получим иероглифы вместо русских букв. Лучше выбрать разрядность, соответствующую вашей ОС. Но стоит помнить что скрипты, скомпилированные x64 версией не запустятся на 32-разрядных ОС.
Для редактирования скриптов можно использовать любой текстовый редактор, включая «Блокнот». Но для удобства работы с кодом лучше использовать Notepad++, который так же скачиваем с оффициального сайта и устанавливаем.
После установки вам понадобится файл подсветки синтаксиса Autohotkey userDefineLang_AHK.xml. Сохраняем его в любое удобное место.
Теперь запускаем Notepad++, в меню «Синтксисы» выбираем «Задать свой синтаксис. «. В открывшемся окне жмем «Импортировать» и выбираем скачанный файл.
После перезапуска программы в меню «Синтаксисы» появится Autohotkey, а файлы с расширением .ahk будут сразу открываться с подсветкой синтаксиса.
Рекомендую сразу включить отображение расширений файлов в системе. Для этого откройте любое окно проводника, в верхнем меню «Файл» выберите пункт «Параметры папок и поиска». В открывшемся окне во вкладке «Вид» снимите галочку «Скрывать расширения для зарегистрированных типов файлов».
Создание первого скрипта
После того, как среда Autohotkey и текстовый редактор установлены, можно приступать к созданию первого скрипта.
Скрипты являются обычными текстовыми файлами, имеющими расширение .ahk. Запускаются как любое приложение, двойным кликом мыши.
Чтобы отредактировать скрипт, нажмите на нем ПКМ > Открыть с помощью > Notepad++.
Создайте скрипт со следующим кодом и запустите его. Если вы увидели окно с приветствием- все установлено правильно и можно продолжать.
Порядок исполнения команд
Обратите внимание! Данный пункт крайне важен для понимания работы программы.
В момент запуска скрипта, команды начинают выполняться по очереди сверху вниз. Выполнение новой команды не будет начато до тех пор, пока не окончена предыдущая.
Так интерпретатор будет последовательно исполнять код, пока не встретит Return. Эта команда прерывает текущий поток. С его помощью обозначаются пределы макрокоманды, а так же возвращаются значения из функций.
Если по мере выполнения кода встречается цикл- он выполняется до тех пор, пока истинно его условие, или он не будет разорван командой Break. Как выглядят циклы мы разберем чуть ниже, не торопитесь 🙂
Комментарии в коде и отладка
Когда нужно оставить в коде строчку с пояснением- на помощь приходит комментарий, по умолчанию он отделяется точкой с запятой. Вся строка после ; игнорируется интерпретатором. Обратите внимание, что в Autohotkey нет многострочных комментариев! Каждая строка экранируется отдельно.
Для отладки кода (проверки условий, просмотра значений переменных и т.д.) проще всего использовать команды MsgBox и ToolTip. Первая выводит информацию в виде окна и ждет подтверждения, вторая показывает всплывающую подсказку и не прерывает выполнение кода.
Горячие клавиши
Основным назначением Autohotkey является назначение горячих клавиш. Они представляют собой сочетания клавиш и кнопок мыши, при нажатии которых выполняется заданная последовательность команд (макрокоманда, она же- макрос).
Запись горячей клавиши может иметь однострочный и многострочный вид, в зависимости от необходимого количества команд.
Перед двоеточием указывается клавиша или сочетание клавиш, вызывающие действие. Больше о горячих клавишах можно узнать здесь. Так же, наверняка, вам пригодится список клавиш и кнопок мыши.
Строки автозамены
Строки автозамены имеют тот же принцип, что и горячие клавиши, но заменяют не сочетание клавиш, а фрагмент строки. Чаще всего используются для развертывания аббревиатур.
Все возможности строк автозамены, такие как чувствительность к регистру, замена части слова, задержка нажатий- ищите в соответствующей Статье.
Эмуляция нажатий
Для эмуляции нажатий и ввода текста используется команда Send.
Она имеет несколько вариаций: Send, SendPlay, SendInput и SendRaw. Подробно про их отличия можно прочитать по ссылке выше.
Переменные и выражения
Для хранения и обработки информации служат переменные. Во вступительном гайде мы рассмотрим лишь три основных вида: логический, числовой и текстовый. Переменные в Autohotkey динамически изменяют свой тип в зависимости от последнего присвоенного значения.
Логический (булевый) тип предназначен для хранения 1 или 0 (true или false). Чаше всего используется в условиях, где есть всего два варианта выбора, а так же в функциях, для обозначения успешности или провала операции.
Числовой тип, как не сложно догадаться, применяется для операций с числами. Поддерживается большинство арифметических операций, а так же десятичные дроби.
Строковый тип хранит отдельные символы или фрагменты текста. Работа со строками немного отличается от цифровых и булевых переменных- для них есть целый ряд специальных строковых функций.
Логическое ветвление
Наверняка вы уже задумались, как выполнять действие только при соблюдении конкретного условия? На помощь приходит ветвление с логическими операторами if и else. Так же существуют и другие команды, представляющие собой условие.
Пожалуй, самым простым применением условия является назначение двух чередующихся действий на одну и ту же горячую клавишу. В этом примере введена переменная, которая принимает противоположное значение при каждом новом вызове ГК.
Еще одним примером может служить определение времени суток:
Блок кода <>
Блок кода обозначается фигурными скобками и объединяет несколько комад или функций. Он нужен чтобы указать интерпретатору, что несколько команд нужно выполнить вместе. Чаще всего блок <> используется для группировки команд внутри условий или циклов.
Циклы
Для повторения определенного участка кода несколько раз используются циклы. В Autohotkey их несколько видов, самым простым из которых является Loop.
Запуск программ, открытие ссылок
Для запуска EXE приложений, открытия окон проводника или браузера используется команда Run.
Команды и функции
В Autohotkey есть две основных структуры: команды и функции. Обе предназначены для выполнения какого-либо действия, но отличаются способом записи.
У многих команд есть функция-двойник, выполняющая ту же операцию.
В отличае от функций, команды нельзя комбинировать или использовать одну команду как аргумент другой.
Команды не используют скобки вокруг параметров, вы можете легко отличить их от функций:
Обратите внимание, что:
Заключение
В этой статье приведены самые базовые возможности программы. Полный список функций можно найти на Главной странице справочника.
Рекомендуем последовательно пройти по описанию всех команд для примерного понимания их назначения перед тем, как начинать писать свой первый скрипт 🙂
Перед тем, как приступить к написанию кода, необходимо составить алгоритм. Распишите по шагам, что должна делать ваша программа. Так будет гораздо проще искать команды, необходимые для выполнения каждого из шагов.
Источник
10 крутых скриптов AutoHotkey (и как сделать свои собственные!)
Если вы знакомы со многими сочетаниями клавиш в Windows и все еще чувствуете, что вам нужно больше, пора перейти к расширенному инструменту, который позволяет создавать собственные сценарии.
AutoHotkey (AHK) — это ответ на ваши потребности в настройке. Эта программа позволяет переназначать клавиши, создавать собственные ярлыки, запускать макросы для автоматизации повторяющихся задач и многое другое.
Давайте рассмотрим некоторые полезные сценарии AutoHotkey, чтобы вы начали, а также основы программного обеспечения, чтобы вы могли создавать свои собственные.
Как установить AutoHotkey
Прежде чем вы сможете использовать классные скрипты AHK или создавать свои собственные, вам необходимо установить AutoHotkey в вашей системе.
Визит Домашняя страница AutoHotkeyнажмите Скачать, и выберите Скачать текущую версию схватить это. Запустите диалоговое окно быстрой установки, и вы готовы начать использовать сценарии AutoHotkey.
Как создать новые скрипты AutoHotkey
Программа, которую вы только что установили, выполняет скрипты AHK, но ничего не будет делать, пока у вас действительно не будет запущен скрипт.
Чтобы создать новый сценарий AutoHotkey, щелкните правой кнопкой мыши в любом месте рабочего стола (или в другом удобном месте) и выберите Создать> Скрипт AutoHotkey. Назовите это как-нибудь, что имеет смысл. Затем щелкните правой кнопкой мыши новый файл и выберите Редактировать скриптили откройте файл в любом текстовом редакторе, чтобы начать работу с ним.
Обратите внимание, что вы также можете открыть свой текстовый редактор, ввести сценарий AutoHotkey и сохранить его как файл, оканчивающийся на .ahk для достижения того же результата. Просто убедитесь, что у него правильное расширение файла!
Кстати, неплохо было бы обновить текстовый редактор с базового Блокнота. Блокнот ++ и Код Visual Studio оба отличные бесплатные варианты.
Теперь, когда у вас есть программное обеспечение для запуска сценариев AutoHotkey, вы можете загружать сценарии, написанные другими, чтобы воспользоваться ими, не выполняя никакой работы самостоятельно. Чтобы сохранить один, просто загрузите его как .ahk файл и сохраните его, где хотите.
Чтобы запустить сценарий, просто дважды щелкните его, и он вступит в силу. Однако вы, вероятно, захотите, чтобы некоторые из этих сценариев запускались сразу после загрузки компьютера, чтобы вам не приходилось каждый раз запускать их вручную.
Для этого скопируйте и вставьте .ahk файлы в папку автозагрузки. Вы можете легко добраться туда, набрав оболочка: запуск в меню Пуск. В противном случае перейдите в следующее место:
При этом ваши скрипты AutoHotkey загружаются после входа в компьютер.
Лучшие сценарии AutoHotkey, которые стоит попробовать
Вот некоторые из наиболее полезных сценариев AutoHotkey, которые вы можете загрузить и сразу же использовать для улучшения Windows. Еще больше примеров скриптов AutoHotkey, в том числе гораздо более сложных, чем эти, можно найти в Витрина скриптов AutoHotkey.
1. Автозамена
Даже с точностью настольной клавиатуры вы все равно будете ошибаться при наборе текста. И хотя это старый сценарий AHK, опечатки не выходят из моды.
Связанный: Как включить встроенную автозамену в Windows 10
Он содержит тысячи распространенных орфографических ошибок — когда вы делаете ошибку, он мгновенно заменяет вашу ошибку правильным словом. Он даже позволяет вам добавлять свои собственные слова, которые мы обсудим позже.
2. Отключить клавиши блокировки
Три клавиши блокировки — Num Lock, Caps Lock и Scroll Lock — используются не так часто в современных вычислениях. Вы, вероятно, используете цифровую клавиатуру только для цифр, случайно нажимаете Caps Lock и даже не заботитесь о Scroll Lock.
Если вы редко используете эти модификаторы, попробуйте установить для них значение по умолчанию с помощью этого скрипта:
Предполагается, что вы хотите, чтобы Num Lock всегда был включен. Если вы предпочитаете его выключить, просто измените эту строку (или удалите ее полностью и измените только Caps Lock и Scroll Lock).
3. Переназначьте Caps Lock
После того, как вы использовали приведенный выше сценарий для отключения Caps Lock, имеет смысл дать этой клавише другое назначение.
Использование этого короткого скрипта превратит Caps Lock в другую клавишу Shift, но вы можете изменить ее на все, что захотите (возможно, на другую клавишу Windows, если на вашей клавиатуре есть только одна из них):
4. Быстрый просмотр или скрытие скрытых файлов.
Важно знать, как иногда просматривать скрытые файлы и папки в Windows. Если вам нужен доступ к скрытым папкам только время от времени, и вы не хотите, чтобы они обычно загромождали ваше представление, это полезный сценарий.
Этот сценарий просто заставляет вас нажать Ctrl + F2 с открытым проводником для переключения отображения скрытых файлов или папок. Вот и все! Вам просто нужно скопировать код из связанной публикации на форуме в скрипт:
5. Быстрое отображение или скрытие известных расширений файлов
Этот похож на предыдущий, поскольку он также работает с проводником. По соображениям безопасности разумно всегда показывать расширения файлов. Это упрощает обнаружение мошеннических EXE-файлов, маскирующихся под PDF или аналогичные файлы. Это также удобно, когда вам нужно иметь дело с ассоциациями файлов Windows 10.
Приведенный ниже скрипт позволит вам переключать отображение расширений для известных типов файлов с Победа + Y.
6. Вставьте специальные символы.
Помимо нескольких специальных символов на клавиатуре (например, @ и *), есть еще десятки, доступ к которым не так удобен. Один из самых быстрых способов ввода иностранных символов и других необычных символов — использование AutoHotkey.
С помощью всего лишь строчки кода AHK вы можете быстро вставить эти специальные символы и избавиться от необходимости запоминать коды ALT или копировать и вставлять их из онлайн-списка.
Используйте приведенный ниже шаблон для создания наиболее полезных для вас ярлыков. Символы слева от двух двоеточий — это то, что вы нажимаете, чтобы активировать ярлык, а символ внутри скобок — это то, что вставляет ярлык.
Так, например, если вы хотите нажать Alt + Q чтобы вставить значок товарного знака, вы должны создать сценарий со следующим:
Для справки символы для клавиш следующие. Вы можете узнать больше о горячих клавишах на Страница руководства AutoHotkey:
7. Запустите быстрый поиск в Google.
Если вы активно ищите в Google, этот удобный ярлык позволяет вам выполнить поиск любого скопированного текста на вашем компьютере.
Он запустит ваш браузер по умолчанию и выполнит поиск в Google любого фрагмента текста, выделенного вами при нажатии Ctrl + Shift + C. Это удобно, чтобы постоянно сокращать количество операций копирования и вставки!
8. Используйте цифровую клавиатуру как мышь.
Хотя при необходимости вы можете перемещаться по Windows без мыши, наличие этого сценария означает, что вам не нужно запоминать сочетания клавиш для этого. Этот аккуратный скрипт AutoHotkey использует вашу цифровую клавиатуру в качестве мыши, обеспечивая большую точность и способ обойти ваш компьютер в случае отказа оборудования.
Ознакомьтесь с информацией в верхней части скрипта, чтобы узнать, как его использовать.
9. Запустите любое приложение.
Меню «Пуск» позволяет легко открыть любую программу, установленную на вашем компьютере, за считанные секунды. Но для наиболее часто используемых программ вам может потребоваться еще более быстрый способ их запуска.
Скрипт для открытия приложения прост; вот один для запуска Firefox при нажатии Win + F. При необходимости измените его для предпочитаемого сочетания клавиш и приложения.
10. Самодельные клавиши регулировки громкости.
На большинстве клавиатур есть клавиши для легкого изменения громкости, смены музыкальной дорожки и т. Д. Но если у вас их нет, вы можете использовать AutoHotkey, чтобы придумать свои собственные кнопки громкости.
Вот один пример, в котором используется Shift + плюс и Shift + минус (клавиши на цифровой клавиатуре) для увеличения и уменьшения громкости. Также можно попасть в малоиспользуемые Сломать клавиша для отключения звука.
Как и в случае с другими скриптами, не стесняйтесь настраивать кнопки по своему вкусу.
Написание собственных сценариев
Если вы чувствуете себя уверенно, почему бы в следующий раз не попробовать создать свои собственные скрипты AutoHotkey? Если вы только начинаете работать с AHK, вы, вероятно, извлечете наибольшую пользу из расширения текста.
Подробнее: Лучшие инструменты расширения текста для Windows
По сути, расширение текста позволяет набирать небольшой фрагмент текста, который автоматически расширяется до чего-то гораздо большего. Если вы отправляете одно и то же электронное письмо несколько раз в день или постоянно вводите свой адрес электронной почты при входе на веб-сайты, настройка расширения текста сделает вас более продуктивным.
Если вы загрузили скрипт автозамены из №1 выше, внизу есть место, где вы можете добавить любые собственные фразы, что является идеальным местом для добавления однострочного расширения. Если вы не используете этот сценарий, просто создайте новый сценарий для записей расширения.
Это просто: введите два двоеточия и текст горячей клавиши. После еще двух двоеточий введите фразу, до которой нужно расширить ярлык. Итак, если вы хотите, чтобы ввод «@@» автоматически разворачивался до вашего адреса электронной почты, сценарий был бы таким:
Возможностей здесь много. Вы можете сделать горячую клавишу Ctrl + Alt + C выплюнуть шаблонное электронное письмо, которое вы набираете несколько раз в день, или любое количество других задач, относящихся к вашей работе:
После того, как вы настроили расширение текста, вы можете начать переназначение клавиш, если вы обнаружите, что некоторые из них бесполезны в их текущем состоянии.
Вы хотите, чтобы кнопка Insert была, например, ярлыком для Copy? Вы можете изменить это следующим образом:
Проверять, выписываться учебники AutoHotkey для получения дополнительной информации. Для более подробного ознакомления с AHK у нас есть руководство по AutoHotkey для начинающих, которое вы также можете проверить.
Самое замечательное в AutoHotkey — это то, что он полностью настраивается под ваши нужды. Если вам просто нужна автокоррекция и несколько простых фрагментов расширения текста, вы можете легко это настроить. Если вы хотите углубиться в множество настраиваемых элементов управления и сложных ярлыков, вы можете написать любые скрипты, которые вам нравятся.
С этими великолепными скриптами AutoHotkey вам не понадобится опыт программирования, чтобы начать работу. Для аналогичного инструмента вам также следует изучить основы пакетных файлов Windows.
Источник
Каждый скрипт представляет собой простой текстовый файл, содержащий команды, которые затем будет исполнять программа (AutoHotkey.exe). Скрипт также может содержать горячие клавиши и строки автозамены, и даже полностью состоять из них. Однако, в отсутствие горячих клавиш и строк автозамены, после запуска скрипта его команды исполняются последовательно друг за другом сверху донизу.
При запуске скрипты оптимизируются и проверяются. Сообщения об ошибках выводятся на экран. Скрипт может быть запущен (будет работать) только после их исправления.
Содержание
Секция авто-выполнения: автоматически исполняемая верхняя секция скрипта.
Escape-последовательности: использование символов `% и `, для указания на буквальные знаки процента или запятой.
Комментарии в скриптах: использование точки с запятой и символов /*. */ для добавления в скрипт примечаний.
Разбивка длинных строк на ряд более коротких: повышает удобство чтения и эксплуатации скрипта.
Отладка скрипта: как найти ошибки в неправильно работающем скрипте.
Секция авто-выполнения
Программа, строка за строкой, загружает скрипт в память (каждая строка может содержать до 16 383 символов). После загрузки программа исполняет скрипт до тех пор, пока не дойдет до команд Return, Exit, метки горячей клавиши или строки автозамены, или конца скрипта (в зависимости от того, что стоит первым). Эта верхняя часть скрипта называется секцией авто-выполнения.
Не завершающий работу автоматически и не содержащий горячие клавиши и строки автозамены скрипт заканчивает свою работу после окончания секции авто-выполнения. Иначе, он будет работать в состоянии ожидания, реагируя на такие события, как запуск горячих клавиш и строк автозамены, события GUI, вызов элементов пользовательского меню и таймеры.
Каждый поток, запущенный горячей клавишей, строкой автозамены, вызовом элемента меню, событием GUI или таймером, непосредственно после запуска начинает исполняться, используя значения по умолчанию для указанных далее параметров, как задано в секции авто-выполнения. Если значения не заданы, будут использованы стандартные значения по умолчанию (как описано в документации для каждой из следующих команд): DetectHiddenWindows, DetectHiddenText, SetTitleMatchMode, SetBatchLines, SetKeyDelay, SetMouseDelay, SetWinDelay, SetControlDelay, SetdefaultMouseSpeed, CoordMode, SetStoreCapslockMode, AutoTrim, SetFormat, StringCaseSense, Thread, and Critical.
Если для завершения работы секции авто-выполнения требуется много времени, (или если секция никогда не завершается), через 100 миллисекунд вступают в действие значения по умолчанию приведенных выше параметров настройки. Таким образом, обычно лучшим решением для скриптов, содержащих горячие клавиши, строки автозамены, таймеры или элементы пользовательского меню, является внесение желаемых изменений в значения по умолчанию в верхней части этих скриптов. Обратите также внимание, что каждый поток сохраняет свой собственный набор упомянутых выше параметров настройки. Изменения, сделанные в этих параметрах, не повлияют на другие потоки.
Escape-последовательности
В AutoHotkey escape-символом по умолчанию является знак акцента (`), находящийся в верхнем левом углу большинства английских клавиатур. Использование этого символа вместо обратного слеша устраняет необходимость в двойном обратном слеше в пути и имени файла.
Также с помощью escape-последовательности задаются специальные символы. Чаще всего это `t (табуляция), `n (перевод строки) и `r (возврат каретки).
Комментарии
В скрипте можно добавлять комментарии в начале строки после точки с запятой. Например:
Также комментарии можно вставлять после команды. В этом случае перед точкой с запятой должен быть хотя бы один пробел или табуляция. Например:
Кроме того, можно использовать символы /* и */, чтобы закомментировать целый раздел. Однако в этом случае символы должны ставиться в начале строки, как показано в следующем примере:
Совет: можно опустить первую запятую в любой команде. Например:
Разбивка длинных строк на ряд более коротких
Чтобы повысить удобство чтения и эксплуатации скрипта, можно разбить длинные строки на совокупность более коротких. Такая разбивка не уменьшает быстродействие, так как в момент запуска скрипта разделенные строки объединяются в памяти.
Способ №1 [v1.0.35.03+]: cтрока, начинающаяся с «and», «or», ||, &&, запятой или точки автоматически объединяется со строкой, находящейся непосредственно выше нее. В следующем примере вторая строка объединяется с первой, так как начинается с запятой.
Подобным образом приведенные ниже строки сольются в одну, так как две последние строки начинаются с «and» или «or»:
Способ №2 [v1.0.32+]: этот метод используется для объединения большого количества строк, или если строки нельзя объединить с помощью способа №1. Хотя данный способ предназначен главным образом для простой автозамены, его можно использовать также для любой команды или выражения. Например:
В приведенном примере ряд строк, ограниченных сверху и снизу парой круглых скобок, называется секцией продолжения. Обратите внимание, что нижняя строка после закрывающей скобки содержит последний параметр FileAppend. Этот параметр ставится по желанию: в данном примере это сделано, чтобы запятая была продемонстрирована как ограничитель параметра, а не как буквальная запятая.
Поведение по умолчанию секции продолжения можно изменить, если справа от открывающей скобки секции добавить одну или несколько приведенных ниже опций. Каждая опция отделяется от предыдущей пробелом. Например: ( LTrim Join| %
RTrim0 (RTrim + цифра 0): выключает пропуск пробелов и табуляции в конце каждой строки.
% (знак процента): трактует знак процента как буквальный, а не как ссылку на переменную. Устраняет необходимость экранировать каждый знак процента. Данная опция не нужна там, где знак процента уже является буквальным (например, в простой автозамене).
, (запятая): трактует запятые как ограничители, а не как буквальные запятые. Эта редко используемая опция нужна только для запятых между параметрами команд, так как в вызовах функций тип запятой не имеет значения. Таким образом, данная опция преобразует только те запятые, которые фактически ограничивают параметры. Другими словами, как только достигнут последний параметр команды (или если в команде параметры не заданы), идущие следом запятые трактуются как буквальные.
` (акцент): трактует каждый символ акцента буквально, а не как escape-символ. Эта опция также исключает экранирование запятых и знаков процента явно и по отдельности. Кроме того, опция исключает преобразование любой заданной явно escape-последовательности, как `r or `t.
Секция продолжения поддерживает такие escape-последовательности, как `n (перевод строки) and `t (табуляция), кроме случаев, когда задана опция (`) (акцент).
Секция продолжения не поддерживает комментарии (точка с запятой и /*..*/), так как рассматривает их как буквальный текст. Однако комментарии можно добавить в верхней и нижней строках секции продолжения. Например:
Как видно из примера, экранировать точки с запятой в секции продолжения нет никакой необходимости.
Закрывающая скобка обозначает конец секции продолжения, поэтому чтобы начать строку с буквальной закрывающей скобки, нужно поставить перед ней символ акцента.
Формирование секции продолжения из нескольких частей с помощью команды #Include не поддерживается.
За секцией продолжения может сразу идти строка, содержащая открывающую скобку другой секции продолжения, что позволяет в процессе создания единой строки изменять опции, описанные выше.
Мобильность AutoHotkey.exe
Конвертация скрипта в исполняемый файл EXE (ahk2exe)
После конвертации скрипт становится самостоятельным исполняемым файлом, то есть его можно запустить даже на тех компьютерах, где программа AutoHotkey не установлена (такие exe-файлы можно распространять без ограничений). В процессе компиляции скрипт, все входящие в него файлы и те файлы, которые были включены (добавлены) в результате исполнения команды FileInstall, сжимаются и зашифровываются.
Компиляция не увеличивает быстродействие скрипта. На практике, скомпилированный скрипт работает даже слегка медленнее, поскольку сначала его необходимо декодировать и распаковать в память, а уже потом оптимизировать, как обычный скрипт.
Ahk2Exe можно запустить следующим образом:
Передача скрипту параметров командной строки
Скрипты поддерживают параметры командной строки в следующем формате:
Для скомпилированных скриптов формат такой:
Параметр Switches может быть нулевым или иметь одно из следующих значений:
Параметр Script Filename можно опустить, если параметров скрипта нет. Если параметр Script Filename опущен, то будет запущен файл AutoHotkey.ini в текущей рабочей директории (или пользователю будет предложено его создать 1 ).
В качестве Script Parameters может быть любая строка, которую вы хотите передать скрипту (строку, содержащую пробелы, необходимо заключить в двойные кавычки). Скрипт рассматривает входящие параметры как переменные %1%, %2%, и так далее. Кроме того, переменная %0% содержит количество переданных параметров (0, если никаких параметров не передано). Следующий пример прерывает исполнение скрипта, если передано слишком мало параметров:
Источник