table of contents
clipman(1) | General Commands Manual | clipman(1) |
NAME¶
clipman - a clipboard manager for Wayland
SYNOPSIS¶
clipman [<options>] <command> [<args> ...]
DESCRIPTION¶
A basic clipboard manager for Wayland, with support for persisting copy buffers after an application exits.
OPTIONS¶
- -h, --help
- Show context-sensitive help (also try --help-long and --help-man).
- Path of history file
- --primary
- Serve item to the primary clipboard. Default: --no-primary
- --notify
- Send desktop notifications on errors
- --err-on-no-selection
- exit with an exit 1 when no selection is made in the picker.
- --min-char
- minimum number of characters before storing
- -v, --version
- Show application version.
COMMANDS¶
help [<command>...]¶
Show help.
store [<flags>]¶
Record clipboard events (run as argument to `wl-paste --watch`)
- --max-items=15
- history size
- -P, --no-persist
- Don't persist a copy buffer after a program exits
- --unix
- Normalize line endings to LF
pick --tool=TOOL [<flags>]¶
Pick an item from clipboard history
- --max-items=15
- scrollview length
- -t, --tool=TOOL
- Which selector to use: wofi/bemenu/CUSTOM/STDOUT
- -T, --tool-args=""
- Extra arguments to pass to the --tool
- --print0
- Separate items using NULL; recommended if your tool supports --read0 or similar
clear [<flags>]¶
Remove item/s from history
- --max-items=15
- scrollview length
- -t, --tool=TOOL
- Which selector to use: wofi/bemenu/CUSTOM/STDOUT
- -T, --tool-args=""
- Extra arguments to pass to the --tool
- -a, --all
- Remove all items
- --print0
- Separate items using NULL; recommended if your tool supports --read0 or similar
restore¶
Serve the last recorded item from history
show-history¶
Show all items from history
USAGE¶
Run the binary in your Sway session by adding to your config:
exec wl-paste -t text --watch clipman store
or to log errors:
exec wl-paste -t text --watch clipman store \
1>> PATH/TO/LOGFILE 2>&1
It is highly recommended that you run clipman with the --no-persist option, see KNOWN ISSUES.
For primary clipboard support, also add:
note that both the `-p` in wl-paste and the `-P` in clipman are mandatory in this case.
exec wl-paste -p -t text --watch clipman store -P \
--histpath="~/.local/share/clipman-primary.json"
To query the history and select items, run the binary as
You can assign it to a keybinding:
clipman pick -t wofi
You can pass additional arguments to the selector like this:
bindsym $mod+h exec clipman pick -t wofi
both `--prompt` and `-i` are flags of wofi.
clipman pick --tool wofi -T'--prompt=my-prompt -i'
You can use a custom selector like this:
To only paste if there's something selected:
clipman pick --print0 --tool=CUSTOM --tool-args= \
"fzf --prompt 'pick > ' --bind 'tab:up' --cycle --read0"
To remove items from history:
bindsym $mod+v exec "clipman pick -t wofi --err-on-no-selection \
&& wtype -M ctrl -M shift v"
To serve the last history item at startup, add this to your Sway config:
clipman clear -t wofi
clipman clear --all
exec clipman restore
BUGS¶
When you experience a clipboard-related bug, try to see if it still happens without clipman running, as it's more likely to be caused by one of our own known issues rather than wl-clipboard.
KNOWN ISSUES¶
We only support plain text.
By default, we continue serving the last copied item even after its owner has exited. This means that, unless you run with the --no-persist option, you'll always immediately lose rich content; for example: vim's visual block mode breaks; copying images in Firefox breaks; if you copy a bookmark in Firefox, you won't be able to paste it in another bookmark folder; if you copy formatted text inside Libre Office you'll lose all formatting on paste.
Run clipman store with the --no-persist option if you are affected. Unfortunately, it seems that there is no way to make them play well together.