swappy(1) General Commands Manual swappy(1)

swappy - grab and edit on the fly snapshots of a Wayland compositor

swappy [options...]

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.

-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 to stdout.

Note that the Save button will save the image to the config save_dir parameter, as described in the DESCRIPTION section.

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
save_dir is 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_format is 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_panel is used to toggle the paint panel on or off upon startup
line_size is the default line size (must be between 1 and 50)
text_size is the default text size (must be between 10 and 50)
text_font is the font used to render text, its format is pango friendly
paint_mode is the mode activated at application start (must be one of: brush|text|rectangle|ellipse|arrow|blur, matching is case-insensitive)
early_exit is used to make the application exit after saving the picture or copying it to the clipboard
fill_shape is used to toggle shape filling (for the rectangle and ellipsis tools) on or off upon startup

Ctrl+b: Toggle Paint Panel

b: Switch to Brush
t: Switch to Text
r: Switch to Rectangle
o: Switch to Ellipse
a: Switch to Arrow
d: Switch to Blur (d stands for droplet)
R: Use Red Color
G: Use Green Color
B: Use Blue Color
C: Use Custom Color
Minus: Reduce Stroke Size
Plus: Increase Stroke Size
Equal: Reset Stroke Size
f: Toggle Shape Filling
k: Clear Paints (cannot be undone)

Ctrl: Center Shape (Rectangle & Ellipse) based on draw start

Ctrl+z: Undo
Ctrl+Shift+z or Ctrl+y: Redo
Ctrl+s: Save to file (see man page)
Ctrl+c: Copy to clipboard
Escape or q or Ctrl+w: Quit swappy

Written and maintained by jtheoof <contact@jtheoof.me>. See https://github.com/jtheoof/swappy.

2022-11-22