Jump to content

Sky Slate Blueberry Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate
Photo

AutoHotkey_L v1.1.05.05


  • Please log in to reply
30 replies to this topic
Lexikos
  • Administrators
  • 9844 posts
  • AutoHotkey Foundation
  • Last active:
  • Joined: 17 Oct 2006
1.1.05.00

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.)



Learning one
  • Members
  • 1483 posts
  • Last active: Jan 02 2016 02:30 PM
  • Joined: 04 Apr 2009
Great! I especially like the fact that now we can use classes from inside any other class or function without global declaration! :D :D
Client coord mode and object output mode for RegExMatch and RegEx callouts are also very nice!

Thank you! :D

HotKeyIt
  • Moderators
  • 7439 posts
  • Last active: Jun 22 2016 09:14 PM
  • Joined: 18 Jun 2008
Great work, thank you very much ;)

fincs
  • Moderators
  • 1662 posts
  • Last active:
  • Joined: 05 May 2007
Great, keep up the hard work! :D

Tuncay
  • Members
  • 1945 posts
  • Last active: Feb 08 2015 03:49 PM
  • Joined: 07 Nov 2006

Modified PCRE to use UTF-16

Good work!

Class ClassName now create a super-global

Really needed.

Fixed RegEx callouts not causing matching to abort when an exception is thrown.

Thanks.

AHK gets better and better.

No signature.


fragman
  • Members
  • 1591 posts
  • Last active: Nov 12 2012 08:51 PM
  • Joined: 13 Oct 2009
Very nice!

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!

Lexikos
  • Administrators
  • 9844 posts
  • AutoHotkey Foundation
  • Last active:
  • Joined: 17 Oct 2006

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,

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.

Frankie
  • Members
  • 2930 posts
  • Last active: Feb 05 2015 02:49 PM
  • Joined: 02 Nov 2008
RE superglobals:
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.)
aboutscriptappsscripts
Request Video Tutorials Here or View Current Tutorials on YouTube
Any code ⇈ above ⇈ requires AutoHotkey_L to run

nimda
  • Members
  • 4368 posts
  • Last active: Aug 09 2015 02:36 AM
  • Joined: 26 Dec 2010
I turned on my computer, and the update script notified me of 1.1.05! What a great start to the morning.

I really love the changes to RegExMatch, thanks! :D

just me
  • Members
  • 1496 posts
  • Last active: Nov 03 2015 04:32 PM
  • Joined: 28 May 2011

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.

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?

fragman
  • Members
  • 1591 posts
  • Last active: Nov 12 2012 08:51 PM
  • Joined: 13 Oct 2009

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,

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.

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.

clackwell
  • Guests
  • Last active:
  • Joined: --
The link with the text...

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

Lexikos
  • Administrators
  • 9844 posts
  • AutoHotkey Foundation
  • Last active:
  • Joined: 17 Oct 2006
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.

guest3456
  • Members
  • 1704 posts
  • Last active: Nov 19 2015 11:58 AM
  • Joined: 10 Mar 2011

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 -->

Lexikos
  • Administrators
  • 9844 posts
  • AutoHotkey Foundation
  • Last active:
  • Joined: 17 Oct 2006
I've added nocache as per this blog post. Maybe that'll help.