.github | ||
espanso | ||
espanso-clipboard | ||
espanso-config | ||
espanso-detect | ||
espanso-engine | ||
espanso-info | ||
espanso-inject | ||
espanso-ipc | ||
espanso-kvs | ||
espanso-mac-utils | ||
espanso-match | ||
espanso-migrate | ||
espanso-modulo | ||
espanso-package | ||
espanso-path | ||
espanso-render | ||
espanso-ui | ||
images | ||
scripts | ||
snap/hooks | ||
.dockerignore | ||
.gitignore | ||
Cargo.lock | ||
Cargo.toml | ||
Compilation.md | ||
LICENSE | ||
Makefile.toml | ||
README.md | ||
rustfmt.toml | ||
SECURITY.md | ||
snapcraft.yaml |
A cross-platform Text Expander written in Rust
Visit the espanso website.
What is a Text Expander?
A text expander is a program that detects when you type a specific keyword and replaces it with something else. This is useful in many ways:
- Save a lot of typing, expanding common sentences.
- Create system-wide code snippets.
- Execute custom scripts
- Use emojis like a pro.
Key Features
- Works on Windows, macOS and Linux
- Works with almost any program
- Works with Emojis 😄
- Works with Images
- Includes a powerful Search Bar 🔎
- Date expansion support
- Custom scripts support
- Shell commands support
- App-specific configurations
- Support Forms
- Expandable with packages
- Built-in package manager for espanso hub
- File based configuration
- Support Regex triggers
- Experimental Wayland support
Get Started
Visit the official documentation.
Provisional Wayland support
This branch has provisional support for Wayland, albeit only under Fedora 36 using Gnome.
Please look at the documentation for details. Application specific filters (filter_title, filter_class, filter_exec) currently only work und Wayland with Gnome version 41. In addition, a Gnome shell extension (https://extensions.gnome.org/extension/4974/window-calls-extended/) is required! Without this extension, espanso has no access to active window information.
- Compile espanso with
cargo make --profile release --env NO_X11=true build-binary
- User must be member of group
input
- Espanso must be given capability (SELinux) to access /dev/input. So install with
sudo cp ~/src/espanso/target/release/espanso /usr/local/bin ; sudo setcap "cap_dac_override+p" $(which espanso)
Support
If you need some help to setup espanso, want to ask a question or simply get involved in the community, Join the official Subreddit! :)
Donations
espanso is a free, open source software developed in my (little) spare time. If you liked the project and would like to support further development, please consider making a small donation, it really helps :)
Contributors
Many people helped the project along the way, thank you to all of you!
Remarks
- Thanks to libxdo and xclip, used to implement the Linux port.
- Thanks to libxkbcommon and wl-clipboard, used to implement the Wayland port.
- Thanks to wxWidgets for providing a powerful cross-platform GUI library.
License
espanso was created by Federico Terzi and is licensed under the GPL-3.0 license.