swappy1
Grab and edit on the fly snapshots of a wayland compositor
Usage
swappy [options ...]
Overview
swappy is a command-line utility to take and edit screenshots of Wayland desktops. Works great with grim, slurp and sway. But can easily work with other screen copy tools that can output a final image to stdout.
swappy will save the annotated images to the config save_dir, see below.
If absent, then if it will try to default to a Desktop folder following this pattern: $XDG_DESKTOP_DIR. If this variable is not set, it will revert to: $XDG_CONFIG_HOME/Desktop. If $XDG_CONFIG_HOME is not set, it will revert to: $HOME/Desktop.
Options
-
-h, --help -
Show help message and quit.
-
-v, --version -
Show version and quit.
-
-f, --file <file> -
An image file to load for editing.
If set to
-, read the file from standard input instead. This is grim friendly.
-
-o, --output-file <file> -
Print the final surface to
<file>when exiting the application.If set to
-, prints the final surface tostdout.Note that the
Savebutton will save the image to the configsave_dirparameter, as described in the DESCRIPTION section.
Config file
The config file is located at $XDG_CONFIG_HOME/swappy/config or at $HOME/.config/swappy/config. The file follows the GLib conf format.
[Section] key=value
The following lines can be used as swappy's default:
[Default] save_dir=$HOME/Desktop save_filename_format=swappy-%Y%m%d-%H%M%S.png show_panel=false line_size=5 text_size=20 text_font=sans-serif paint_mode=brush early_exit=false fill_shape=false auto_save=false custom_color=rgba(192,125,17,1) transparent=false transparency=50
- •
-
save_diris where swappshots will be saved, can contain env variables, when it does not exist, swappy attempts to create it first, but does not abort if directory creation fails
- •
-
save_filename_formatis the filename template, if it contains a date format, this will be parsed into a timestamp. Format is detailed in strftime(3). If this date format is missing, filename will have no timestamp
- •
-
show_panelis used to toggle the paint panel on or off upon startup
- •
-
line_sizeis the default line size (must be between 1 and 50)
- •
-
text_sizeis the default text size (must be between 10 and 50)
- •
-
text_fontis the font used to render text, its format is pango friendly
- •
-
paint_modeis the mode activated at application start (must be one of: brush|text|rectangle|ellipse|arrow|blur, matching is case-insensitive)
- •
-
early_exitis used to make the application exit after saving the picture or copying it to the clipboard
- •
-
fill_shapeis used to toggle shape filling (for the rectangle and ellipsis tools) on or off upon startup
- •
-
auto_saveis used to toggle auto saving of final buffer tosave_dirupon exit
- •
-
custom_coloris used to set a default value for the custom color. Accepted formats are: standard name (one of: https://github.com/rgb-x/system/blob/master/root/etc/X11/rgb.txt), #rgb, #rrggbb, #rrrgggbbb, #rrrrggggbbbb, rgb(r,b,g), rgba(r,g,b,a)
- •
-
transparencyis used to set transparency of everything that is drawn during startup
- •
-
transparentis used to toggle transparency during startup
Key bindings
Layout
- •
-
Ctrl+b: Toggle Paint Panel
Paint mode
•
|
|
|---|---|
•
|
`e` `t`: Switch to Text (Editor) |
•
|
`r` `s`: Switch to Rectangle (Square) |
•
|
`c` `o`: Switch to Ellipse (Circle) |
•
|
|
•
|
|
•
|
R: Use Red Color |
•
|
G: Use Green Color |
•
|
B: Use Blue Color |
•
|
C: Use Custom Color |
•
|
|
•
|
|
•
|
|
•
|
|
•
|
T: Toggle Transparency |
•
|
`x` `k`: Clear Paints (cannot be undone) |
Modifiers
- •
-
Ctrl: Center Shape (Rectangle & Ellipse) based on draw start
Header bar
•
|
|
|---|---|
•
|
|
•
|
|
•
|
|
•
|
|
Releases
2 releases since Debian 13 (Trixie); the text changed 1 time.