Get AI summaries of any video or article — Sign up free
How to use Espanso Text Expander to Improve Your Productivity thumbnail

How to use Espanso Text Expander to Improve Your Productivity

Prakash Joshi Pax·
4 min read

Based on Prakash Joshi Pax's video on YouTube. If you like this content, support the original creators by watching, liking and subscribing to their content.

TL;DR

Espanso is a free, open-source text expander that replaces typed trigger words with predefined text to reduce repetitive typing.

Briefing

Espanso is a free, open-source text expander for Windows that boosts productivity by turning short “trigger” words into longer, prewritten text—without needing to type the same phrases repeatedly. The core pitch is that it’s powerful but underused because setup can feel technical at first, even though daily use is straightforward once snippets are configured.

Getting started begins with installation. Users download Espanso from Espanso’s website (shown as espanzo.org), choose the 64-bit download, accept the agreement, and enable auto-launch. After installation, Espanso runs in the background and performs automatic replacements as soon as triggers are typed. A quick sanity check is typing a sample trigger (the transcript uses “sponsor” as an example) to confirm that it expands into the configured replacement text.

The main work happens in Espanso’s configuration files. Espanso’s configuration location is retrieved via a command-line call using “espanso path,” which outputs where the config folder lives on the PC. Inside that folder, two key directories matter: a configuration directory containing default.yml, and a match directory containing based.yml (the transcript uses “based.yml” as the file name). The configuration file defines how expansions behave, while the match directory holds snippet definitions—each snippet is essentially a substitution rule.

Each snippet is built from two fields: a trigger and a replace string. When the user types the trigger, Espanso swaps it for the replacement. The transcript demonstrates editing based.yml with a text editor (Sublime Text Editor is used as an example). After saving, Espanso reloads automatically and shows a “configuration reloaded” notification. From then on, typing the trigger anywhere produces the replacement—such as expanding a short name trigger into “Hi there, I’m Prakash Joshi,” or expanding an email trigger into a prefilled email address.

Beyond static text, Espanso supports variables. The transcript gives an example where typing a trigger like “time” inserts the current time using variable syntax in the snippet definition. For more advanced customization, it points users back to documentation for deeper patterns and settings.

Finally, Espanso’s package system makes it easier to add ready-made snippets. Through the Espanso Hub (the transcript calls it “esparzo Hub”), users can browse packages such as emoji packs, copy a terminal install command, and install them quickly. Once installed, the package’s triggers become available—letting users type short codes to insert emojis (the transcript references using Windows’ Win+V clipboard history as a workaround before Espanso). The result is a workflow where frequent text and symbols can be inserted instantly, with minimal typing and fewer copy-paste steps.

Cornell Notes

Espanso is a free, open-source text expander that replaces short trigger words with longer text automatically. After installing it on Windows, users configure expansions by editing Espanso’s YAML files in the config directory—especially the match directory file (based.yml) where snippets are defined. Each snippet uses a trigger (what the user types) and a replace string (what Espanso inserts). Saving the file reloads configuration automatically, and triggers work anywhere. Espanso also supports variables (like inserting the current time) and can install ready-made snippet packs from the Espanso Hub, including emoji packages with their own triggers.

Why does Espanso feel “underrated,” and what problem does it solve day to day?

It’s described as powerful but not widely recognized partly because setup is less straightforward than some alternatives. Once configured, it solves repetitive typing: short triggers expand into full phrases, contact details, or other frequently used text without manual copy-paste.

Where do Espanso snippets live, and what files/directories matter most?

Users locate the config folder using a command-line “espanso path” command. Inside that folder, the configuration directory contains default.yml (behavior/settings), while the match directory contains based.yml (snippet definitions). The match directory is where triggers and replacement rules are defined.

What are the two essential fields in an Espanso snippet?

A snippet is built from a trigger and a replace string. The trigger is the word Espanso detects while typing; the replace string is the text that replaces the trigger. For example, a trigger like “hi” can be mapped to “Hi there, I’m Prakash Joshi.”

How do variables and dynamic content work in Espanso?

Snippets can include variables so replacements aren’t fixed. The transcript’s example uses a “time” trigger that expands into the current time by referencing a time variable in the snippet definition (shown inside bracket syntax). This means the inserted text updates based on runtime values.

How can users avoid writing every snippet from scratch?

They can install packages from the Espanso Hub. The transcript demonstrates copying a terminal install command for an emoji package, then using the package’s built-in triggers to insert emojis. After installation, those triggers appear as available snippet options.

What’s the practical workflow after editing based.yml?

After saving based.yml in a text editor, Espanso reloads automatically and displays a “configuration reloaded” notification. Then the user can type the trigger anywhere and see the replacement happen immediately.

Review Questions

  1. What’s the difference between default.yml and the match directory’s based.yml in Espanso’s setup?
  2. If a trigger doesn’t expand, what two snippet components should you verify in based.yml?
  3. How would you design a snippet that inserts dynamic content (like the current date) rather than static text?

Key Points

  1. 1

    Espanso is a free, open-source text expander that replaces typed trigger words with predefined text to reduce repetitive typing.

  2. 2

    Installation is straightforward on Windows, but effective use depends on configuring snippets in Espanso’s YAML files.

  3. 3

    Use “espanso path” to find the exact configuration directory on your PC before editing any files.

  4. 4

    Snippets are substitution rules defined by a trigger (what you type) and a replace string (what gets inserted).

  5. 5

    Saving changes to the snippet file triggers an automatic reload, confirmed by a configuration reloaded notification.

  6. 6

    Espanso supports variables for dynamic expansions such as inserting the current time.

  7. 7

    The Espanso Hub provides installable packages (like emoji packs) so users can add many triggers without manually writing each snippet.

Highlights

Espanso performs instant text replacement once triggers are defined—typing a short code can expand into full phrases anywhere.
The setup hinges on editing the match directory’s based.yml, where each snippet is defined by trigger and replacement text.
Saving the configuration reloads automatically, so changes take effect immediately without restarting manually.
Variable-based snippets can insert dynamic values like the current time rather than fixed text.
Emoji and other functionality can be added quickly by installing packages from the Espanso Hub via terminal commands.

Topics

  • Text Expander
  • Espanso Setup
  • YAML Snippets
  • Variables
  • Emoji Packages

Mentioned