diff options
Diffstat (limited to 'sway/sway.5.txt')
-rw-r--r-- | sway/sway.5.txt | 521 |
1 files changed, 0 insertions, 521 deletions
diff --git a/sway/sway.5.txt b/sway/sway.5.txt deleted file mode 100644 index 03975349..00000000 --- a/sway/sway.5.txt +++ /dev/null @@ -1,521 +0,0 @@ -///// -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 executed 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. - -Lines in the configuration file might be extended through multiple lines by -adding a '\' character at the end of line. e.g.: - - bindsym Shift+XF86AudioRaiseVolume exec pactl set-sink-volume \ - $(pactl list sinks | grep -B 1 RUNNING | sed '1q;d' | sed 's/[^0-9]\+//g') +5% - -These commands can be executed in your config file, via **swaymsg**(1), or via -the bindsym command. - -Commands --------- - -The following commands may only be used in the configuration file. - -**bar** <block of commands>:: - Append _{_ to this command, the following lines will be commands that - configure **swaybar**, and _}_ on its own line to close the block. - + - See **sway-bar**(5) for details. - -**default_orientation** <horizontal|vertical|auto>:: - Sets the default container layout for tiled containers. - -**set** <name> <value>:: - Sets variable $name to _value_. You can use the new variable in the arguments - of future commands. - -**swaybg_command** <command>:: - Executes custom bg command, default is _swaybg_. - -The following commands cannot be used directly in the configuration file. -They are expected to be used with **bindsym** or at runtime through **swaymsg**(1). - -**border** <normal|pixel> [<n>]:: - Set border style for focused window. _normal_ includes a border of thickness - _n_ and a title bar. _pixel_ is a border without title bar _n_ pixels thick. - Default is _normal_ with border thickness 2. - -**border** <none|toggle>:: - Set border style for focused window to _none_ or _toggle_ between the - available border styles: _normal_, _pixel_, _none_. - -**exit**:: - Exit sway and end your Wayland session. - -**floating** <enable|disable|toggle>:: - Make focused view floating, non-floating, or the opposite of what it is now. - -**focus** <direction>:: - Direction may be one of _up_, _down_, _left_, _right_, _next_, _prev_, - _parent_, or _child_. The directional focus commands will move the focus - in that direction. The _next_ and _prev_ directions will focus the next, - respectively previous, element in the current container. 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** output <direction|name>:: - Direction may be one of _up_, _down_, _left_, _right_. The directional focus - commands will move the focus to the output in that direction. When name is - given, the focus is changed to the output with that name. - -**focus** mode_toggle:: - Toggles focus between floating view and tiled view. - -**fullscreen**:: - Toggles fullscreen status for the focused view. - -**layout** <mode>:: - Sets the layout mode of the focused container. _mode_ can be one of _splith_, - _splitv_, _toggle split_, _stacking_, _tabbed_. - -**layout** auto <mode>:: - Sets layout to one of the auto modes, i.e. one of _left_, _right_, _top_, - or _bottom_. - -**layout** auto <next|prev>:: - Cycles between available auto layouts. - -**layout** auto [master|ncol] [inc|set] <n>:: - Modify the number of master elements, respectively slave columns, in the - focused container. <n> can be a positive or negative integer. These commands - only have an effect if the focused container uses one of the "auto" layouts. - -**layout** toggle split:: - Cycles between available split layouts. - -**move** <left|right|up|down> <[px]>:: - Moves the focused container _left_, _right_, _up_, or _down_. If the window - is floating it moves it _px_ in that direction, defaulting to 10. Tiled - containers are moved the same regardless of the _px_ argument. - -**move** <next|prev|first>:: - Moving to _prev_ or _next_ swaps the container with its sibling in the same - container. Move _first_ exchanges the focused element in an auto layout with - the first element, i.e. promotes the focused element to master position. - -**move** <container|window> to workspace <name>:: - Moves the focused container to the workspace identified by _name_. - _name_ may be a special workspace name. See **workspace**. - -**move** <container|window|workspace> to output <name|direction>:: - Moves the focused container or workspace to the output identified by _name_ or - _direction_. _direction_ may be one of _up_, _down_, _left_, _right_. - -**move** [to] scratchpad:: - Moves the focused window to the scratchpad. - -**reload**:: - Reloads the sway config file without restarting sway. - -**resize** <shrink|grow> <width|height> [<amount>] [px|ppt]:: - Resizes the currently focused container or view by _amount_. _amount_ is - optional: the default value is 10 (either px or ppt depending on the view type). - The [px|ppt] parameter is optional. _px_ specifies that _amount_ refers to pixels; - _ppt_ specifies that _amount_ refers to percentage points of the current - size. Floating views use px by default (but can use ppt if specified); tiled - views use ppt by default (but can use px if specified). - -**resize set** <width> [px] <height> [px]:: - Sets the width and height of the currently focused container to _width_ pixels - and _height_ pixels. The [px] parameters are optional and have no effect. This - command only accepts a size in pixels. - -**resize set** <width|height> <amount> [px] [<width|height> <amount> [px]]:: - Sets the _width_ and/or _height_ of the currently focused container to - _amount_. The [px] parameters are optional and have no effect. This command - only accepts a size in pixels. - -**scratchpad show**:: - Shows a window from the scratchpad. Repeatedly using this command will cycle - through the windows in the scratchpad. - -**split** <vertical|v|horizontal|h|toggle|t>:: - Splits the current container, vertically or horizontally. If toggled, then the - current container is split opposite to the parent container. - -**splith**:: - Equivalent to **split horizontal**. - -**splitv**:: - Equivalent to **split vertical**. - -**splitt**:: - Equivalent to **split toggle**. - -**sticky** <enable|disable|toggle>:: - "Sticks" a floating window to the current output so that it shows up on all - workspaces. - -The following commands may be used either in the configuration file -or triggered at runtime. - -**assign** <criteria> [→] <workspace>:: - Assigns views matching _criteria_ (see **Criteria** section below) to - _workspace_. The → (U+2192) is optional and purely for aesthetics. This - command is exactly equivalent to "for_window <criteria> move container to - workspace <workspace>". - -**bindsym** <key combo> <command>:: - 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. - + - **bindcode** <code> <command> is also available for binding with key codes - instead of key names. - -**client**.<color_class> <border> <background> <text> <indicator> <child_border>:: - The client commands control the colors of the view borders and title bars. All - client commands _require_ five color values. (The one exception is - **client.background** which _requires_ one color value.) If you only want to - specify a subset, supply default colors for all the others. Colors must be - defined in hex. i.e. _#rrggbb_ or _#rrggbbaa_, when including the alpha - channel. - + - The command tokens are: - **color_class**::: Specifies the view to which the colors apply. - **client.background**:::: The color a view will be painted, underneath the - client itself. This will only be visible if a client does not fully - cover its allocated view space. This command only requires one color. _Note_: - This is not currently implemented. - **client.focused**:::: The view that has focus. - **client.focused_inactive**:::: A view that has focus within its - container, but the container is not focused. - **client.placeholder**:::: Used when drawing placeholder view contents. - Only background and text colors are used. _Note_: This is not - currently implemented. - **client.unfocused**:::: A view that does not have focus. - **client.urgent**:::: A view with an urgency hint. _Note_: This is not - currently implemented. - **border**::: The border around the title bar. - **background**::: The background of the title bar. - **text**::: The text color of the title bar. - **indicator**::: The color used to indicate where a new view will open. In a - tiled container, this would paint the right border of the current view if - a new view would be opened to the right. - **child_border**::: The border around the view itself. - -+ -The default colors are: -+ --- -[options="header"] -|=========================================================================== -|color_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 -|unfocused |#333333 |#222222 |#888888 |#292d2e |#222222 -|urgent |#2f343a |#900000 |#ffffff |#900000 |#900000 -|placeholder |#000000 |#0c0c0c |#ffffff |#000000 |#0c0c0c -|=========================================================================== --- - -**debuglog** <on|off|toggle>:: - Enables, disables or toggles debug logging. The toggle argument cannot be used - in the configuration file. - -**default_border** <normal|none|pixel> [<n>]:: - Set default border style for new windows. This command was previously called - **new_window**. While **new_window** still works, it is considered deprecated - and support for it will be removed in the future. - -**default_floating_border** <normal|none|pixel> [<n>]:: - Set default border style for new floating windows. This only applies to - windows that are spawned in floating mode, not windows that become floating - after the fact. This command was previously called **new_float**. While - **new_float** still works, it is considered deprecated and support for it will - be removed in the future. - -**exec** <shell command>:: - Executes _shell command_ with sh. - -**exec_always** <shell command>:: - Like exec, but the shell command will be executed _again_ after *reload* or - *restart* is executed. - -**floating_maximum_size** <width> x <height>:: - Specifies the maximum size of floating windows. - Uses the container size as default. - -1 x -1 will remove any restriction on size. - 0 x 0 has the same behavior as not setting any value. - If in conflict, this option has precedence over floating_minimum_size. - -**floating_minimum_size** <width> x <height>:: - Specifies the minimum size of floating windows. - Default parameters are 75 x 50. - -1 and 0 are invalid parameters, default will be used instead. - -**floating_modifier** <modifier> [normal|inverse]:: - When the _modifier_ key is held down, you may hold left click to move floating - windows, and right click to resize them. Unlike i3, this modifier may also be - used to resize and move windows that are tiled. With the _inverse_ mode - enabled, left click is used for resizing and right click for dragging. The - mode parameter is optional and defaults to _normal_ if it isn't defined. - -**floating_scroll** <up|down|left|right> [command]:: - Sets a command to be executed when the mouse wheel is scrolled in the - specified direction while holding the floating modifier. Resets the command, - when given no arguments. - -**focus_follows_mouse** <yes|no>:: - If set to _yes_, moving your mouse over a window will focus that window. - -**font** <font>:: - Sets font for use in title bars. Generally the format is something like "Name - Style Size" e.g. "Deja Vu Sans Book 12". You can also use Pango font - descriptions with "pango:font". - -**for_window** <criteria> <command>:: - Whenever a window that matches _criteria_ appears, run list of commands. See - **Criteria** section below. - -**gaps** edge_gaps <on|off|toggle>:: - Whether or not to add gaps between views and workspace edges if amount of - inner gap is not zero. When _off_, no gap is added where the view is aligned to - the workspace edge, effectively creating gaps only between views. The toggle - argument cannot be used in the configuration file. - -**gaps** <amount>:: - Sets default _amount_ pixels as the gap between each view, and around each - workspace. - -**gaps** <inner|outer> <amount>:: - Sets default _amount_ pixels as the _inner_ or _outer_ gap, where the former - affects spacing between views and the latter affects the space around each - workspace. - -**gaps** <inner|outer> <all|workspace|current> <set|plus|minus> <amount>:: - Changes the gaps for the _inner_ or _outer_ gap. _all_ changes the gaps for - all views or workspace, _workspace_ changes gaps for all views in current - workspace (or current workspace), and _current_ changes gaps for the current - view or workspace. - -**hide_edge_borders** <none|vertical|horizontal|both|smart>:: - Hide window borders adjacent to the screen edges. Default is _none_. - -**input** <input_device> <block of commands>:: - Append _{_ to this command, the following lines will be commands to configure - the named input device, and _}_ on its own line will close the block. - + - **input * <block of commands>** may be used to match all input devices. - + - See **sway-input**(5) for details. - -**seat** <seat_name> <block of commands>:: - Append _{_ to this command, the following lines will be commands to configure - the named seat, and _}_ on its own line will close the block. - See **sway-input**(5) for details. - -**seat** <seat_name> cursor <move|set> <x> <y>:: - Move cursor relatively to current position or set to absolute screen position. - A value of 0 causes the axis to be ignored in both commands. - -**seat** <seat_name> cursor <press|release> <left|right|1|2|3...>:: - Simulate press of mouse button specified by left, right, or numerical code. - -**kill**:: - Kills (force-closes) the currently-focused container and all of its children. - -**smart_gaps** <on|off>:: - If smart_gaps are _on_ then gaps will only be enabled if a workspace has more - than one child container. - -**mark** \<--add|--replace> \<--toggle> <identifier>:: - Marks are arbitrary labels that can be used to identify certain windows and - then jump to them at a later time. By default, the **mark** command sets - _identifier_ as the only mark on a window. By specifying _--add_, mark will - add _identifier_ to the list of current marks. If _--toggle_ is specified mark - will remove _identifier_ if it is already a label. Marks may be found by using - a criteria. See the **Criteria** section below. - -**mode** <mode_name>:: - Switches to the given mode_name. The default mode is simply _default_. To - create a new mode append _{_ to this command, the following lines - will be keybindings for that mode, and _}_ on its own line to close the block. - -**mouse_warping** <output|none>:: - When _output_: place mouse at center of newly focused window when changing - output. When _none_: don't move mouse. - -**no_focus** <criteria>:: - Prevents windows matching <criteria> from being focused automatically when - they're created. This does not apply to the first window in a workspace. - -**output** <name> mode|resolution|res <WIDTHxHEIGHT>[@<RATE>[Hz]]:: - Configures the specified output to use the given mode. Modes are a combination - of width and height (in pixels) and a refresh rate that your display can be - configured to use. For a list of available modes, use swaymsg -t get_outputs. - + - Examples: - + - output HDMI-A-1 mode 1920x1080 - + - output HDMI-A-1 mode 1920x1080@60Hz - -**output** <name> position|pos <X,Y>:: - Configures the specified output to be arranged at the given position. - -**output** <name> scale <I>:: - Configures the specified output to be scaled up by the specified integer - scaling factor (usually 2 for HiDPI screens). Fractional scaling is supported. - -**output** <name> background|bg <file> <mode>:: - Sets the wallpaper for the given output to the specified file, using the given - scaling mode (one of "stretch", "fill", "fit", "center", "tile"). - -**output** <name> background|bg <color> solid_color:: - Sets the background of the given output to the specified color. _color_ should - be specified as an _#rrggbb_ (no alpha) color. - -**output** <name> transform <transform>:: - Sets the background transform to the given value. Can be one of "90", "180", - "270" for rotation; or "flipped", "flipped-90", "flipped-180", "flipped-270" - to apply a rotation and flip, or "normal" to apply no transform. - -**output** <name> disable:: - Disables the specified output. - -**NOTES FOR THE OUTPUT COMMAND**:: - You may combine output commands into one, like so: - + - output HDMI-A-1 mode 1920x1080 pos 1920,0 bg ~/wallpaper.png stretch - + - You can get a list of output names like so: - + - swaymsg -t get_outputs - + - You may also match any output by using the output name "*". Be sure to add - this output config after the others, or it will be matched instead of the - others. - -**seamless_mouse** <on|off>:: - Change output seamlessly when pointer touches edge of output. Outputs need to - be configured with perfectly aligned adjacent positions for this option to - have any effect. - -**show_marks** <on|off>:: - If **show_marks** is on then marks will be showed in the window decoration. - However, any mark that starts with an underscore will not be drawn even if the - option is on. The default option is _on_. - -**opacity** <value>:: - Set the opacity of the window between 0 (completely transparent) and 1 - (completely opaque). - -**unmark** <identifier>:: - **Unmark** will remove _identifier_ from the list of current marks on a window. If - no _identifier_ is specified, then **unmark** will remove all marks. - -**workspace** [number] <name>:: - Switches to the specified workspace. The string "number" is optional. The - workspace _name_, if unquoted, may not contain the string "output", as sway - will assume that the command is moving a workspace to an output, as described - below. - -**workspace** <prev|next>:: - Switches to the next workspace on the current output or on the next output - if currently on the last workspace. - -**workspace** <prev_on_output|next_on_output>:: - Switches to the next workspace on the current output. - -**workspace** <name> output <output>:: - Specifies that the workspace named _name_ should appear on the specified - _output_. - -**workspace_auto_back_and_forth** <yes|no>:: - When _yes_, repeating a workspace switch command will switch back to the - prior workspace. For example, if you are currently on workspace 1, - switch to workspace 2, then invoke the "workspace 2" command again, you - will be returned to workspace 1. Defaults to _no_. - -**workspace_layout** <default|stacking|tabbed|auto|auto left|auto right|auto - top|auto bottom>:: Specifies the start layout for new workspaces. - -**include** <path>:: - Includes a sub config file by _path_. _path_ can be either a full path or a - path relative to the parent config. - -Criteria --------- - -A criteria is a string in the form of e.g.: - - [class="[Rr]egex.*" title="some title"] - -The string contains one or more (space separated) attribute/value pairs. They -are used by some commands to choose which views to execute actions on. All attributes -must match for the criteria to match. - -Criteria may be used with either the **for_window** or **assign** commands to -specify operations to perform on new views. A criteria may also be used to -perform specific commands (ones that normally act upon one window) on all views -that match that criteria. For example: - -Focus on a window with the mark "IRC": - [con_mark="IRC"] focus - -Kill all windows with the title "Emacs": - [class="Emacs"] kill - -Mark all Firefox windows with "Browser": - [class="Firefox"] mark Browser - -Currently supported attributes: - -**class**:: - Compare value against the window class. Can be a regular expression. If value - is _focused_, then the window class must be the same as that of the currently - focused window. - -**con_id**:: - Compare against the internal container ID, which you can find via IPC. - -**con_mark**:: - Compare against the window marks. Can be a regular expression. - -**floating**:: - Matches against floating windows. - -**id**:: - Compare value against the app id. Can be a regular expression. - -**title**:: - Compare against the window title. Can be a regular expression. If value is - _focused_ then the window title must be the same as that of the currently - focused window. - -**tiling**:: - Matches against tiling windows. - -**workspace**:: - Compare against the workspace name for this view. Can be a regular expression. - If the value is _focused_, then all the views on the currently focused workspace - matches. - -See Also --------- - -**sway**(1) **sway-input**(5) **sway-bar**(5) |