AutoHotkey_L v1.1.05.05
Added Client coordinate mode.
Added object output mode for RegExMatch and RegEx callouts.
Added super-global declarations, which avoid the need to repeat global declarations.
Breaking change: Class declarations such as Class ClassName now create a super-global variable instead of an ordinary global.
Added more detail to unhandled exception error dialogs.
Changed Gui +Owner to work even after the GUI is created.
Changed instance var declarations in class definitions to avoid leaving empty key-value pairs in the class object.
Changed #Include to use standard error message formatting when it fails (more detail; also respects ErrorStdOut).
Changed Throw to throw an Exception object by default when its parameter is omitted.
Changed format of runtime error messages slightly to improve consistency and code size.
Modified PCRE to use UTF-16 for input on Unicode builds, for performance.
Upgraded PCRE to 8.13.
Fixed thread not exiting as intended when an assignment in an expression fails.
Fixed #MaxMem preventing assignments to variables which don't require expansion.
Fixed inability of Try/Catch to catch COM errors.
Fixed GuiControlGet incorrectly treating parameter #2 as invalid in some cases.
Fixed input vars being resolved too soon, allowing them to be invalidated by an expression later on the same line.
Fixed RegEx callouts not causing matching to abort when an exception is thrown.
Fixed DllCall setting ErrorLevel to -4 when it should be -3.
Fixed While appearing twice in ListLines for its first iteration.
Fixed Try/Catch to allow If/Loop/For/While with no enclosing block.
Fixed enumerator object not being released when Until is used to break a For-loop.
Fixed some other bugs specific to the beta release.
1.1.05.01
Fixed class declarations to allow directives such as #Include.
1.1.05.02
Fixed false detection of end-of-file when loading a compiled script in some cases.
Fixed SendInput to automatically release modifier keys when sending special characters or {U+xxxx} (which was broken by v1.1.00.01).
Fixed ComObjConnect to filter out non-dispatch interfaces instead of allowing the script to crash.
Fixed new %VarContainingClassName%().
1.1.05.03
Fixed Loop ... Until VarContainingObject.
1.1.05.04
Fixed: Selected sub-command of ControlGet was unreliable on x64.
Fixed: CPU was maxed out while waiting if an underlying thread displayed a dialog (and possibly in other cases).
1.1.05.05
Fixed continue n misbehaving when an inner loop has no braces.
Fixed RegExMatchObject[Name] to work correctly with duplicate names.
Fixed the installer to write to the correct section of the registry when installing 64-bit.
Fixed the installer to not write Ahk2Exe.exe into App Paths if the compiler is not installed.
Downloads (etc.)
Client coord mode and object output mode for RegExMatch and RegEx callouts are also very nice!
Thank you!
Good work!Modified PCRE to use UTF-16
Really needed.Class ClassName now create a super-global
Thanks.Fixed RegEx callouts not causing matching to abort when an exception is thrown.
AHK gets better and better.
No signature.
I actually wrote code yesterday that depends on the empty keys of instance variables in the class object, but it shouldn't be an issue to rewrite it and it's much more consistent now.
Having (class names global / global var names) also made me need to rewrite some stuff as I used the same names in function parameters sometimes, but the advantages are much bigger!
Function parameters and explicitly declared locals take precedence over super-globals, so that should no more be a problem than it was when explicit global declarations were required. There was a bug which caused a function parameter to be seen as a "duplicate parameter" if a super-global was previously declared with that name, but that was fixed prior to this release.Having (class names global / global var names) also made me need to rewrite some stuff as I used the same names in function parameters sometimes,
Now we can remove a few hacks from our code and make everything neater. (I had a function that returned a handle to a class, and another one that created a new instance... so sloppy.)
Request Video Tutorials Here or View Current Tutorials on YouTube
Any code ⇈ above ⇈ requires AutoHotkey_L to run
I really love the changes to RegExMatch, thanks!
I'd assume this means that there is no chance to declare super-globals within a class or function or to prevent a class from being super-global?Super-global variables [v1.1.05+]: If a global declaration appears outside of any function, it takes effect for all functions by default. This avoids the need to redeclare the variable in each function. However, if a function parameter or local variable with the same name is declared, it takes precedence over the global variable. Variables created by the class keyword are also super-global.
Yes that's what I meant, I didn't realize this was a bug. I started converting my code with the beta versions. It wasn't that bad though, because I could use it to find those potential naming conflicts.
Function parameters and explicitly declared locals take precedence over super-globals, so that should no more be a problem than it was when explicit global declarations were required. There was a bug which caused a function parameter to be seen as a "duplicate parameter" if a super-global was previously declared with that name, but that was fixed prior to this release.Having (class names global / global var names) also made me need to rewrite some stuff as I used the same names in function parameters sometimes,
Unicode x86 - recommended for new scripts.
...at https://ahknet.autoh...s/AutoHotkey_L/ goes to https://ahknet.autoh... ... 110401.zip.
Is this intended?
As a quick help for people, the download link for v1.1.5.0 x86 seems to be:
https://ahknet.autoh... ... 110500.zip
Thank you for AutoHotkey_L.
With best regards
clackwell
The links shown on the AutoHotkey_L homepage are redirects to the downloads for the current version. These redirects are updated automatically whenever I release a new version; the problem is that your browser has cached the redirect.
many ppl seem to have this problem
i'm not sure how this would work with a redirect, but surely theres gotta be a way
you can prevent client browsers from caching a file by setting some http headers either in the html or in the htaccess file. i don't know if you are able to modify the htaccess files on ahk.net hosting.
just a quick search for examples of headers to set:
<!-- m -->http://stackoverflow... ... h-htaccess<!-- m -->