Pasted is a swift, stubbornly lightweight, native text-substitution utility designed to work system-wide on Windows (see § Limitations). It combines the convenience of text-substitution with a fully-featured graphical user interface for management, maintaining a minimal footprint on system resources while working offline to ensure privacy.
The application monitors keystrokes and substitutes trigger strings when matches are detected. It also includes a Quick Search dialog for searching triggers and inserting definitions with ease. Pasted thus helps save time by reducing look-ups for characters not readily available on the keyboard and by lessening repetitive typing of long text snippets.
The main interface has three sections: a Collections panel for organisation, a Triggers panel displaying details (including the last triggered timestamp), and a Definition Preview panel.
Triggers can be easily created and categorised into collections using the graphical user interface. It is highly recommended to prefix trigger sequences with a designated symbol (e.g. a semicolon ;) to prevent accidental substitutions during regular typing.
Pasted supports dynamic date and time variables, allowing triggers to resolve to the current local time upon execution. The variables should be formatted by wrapping standard date/time tags in ${} delimiters.
${yyyy-mm-dd}→ e.g.2026-02-25${dd/mm/yyyy}→ e.g.25/02/2026${hh:nn:ss AM/PM}→ e.g.02:30:45 PM${dddd, dd mmmm yyyy}→ e.g.Wednesday, 25 February 2026
To output a literal tag without triggering dynamic resolution, prefix it with a backslash (\${yyyy-mm-dd}).
It is not hard to forget triggers as collections grow bigger. Pasted, therefore, includes a global Quick Search dialog for swiftly finding forgotten triggers (by searching their name, trigger, or definition) and inserting them directly into the active text field. To call it from anywhere, press Alt + ; (or Ctrl + Alt + ;).
The application uses a local SQLite3 database for data storage. Users can back up the entire database or restore from a previous snapshot via the Data menu. Furthermore, triggers (full set or specific collections) can be imported and exported as JSON documents to facilitate seamless sharing across devices.
-
Download the installer from the Releases page or from https://pasted.jaisal.in.
-
Install and launch the application.
Note: Windows SmartScreen may flag the installer as an unrecognised application. Provided the installer is sourced from the locations specified in step 1, bypass the prompt by clicking More info → Run anyway. For added assurance, verify the PGP signature.
-
Add or import triggers to get Pasted springing into action.
-
Toggle the start-up checkbox in the bottom-left corner to ‘Enabled on system start-up’ to ensure Pasted runs automatically when the system boots.
-
Close the application window. Pasted will minimise to the tray and work silently in the background.
-
Refer to the user guide or navigate to Help → User Guide in the application menu for more details on usage.
Released installers are signed with a PGP key. The public key is available on keys.openpgp.org.
Fingerprint: C4A8 E4F9 1650 7DD9 49D4 5DF8 B4ED 8851 B020 2101
- Permissions: If the target application is running with administrative privileges while Pasted is running as a standard user, the Windows User Account Control (UAC) may block the definitions from reaching the target.
- Third-Party Interference: Aggressive clipboard managers, remote desktop protocols (RDP), or intensive security configurations may interfere with Pasted’s functionality.
Pasted uses custom-compiled SQLite3, statically linked to the executable to make it fully standalone and self-contained. The steps to build the project from source are as follows:
-
Lazarus IDE v4.4
-
Free Pascal Compiler v3.2.2 (included with Lazarus IDE v4.4)
-
WinLibs (or a similar GCC-based C compiler toolchain).
Note: Add the binary directory (e.g.
C:\winlibs\mingw64\bin) to the system’s PATH environment variable.
-
Compile SQLite3
Open the terminal and navigate to the
vendor/sqlite3/directory and execute thebuild-sqlite3.batscript to compile the SQLite3 amalgamation source to an optimisedsqlite3.oobject file.Note: This step uses GCC; therefore, it should be added to the PATH.
-
Configure Library Paths in Lazarus
Open
Pasted.lpiin the IDE. Navigate to Project → Project Options → Compiler Options → Paths. In the Libraries (-Fl) field, add the required C library paths.Example for WinLibs:
C:\winlibs\mingw64\lib\C:\winlibs\mingw64\x86_64-w64-mingw32\lib\C:\winlibs\mingw64\lib\gcc\x86_64-w64-mingw32\15.2.0\
-
Compile the Application
Build using Run → Build or
Shift+F9in the Lazarus IDE.
Pasted is built using the Lazarus IDE/Free Pascal Compiler and relies on third-party libraries and resources. Please see the NOTICE file for details. The project has benefitted significantly from Google Gemini 3.1 Pro’s assistance for ideation, code generation, and refactoring.
This project is licensed under the BSD 3-Clause License and is provided as-is, without any warranties. Please see the LICENSE file for details.