Keysharp - the resurrection of IronAHK

Talk about things KeySharp, some related to AutoHotkey or C#
User avatar
tank
Posts: 3122
Joined: 28 Sep 2013, 22:15
Location: CarrolltonTX
Contact:

Re: Keysharp - the resurrection of IronAHK

Post by tank » 21 Mar 2022, 02:24

there are no shared source with autoit. chris has publicly stated he will never enforce the licesnse.
mfeemster wrote:
19 Mar 2022, 01:36
academic masturbation.
now thats good shit there
We are troubled on every side‚ yet not distressed; we are perplexed‚
but not in despair; Persecuted‚ but not forsaken; cast down‚ but not destroyed;
Telegram is the best way to reach me
https://t.me/ttnnkkrr
If you have forum suggestions please submit a
Check Out WebWriter

User avatar
mfeemster
Posts: 104
Joined: 24 Apr 2020, 18:30

Re: Keysharp - the resurrection of IronAHK

Post by mfeemster » 25 Mar 2022, 09:45

Thanks for the input. There are parts of Keysharp written in C# entirely from scratch, and other parts that are a direct port of AHK's C++ code.

So which license do you think we can use which would accommodate this scenario?

If there is no such license which can accommodate such a hybrid scenario, then we'll just go with the most permissive one.

SOTE
Posts: 1426
Joined: 15 Jun 2015, 06:21

Re: Keysharp - the resurrection of IronAHK

Post by SOTE » 25 Mar 2022, 16:10

mfeemster wrote:
25 Mar 2022, 09:45
...So which license do you think we can use which would accommodate this scenario?

If there is no such license which can accommodate such a hybrid scenario, then we'll just go with the most permissive one.
Nothing is compatible with GPL, which is partially why some people (particularly involving jobs or companies) can have issues with it. However, the rhetoric and fears often created around it doesn't match up to known legal cases or actual copyright law.

My opinion is to release it under MIT, which is quite close to what IronAHK was.
EDIT: The BSD-2 license is the closest. Though either MIT or BSD-2 would usually be more acceptable for most.

You shouldn't have any issues with the original creator of AHK, Chris Mallett, from all public statements known. Probably best to face any possible hurdle that comes along, if it actually happens and if someone actually creates trouble. In that scenario, you and/or other developers could probably re-write those parts. Technically, it being in C# and no restrictions can be made by 3rd parties to prevent access to the WinAPI, would already make it quite difficult to even make the attempt to actually create an issue.
Last edited by SOTE on 26 Mar 2022, 04:55, edited 2 times in total.

User avatar
mfeemster
Posts: 104
Joined: 24 Apr 2020, 18:30

Re: Keysharp - the resurrection of IronAHK

Post by mfeemster » 25 Mar 2022, 17:56

Sounds good, we'll use MIT.

User avatar
joedf
Posts: 8937
Joined: 29 Sep 2013, 17:08
Location: Canada
Contact:

Re: Keysharp - the resurrection of IronAHK

Post by joedf » 25 Mar 2022, 19:52

:thumbup:
Image Image Image Image Image
Windows 10 x64 Professional, Intel i5-8500, NVIDIA GTX 1060 6GB, 2x16GB Kingston FURY Beast - DDR4 3200 MHz | [About Me] | [About the AHK Foundation] | [Courses on AutoHotkey]
[ASPDM - StdLib Distribution] | [Qonsole - Quake-like console emulator] | [LibCon - Autohotkey Console Library]

SOTE
Posts: 1426
Joined: 15 Jun 2015, 06:21

Re: Keysharp - the resurrection of IronAHK

Post by SOTE » 26 Mar 2022, 04:32

