#snippets #cli

bin+lib rusty-x

A snippet manager in Rust

13 releases

Uses old Rust 2015

0.1.75 Jul 2, 2019
0.1.74 Mar 1, 2019
0.1.72 Jan 30, 2019
0.1.6 Nov 8, 2018
0.1.0 Jun 12, 2018

#9 in #snippets

50 downloads per month

MIT and LGPL-3.0-or-later

587 lines

Build Status


A simple snippet manager to find your snippets with colorized terminal output.

Snippets can be setup as the following example:

# Splits                                                                                    
  * To balance splits, use Ctrl+w = 

Above we see that the first line is a number of keywords, which are delimited with an , character. The line of ======== is optional, it can be used to create a split. Then markdown is used to describe the content.


  • Warning currently only works on posix platforms. So now windows yet.
  • Uses $EDITOR env var to select your editor.


  1. To install make sure that cargo and rust are installed
  2. Install with cargo rusty-x --force, --force is needed when the binary already exists

When installed from with cargo install, the commands start with x. So that means, e.g.:

x --edit python file

To edit a snippet with the keywords python and file.


Usage: x
       x [--add=<filename>] <keywords>...
       x --new
       x [--edit] <keywords>...
       x --pull
       x --save

    -h, --help           Show this message
    --new                Add a new snippet without a given name and you need to fill in the keywords
    --add=<filename>     Add a new snippet with given filename and keywords
    -e, --edit           Edit a existing snippet
    --pull               Sync snippet repo (git pull)
    --save               Save snippet repo (git add, git commit, git push)

To list all snippets, when installed replace all cargo run with simply x:

cargo run

To find specific files according to tags:

cargo run <KEYWORDS>

To add a snippet with a keyword line, and a given filename:

cargo run --  --add=foo.md <KEYWORDS>

To add a snippet by just opening your $EDITOR at the given snippet location

cargo run -- --new

To edit a snippet with a given keywords:

cargo run -- --edit <KEYWORDS>

To sync and pull snippets from your snippet repo's:

cargo run -- --pull

To save snippets to your repositories:

cargo run -- --save

The command above aks for a commit message in case this is needed, and always tries to do a push for now.


The default snippet location is ~/.snippets/

A TOML is created as default configuration file, which can be found at: ~/.rusty-x.toml A default config is added to the config file automatically to change the location edit the toml.

Below a default toml can be found, multiple sources can added which rusty-x searches:

local = "/home/tdejager/.snippets"
ext = "md"

local = "/home/tdejager/.snippets-sjoerd"
ext = "md"


0.72: Added pprint library for printing 0.73: Sort snippets by number of tags that were matched 0.74: Removed rayon as dependency for now 0.75: Updated skim dependency


~727K SLoC