AutoHotkey is an open-source utility and can automate almost anything by sending keystrokes and mouse clicks. You can write macros by hand or use the macro recorder. You can also create hotkeys for keyboard, mouse, joystick, and handheld remote controls. Virtually any key, button, or combination can become a hotkey. Similarly, you can define abbreviations that expand as you type them. For example, typing btw can automatically produce by the way. Finally, you can create custom data entry forms, user interfaces, and menu bars.