mfeemster wrote:
25 Mar 2022, 17:56
Sounds good, we'll use MIT.
By the way, the present license that you have at Bitbucket, and looking again at the original IronAHK license at GitHub, is actually very close to the BSD-2 (https://opensource.org/licenses/BSD-2-Clause).

So either way, MIT or BSD-2, would likely be found acceptable by most.

BoBo
Posts: 6564
Joined: 13 May 2014, 17:15

Re: Keysharp - the resurrection of IronAHK

Post by BoBo » 11 Apr 2022, 02:23

Probably another area to think about at this stage: viewtopic.php?f=76&t=102590 :think: :thumbup:

User avatar
mfeemster
Posts: 104
Joined: 24 Apr 2020, 18:30

Re: Keysharp - the resurrection of IronAHK

Post by mfeemster » 18 Apr 2022, 01:38

I've been more active on the project over the last month.

Upgraded the solution to VS 2022 and .NET 6.

Hotstrings are working pretty well now, but I still have some additional testing to do.

Spent quite a while fixing various bugs in lots of areas of the code.

Also added another project in the solution for doing benchmarks to compare the performance of native C# code with the code generated by a script to perform the same operation. It uses the Benchmark.NET library.

After I am confident that hotstrings are complete, then I'll do hotkeys, which hopefully aren't too much more work.

As I noted earlier, classes and COM will not be available in this first release.

As for the question about PCRE: it's not used in this project, C# has built in regex processing.

User avatar
Bugz000
Posts: 93
Joined: 30 Sep 2013, 10:01

Re: Keysharp - the resurrection of IronAHK

Post by Bugz000 » 04 Jun 2022, 01:54

@mfeemster
you're doing fantastic work! i'm slowly working toward moving to linux, i've got a laptop i'm setting up as i like as a testbed seeing if i can get all my most used programs working on there... one was DFX, turns out viper4linux is even better... the next was ShareX - turns out to be many linux forks of it, so it should be fine, and ofcourse... i cannot leave AHK behind... i've been using ahk for well over a decade at this point, and i really, really think linux needs a good simple scripting language because the likes of bash and python are just absolutely truly awful...

i'd love to help, i'm not the best coder on earth, but i manage fine, i could certainly handle documentation or testing, i want to get involved because i'm 100% one of the ones waiting for a solution, i want the solution now, so what better to do than help out right? then we can all get it sooner :D

also if i may suggest two things for whatever they're worth,

1) i've no idea how you'll be handling GUI stuff, but most my programs i simply hook a windows terminal as it's UI - almost all my scripts start out this way with a terminal frontend and a multi-threaded backend, a good 20,000 line template just for that... ofcourse in linux most things are run in terminal, specially headless nodes like on proxmox
this can potentially cut down the workload for a first release if you do a terminal version or a version with some terminal functionality that would change commands the likes of msgbox to a TUI prompt etc and the scripts containing GUI commands simply flag an error, i'd not be afraid of adding some directives that are "your project only", i mean AHK_H has plenty of them... you must remember demographic, if someone is using linux then adjusting an ahk script from windows version to linux version should be quite trivial or no worse than normal debugging
this i think will be the core of linux compatability that people (certainly i) am after, not so much the key remapping or hotstrings, not the gui, but the simplicity in the code and environment, to be able to utilise the terminal in ahk and print lines to the session with color and such would be fantastic, if that were released i'd be coding a full AHK TUI class immediately :D by the sounds of things with a brief look over the thread you may already be 99% the way there for this much functionality

2) you are developing this under "keysharp" - which to me breaks away from the 'tradition' of all the various AHK variants, you have the core variants, AHK_B AHK_L, AHK_2, and my favorite ahk fork: AHK_H
it makes for handy file naming
AHK_U_L <-- ahk_L unicode version

ironAHK kinda broke from this scheme which was what it was, but your project name lacks any reference to AHK at all in the name, so perhaps a similar naming convention could be used, i think AHK_# looks cool

either way i have finally found this thread so i will be keeping up to date on your progress and please do give me something to do which would help :D
i can also be found on the #ahk irc channel
Image
||-------[-HP-ML350E-G8-]-------||-[-32-core-xeon-]-||--[-48gb-ECC-]--||
||----[-Dell-Poweredge-r610-]---||-[-16-core-xeon-]-||--[-16gb-ECC-]--||
||-[-Lenovo-ThinkPad-x201-tab-]-||---[-4-core-i7-]--||-[-8gb-nonECC-]-||
||---------------------------[-shack--img-]---------------------------||

User avatar
mfeemster
Posts: 104
Joined: 24 Apr 2020, 18:30

Re: Keysharp - the resurrection of IronAHK

Post by mfeemster » 08 Jun 2022, 15:05

Bugz000 wrote:
04 Jun 2022, 01:54
@mfeemster
you're doing fantastic work! i'm slowly working toward moving to linux, i've got a laptop i'm setting up as i like as a testbed seeing if i can get all my most used programs working on there... one was DFX, turns out viper4linux is even better... the next was ShareX - turns out to be many linux forks of it, so it should be fine, and ofcourse... i cannot leave AHK behind... i've been using ahk for well over a decade at this point, and i really, really think linux needs a good simple scripting language because the likes of bash and python are just absolutely truly awful...

i'd love to help, i'm not the best coder on earth, but i manage fine, i could certainly handle documentation or testing, i want to get involved because i'm 100% one of the ones waiting for a solution, i want the solution now, so what better to do than help out right? then we can all get it sooner :D

