Releases: ericfitz/footswitch
Releases · ericfitz/footswitch
Footswitch 1.1.1
A small maintenance release on top of 1.1.0.
Fixes
- Dictation "just works" — the real macOS shortcut is detected automatically (#15). The dictation default action previously assumed a fixed ⌃⌥⌘D combo; if your macOS Dictation shortcut differed, pressing the pedal silently did nothing. Footswitch now reads your actual Dictation shortcut from system settings and uses it. If your shortcut is a "double-press" preset (e.g. Press Control twice) it can't be sent as a keystroke — Footswitch surfaces a
⚠️ warning in the menu bar instead of failing silently, and falls back to the configured shortcut. An explicitdictationShortcutinconfig.jsonstill overrides auto-detection. - Rules-table columns re-fit when the action kind changes (#14). Switching a rule between "Key sequence" and "Run a Shortcut" now resizes the action column to fit the new editor, so it is no longer clipped or padded with slack. Purely cosmetic — the action sent was always correct.
Under the hood
- Large
SettingsView.swiftsplit into focused files and the SwiftLint size suppressions removed (#13); SwiftLint is enforced (strict) on release builds. - The new Dictation menu-bar warning is localized across all 30 supported languages.
Notes
- Universal build (Apple silicon + Intel), Developer ID signed, notarized, and stapled. Requires macOS 13+.
Footswitch 1.1.0
A large feature release on top of 1.0.1.
New features
- PCsensor FS17Pro support, including Bluetooth. Recognized over USB and Bluetooth LE, and programmable over Bluetooth (CoreBluetooth/GATT). Note: after a Bluetooth program, the pedal must be power-cycled for the new key to take effect.
- Multi-pedal foot switches. Per-pedal (slot) trigger keys and per-pedal actions, with a Settings row/column per detected pedal. Default triggers F13/F14/F15 for pedals 1–3.
- Run an Apple Shortcut from a pedal (#3). A per-app rule's action can run a Shortcuts.app shortcut instead of sending a key sequence.
- Data-driven, per-device configuration (#4, #9). A new
devicessection inconfig.jsonlets you add a same-protocol foot switch (by VID/PID) and set its trigger keys with no code change. Existing configs migrate automatically and losslessly on first launch. - "Test" button (#6). Detect the key your pedal actually emits and reconcile it with config — adopt the detected key (no reprogram/power-cycle) or reprogram the device.
- Modifier-key triggers (#10). Triggers can include modifiers (⌃⌥⇧⌘); the listener matches the full combo exactly, and Test / programming / verify all carry modifiers.
- Launch at login (#8). A General-settings option to start Footswitch automatically at login.
- Live device updates in Settings (#5). The window refreshes when a pedal is plugged/unplugged or switches between USB and Bluetooth.
Fixes
- Bluetooth "power-cycle to apply" warning now clears (#12) — shown only after a Bluetooth program, and cleared on re-detect, adopt, or a confirming Test.
- Settings column widths (#11) — the action/key-mapping column stays wide enough to show the full mapping; the app-name column narrows instead.
Notes
- Universal build (Apple silicon + Intel), Developer ID signed, notarized, and stapled. Requires macOS 13+.
config.jsonis migrated automatically; trigger config now lives under a per-devicedevicessection.
Footswitch 1.0.1
Universal (Apple Silicon + Intel) build. Adds an About window and 30-language localization. Download Footswitch.dmg, open it, and drag Footswitch to Applications.