A curated list of awesome AutoHotkey libraries, library distributions, scripts, tools and resources.
Latest commit cca0f58 Dec 20, 2016 @joedf joedf committed on GitHub Merge pull request #113 from sobfiggis/patch-1
Add vim autohotkey plugins, thx to @sobfiggis

README.md

Awesome AutoHotkey AutoHotkey Awesome

A curated list of awesome AutoHotkey libraries, library distributions, scripts, tools and resources. Inspired by the other awesome lists. Please read CONTRIBUTING.md before contributing.

Non-up-to-date or discontinued, but nonetheless historical relevant items can be found on Historical.md

Development state: Build Status awesome_bot





Libraries

List of useful AutoHotkey libraries. Library is code that has some reusable functionality that can be combined with your own code in order to create new functionality.

Clipboard

  • WinClip - by Deo - WinClip is a clipboard manipulation class extending AutoHotkey's clipboard capabilities including support for RTF, HTML and images. Forum thread: link.

Console

  • AHKonsole - by G33kdude - Class based AutoHotkey library for console support. This library enables you to create an object representing a console to interact with, as well as multiple console buffer objects to facilitate in double buffering. Forum thread: link.
  • LibCon - by joedf - AutoHotkey Library For Console Support. This library enables you to write console applications and interact with other console instances. Basically, this library facilitates anything that has to do with writing and interacting with consoles. Forum thread: link.

Data format

  • AutoHotkey-JSON - by cocobelgica - JSON lib for AutoHotkey. Forum thread: link.
  • ObjDump/ObjLoad - by HotKeyIt - Serialize/deserialize object to/from variable/memory.
  • SerDes - by cocobelgica - Serialize / de-serialize an AutoHotkey object structure. Forum thread: link.
  • XA - by trueski/hi5 - Serialize/deserialize array to/from xml. Forum thread: link.

Database

  • ahkDBA - by IsNull - An OOP-SQL database access framework. Forum thread: link.
  • Class_SQLiteDB - by just Me - AHK SQLite API wrapper class. Forum thread: link.

Filesystem

Graphics

  • GDIp - by tic - Full featured library that helps in interaction with Microsoft's gdiplus.dll - Forum thread: link.
  • GDIp_ImageSearch - by tic - Library using gdiplus.dll for searching image instances on the screen. See the end of that thread for MasterFocus' improved version, or see his GitHub repo here
  • Simple GDI class - by GeekDude - A class aiming to make using low-level GDI functions simple.

GUI

Combobox

  • CbAutoComplete - by Pulover - Auto-completes typed values in an AHK ComboBox. Forum thread: link

Custom Controls

  • Rebar - by Pulover - AHK class for AutoHotkey Rebar custom controls. Forum thread: link
  • Toolbar - by Pulover - AHK Class for AutoHotkey Toolbar custom controls. Forum thread: link

General

  • AutoXYWH - by tmplinshi - Move and resize controls automatically when a GUI is resized.
  • TaskDialog - by just Me - enhanced MsgBox for Win Vista+ - link
  • OnWin - by cocobelgica - Call function on window event (WinWaitXXX async). Forum thread: link

ListBox

ListView

  • LV_Colors - by just Me - Individual background and/or text colours for a GUI ListView's cells or rows. Forum thread: link
  • LV_EX - by just me - Some additional functions for AHK GUI ListView controls. Forum thread: link
  • LV_InCellEdit - by just Me - In-cell editing for ListView controls. Forum thread: link
  • LV_Rows - by Pulover - Additional functions for AHK ListView controls. Forum thread: link

Menu

  • [Lib] Menu - by just me - Some functions related to AHK menus. Forum thread: link

Hotkeys

  • CHotkeyControl - by evilC - Replacement for AHK hotkey GuiControl that supports mouse buttons etc (Partially mature).
  • HParse - by Avi - Function to convert meaningful shortcuts (Ctrl+X) to AutoHotkey syntax (^x).

Joystick

  • CvJoyInterface - by evilC - Control a vJoy virtual joystick using AHK.
  • XInput - by Lexikos - Read XBOX gamepads using XInput (Only way to independently read L/R triggers), control rumble motors.

Lists

Maths

  • calc() - math expression evaluation incl brackets
  • Eval - by Pulover - Evaluate expressions in strings. Forum thread: link
  • Scientific Maths - by Avi - Library facilitating high precision mathematics.

Networking

Plotting (graphs, bars, charts and etc)

  • BarChart - by Learning One - Library for making bar charts. Download link.
  • Excel Charts - by Xx7 - Library for creating a graph in Excel, save the graph as an image and display it in a GUI.
  • XGraph - by SKAN - Function library for graphically plotting real time data.

System

  • RunAsTask - by SKAN - Auto-elevates script without UAC prompt.

Text manipulation

  • String Things - by tidbit - Stand-alone string manipulation functions.
  • TF - by hi5 - Functions for manipulation of text files such as *.txt, *.ahk, *.html, *.css etc and Strings (or variables). Forum thread: link.


Library Distributions

List of useful AutoHotkey library distributions. Library Distribution is a system that is made for distributing libraries.

  • ahk-libs - Ryan Shipp's collection of libraries.
  • ASPDM - package/stdlib distribution and management from the ahkscript folks. Trello link.
  • pAHKlight - Your Lightweight Guide to AutoHotkey libraries, classes, functions and tools.


Scripts

List of useful AutoHotkey scripts. Script is code that is intended to be used as standalone programs, and is not meant to be integrated with other code.

Clipboard

Filesystem

  • Belvedere - sets up rules for taking actions on files (move, copy, delete, etc) based on the name of a file, its extension, size, age, and more. More info link.