also if i may suggest two things for whatever they're worth,

1) i've no idea how you'll be handling GUI stuff, but most my programs i simply hook a windows terminal as it's UI - almost all my scripts start out this way with a terminal frontend and a multi-threaded backend, a good 20,000 line template just for that... ofcourse in linux most things are run in terminal, specially headless nodes like on proxmox
this can potentially cut down the workload for a first release if you do a terminal version or a version with some terminal functionality that would change commands the likes of msgbox to a TUI prompt etc and the scripts containing GUI commands simply flag an error, i'd not be afraid of adding some directives that are "your project only", i mean AHK_H has plenty of them... you must remember demographic, if someone is using linux then adjusting an ahk script from windows version to linux version should be quite trivial or no worse than normal debugging
this i think will be the core of linux compatability that people (certainly i) am after, not so much the key remapping or hotstrings, not the gui, but the simplicity in the code and environment, to be able to utilise the terminal in ahk and print lines to the session with color and such would be fantastic, if that were released i'd be coding a full AHK TUI class immediately :D by the sounds of things with a brief look over the thread you may already be 99% the way there for this much functionality

2) you are developing this under "keysharp" - which to me breaks away from the 'tradition' of all the various AHK variants, you have the core variants, AHK_B AHK_L, AHK_2, and my favorite ahk fork: AHK_H
it makes for handy file naming
AHK_U_L <-- ahk_L unicode version

ironAHK kinda broke from this scheme which was what it was, but your project name lacks any reference to AHK at all in the name, so perhaps a similar naming convention could be used, i think AHK_# looks cool

either way i have finally found this thread so i will be keeping up to date on your progress and please do give me something to do which would help :D
i can also be found on the #ahk irc channel
Thanks for your interest. As for the terminal stuff, that will have to wait until after I release. As I've stated numerous times, the initial work will be to get this working as close to AHK as possible on Windows, then the same on Linux. Only after that will we work on additional features.

As for the naming, I'm leaving it as Keysharp. There's no need for "unicode" version or anything else because all strings are unicode in C#. Also, the intent is to be a clean break from AHK because it's written in an entirely different language.

Once I get something released, we'll all coordinate testing.

I can be found in the Keysharp room on Discord.

User avatar
joedf
Posts: 8937
Joined: 29 Sep 2013, 17:08
Location: Canada
Contact:

Re: Keysharp - the resurrection of IronAHK

Post by joedf » 08 Jun 2022, 16:05

I wonder what keysharp's logo could be like... maybe something simple like this?
I just grabbed a Tango (Desktop Project icons - public domain) svg and slapped on a '#' on there...
icon_x128.png
icon_x128.png (8.35 KiB) Viewed 6245 times
Attachments
keysharp_icon.zip
(34.98 KiB) Downloaded 156 times
Image Image Image Image Image
Windows 10 x64 Professional, Intel i5-8500, NVIDIA GTX 1060 6GB, 2x16GB Kingston FURY Beast - DDR4 3200 MHz | [About Me] | [About the AHK Foundation] | [Courses on AutoHotkey]
[ASPDM - StdLib Distribution] | [Qonsole - Quake-like console emulator] | [LibCon - Autohotkey Console Library]

User avatar
mfeemster
Posts: 104
Joined: 24 Apr 2020, 18:30

Re: Keysharp - the resurrection of IronAHK

Post by mfeemster » 08 Jun 2022, 17:51

I've already made a logo, it's my avatar on this forum. I have it in svg format so it can be made at any size.

User avatar
joedf
Posts: 8937
Joined: 29 Sep 2013, 17:08
Location: Canada
Contact:

Re: Keysharp - the resurrection of IronAHK

Post by joedf » 08 Jun 2022, 18:39

Ahh... I see... don't mind me then. haha :mrgreen:
Image Image Image Image Image
Windows 10 x64 Professional, Intel i5-8500, NVIDIA GTX 1060 6GB, 2x16GB Kingston FURY Beast - DDR4 3200 MHz | [About Me] | [About the AHK Foundation] | [Courses on AutoHotkey]
[ASPDM - StdLib Distribution] | [Qonsole - Quake-like console emulator] | [LibCon - Autohotkey Console Library]

BoBo
Posts: 6564
Joined: 13 May 2014, 17:15

Re: Keysharp - the resurrection of IronAHK

Post by BoBo » 09 Jun 2022, 09:12

