Sniplet
Free and Open Source Text Replacement Tool
Description:
Sniplet is a work in progress CLI tool which can do text replacement globally in Linux, MacOS and Windows. It is a multi-threaded tool which runs quietly in the background with minimal resource utilization. It is open source and works completely offline.
Features:
- Custom Text Expansions
- Background process with low resource utilization
- Multi Line expansion support
Sample Video:
Installation:
Python is required
Might require admin or su permission to install
Installing using pip:
pip install sniplet==1.0.7
Installing from source:
-
Download the files from github
-
Run the following command in the terminal
python setup.py install
-
If you don't want Sniplet to be installed globally, it is recommended to create a virtualenv to install it
Adding Sniplet to the PATH variable on Windows:
-
The Windows install is slightly different and pip install is recommended
-
After installing the package find the python install folder with the following command
python3 -c "import imp, os; os.chdir(imp.find_module('sniplet')[1]); os.chdir('../'); os.chdir('../'); print(os.getcwd() + '\\Scripts\\')"
-
Copy this path and add to the following command
setx PATH "%PATH%;[PathCopied]"
Configuration:
-
Run the following command to configure the text replacements
sniplet --config
-
Alternatively, you can create your own file with the following specification and save it as a txt file. An example is provided inside config-files
Short: [Shortcut name] Repl: [Replacement lines] ...
Usage:
-
To start Sniplet just invoke sniplet and mention the config file you want to use (created using --config)
-
To start Sniplet with your custom file use the following command. Replace filepath by the path to your custom file
sniplet --usrfile [FILEPATH]
-
To stop Sniplet use the keyboard interrupt in the terminal
Help
Use the following command to get more info about usage and configuration
sniplet --help
Known Issues:
- Threads crashing if ended abruptly
- Residual keyboard inputs dumped after aborting (Problem with MacOS)