For a prettier list of changes with more details and links, please refer to the Changelog instead of this post.
New features:
Enhanced Hotkey, Menu, SetTimer, Gui events and Gui control events to accept a function instead of a label, if no label is found.
Enhanced Hotkey, Menu, SetTimer and Gui control events to accept a function object. Added a Delete sub-command for SetTimer to allow the object to be released.
Enhanced OnMessage() to allow any number of functions or function objects to monitor a single message.
Added OnExit() and OnClipboardChange(), which accept a function name or object.
Added capability to point hotkey labels at a function definition.
Added U/L/T modifiers to perform case conversion with Format().
Added the E option to the Input command, for handling end keys by character instead of keycode.
Added ** (stderr) support to FileAppend.
Added ObjBindMethod(obj, method, args*) and Func.Bind(args*).
Changes:
Added a new welcome page which is shown if the main script file can't be found.
Changed WinActivate to restore the window if already active but minimized.
Changed WinActivate to look for a visible window to activate if DetectHiddenWindows is off and the active window is hidden, instead of doing nothing.
Changed the method used by A_CaretX/A_CaretY to retrieve the caret position.
Changed A_OSVersion to use RtlGetVersion(), so that it can detect Windows 10 and hopefully future versions.
Changed A_OSVersion to return a version number of the form "major.minor.build" if it doesn't have a name for the OS.
Changed objects to support x[,y], x.y[,z] and x[](y).
Several under-the-hood changes to fix bugs, reduce code size or improve performance.
Bug-fixes:
Fixed VK to keyname conversions for keys 'A' to 'Z' to respect layout.
Fixed FileAppend to * (stdout) to respect the encoding parameter instead of always outputting ANSI text.
Fixed auto-sizing of GUIs with only one scrollbar.
Fixed Exception(m, n) crashing when n is too far out of bounds.
Fixed GuiContextMenu to set A_GuiEvent correctly on x64.
Fixed FileGetSize sometimes giving an indeterminate result if the file doesn't exist or can't be opened.
Fixed ControlClick Pos mode to ignore disabled controls.
Fixed odd behaviour when Gui +MaxSize is smaller than +MinSize.
Fixed GuiControl/Get requiring a Gui name when given a control HWND.
Fixed meta-functions interfering with the line number reported by Exception().
Download