joedf wrote:
08 Jun 2022, 16:05
I wonder what keysharp's logo could be like... maybe something simple like this?
I just grabbed a Tango (Desktop Project icons - public domain) svg and slapped on a '#' on there...
a) you could use this sort of # (in black&blue or black&green bars) to keep a reference to AHK...
https://cdn2.iconfinder.com/data/icons/social-media-interface-1/24/social_media_user_interface_hastag_pound_tag-256.png

b) adding 'K' to the key (like a double function key, ie positioned at the top left) would follow the KeySharp/K# motto, at least for the bigger icons. JM2€ :xmas: :shh:

User avatar
joedf
Posts: 8937
Joined: 29 Sep 2013, 17:08
Location: Canada
Contact:

Re: Keysharp - the resurrection of IronAHK

Post by joedf » 09 Jun 2022, 09:51

BoBo wrote:
09 Jun 2022, 09:12
joedf wrote:
08 Jun 2022, 16:05
I wonder what keysharp's logo could be like... maybe something simple like this?
I just grabbed a Tango (Desktop Project icons - public domain) svg and slapped on a '#' on there...
a) you could use this sort of # (in black&blue or black&green bars) to keep a reference to AHK...
https://cdn2.iconfinder.com/data/icons/social-media-interface-1/24/social_media_user_interface_hastag_pound_tag-256.png

b) adding 'K' to the key (like a double function key, ie positioned at the top left) would follow the KeySharp/K# motto, at least for the bigger icons. JM2€ :xmas: :shh:
Neat ideas :thumbup:
I like playing around with logos is all :D
Image Image Image Image Image
Windows 10 x64 Professional, Intel i5-8500, NVIDIA GTX 1060 6GB, 2x16GB Kingston FURY Beast - DDR4 3200 MHz | [About Me] | [About the AHK Foundation] | [Courses on AutoHotkey]
[ASPDM - StdLib Distribution] | [Qonsole - Quake-like console emulator] | [LibCon - Autohotkey Console Library]

User avatar
Bugz000
Posts: 93
Joined: 30 Sep 2013, 10:01

Re: Keysharp - the resurrection of IronAHK

Post by Bugz000 » 14 Jun 2022, 14:07

mfeemster wrote:
08 Jun 2022, 15:05
I can be found in the Keysharp room on Discord.
i'll just keep track here :)
Last edited by Bugz000 on 18 Jul 2022, 12:35, edited 1 time in total.
Image
||-------[-HP-ML350E-G8-]-------||-[-32-core-xeon-]-||--[-48gb-ECC-]--||
||----[-Dell-Poweredge-r610-]---||-[-16-core-xeon-]-||--[-16gb-ECC-]--||
||-[-Lenovo-ThinkPad-x201-tab-]-||---[-4-core-i7-]--||-[-8gb-nonECC-]-||
||---------------------------[-shack--img-]---------------------------||

silvascientist
Posts: 1
Joined: 15 Apr 2022, 16:11
Contact:

Re: Keysharp - the resurrection of IronAHK

Post by silvascientist » 03 Jul 2022, 01:21

mfeemster wrote:
08 Jun 2022, 15:05
I can be found in the Keysharp room on Discord.
Wait, where can we find the Keysharp Discord though? I've been looking and can't seem to track it down :crazy:

Michaohneel
Posts: 7
Joined: 07 Feb 2021, 16:37
Contact:

Re: Keysharp - the resurrection of IronAHK

Post by Michaohneel » 03 Jul 2022, 07:59

silvascientist wrote:
03 Jul 2022, 01:21
Wait, where can we find the Keysharp Discord though? I've been looking and can't seem to track it down :crazy:
There is a channel called #keysharp on the AutoHotkey Discord server. You can't view it by default, but you can give yourself access to it through the #roles channel.

User avatar
mfeemster
Posts: 104
Joined: 24 Apr 2020, 18:30

Re: Keysharp - the resurrection of IronAHK

Post by mfeemster » 26 Aug 2022, 16:32

Just wanted to post an update that @burque505 has been helping me test over the past couple of months. He is testing daily, finding bugs, and I am fixing them. We are trying to work as fast as we can to get an initial release out, but it's slow going. The good news is that while we are finding bugs, their fixes are small, and *most* of the program works as documented in the AHK V2 documentation (with about 50 caveats that I'll include with the release notes).

Hang tight while we get through this important phase.

BoBo
Posts: 6564
Joined: 13 May 2014, 17:15

Re: Keysharp - the resurrection of IronAHK

Post by BoBo » 27 Aug 2022, 13:47

:clap: @mfeemster & @burque505 stay motivated :thumbup:

Post Reply

Return to “KeySharp”