![]() |
Home | Download | Documentation | Changelog | Support | Forum | Wiki Planned Features |
Here are the highest priority pending changes as of December 18, 2006 (not necessarily in exact priority order). Feel free to suggest enhancements to any of them, new items for the list, and/or what priority you feel these items should have relative to each other.
AutoHotkey version 2, which will sacrifice some backward compatibility to eliminate confusing aspects of the syntax such as having two assignment operators (= and :=) and two types of IF-statements.
New syntax: 1) While-loops and Do-Loops (to improve script readability and maintainability); 2) A simple select/switch/case structure as an alternative to a series of ""else if"" statements.
More built-in functions and other enhancements to function-calling
Additional GUI features: More control types, etc.
Debugger: Have a line-by-line execution mode so that script will pause automatically after every line.
Recursion limit to prevent stack overflow (crash) caused by scripts that Gosub repeatedly without ever Returning
Add scheduling by extending SetTimer, e.g. daily at a certain time, etc.
Menu: support for multi-column menus, in automatic or manual mode (automatic mode adjusts based on screen height to make a multi-column menu to prevent a scrolling menu from appearing).
Built-in support for mouse gestures (perhaps similar to hotkeys).
Support for built-in ping (useful for a faster way of determing if a computer exists, rather than waiting for a command such as IfFileExists to time out)
Means of discovering the working directory of a window or process
New command FileGet/Set or FileGetProperties to retrieve and set things from a file's property sheet (title, author, permissions, etc.)
A new special type of loop to enumerate the contents of an INI file.
A means of reading lines directly from the end of a large file (similar to tail.exe).
Support for moving the caret in an Edit control, and optionally selecting part of the text (if possible).
The ability to specify size and color depth of an icon extracted from a DLL or EXE (such as shell32.dll) for GUI picture controls and perhaps the tray icon, etc.
A built-in command to trim whitespace (and perhaps any chars of choice) from the beginning and/or end of a variable, perhaps using style similar to the parsing loop.
Some kind of basic auto-complete feature -- not unlike hotstrings -- which suggests ways to complete the leading part of something you're typing based on other strings you've recently typed
A menu item in a script's main window to check whether you're running the latest version of the program, and if not, perhaps offer the option to automatically download and install the latest.
Support for the Media Control Interface (MCI) commands
Research Microsoft Active Accessibilty: for getting the text under the mouse cursor, and perhaps other useful tasks
A new timeout parameter for ToolTip that allows the thread to continue executing while the tip is displayed (without the need for SetTimer)
Dynamic commands: Allow the contents of a variable to be run as though it were a section of the script, even if it contains multiple lines and perhaps even if it contains labels.
Research how easy it would be to extend the SoundSet command to change the balance setting of a mixer source (compuboyr).
Ability to monitor a directory or drive for changes (file creation, deletion, etc.)
Optional timeout for RunWait
PixelWaitColor: Waits for a pixel to change color (BeastMaster).
The ability to detect which part of a window (e.g. title bar or scroll bar) the mouse is hovering over so that hotkeys can be made more context sensitive.
Improve SplashImage to support PNG, TIFF, ICO, etc.
Joystick: Ability to read more than 6 axes and 1 POV (via DirectInput)
Joystick: Support for prefix+suffix keys either on joystick or combined with keyboard (and mouse if it's easy) combinations. Jamestr said that flight sims rely on joystick plus keyboard, and having the ability to combine the two would be useful. e.g. ^joy5 - or - joy1 & joy2::MsgBox You pressed button2 while holding down button1 (i.e. joy1 becomes a prefix key).
Better support for URLs, such as enhancing IfExist to accept them (beardboy) and finding attributes of a remote URL, such as its size and date (if possible).
Functions: Support for varying number of incoming parameters by means of an incoming array to hold the extras
An overview for the web site of AutoHotkey's commands and features presented in summary fashion to make learning it less of an exercise in browsing the entire help file.
Support for FTP transfers.
A_CaretX/Y support for MS Word via OLE (suggested by Jordi)
Add command(s) to change the OS services as follows: add/edit/delete/query/start/stop. (beardboy)
TrayTip: Allow the balloon tip to be configured so that when the user clicks on it, a subroutine is launched.
ahk2exe: Support icons in EXEs and DLLs (beardboy)
The ability to run AutoHotkey.exe and pass a single command (or perhaps group of commands) to execute.
Joystick: Simulation of movement and button presses.
Built-in support for minimize-any-window-to-tray/menu.
A command to make a screenshot of certain regions or windows on the screen.
Clipboard: support pictures and other types of binary data so that AutoHotkey can be used to maintain multiple saved/virtual clipboards (i.e. save & restore contents).
Enhance SplashTextOn to have more features such as those of Progress.
A way to show the hotkeys defined by a script, ideally in a graphical format showing the keyboard, but otherwise as a sorted list. [WhiteCloud]
Basic serial/com port support.
Basic support for Midi devices.
More modes for PixelSearch such as calculating the median or average color of a region.
Support eject or dismount of USB mass storage devices
Support hotkeys composed of any three keys, e.g. "Numpad1 & Numpad2 & Numpad3::MsgBox You pressed all three keys."
Joystick: Support for hotkeys that fall into a certain percentage range for an axis, e.g.: joyx0,25::MsgBox The joystick is pressed to the left. (relatively low priority since it can already be done with SetTimer)
Vertical progress bars and perhaps other new options.
Home | Download | Documentation | Changelog | Support | Forum | Wiki