Graphics

GUI

Maths

  • Monster - evaluate math expressions in strings (calculator).
  • Unit Converter - unit converter that has most common english and scientific units and most common quantities from length to density to thermal conductivity. Also includes a section for physical and mathematic constants.

Mouse

  • EitherMouse - Multiple mice, individual settings, auto swap mouse buttons on second mouse. Forum thread: link.
  • MouseGestureL - Control applications by mouse gestures. Gestures and actions can be defined via customizable interface. Documentation in English and Japanese - Japanese Homepage link
  • Radial Menu - Powerful hotkey, launcher, mouse gestures system, and much more (skinable) - Forum thread: link

Typing

  • AutoComplete - Suggests and completes words as you type. Forum thread: link.
  • Half-QWERTY - One-handed Typing. Using the space bar as a modifier, the user can generate the characters of either side of a full-sized keyboard using only one hand. More information via Forum thread: link
  • Lintalist - Searchable interactive lists to copy & paste text with plugins. Forum thread: link.
  • Portable Keyboard Layout - helps people to learn better, more efficient keyboard layouts such as Dvorak, Colemak or Asset. Forum thread: link.
  • Thumbscript - Allows you to type using the number pad, with only 2 number presses for every letter. Documentation: link
  • TypingAid - Suggests and completes words as you type. Forum thread: link GitHub link.

Window Management

  • bug.n - Tiling Window Manager. Forum thread: link
  • Min2Tray - Minimize window to tray & more. Forum thread: link
  • NiftyWindows - control of all basic window interactions such as dragging, resizing, maximizing, minimizing, closing, snap-to-grid, "keep window aspect ratio", rolling up a window to its title bar, transparency control.
  • SnapX - Enhances Windows/Aero Snap by taking over its hotkeys (Win+Left/Right, etc) and providing more fine-grained control over snap location and size. Works with multiple monitors, resolutions, and DPI levels.
  • WindowPadX - tool which provides some useful functionality within multi monitor environments. WindowPadX is an enhancement of WindowPad, originally released by Lexikos, see original forum thread: link
  • WindowSaver - Save and restore window layouts in Windows10 with support for virtual desktops and changing monitor setups. WindowSaver is an enhancement of DockWin v0.3 by Paul Troiano


Tools

List of useful AutoHotkey tools. Tools made for Autohotkey

Interpreter

  • AutoHotkey - AutoHotkey interpreter installer and binaries.
  • AutoHotkey DLL - AutoHotkey.dll opens the world of AutoHotkey to other programming and scripting languages. Forum thread: link. Documentation link.
  • AutoHotkey build for CE - Autohotkey for Pocket PCs / WinCE / Smartphones. Forum thread: link. Documentation link.
  • IronAHK - Cross platform .NET rewrite - unfinished.

Debugging

  • [Class] Console - This class is meant to simplify debugging for scripts from simple text handling, to outputting and logging data & arrays. GitHub link.
  • Print Array - Function that prints array content in GUI.
  • Yunit - by Uberi and infogulch - Simple unit testing framework for AutoHotkey.

Decompilers

Integrated Development Environment

  • AHK Studio - SciLexer.dll based IDE for AutoHotkey.
  • AutoHotFlow - Draw your applications. Forum thread: link. GitHub link.
  • DRAKON Editor - Visual programming (with DRAKON diagrams) for AutoHotkey.
  • Notepad++ for AutoHotkey - Setup for popular code editor Notepad++ for AutoHotkey.
  • SciTE4AutoHotkey - SciTE-based IDE for AutoHotkey.
  • SublimeAutoHotkey - AutoHotkey AHK language package for SublimeText including syntax highlighting, comments toggling, auto-completions, build system definitions, commands for ahkrun, ahkcompile, ahkrunpiped.
  • Sublime 4 AutoHotkey - Sublime 4 AutoHotkey is a patch for Sublime Text text editor which adds support for AutoHotkey. - (discontinued)
  • vim-AHKcomplete - Vim plugin to add auto-completion. (omni-completion)
  • Vim autohotkey-ahk - Vim plugin to add syntax highlighting for Autohotkey.

GUI WYSIWYG Builders

Script Recorders and Writers

Web Syntax Highlighters

  • highlight.js - A syntax highlighter written in JavaScript supporting more than 130 languages (including AutoHotkey).
  • PrismJs - Lightweight minimal AutoHotkey syntax highlighting.
  • Syntax Highlighter - Legacy syntax highlighter for AutoHotkey with default support for line numbers.

Others

  • GoTo - Addon for any text editor that helps you jump to labels, hotkeys, hotstrings and functions in the active file.
  • GoToTilla - Addon which allows jumping to tokens within AHK sourcecode.
  • Context sensitive help in any editor - Addon for any text editor that provides context sensitive help by pressing F1.
  • CodeQuickTester - by GeekDude - A lightweight dynamic code tester.

(Use in) other programming languages


Tutorials

List of useful AutoHotkey tutorials.

Classes

GUI

MCode (machine code)


Resources

List of useful AutoHotkey resources. Various websites, documentation, guides, videos and articles related to AutoHotkey.

Documentation

Books

  • ahkbook - a book on AutoHotkey (not completed yet). Forum thread: link.

Quick-start guides

Websites


Forks

Forks of AHK which add new features to the core language

AutoHotkey_H

  • AutoHotkey_H - AHK_H adds functionality to original AutoHotkey and offers true multi-threading using NewThread() function or AutoHotkey.dll. Full list of changes


License

Creative Commons License

This work is licensed under a Creative Commons Attribution 4.0 International License.