swappy(1) General Commands Manual swappy(1) NAME swappy - grab and edit on the fly snapshots of a Wayland compositor SYNOPSIS swappy [options...] DESCRIPTION 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 An image file to load for editing. If set to -, read the file from standard input instead. This is grim friendly. -o, --output-file Print the final surface to 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. 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 o 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 o 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 o show_panel is used to toggle the paint panel on or off upon startup o line_size is the default line size (must be between 1 and 50) o text_size is the default text size (must be between 10 and 50) o text_font is the font used to render text, its format is pango friendly o paint_mode is the mode activated at application start (must be one of: brush|text|rectangle|ellipse|arrow|blur, matching is case- insensitive) o early_exit is used to make the application exit after saving the picture or copying it to the clipboard o fill_shape is used to toggle shape filling (for the rectangle and ellipsis tools) on or off upon startup o auto_save is used to toggle auto saving of final buffer to save_dir upon exit o custom_color is 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) o transparency is used to set transparency of everything that is drawn during startup o transparent is used to toggle transparency during startup KEY BINDINGS LAYOUT o Ctrl+b: Toggle Paint Panel PAINT MODE o b: Switch to Brush o `e` `t`: Switch to Text (Editor) o `r` `s`: Switch to Rectangle (Square) o `c` `o`: Switch to Ellipse (Circle) o a: Switch to Arrow o d: Switch to Blur (d stands for droplet) o R: Use Red Color o G: Use Green Color o B: Use Blue Color o C: Use Custom Color o Minus: Reduce Stroke Size o Plus: Increase Stroke Size o Equal: Reset Stroke Size o f: Toggle Shape Filling o T: Toggle Transparency o `x` `k`: Clear Paints (cannot be undone) MODIFIERS o Ctrl: Center Shape (Rectangle & Ellipse) based on draw start HEADER BAR o Ctrl+z: Undo o Ctrl+Shift+z or Ctrl+y: Redo o Ctrl+s: Save to file (see man page) o Ctrl+c: Copy to clipboard o Escape or q or Ctrl+w: Quit swappy AUTHORS Written and maintained by jtheoof . See https://github.com/jtheoof/swappy. 2025-08-27 swappy(1)