github RedBearAK/Toshy Toshy_v26.07.1
Toshy v26.07.1

4 hours ago

Releases from this project are meant only as records of major changes. There will be automatic attachments generated by GitHub, but to get the latest version download the zip from the green <> Code ▼ button on the main page, or use the quick-install one-liner command.

Changes

A point release, roughly two days of work after v26.07.0. The headline is a rebuilt CapsLock options system and a new interactive key-identity diagnostic.

Note

Existing users with a CapsLock option set: The old Caps2Cmd and Caps2Esc_Cmd toggles have been replaced by a single CapsLock Mode selector (see below), and there is no automatic migration between them. On first start after upgrading, if Toshy finds one of the old settings active, it sends a notification and clears it — so your previous CapsLock behavior will revert to default until you re-select what you want from the new CapsLock Mode menu, in the tray icon or the Preferences app. This is a one-time step. Nothing else you have set is affected.

New features and improvements

  • CapsLock Mode selector, replacing the two independent Caps2Cmd / Caps2Esc_Cmd toggles with a single list of mutually exclusive modes. One CapsLock behavior is active at a time, chosen by name, which removes the old problem of two overlapping toggles producing an ambiguous or contradictory result. The available modes:
    • Caps is Caps (default) — a normal CapsLock toggle. Nothing is remapped.
    • Caps is Caps & Cmd — tap for the CapsLock toggle (useful on international layouts that have Caps-layer characters), hold for Cmd.
    • Caps is Cmd — hold for Cmd, in both GUI apps and terminals. No CapsLock toggle in this mode.
    • Caps is Esc & Cmd — tap for Escape, hold for Cmd.
    • Caps is Esc & LCtrl always — tap for Escape, hold for a real, literal Ctrl even in GUI apps (so native Linux Ctrl shortcuts respond — handy for Emacs in a GUI window). The physical Left Ctrl is untouched.
    • Caps is Esc & LCtrl role swap — tap for Escape, hold takes over Left Ctrl's usual Toshy role (Super in GUI apps, real Ctrl in terminals); the physical Left Ctrl becomes the CapsLock toggle.
    • Caps is LCtrl role swap — Caps and Left Ctrl trade places, with no Escape behavior.
  • Several of the modes now cover terminals as well as GUI apps on Mac and Windows keyboards. The old Caps2Cmd toggle was GUI-only, which left CapsLock as a live toggle in terminal windows — a gap the mode system closes.
  • toshy-keycheck, a new interactive diagnostic command. It shows a single card in the terminal with the real hardware identity of the last key you released, what it was remapped to, and which modmap or multi-purpose modmap was responsible. Multi-purpose keys (like a CapsLock key in one of the tap/hold modes above) show both of their identities and how the press actually resolved — tap, hold-timeout, or a second key pressed while holding. It is a focused alternative to reading the full toshy-debug log stream. Like toshy-debug, it stops the Toshy services first (it explains this and asks before doing so), and reminds you to run toshy-services-restart when you exit.
  • The tray menu and GTK4 Preferences app were reorganized into columns with colored section headers, to fit the new CapsLock Mode group without crowding.

Fixes

  • The .git folder is no longer copied into the install location. Beyond wasting space, a stray .git in the installed tree could confuse tooling that walks up looking for a repository root.
  • The version script handles mistyped options more gracefully instead of failing unhelpfully.
  • Duplicate settings-change events no longer flood the debug log, which made real events hard to spot when tailing the output.
  • The vendor sync script (a maintainer-side tool) is no longer copied into user installs.

Auto-generated full release notes (CLICK TO EXPAND):

What's Changed

Full Changelog: Toshy_v26.07.0...Toshy_v26.07.1

Don't miss a new Toshy release

NewReleases is sending notifications on new releases.