SWAYIMGRC(5)

NAME
swayimgrc - Swayimg configuration file

SYNOPSIS
$XDG_CONFIG_HOME/swayimg/config
$HOME/.config/swayimg/config
$XDG_CONFIG_DIRS/swayimg/config
/etc/xdg/swayimg/config

DESCRIPTION

  General format description
The Swayimg configuration file is a text-based INI file used to override the default settings.

The structure of the INI file consists of key-value pairs for properties and sections that organize properties. The basic element contained in the INI file is the key or property. Every key has a name and a value, delimited by an equals sign (=). The name appears to the left of the equals sign. The value can contain any characters.

Keys are grouped into named sections. The section name appears on a line by itself, in square brackets ([ and ]). All keys after the section declaration are associated with that section.

The number sign (#) at the beginning of the line indicates a comment. Empty lines and comments are ignored.

  [general] section

scale: initial image scale:
    optimal: 100% or less to fit to window (default);
    width: fit image width to window width;
    height: fit image height to window height;
    fit: fit to window;
    fill: crop image to fill the window;
    real: real size (100%);

fullscreen: start in full screen mode, yes or [no];

antialiasing: enable/disable anti-aliasing, yes or [no];

transparency: background for transparent images:
    none: transparent;
    grid: show grid as background (default);
    XXXXXX: hexadecimal RGB color.

position: window position:
    parent: set position from parent (currently active) window (default);
    X,Y: absolute coordinates of the top left corner.

size: window size:
    parent: set size from parent (currently active) window (default);
    image: set size from the first image;
    WIDTH,HEIGHT: absolute size of the window.

background: window background:
    none: transparent (default);
    XXXXXX: hexadecimal RGB color.

slideshow: run slideshow at startup, yes or [no];

slideshow_time: slideshow image duration in seconds, default is 3;

app_id: set a constant window class/app_id. Setting this may break the window layout;

  [list] section: image list configuration

order: order of the image list:
    none: unsorted;
    alpha: sorted alphabetically (default);
    random: randomize list.

loop: looping file list mode, [yes] or no;

recursive: read directories recursively, yes or [no];

all: open all files in the same directory, [yes] or no;

  [font]: font configuration

name: font name used for printing text, default is monospace;

size: font size (in pt), default is 14;

color: color in RGB hex format, default is #cccccc;

shadow: drop shadow, none or color in RGB hex format, default is #000000;

  [info] section: text info layout

mode: startup mode, off, brief, or [full];

full.topleft: comma delimited list of content for the full mode, top left corner of the window:
    name: file name;
    path: full path;
    filesize: file size;
    format: image format;
    imagesize: image size;
    exif: EXIF data;
    frame: current/total frame index;
    index: current/total file index;
    scale: current scale in percent;
    status: status message;
    none: empty field (ignored);

full.topright: full mode, top right corner of the window;

full.bottomleft: full mode, bottom left corner of the window;

full.bottomright: full mode, bottom right corner of the window;

brief.topleft: brief mode, top right corner of the window;

brief.topright: brief mode, top right corner of the window;

brief.bottomleft: brief mode, bottom left corner of the window;

brief.bottomright: brief mode, bottom right corner of the window;

  [keys]: key bindings

The key bindings are described in the "keys" section. Each line associates a key with some action and optional parameters. The key name can be obtained with the xkbcli tool: `xkbcli interactive-wayland`. One or more key modifers (Ctrl, Alt, Shift) can be specified in the key name.

Valid action are:

none: can be used for removing built-in action;

help: show/hide help;

first_file: jump to the first file;

last_file: jump to the last file;

prev_dir: jump to previous directory;

next_dir: jump to next directory;

prev_file: jump to previous file;

next_file: jump to next file;

prev_frame: show previous frame;

next_frame: show next frame;

animation: start/stop animation;

slideshow: start/stop slideshow;

fullscreen: switch fullscreen mode;

step_left [PERCENT]: move viewport left, default is 10%;

step_right [PERCENT]: move viewport right, default is 10%;

step_up [PERCENT]: move viewport up, default is 10%;

step_down [PERCENT]: move viewport down, default is 10%;

zoom [SCALE]: zoom in/ou/fix, SCALE is one of optimal, width, height, fit, fill, real, or percent, e.g. +10;

rotate_left: rotate image anticlockwise;

rotate_right: rotate image clockwise;

flip_vertical: flip image vertically;

flip_horizontal: flip image horizontally;

reload: reset cache and reload current image;

antialiasing: switch antialiasing (bicubic interpolation);

info [MODE]: switch text info mode or set specified one (off/brief/full);

exec COMMAND: execute an external command, use % to substitute the path to the current image, %% to escape %;

exit: exit the application.

  [mouse]: mouse/touchpad configuration

Same format as in [keys].

Valid keys:

ScrollUp: mouse wheel up or touch scroll up;

ScrollDown: mouse wheel down or touch scroll down;

ScrollLeft: touch scroll left;

ScrollRight: touch scroll right;

EXAMPLES
    # comment
    [general]
    window = #112233
    [list]
    order = random
    [font]
    size = 16
    [keys]
    e = exec echo "%" > mylist.txt

SEE ALSO
swayimg(1)

BUGS
For suggestions, comments, bug reports etc. visit the project homepage (https://github.com/artemsen/swayimg).