awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
federico-terzi avatar

federico-terzi/espanso

0
View on GitHub↗
14,002 stars·423 forks·Rust·GPL-3.0·15 viewsespanso.org↗

Espanso

Espanso is a cross-platform text expander and automation tool written in Rust. It replaces short keywords with longer predefined text strings across different operating systems to increase typing speed and consistency.

The tool utilizes regular expressions to detect complex typing patterns for dynamic replacement and allows for the execution of custom shell scripts to inject real-time data. Users can restrict expansions to specific software environments, ensuring that keywords only trigger within designated applications.

The system includes a manager for installing and updating curated collections of predefined snippet packages. Configuration is handled via structured files that map keywords to their corresponding expansions.

Features

  • Text Expanders - Replaces short trigger keywords with longer predefined text blocks across different platforms to increase typing speed.
  • Text Expansion Utilities - Automates the insertion of predefined text templates into active documents across different applications.
  • Cross-Platform Input Simulation - Interacts with OS-specific APIs to capture keyboard input and simulate key presses across different operating systems.
  • Rust-Implemented Tooling - Implemented as a high-performance tool in Rust to ensure memory safety and efficient event handling.
  • Event-Driven Input Handlers - Processes user input events through asynchronous loops to identify trigger patterns for text expansion.
  • Regex Pattern Matching - Evaluates input streams against regular expression patterns to determine when a keyword should be replaced.
  • External Command Execution - Runs system programs and captures their output to inject dynamic content into the active text field.
  • Dynamic Content Injection - Inserts dynamic data, such as shell script outputs, into the text stream via keyboard shortcuts.
  • Custom Run Scripts - Provides named shortcuts for shell commands to automate repetitive tasks or inject dynamic data.
  • Regex Triggers - Fires snippet expansion when typed text matches a regular expression pattern, enabling dynamic trigger matching.
  • Application-Specific Hotkeys - Implements context-aware triggers that only expand keywords when a specific application is focused.
  • String Pattern Replacements - Replaces matched text patterns with new strings or the results of executed functions.
  • Context-Aware Triggers - Limits text expansions to specific applications so keywords only trigger within designated software environments.
  • Automation Tools - Cross-platform text expander written in Rust.

Star history

Star history chart for federico-terzi/espansoStar history chart for federico-terzi/espanso

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does federico-terzi/espanso do?

Espanso is a cross-platform text expander and automation tool written in Rust. It replaces short keywords with longer predefined text strings across different operating systems to increase typing speed and consistency.

What are the main features of federico-terzi/espanso?

The main features of federico-terzi/espanso are: Text Expanders, Text Expansion Utilities, Cross-Platform Input Simulation, Rust-Implemented Tooling, Event-Driven Input Handlers, Regex Pattern Matching, External Command Execution, Dynamic Content Injection.

Which projects share features with federico-terzi/espanso?

Projects with overlapping indexed features include: vicinaehq/vicinae. espanso/espanso — Espanso is a cross-platform text expander and desktop automation tool that monitors system-wide keystrokes to replace… nvim-mini/mini.nvim — mini.nvim is a comprehensive library of independent modules designed to extend Neovim with a wide array of navigation,… clipy/clipy — Clipy is a clipboard manager and productivity utility for macOS. It functions as a text snippet manager and a tool for… diffplug/spotless — Spotless is a multi-language formatting orchestrator and Gradle plugin that automates code styling across various… bensadeh/tailspin — Tailspin is a regex-based text colorizer and terminal log viewer designed to transform plain text streams into…

Projects sharing features with Espanso

These projects share indexed features with Espanso. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • vicinaehq/vicinaevicinaehq avatar

    vicinaehq/vicinae

    6,436View on GitHub↗
    C++app-launcherlinuxnodejs
    View on GitHub↗6,436
  • espanso/espansoespanso avatar

    espanso/espanso

    13,987View on GitHub↗

    Espanso is a cross-platform text expander and desktop automation tool that monitors system-wide keystrokes to replace short trigger keywords with longer text blocks, images, or dynamic script outputs. It functions as a background service, enabling users to automate repetitive typing tasks across any application on their local system. The tool distinguishes itself through context-aware automation, which allows users to define specific rules that enable or disable expansion behavior based on the currently active window. It also features a centralized package management system for organizing and

    Rustespansolinuxmacos
    View on GitHub↗13,987
  • nvim-mini/mini.nvimnvim-mini avatar

    nvim-mini/mini.nvim

    9,325View on GitHub↗

    mini.nvim is a comprehensive library of independent modules designed to extend Neovim with a wide array of navigation, user interface, and text manipulation tools. It serves as a modular plugin collection, a UI toolkit for creating custom statuslines and notifications, and a package manager for installing and pinning external plugins from Git. The project provides a specialized fuzzy picker framework for filtering files and symbols, an LSP completion engine with interactive snippet expansion, and a dedicated plugin test framework that uses headless editor instances and remote procedure calls

    Lualuamini-nvimneovim
    View on GitHub↗9,325
  • clipy/clipyClipy avatar

    Clipy/Clipy

    8,387View on GitHub↗

    Clipy is a clipboard manager and productivity utility for macOS. It functions as a text snippet manager and a tool for archiving clipboard history, allowing users to retrieve previously copied text and images. The application enables the storage of frequently used boilerplate text as snippets to avoid repetitive manual typing. These snippets and historical clipboard entries can be accessed and inserted into other applications via keyboard shortcuts.

    Swiftclipboardclipboard-extensionclipmenu
    View on GitHub↗8,387
  • Compare all 30 related projects→