Skip to content

Releases: keysharp-org/Keysharp

v0.0.0.16

Choose a tag to compare

@Descolada Descolada released this 02 Aug 20:12

Keysharp 0.0.0.16

New

Ks.Image class — capture, load or create an image, then draw on it, transform it, search it and read/write its pixels before saving it. Replaces ImageCapture(). Full on Windows, partial on Linux (X11).

Ks.Overlay class — always-on-top, click-through canvas using the same drawing primitives as Image. Now backs Highlight(), and ToolTip() on Linux/macOS.

Ks.WinEvent — cross-platform window event subscriptions: Active, Exist, NotExist, Move, Minimize, Restore, TitleChange, plus Pause/Stop. Import with #import "Ks" { WinEvent }.

OCR library — new OCR.ks with a pluggable engine (Tesseract by default), built on Image.

Demos — ClipboardHistory, InputHUD, OCRSnip, Shell, WindowGrab, WindowTiler.

Also: Ks.A_ThreadId and Exit(ThreadId); Ks.MonitorGetScale() and Ks.MonitorFromPoint() alongside fully cross-platform monitor functions; InputHook.OnMouseDown/OnMouseUp/OnMouseMove; Gui +ClickThrough and +AutoScroll; an ImageSearch *Dir scan-direction option.

Platform

Linux — SharpHook and the legacy X11 hook/sender logic are removed. All input now goes through the keysharp-inputd daemon (evdev + uinput), reworked for multi-user handling, per-script permissions, unicode sending and mouse buttons.

Wayland — overlays, clipboard and window manipulation via KWin scripting and Keysharp shell extensions for GNOME (including v48+) and Cinnamon.

macOS — hook and sender logic revamped on CGEventTap; the key sender now works. Binaries are signed, and releases ship DMG/PKG with SHA256 checksums.

Internals — the old PlatformManager/WindowManager hierarchies were replaced by a service-oriented Platform layer with shared failure/retry recovery.

Breaking changes

  • ImageCapture() is replaced by the Image class
  • Linux input requires keysharp-inputd — the SharpHook/X11 fallback is gone
  • A_ScaledScreenDPI is renamed to A_ScreenScale
  • A_OSType now returns WINDOWS / OSX / LINUX
  • A_LineFile in the main file resolves to A_FullScriptPath
  • #import inside a function or class body binds to that scope instead of module-wide, and unknown imports throw
  • Reserved words can no longer be used as variable names
  • Invalid Gui options now throw

Fixes

Release-mode stack traces for C# exceptions, OnExit teardown, scripts exiting when the last Eto window closed, thread priority handling, DLL path normalization, Windows overlay flicker and emoji tray icons, and a long tail of Linux/macOS window and input bugs. Parser fixes for #include, static variables, derefs and remap syntax. Performance: RegEx pattern caching, font caching, cheaper per-call thread setup and faster keyboard-layout queries.

Demo assets

Choose a tag to compare

@Descolada Descolada released this 02 Aug 20:11
ff59ce4
KeysharpDemo

v0.0.0.15

Choose a tag to compare

@Descolada Descolada released this 02 Aug 20:11

Keysharp 0.0.0.15

Keysharp is now cross-platform across Windows, Linux, and macOS.

🍎 macOS support

Keysharp now runs on macOS, including:

  • Window management and the keyboard/mouse hook & sender
  • Sound and drive functions
  • macOS App Switcher integration and native modifier (Cmd) handling
  • AxSpy, a new macOS accessibility inspector
  • A proper installer and release packaging

🐧 Linux improvements

  • New inputd input daemon for reliable keyboard/mouse automation
  • .deb packaging and automatic .NET 10 installation
  • Unicode character sending
  • Keyview syntax highlighting
  • A large batch of hook/sender and GUI fixes

⚙️ Engine & language

  • New hand-written parser replacing ANTLR4 — faster and less ambiguous
  • AHK v2.1 features: compatibility mode (v2.0/v2.1), struct support (#StructPack), the #import directive, PropRef, the !~= operator, and ahk_opt
  • Reworked timer/event scheduler — fixes timer livelock and timers not firing inside hotkey callbacks
  • Performance: lower allocations on conditionals, plus GUI, window-movement, and ImageSearch speedups
  • Cross-platform GUI (Eto): DPI scaling, dialog theming, hyperlink labels, A_GuiTheme
  • Hook/sender brought up to date with AutoHotkey 2.0.26

Plus dozens of bug fixes and a new curated cross-platform CI test suite.

Full changelog: Descolada/keysharp@0.0.0.14...v0.0.0.15

Keysharp v0.0.0.12

Choose a tag to compare

@mfeemster mfeemster released this 31 Mar 14:08

Another release fixing bugs and bringing behavior more in line with AHK v2.

There is still no linux support in this release.

Use the MSI for installation or the zip for portable mode.

You must install the .NET 10 SDK and not just the runtime.

v0.0.0.14

Choose a tag to compare

@Descolada Descolada released this 02 Aug 20:10
  1. Fixed Click() in Linux, as well as multiple major hotkey bugs
  2. Updated hotkey logic from latest AutoHotkey commits
  3. Implemented module support and moved Keysharp-specific methods in the KS module
  4. Simplified parser, and optimized some parsing logic

v0.0.0.13

Choose a tag to compare

@Descolada Descolada released this 02 Aug 20:10
2434754

Adds preliminary Linux support. Fixes issues #1, #2 and #3.

v0.0.0.12

Choose a tag to compare

@Descolada Descolada released this 02 Aug 20:10

First release of the ANTLR branch

Keysharp 0.0.0.11

Choose a tag to compare

@mfeemster mfeemster released this 17 Jul 02:41

Another release fixing bugs and bringing behavior more in line with AHK v2.

There is still no linux support in this release.

Use the MSI for installation or the zip for portable mode.