Espanso – text expander

Espanso is a cross-platform text expander written in Rust.

Text expander detects when you type a keyword and replaces it while you’re typing.

See it in action…

This is useful in many ways:

  • save a lot of typing, expanding common sentences
  • create system-wide code snippets
  • execute custom scripts

Key Features

  • Works with almost any program
  • Works with Images
  • 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

Espanso comes preinstalled in Mabox. To start it run from terminal as user:

espanso start

You will be asked to register systemd user service first. After that espanso is started and ready to use.

Here comes a simple Mabox espanso helper…
which will help you to use espanso by presenting all defined triggers, use super + alt + e

To run trigger just select it and push enter.
Helper menu will allow you also quick access to:

  • edit default config file ~/.config/espanso/default.yml
  • open config dir ~/.config/espanso/user
  • as well as visit project documentation

A very simple example config file with some triggers (servers.yml):

name: servers
parent: default

matches:
  # Update packages 
  - trigger: ":au"
    replace: "apt update && apt upgrade"
  - trigger: ":yu"
    replace: "yum update"
  - trigger: ":du"
    replace: "dnf update"
  
  # DirectAdmin update
  - trigger: ":da"
    replace: "cd /usr/local/directadmin/custombuild;./build clean;./build update;./build versions"

To temporarily disable espanso, press alt twice.

You can do much more advanced things with espanso, like forms, custom scripts.
To learn more visit espanso documentation.

Espanso is a great program, definitely worth learning and configuring to suit your needs. Thanks to espanso you can save a lot of time when writing.