Packages make it easy to reuse Matches created by other people or share yours with the world. Thanks to espanso hub, the official espanso package repository, and the built-in package manager, using them is a breeze.
Packages can be installed in various ways, but the easiest choice is espanso hub.
Navigate to espanso hub and choose the package you want to install.
Let’s say you want to install the Basic Emojis package, open a terminal and type:
espanso install basic-emojis
Then don’t forget to restart espanso using:
espanso restart
Some packages (namely the bigger ones that would make the core repository too large) are now considered external, and espanso will block the installation by default, prompting the user to verify the source of the package (the repository).
In case the user wants to proceed with the installation, the --external
flag could be used:
espanso install <package_name> --external
To install from a repository, pass repository’s URL after package name. Like the above command,
espanso will block the installation without --external
flag.
espanso install <package_name> <repo_url> --external
Note: Given repository must be in compliance with the specification described in Creating a Package.
To list installed packages, open a terminal and type:
espanso package list
To remove a package, open a terminal and type:
espanso uninstall <package-name>
where <package-name>
is the name of the package. You can obtain that name by listing installed packages.
Then, don’t forget to restart espanso using:
espanso restart
Note: espanso is in the alpha stage right now and sometimes things are not very polished. The current package creation process will be improved in the future.
In their basic form, Packages are just configuration files, very similar to those you’ve seen before, with a few metadata fields to describe them.
Packages must be hosted on GitHub repositories. To create one, go ahead and fork the espanso package example repo.
From that example you can create your own package in a few easy steps:
simple-package
directory name to your desired package name (only alphanumeric characters and ‘-‘ are
allowed)simple-package/README.md
file:
package_name
name of the package (must be the same as the directory)package_title
human friendly version of the package namepackage_desc
a short description of the packagepackage_version
the version of the package, you should not change this one when you startpackage_author
your namepackage_repo
URL of this package repository - https://github.com/---
you can write the package description using the Markdown syntax.package.yml
file contained in the 0.1.0
folder (matching the package version) by changing the name and including your Matches. For example:
# Simple package
name: simple-package
parent: default
matches:
- trigger: ":hw"
replace: "hello world"
After following all these steps, you can request to publish your package to espanso hub by opening an Issue with the following information:
Hi! I'm Federico, the creator of espanso. I developed 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 :)
Donate with PayPal Become a GitHub SponsorTogether, we will make espanso the first universal text expander, open to everyone.
See the Sponsors