SN
Written by Swaraj Nandedkar • Creator & Lead Developer
Linux Compositor & Wayland Architecture Guide • Updated 2026
Linux Architecture

Text Expanders on Wayland: What Actually Works in 2026

Short answer: on a pure Wayland session, no text expander can expand typed keyword triggers or use global hotkeys — not Espanso, not AutoKey, not FlitKey. Wayland deliberately forbids applications from reading global keystrokes. What still works everywhere is a picker: a searchable snippet window you open and paste from. This page explains why, and what each tool actually does.

1. First, check which session you are actually running

Most "Wayland" desktops are not fully Wayland. Many applications still run through XWayland, the X11 compatibility layer — and inside XWayland, traditional text expansion works normally. Before assuming a tool is broken, run:

echo $XDG_SESSION_TYPE

Even on a Wayland session, individual apps may still be running under XWayland. Expansion often works in those apps and not in native Wayland ones, which is why the behaviour can look inconsistent.

2. Why typed triggers break — for every tool

Under X11, any background utility can ask the display server for all global keystrokes and inject synthetic key events into any window. That is what makes a keyword trigger like ;addr possible: the expander is watching everything you type, everywhere.

It is also, precisely, what a keylogger does. Wayland closed this hole deliberately. There is no permission to request and no flag to set — the protocol does not expose global input to ordinary clients at all.

This is a property of Wayland, not a shortcoming of any particular application. Espanso, AutoKey, and FlitKey are all subject to it equally. Be sceptical of any text expander claiming "full native Wayland support" for typed triggers.

3. What each tool actually does on Wayland

Capability FlitKey Espanso AutoKey
Typed keyword triggers No No No (X11 only)
Global hotkeys No No No
Searchable snippet picker Yes — GUI window, clipboard paste Search bar, no full GUI Dated GTK UI
Snippet management Visual GUI YAML files GUI + Python scripts
Tray controls & autostart Yes Yes Yes

4. What FlitKey does on Wayland

FlitKey inspects $WAYLAND_DISPLAY and $XDG_SESSION_TYPE at startup and selects its input backend accordingly. On a Wayland session it does not pretend typed triggers work — it switches to picker mode:

This is a genuine workflow, but it is a different one: two keystrokes and a search instead of an inline trigger. If inline typed triggers are essential to you, an X11 session is currently the only option on Linux — with any tool.

5. Honest recommendation

6. Installing FlitKey on Linux

# Debian / Ubuntu / Mint / Pop!_OS
wget https://github.com/swarajnandedkar/FlitKey/releases/download/v0.4.0/flitkey_0.4.0_all.deb
sudo apt install ./flitkey_0.4.0_all.deb
flitkey

Flatpak and AUR packages are in progress but not yet published. For other distributions, see running from source. FlitKey is free and MIT-licensed.

Related reading: FlitKey vs EspansoHow to import Espanso snippetsDocumentation