sway(5) File Formats Manual sway(5) (NAME) sway - sway (DESCRIPTION) sway sway sway . . /etc/sway/config . '\' . : bindsym Shift+XF86AudioRaiseVolume exec \ pactl set-sink-volume @DEFAULT_SINK@ -1% command { } . { . : output eDP-1 { background ~/wallpaper.png fill resolution 1920x1080 } : output eDP-1 background ~/wallpaper.png fill output eDP-1 resolution 1920x1080 swaymsg(1) bindsym . (COMMAND CONVENTIONS) . ("..." '...') . , ; . (Criteria) , ; ( ). | . [...] <...> . (COMMANDS) . sway-input(5) sway-output(5) . (Config only commands) . bar [] (bar) sway-bar(5) . default_orientation horizontal|vertical|auto (tiled) . include paths . paths ( wordexp(3) ). . swaybg_command command . swaybg . sway-output(5) . : swaybg_command - swaynag_command swaynag . swaynag . . sway swaynag . . : swaynag_command - workspace_layout default|stacking|tabbed . xwayland enable|disable|force Xwayland X11 . enable Xwayland (lazy) Xwayland . Xwayland force enable . (Runtime only commands) . bindsym swaymsg(1) . border none|normal|csd|pixel [] . normal n . pixel n . (stacking) (tabbed) . csd (client-side- decorations) . normal . border toggle ( ). exit sway (Wayland) . floating enable|disable|toggle . focus . focus up|right|down|left . focus prev|next [sibling] . . sibling . focus child . focus parent . focus output up|right|down|left () . focus output . focus tiling . focus floating . focus mode_toggle . fullscreen [enable|disable|toggle] [global] . toggle . global . gaps inner|outer|horizontal|vertical|top|right|bottom|left all|current set|plus|minus|toggle inner () outer () all () current () . outer top right bottom left horizontal vertical . inhibit_idle focus|fullscreen|open|none|visible (idle inhibitor) . focus . fullscreen ( ) . open ( / ) . visible . none . for_window . layout default|splith|splitv|stacking|tabbed . stacking () . tabbed () stacking . layout toggle [split|all] . . split splith splitv . all . layout toggle [split|tabbed|stacking|splitv|splith] [split|tabbed|stacking|splitv|splith]... . max_render_time off| sway. sway sway . off . sway max_render_time . : 1. output max_render_time ( sway-output(5) ). 2. full- screen . 3. max_render_time 1 . 1 . max_render_time . sway-output(5) . allow_tearing yes|no (screen tearing) (immediate page flips) . . yes . no . allow_tearing . sway-output(5) . move left|right|up|down [ px] . px . . . move [absolute] position [px|ppt] [px|ppt] . . absolute . absolute . move [absolute] position center . absolute . move position cursor|mouse|pointer () . move [container|window] [to] mark (mark) . move [--no-auto-back-and-forth] [container|window] [to] workspace [number] . number . move [container|window] [to] workspace prev|next|current . move [container|window] [to] workspace prev_on_output|next_on_output . move [container|window] [to] workspace back_and_forth . move [container|window] [to] output |current . move [container|window] [to] output up|right|down|left . move [container|window] [to] scratchpad (scratchpad) . move workspace [to] output |current . move workspace to [output] |current . move workspace [to] output up|right|down|left . move workspace to [output] up|right|down|left . nop (no-op) . comment . reload sway . sway(1) . rename workspace [] to . resize shrink|grow up|right|down|left|width|height [ [px|ppt]] amount . px ppt . amount . . width height . resize set height [px|ppt] height . px ppt . height . . resize set [width] [px|ppt] width . px ppt . width . . resize set [width] [px|ppt] [height] [px|ppt] width height . px ppt . width height . . scratchpad show (scratchpad) . . shortcuts_inhibitor enable|disable . . . disable () . for_window seat . sway-input(5) . split vertical|v|horizontal|h|none|n|toggle|t . none . toggle . splith split horizontal splitv split vertical splitt split toggle sticky enable|disable|toggle <<>> (stick) . swap container with id|con_id|mark . . id con_id mark . id xwayland . . . title_format . : %title %app_id ( ) %class X11 ( xwayland ) %instance (instance) X11 ( xwayland ) %shell ( xwayland xdg_shell) %sandbox_engine (sandbox) %sandbox_app_id %sandbox_instance_id for_window . : for_window [title="."] title_format "%title (%app_id)" pango font . "%title" . (Config or runtime commands) . assign [->] [workspace] [number] criteria ( CRITERIA ) workspace . -> (U+2192) . : for_window move container to workspace assign [->] output left|right|up|down| criteria ( CRITERIA ) . -> (U+2192) . : for_window move container to output bindsym [--whole-window] [--border] [--exclude-titlebar] [--release] [--locked] [--to-code] [--input-device=] [--no-warn] [--no- repeat] [--inhibited] [Group<1-4>+] key combo sway command . XKB (wev(1) ). --release . input-device . . swaynag . --no-warn . XKB Shift Lock ( Caps Lock) Control Mod1 ( Alt) Mod2 ( Num Lock) Mod3 ( Mod3 XKB) Mod4 ( /) Mod5 ( AltGr) . Ctrl ( Control) Alt ( Alt) Super ( ) . --locked . --locked . --input-device --locked . --inhibited . . --inhibited . --locked . --no-repeat . keysym . --to-code . keysym . . button[1-9] ( BTN_LEFT BTN_RIGHT) . X11 (= = = = = = = = =). libinput debug-events . : . --whole-window --border --exclude-titlebar . . --border . --whole-window . --exclude-titlebar . --whole-window . (layer surface) . : # alt shift f bindsym Mod1+Shift+f exec firefox bindcode [--whole-window] [--border] [--exclude-titlebar] [--release] [--locked] [--input-device=] [--no-warn] [--no- repeat] [--inhibited] [Group<1-4>+] / / . bindswitch [--locked] [--no-warn] [--reload] : sway command . lid ( ) tablet ( ) keypad_slide ( ). state on off toggle. . toggle . --locked . --locked . --reload . toggle . --locked --locked . swaynag . --no-warn . : # bindswitch tablet:on busctl call --user sm.puri.OSK0 /sm/puri/OSK0 sm.puri.OSK0 SetVisible b true # bindswitch lid:toggle exec echo "Lid moved" bindgesture [--exact] [--input-device=] [--no-warn] [:][:directions] gesture sway command . hold pinch swipe . fingers () pinch swipe (directions) . +------+---------+-----------------------------------------------------+ |type | fingers | direction | +------+---------+-----------------------------------------------------+ |hold | 1 - 5 | none | +------+---------+-----------------------------------------------------+ |swipe | 3 - 5 | up, down, left, right | +------+---------+-----------------------------------------------------+ |pinch | 2 - 5 | all above + inward, outward, clockwise, | | | | counterclockwise | +------+---------+-----------------------------------------------------+ fingers . up down left right inward outward clockwise counterclockwise pinch. . input-device . swaynag . --no-warn . --exact . --exact . : . sway . bindgesture sway-bar(5). : # bindgesture swipe:right workspace prev bindgesture swipe:left workspace next # (pinch) bindgesture pinch:inward+up move up bindgesture pinch:inward+down move down bindgesture pinch:inward+left move left bindgesture pinch:inward+right move right client.background i3 . client. [ []] . . indicator child_border background . #RRGGBB #RRGGBBAA . : client.focused . client.focused_inactive . client.focused_tab_title . . focused_inactive indicator child_border . client.placeholder ( i3 ). client.unfocused . client.urgent (urgency hint). : . Xwayland . : border . background . text . indicator . . child_border . : +------------------+---------+------------+---------+-----------+--------------+ | class | border | background | text | indicator | child_border | +------------------+---------+------------+---------+-----------+--------------+ |background | n/a | #ffffff | n/a | n/a | n/a | +------------------+---------+------------+---------+-----------+--------------+ |focused | #4c7899 | #285577 | #ffffff | #2e9ef4 | #285577 | +------------------+---------+------------+---------+-----------+--------------+ |focused_inactive | #333333 | #5f676a | #ffffff | #484e50 | #5f676a | +------------------+---------+------------+---------+-----------+--------------+ |focused_tab_title | #333333 | #5f676a | #ffffff | n/a | n/a | +------------------+---------+------------+---------+-----------+--------------+ |unfocused | #333333 | #222222 | #888888 | #292d2e | #222222 | +------------------+---------+------------+---------+-----------+--------------+ |urgent | #2f343a | #900000 | #ffffff | #900000 | #900000 | +------------------+---------+------------+---------+-----------+--------------+ |placeholder | #000000 | #0c0c0c | #ffffff | #000000 | #0c0c0c | +------------------+---------+------------+---------+-----------+--------------+ default_border normal|none|pixel [] . . default_floating_border normal|none|pixel [] . . exec shell command sh . exec_always exec reload . floating_maximum_size x . -1 x -1 . 0 x 0 . floating_minimum_size x . 75 x 50 . floating_modifier [normal|inverse] modifier . modifier none . inverse . focus_follows_mouse yes|no|always yes . always . focus_on_window_activation smart|urgent|focus|none . urgent . focus . smart . urgent . focus_wrapping yes|no|force|workspace . no . yes . force . workspace yes . yes . font [pango:] . pango pango: . monospace 10 . pango pango:monospace 10 . pango font pango . pango : https://docs.gtk.org/Pango/type_func.FontDescription.from_string.html#description force_display_urgency_hint [ms] client.focused . . (timeout) . titlebar_border_thickness titlebar_padding [] (padding) . horizontal vertical ( ) . titlebar_border_thickness . vertical horizontal . for_window criteria . CRITERIA . gaps inner|outer|horizontal|vertical|top|right|bottom|left amount inner outer . . . outer top right bottom left horizontal vertical . (: workspace gaps ...). hide_edge_borders [--i3] none|vertical|horizontal|both|smart|smart_no_gaps . none . --i3 i3 . smart|smart_no_gaps smart_borders smart|no_gaps hide_edge_borders none . input sway- input(5) . * . swaymsg -t get_inputs . seat sway-input(5) . kill (). smart_borders on|no_gaps|off smart_borders on . smart_borders no_gaps . smart_gaps on|off|toggle|inverse_outer smart_gaps on . smart_gaps inverse_outer . mark --add|--replace [--toggle] (Marks) . identifier . mark identifier . --add identifier . --toggle identifier . mode . default . mode [--pango_markup] bindsym bindcode bindswitch set. --pango_markup mode pango . mouse_warping output|container|none output . container . output . no_focus . . output sway- output(5) . * . swaymsg -t get_outputs . popup_during_fullscreen smart|ignore|leave_fullscreen (dialog) . smart () . ignore . leave_fullscreen . primary_selection enabled|disabled (primary selection) . . enabled . set $ $name value . . $ ( $$name) . . show_marks yes|no show_marks yes . (_) show_marks yes . yes . opacity [set|plus|minus] () ( ) ( ) . set . tiling_drag enable|disable|toggle (drag) . enabled () floating_mod . floating_mod . toggle . tiling_drag_threshold . floating_mod tiling_drag disable . . threshold . . title_align left|center|right . right show_marks yes . unbindswitch : . unbindgesture [--exact] [--input-device=] [:][:directions] gesture fingers directions . unbindsym [--whole-window] [--border] [--exclude-titlebar] [--release] [--locked] [--to-code] [--input-device=] key combo . input-device . unbindcode [--whole-window] [--border] [--exclude-titlebar] [--release] [--locked] [--input-device=] / / . unmark [] unmark identifier . identifier . urgent enable|disable|allow|deny enable disable . allow deny . . workspace [--no-auto-back-and-forth] [number] <[num:]name> . num: . num: name . no-auto-back-and-forth workspace_auto_back_and_forth . number . name . workspace prev|next . workspace prev_on_output|next_on_output . workspace back_and_forth . workspace gaps inner|outer|horizontal|vertical|top|right|bottom|left name . . gaps . workspace output name (outputs) . . . . move workspace ( ) workspace ( ) . workspace_auto_back_and_forth yes|no yes . workspace 2 . no . (CRITERIA) : [app_id="some-application" title="[Rr]egex.*"] / ( ) . . . , ; ( ). for_window assign . ( ) . : "IRC": [con_mark="IRC"] focus "Emacs" : [title="Emacs"] kill (Regular Expressions) . (PCRE2) pcre2pattern(3) pcre2syntax(3) . "sway" "Sway" : [title="[Ss]way$"] move workspace 1 swaymsg -t get_tree . : all . app_id (app id) . . __focused__ . app_id . class . . __focused__ . class X11 XWayland . con_id IPC . __focused__ . con_mark . . floating . id X11 . . id X11 XWayland . instance (window instance) . . __focused__ . instance X11 XWayland . pid (PID) . . shell "xdg_shell" "xwayland". . __focused__ . tag (tag) . tag . tiling . title . . __focused__ . urgent . first last latest newest oldest recent . window_role (WM_WINDOW_ROLE) . . __focused__ . window_role X11 XWayland . window_type (_NET_WM_WINDOW_TYPE) . normal dialog utility toolbar splash menu dropdown_menu popup_menu tooltip notification. window_type X11 XWayland . workspace . . __focused__ . sandbox_engine (sandbox) . . __focused__ . sandbox_app_id . . __focused__ . sandbox_instance_id . . __focused__ . (SEE ALSO) sway(1) sway-input(5) sway-output(5) sway-bar(5) sway-ipc(7) pcre2pattern(3) pcre2syntax(3) 2026-06-23 sway(5)