///// vim:set ts=4 sw=4 tw=82 noet: ///// sway (5) ======== Name ---- sway - configuration file and commands Description ----------- A sway configuration file is a list of sway commands that are exected by sway on startup. These commands usually consist of setting your preferences and setting key bindings. An example config is likely present in /etc/sway/config for you to check out. All of these commands may be issued at runtime through **sway-msg**(1). Commands -------- **bindsym** :: Binds _key combo_ to execute _command_ when pressed. You may use XKB key names here (**xev**(1) is a good tool for discovering them). An example bindsym command would be _bindsym Mod1+Shift+f exec firefox_, which would execute Firefox if the alt, shift, and F keys are pressed together. Any valid sway command is eligible to be bound to a key combo. **exec** :: Executes _shell command_ with sh. **exec_always** :: Like exec, but the shell command will be executed _again_ after *reload* or *restart* is executed. **exit**:: Exit sway and end your Wayland session. **floating** toggle:: Toggles the "floating" status of the focused view. **floating_modifier** :: When the _modifier_ key is held down, you may use left click to drag floating windows, and right click to resize them. Unlike i3, this modifier may also be used to resize and move windows that are tiled. **focus** :: Direction may be one of _up_, _down_, _left_, _right_, or _parent_. The directional focus commands will move the focus in that direction. The parent focus command will change the focus to the parent of the currently focused container, which is useful, for example, to open a sibling of the parent container, or to move the entire container around. **focus** mode_toggle:: Toggles focus between floating view and tiled view. **focus_follows_mouse** :: If set to _yes_, the currently focused view will change as you move your mouse around the screen to the view that ends up underneath your mouse. **fullscreen**:: Toggles fullscreen status for the focused view. **gaps** :: Adds _amount_ pixels between each view, and around each output. **gaps** :: Adds _amount_ pixels as an _inner_ or _outer_ gap, where the former affects spacing between views and the latter affects the space around each output. **kill**:: Closes the currently focused view. **layout** :: Sets the layout mode of the focused container. _mode_ can be one of _splith_, _splitv_, or _toggle split_. **move** :: Moves the focused container _left_, _right_, _up_, or _down_. **output** :: Configures the specified output. It will use the given resolution and be arranged at the given position in the layout tree. You may omit either of these parameters if you only want to set one of them. **output** disable:: Disables the specified output. **reload**:: Reloads the sway config file without restarting sway. **resize** :: Resizes the currently focused container or view by _amount_. _amount_ can be specified as "n px" or "n ppt" or "n px or n ppt". **set** :: Creates a substitution for _value_ that can be used with $_name_ in other commands. **split** :: Splits the current container, vertically or horiziontally. **splith**:: Equivalent to **split horizontal**. **splitv**:: Equivalent to **split vertical**. **workspace** :: Switches to the specified workspace. **workspace** :: Switches to the next workspace on the current output. **workspace** output :: Specifies that the workspace named _name_ should appear on the specified _output_.