Skip to main content
Version: v2.1.5-beta


In this section, we collected some examples of what is possible with Espanso, so that you can both learn new techniques and take inspiration for your own use-cases.


If you have an example that would benefit others, feel free to suggest the addition on GitHub! :)

Populating a Form's choice control with the result of a shell command

The following example shows how you could use the output of a shell command to populate a form's choice/list control. In this case, the match can be used to implement a rudimentary file-picker:

  - trigger: ":file"
replace: "{{form1.file}}"
- name: files
type: shell
cmd: "find ~/Documents -maxdepth 1"
- name: form1
type: form
layout: |
Select file:
type: list
values: "{{files}}"


Hi! I'm Federico, the creator of espanso. I develop espanso in my (little) spare time and I decided to make it open source because I thought it could be useful to many people.

If you liked the project, please consider making a small donation, it really helps :)

A special thanks goes to all the wonderful people who supported espanso along the way

Together, we will make espanso the first universal text expander, open to everyone.


Espanso is open source and hosted on GitHub.


If you find a bug or have an idea for a new feature, please open an issue on GitHub.