mirror of
https://github.com/NotAShelf/stash.git
synced 2026-04-13 06:23:47 +00:00
docs: clean up readme; add badges
Signed-off-by: NotAShelf <raf@notashelf.dev> Change-Id: I6a6a6964d59a918b24564e02f065d9efc758df39
This commit is contained in:
parent
df8e58ed75
commit
ea721a6eb2
1 changed files with 69 additions and 14 deletions
81
README.md
81
README.md
|
|
@ -1,21 +1,56 @@
|
||||||
# Stash
|
<!-- markdownlint-disable MD033 -->
|
||||||
|
|
||||||
Wayland clipboard "manager" with fast persistent history and multi-media
|
<h1 id="header" align="center">
|
||||||
support. Stores and previews clipboard entries (text, images) on the command
|
<pre>Stash</pre>
|
||||||
line.
|
</h1>
|
||||||
|
|
||||||
|
<div align="center">
|
||||||
|
<a alt="CI" href="https://github.com/NotAShelf/stash/actions">
|
||||||
|
<img
|
||||||
|
src="https://github.com/NotAShelf/stash/actions/workflows/rust.yml/badge.svg"
|
||||||
|
alt="Build Status"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<a alt="Dopendencies" href="https://deps.rs/repo/github/notashelf/stash">
|
||||||
|
<img
|
||||||
|
src="https://deps.rs/repo/github/notashelf/stash/status.svg"
|
||||||
|
alt="Dependency Status"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div align="center">
|
||||||
|
Wayland clipboard "manager" with fast persistent history and multi-media
|
||||||
|
support. Stores and previews clipboard entries (text, images) on the command
|
||||||
|
line.
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div align="center">
|
||||||
|
<br/>
|
||||||
|
<a href="#features">Features</a><br/>
|
||||||
|
<a href="#installation">Installation</a> | <a href="#usage">Usage</a><br/>
|
||||||
|
<a href="#tips--tricks">Tips and Tricks</a>
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
|
||||||
## Features
|
## Features
|
||||||
|
|
||||||
- Stores clipboard entries with automatic MIME detection
|
Stash is a feature-rich, yet simple clipboard management utility with many
|
||||||
|
features such as but not limited to:
|
||||||
|
|
||||||
|
- Automatic MIME detection for stored entries
|
||||||
- Fast persistent storage using SQLite
|
- Fast persistent storage using SQLite
|
||||||
- List, search, decode, delete, and wipe clipboard history
|
- List, search, decode, delete, and wipe clipboard history with ease
|
||||||
- Backwards compatible with Cliphist TSV format
|
- Backwards compatible with Cliphist TSV format
|
||||||
- Import clipboard history from TSV (e.g., from `cliphist list`)
|
- Import clipboard history from TSV (e.g., from `cliphist list`)
|
||||||
- Image preview (shows dimensions and format)
|
- Image preview (shows dimensions and format)
|
||||||
- Deduplication and entry limit control
|
- Deduplication and entry limit control
|
||||||
- Text previews with customizable width
|
- Text previews with customizable width
|
||||||
|
- Automatic clipboard monitoring with `stash watch`
|
||||||
- Sensitive clipboard filtering via regex (see below)
|
- Sensitive clipboard filtering via regex (see below)
|
||||||
|
|
||||||
|
See [usage section](#usage) for more details.
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
### With Nix
|
### With Nix
|
||||||
|
|
@ -64,8 +99,10 @@ releases are made when a version gets tagged, and are available under
|
||||||
[GitHub Releases]. To install Stash on your system without Nix, eiter:
|
[GitHub Releases]. To install Stash on your system without Nix, eiter:
|
||||||
|
|
||||||
- Download a tagged release from [GitHub Releases] for your platform and place
|
- Download a tagged release from [GitHub Releases] for your platform and place
|
||||||
the binary in your `$PATH`.
|
the binary in your `$PATH`. Instructions may differ based on your
|
||||||
- Build from source with Rust:
|
distribution, but generally you want to download the built binary from
|
||||||
|
releases and put it somewhere like `/usr/bin`.
|
||||||
|
- Build and install from source with Cargo:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
cargo install --git https://github.com/notashelf/stash
|
cargo install --git https://github.com/notashelf/stash
|
||||||
|
|
@ -126,7 +163,10 @@ stash watch
|
||||||
```
|
```
|
||||||
|
|
||||||
This runs a daemon that monitors the clipboard and stores new entries
|
This runs a daemon that monitors the clipboard and stores new entries
|
||||||
automatically.
|
automatically. This is designed as an alternative to shelling out to
|
||||||
|
`wl-paste --watch` inside a Systemd service or XDG autostart. You may find a
|
||||||
|
premade Systemd service in `vendor/`. Packagers are encouraged to vendor the
|
||||||
|
service unless adding their own.
|
||||||
|
|
||||||
### Options
|
### Options
|
||||||
|
|
||||||
|
|
@ -226,7 +266,22 @@ cliphist --import < stash.tsv
|
||||||
|
|
||||||
### More Tricks
|
### More Tricks
|
||||||
|
|
||||||
- Use `stash list` to export your clipboard history in TSV format. This displays
|
Here are some other tips for Stash that are worth documenting. If you have
|
||||||
your clipboard in the same format as `cliphist list`
|
figured out something new, e.g. a neat shell trick, feel free to add it here!
|
||||||
- Use `stash import --type tsv` to import TSV clipboard history from Cliphist or
|
|
||||||
other tools.
|
1. You may use `stash list` to view your clipboard history in an interactive
|
||||||
|
TUI. This is obvious if you have ever ran the command, but here are some
|
||||||
|
things that you might not have known.
|
||||||
|
- `stash list` displays the TUI _only_ if the user is in an interactive TTY.
|
||||||
|
E.g. if it's a Bash script, `stash list` **will output TSV**.
|
||||||
|
- You can change the format with `--format` to e.g. JSON but you can also
|
||||||
|
force a TSV format inside an interactive session with `--format tsv`.
|
||||||
|
- `stash list` displays the mime type for newly recorded entries, but it will
|
||||||
|
not be able to display them for entries imported by Cliphist since Cliphist
|
||||||
|
never made a record of this data.
|
||||||
|
2. You can pipe `cliphist list --db ~/.cache/cliphist/db` to
|
||||||
|
`stash import --type tsv` to mimic importing from STDIN.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cliphist list --db ~/.cache/cliphist/db | stash import
|
||||||
|
```
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue