Releases: catokolas/MacSpoonsTweaks
Release list
v0.3.7
MacSpoonsTweaks v0.3.7.
- Document the
brew trust catokolas/tapstep for machines withHOMEBREW_REQUIRE_TAP_TRUSTset, so installs from the personal tap aren't blocked as untrusted.
Ad-hoc signed — first launch needs right-click → Open.
v0.3.6
MacSpoonsTweaks v0.3.6. Ad-hoc signed — first launch needs right-click → Open.
Fixed
- Update button no longer flashes "Update available" after a successful update. Previously, clicking Update on an outdated Spoon would briefly re-render the row's "Update available" pill + Update / View changes / Remove buttons for a redraw tick before settling on the steady "Installed" + Remove state. Caused by a placeholder installed ref being observable while the real upstream SHA was being fetched in the background; the SHA refine now resolves before the UI redraws.
v0.3.5
MacSpoonsTweaks v0.3.5.
Fix
-
Bridge bootstrap actually works now. v0.3.3 / v0.3.4 tried to
reload Hammerspoon via the AppleScript verbreload, but
Hammerspoon doesn't expose that — AppleScript errored locally
before the AppleEvent was even dispatched, so macOS never
registered the Automation attempt and the "MacSpoonsTweaks would
like to control Hammerspoon" permission prompt never appeared.
Switched to Hammerspoon's actual public verb,
execute lua code "…", dispatched in-process viaNSAppleScript
so macOS attributes the request to MST.app itself.First launch after upgrade will pop the Automation permission
prompt. Allow it, and from then on every Install / Apply that
writes the snippet auto-reloads Hammerspoon cleanly — no manual
menu-bar Reload Config click, no Hammerspoon console gymnastics.
Install
Ad-hoc signed — first launch needs right-click → Open (or System
Settings → Privacy & Security → Open Anyway on Sequoia/Tahoe).
v0.3.4
MacSpoonsTweaks v0.3.4.
Fix
- Self-recover from a stale Hammerspoon. v0.3.3 reloaded
Hammerspoon when MST had to writemac_spoons_tweaks.lua, but if
the file was already in place and Hammerspoon was just running its
pre-MST in-memory state (nohs.ipcloaded), the bridge stayed
broken and Install kept erroring with
"can't access Hammerspoon message port". MST now probes the bridge
on launch and, if it can't reach the message port, AppleScript-
reloads Hammerspoon. Healthy bridges aren't touched — no
unnecessary reload on every app launch.
Install
Ad-hoc signed — first launch needs right-click → Open (or System
Settings → Privacy & Security → Open Anyway on Sequoia/Tahoe). On
first reload MST will ask for Automation permission to control
Hammerspoon; tick Hammerspoon under
System Settings → Privacy & Security → Automation → MacSpoonsTweaks
so the auto-reload keeps working on future launches.
v0.3.3
MacSpoonsTweaks v0.3.3.
Fix
- Fresh-install bootstrap. Newly installed copies of MST on a Mac
with no existing~/.hammerspoon/mac_spoons_tweaks.lua(or with a
placeholder one) used to deadlock the first time you clicked
Install — the bridge failed with "can't access Hammerspoon message
port" because Hammerspoon never loadedhs.ipc. MST now adopts
the managed snippet on launch if it isn't already in place, and
every snippet write triggers Hammerspoon to reload itself via
AppleScript (which works without the message port). First-run is
click-and-go.
Install
Ad-hoc signed — first launch needs right-click → Open (or System
Settings → Privacy & Security → Open Anyway on Sequoia/Tahoe). See
Distribution.md
for the full first-launch flow.
v0.3.2
MacSpoonsTweaks v0.3.2.
What's new
-
modifierComboconfig field. NewConfigFieldtype for Spoons
whose configuration needs a modifier-only chord (no main key). The
form renders a recorder-style picker matching the existing hotkey
recorder: click record, hold the modifier(s) you want, release all
to confirm. Storage rides the existingstringListpath, so the
generated Lua snippet emitsmodifiers = { "alt", "shift" }
unchanged. -
Companion Spoon. Used by the new
MouseMoveResizeWindows.spoonin
HS_SpoonsContrib
— hold a configurable modifier and drag anywhere in a window to
move it; right-drag resizes the closest edge.
Install
Ad-hoc signed — first launch needs right-click → Open (or System
Settings → Privacy & Security → Open Anyway on Sequoia/Tahoe). See
Distribution.md
for the full first-launch flow.
v0.3.1
Mac Spoons Tweaks v0.3.1
Fix
- Update-available banners now show on the first refresh. v0.3.0 fired all per-Spoon git checks in parallel on the same shallow-clone cache; parallel fetches against the same repo could race and leave some
latestRefsentries unset, so you'd have to click Refresh a second time before the "update available" badge appeared on every out-of-date Spoon. The app now runs a second update-check pass a few seconds after the first, catching any stragglers without user input.
Install
brew upgrade --cask catokolas/tap/macspoonstweaks
First launch on a fresh Mac: see README → "First launch" for the Gatekeeper allowlist click.
v0.3.0
Mac Spoons Tweaks v0.3.0
Activate-hotkey model
This release replaces per-action hotkeys with a single
activate/deactivate chord per Spoon. Pressing the chord toggles
the Spoon on/off, flashes an hs.alert overlay, and persists across
Hammerspoon reloads. The detail view footer now shows a "Toggle on/off:"
caption + a compact chord recorder right next to the Active toggle.
Default chords (paired with the new HS_SpoonsContrib v0.3.0 catalog):
- FocusFollowsMouse → ⇧⌃⌘F
- MouseCopyPasteSelection → ⇧⌃⌘P
- MouseScrollTweaks → ⇧⌃⌘S
- MouseTrackpadTweaks → ⇧⌃⌘M
MoveSpaces keeps its per-action space_left / space_right hotkeys
(⇧⌃← / ⇧⌃→) since those are operations, not on/off switches.
SpotifyPlayPause has no chord and is toggled via the app's Active
control as before.
Other fixes
- Hotkey chord text scales with the font preset. Previously the
chord chip and action label stayed at the system default size even
when you'd cranked the A+ control all the way up. Now they grow
with everything else.
Under the hood
- New
~/.hammerspoon/mac_spoons_tweaks_overrides.luarecords which
Spoons are currently chord-deactivated. The snippet's startup
applies it afterandUsehas loaded each Spoon. - The app polls the override file every 300ms while running and
flips the Active toggle to match the chord-driven state within a
frame or two.
After upgrading
If you've installed Spoons before v0.3.0, click Apply once on
each affected Spoon (or run hs.reload() from the Hammerspoon
console) to pick up the new bind closure.
Install
brew upgrade --cask catokolas/tap/macspoonstweaks
First launch on a fresh Mac: see README → "First launch" for the
Gatekeeper allowlist click.
v0.2.1
Mac Spoons Tweaks v0.2.1
Cosmetic
- Display name now reads Mac Spoons Tweaks (with spaces) everywhere a user sees it: Finder, Launchpad, the macOS app menu's bold leftmost name, the window title, the About panel, the menu bar pull-down header, and the unmanaged-Spoon prose.
Unchanged: the .app filename, executable, bundle ID, Homebrew cask name, and ~/Library/Application Support/MacSpoonsTweaks/ data directory — so brew upgrade is seamless and existing state is preserved.
Install
brew upgrade --cask catokolas/tap/macspoonstweaks
First launch on a fresh Mac: see README → "First launch" for the Gatekeeper allowlist click.
v0.2.0
MacSpoonsTweaks v0.2.0
Highlights
- Install now activates the Spoon. Clicking Install used to leave the Spoon on disk in a disabled state — you had to follow up with Apply (or the Active toggle) before anything actually happened. Install now performs the full apply in one step: the manifest's default hotkeys are bound, the snippet is regenerated, and the live
:start()runs immediately. Reinstalls preserve any config / hotkey overrides you already set.
Docs
- First-launch Gatekeeper walkthrough for macOS Sonoma (14), Sequoia (15), and Tahoe (26) in README + Distribution, including the
xattr -drTerminal one-liner. - Full "Publish a Homebrew tap" recipe in Distribution (cask template, audit caveats, per-release version + sha256 bump).
Install
Ad-hoc signed — first launch needs an allowlist click. See README → "First launch" if macOS blocks the app.
brew install --cask catokolas/tap/macspoonstweaks