Editing match/base.yml shouldn't require a text editor.
A native macOS menu bar app for managing
espanso
text expansions — no YAML required.
brew install --cask jeffcaldwellca/tap/macspanso
Homebrew automatically installs espanso if it isn't already present.
A small native app for the parts of espanso you actually touch every day.
Type a trigger, type the replacement, save. No YAML, no terminal.
Add [[placeholders]] and espanso will show a fill-in popup before expanding.
Attach date, shell, clipboard, random, and other variable types to any match.
One match, many triggers — or match by regular expression for maximum flexibility.
Browse matches by YAML file or as a flat list. See exactly where each match lives.
A banner appears when a file changes outside the app, with reload or keep options.
Enable, disable, or restart espanso without leaving the keyboard.
Filter matches instantly by trigger, replacement preview, or label.
Currently on v1.3.0 — see the changelog for what's new.
brew install --cask jeffcaldwellca/tap/macspanso
Download the latest .dmg from the Releases page, open it, and drag macspanso to your Applications folder.
macspanso edits the same YAML files espanso reads — typically ~/Library/Application Support/espanso/match/. Nothing is moved, copied, or duplicated; we just give you a nicer way to edit those files.
No. macspanso watches the espanso config directory and detects external edits. If a file changes while macspanso has it open, a banner gives you the choice to reload from disk or keep your in-app changes.
Yes — macspanso operates on whatever path espanso is configured to use. If you've moved your match folder into iCloud Drive or another sync provider, macspanso will edit the synced files in place.
No. The app reads and writes local YAML files and controls the local espanso process. There is no telemetry, no analytics, and no network calls.
If you installed via Homebrew: brew uninstall --cask jeffcaldwellca/tap/macspanso.
If you installed via .dmg: drag macspanso from /Applications to the Trash. Your espanso matches are not affected — they live in espanso's config directory and stay put.
Yes — MIT licensed. View the source on GitHub, file an issue, or open a PR.