Our great sponsors
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
PyAutoGUI
A cross-platform GUI automation Python module for human beings. Used to programmatically control the mouse & keyboard.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
I tried. I really, really, really tried. It......can't do it. There's a few rules OP left out, like IfWinActive now needs to enclose its stuff in braces and that's just too much for it. I put its first attempt as well as its last two here: https://github.com/RheingoldRiver/misc_settings/issues/3
After I read the changes it told me it made (I always do something like this to get it to check its own work) I was like "hm this is sus as fuck" so I had it redo it several times and then yeah just....gave up.
Good idea though, and I did learn a bunch about the syntax so when I go to do it myself it'll be easier. I wonder if some of what OP said was determined later than GhatGPT's cutoff date, although I don't think so - I remember even back when I set up these hotkeys 2.0 was in an early beta and I was like uhhhhhh no there's almost 0 docs on this, but I thought I might regret it one day; I don't, though, there were 0 docs back then, it was the right call.
I ended up using AHK for komorebi[1] because I was still new to Windows when I start writing it and I didn't wanna have to write a tiling window manager AND a hotkey daemon. I even ended up generating a nice little AHK library to wrap around CLI commands that sent socket messages to the window manager to make it easier to write a configuration.
Ultimately the syntax changes make it impossible to fully reproduce the same library for AHKv2, which is being installed by default on all mainstream package managers now.
I ended up biting the bullet and making my own hotkey daemon[2] for use with komorebi based on skhd[3] and I haven't looked back since. This will be the "blessed" hotkey daemon recommended for use in the next release of komorebi.
I'm still using AHK (v1) for the stuff that it's good at (and there is a lot of stuff that it's good at!), but ultimately I've found that it's not the right tool as a hotkey daemon for a socket-based tiling window manager.
[1]: https://github.com/LGUG2Z/komorebi
[2]: https://github.com/LGUG2Z/whkd
[3]: https://github.com/koekeishiya/skhd
I ended up using AHK for komorebi[1] because I was still new to Windows when I start writing it and I didn't wanna have to write a tiling window manager AND a hotkey daemon. I even ended up generating a nice little AHK library to wrap around CLI commands that sent socket messages to the window manager to make it easier to write a configuration.
Ultimately the syntax changes make it impossible to fully reproduce the same library for AHKv2, which is being installed by default on all mainstream package managers now.
I ended up biting the bullet and making my own hotkey daemon[2] for use with komorebi based on skhd[3] and I haven't looked back since. This will be the "blessed" hotkey daemon recommended for use in the next release of komorebi.
I'm still using AHK (v1) for the stuff that it's good at (and there is a lot of stuff that it's good at!), but ultimately I've found that it's not the right tool as a hotkey daemon for a socket-based tiling window manager.
[1]: https://github.com/LGUG2Z/komorebi
[2]: https://github.com/LGUG2Z/whkd
[3]: https://github.com/koekeishiya/skhd
I ended up using AHK for komorebi[1] because I was still new to Windows when I start writing it and I didn't wanna have to write a tiling window manager AND a hotkey daemon. I even ended up generating a nice little AHK library to wrap around CLI commands that sent socket messages to the window manager to make it easier to write a configuration.
Ultimately the syntax changes make it impossible to fully reproduce the same library for AHKv2, which is being installed by default on all mainstream package managers now.
I ended up biting the bullet and making my own hotkey daemon[2] for use with komorebi based on skhd[3] and I haven't looked back since. This will be the "blessed" hotkey daemon recommended for use in the next release of komorebi.
I'm still using AHK (v1) for the stuff that it's good at (and there is a lot of stuff that it's good at!), but ultimately I've found that it's not the right tool as a hotkey daemon for a socket-based tiling window manager.
[1]: https://github.com/LGUG2Z/komorebi
[2]: https://github.com/LGUG2Z/whkd
[3]: https://github.com/koekeishiya/skhd
I recently updated my scripts to work with ahkv2. https://github.com/EBADBEEF/ahkv2-scripts
Some things I'm proud of here:
I wrote MicroKeys[1] out of a similar frustration. Granted, I never got past the POC stage, so it's not as feature rich as AHK, but it solved a very specific itch I had. I debate if I should flesh it out further, or try using AHK again.
[1] https://github.com/seligman/microkeys
I've been using SikuliX [1] instead of AHK for a while now, only downside is that it uses jython so it's stuck on 2.7, but I don't use it for anything complicated enough that it really matters. Also I mainly use it for long running, rarely used automation, so I'm not sure how it would compare in terms of responsiveness for tasks like text expansion.
Also I did a quick search and I assume this [2] is the library you mentioned?
[1] https://github.com/RaiMan/SikuliX1
Alternatively if you're into dotnet, FlaUI is amazing for automation and gives you a sane environment. I moved to it when I couldn't deal with AutoIT scripts anymore and it's everything I needed. https://github.com/FlaUI/FlaUI
Check out https://bitbucket.org/mfeemster/keysharp/ and https://github.com/phil294/AHK_X11, two attempts at porting AHK to Linux. The former isn't usable yet, the latter is by me and somewhat incomplete.
Many thanks. How do they compare with autokey? I haven't tried it properly, but it gets mentioned a lot. https://github.com/autokey/autokey
Have you checked fsearch? https://github.com/cboxdoerfer/fsearch It got very good in the last 1-2 years and while ext4 fs don't support a file index like NTFS does, it's still very fast, caches its results, offers similar features etc.
Thanks for the extra details, I think I understand what you’re looking for.
Have you looked into something like this[1] for generating the macro as an ahk file? Full disclosure: I have not used it, but it seems like what you’re looking for. If you find that it suits your needs, I’d use that to record the macro and then wrap it in a loop from 1..N where N is based on the Fn key you press. That should do the trick unless I’m misunderstanding.
I wish I could be of more help, but this repo seems like a decent starting point for your use case.
Apologies if the formatting is poor as I am on mobile.
[1] https://github.com/adegard/AHK_SCRIPTS