mirror of
https://github.com/sharkdp/bat.git
synced 2024-12-04 13:43:32 +01:00
1034 lines
52 KiB
Groff
1034 lines
52 KiB
Groff
|
sway(5) File Formats Manual 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 @DEFAULT_SINK@ -1%
|
|||
|
|
|||
|
Commands can also be given as a block in the form command { <subcom‐
|
|||
|
mands...> }. Anything before the opening { will be prepended to the
|
|||
|
lines inside the block. For example:
|
|||
|
|
|||
|
output eDP-1 {
|
|||
|
background ~/wallpaper.png fill
|
|||
|
resolution 1920x1080
|
|||
|
}
|
|||
|
|
|||
|
is identical to
|
|||
|
|
|||
|
output eDP-1 background ~/wallpaper.png fill
|
|||
|
output eDP-1 resolution 1920x1080
|
|||
|
|
|||
|
These commands can be executed in your config file, via swaymsg(1), or
|
|||
|
via the bindsym command.
|
|||
|
|
|||
|
COMMAND CONVENTIONS
|
|||
|
Commands are split into several arguments using spaces. You can enclose
|
|||
|
arguments with quotation marks ("..." or '...') to add spaces to a sin‐
|
|||
|
gle argument. You may also run several commands in order by separating
|
|||
|
each with , or ;. Criteria is retained across commands separated by ,,
|
|||
|
but will be reset (and allow for new criteria, if desired) for commands
|
|||
|
separated by a ;.
|
|||
|
|
|||
|
Throughout the documentation, | is used to distinguish between argu‐
|
|||
|
ments for which you may only select one. [...] is used for optional ar‐
|
|||
|
guments, and <...> for arguments where you are expected to supply some
|
|||
|
value.
|
|||
|
|
|||
|
COMMANDS
|
|||
|
This section only lists general commands. For input and output com‐
|
|||
|
mands, refer to sway-input(5) and sway-output(5).
|
|||
|
|
|||
|
The following commands may only be used in the configuration file.
|
|||
|
|
|||
|
bar [<bar-id>] <bar-subcommands...>
|
|||
|
For details on bar subcommands, see sway-bar(5).
|
|||
|
|
|||
|
default_orientation horizontal|vertical|auto
|
|||
|
Sets the default container layout for tiled containers.
|
|||
|
|
|||
|
include <path>
|
|||
|
Includes another file from path. path can be either a full path or
|
|||
|
a path relative to the parent config, and expands shell syntax (see
|
|||
|
wordexp(3) for details). The same include file can only be included
|
|||
|
once; subsequent attempts will be ignored.
|
|||
|
|
|||
|
swaybg_command <command>
|
|||
|
Executes custom background command. Default is swaybg. Refer to
|
|||
|
sway-output(5) for more information.
|
|||
|
|
|||
|
It can be disabled by setting the command to a single dash:
|
|||
|
swaybg_command -
|
|||
|
|
|||
|
swaynag_command <command>
|
|||
|
Executes custom command for swaynag. Default is swaynag. Additional
|
|||
|
arguments may be appended to the end. This should only be used to
|
|||
|
either direct sway to call swaynag from a custom path or to provide
|
|||
|
additional arguments. This should be placed at the top of the con‐
|
|||
|
fig for the best results.
|
|||
|
|
|||
|
It can be disabled by setting the command to a single dash: sway‐
|
|||
|
nag_command -
|
|||
|
|
|||
|
workspace_layout default|stacking|tabbed
|
|||
|
Specifies the initial layout for new containers in an empty
|
|||
|
workspace.
|
|||
|
|
|||
|
xwayland enable|disable|force
|
|||
|
Enables or disables Xwayland support, which allows X11 applications
|
|||
|
to be used. enable will lazily load Xwayland so Xwayland will not
|
|||
|
be launched until the first client attempts to connect. In some
|
|||
|
cases, such as slower machines, it may be desirable to have Xway‐
|
|||
|
land started immediately by using force instead of enable.
|
|||
|
|
|||
|
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 none|normal|csd|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. csd is
|
|||
|
short for client-side-decorations, which allows the client to draw
|
|||
|
its own decorations.
|
|||
|
|
|||
|
border toggle
|
|||
|
Cycles through the available border styles.
|
|||
|
|
|||
|
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.
|
|||
|
|
|||
|
<criteria> focus
|
|||
|
Moves focus to the container that matches the specified criteria.
|
|||
|
|
|||
|
focus up|right|down|left
|
|||
|
Moves focus to the next container in the specified direction.
|
|||
|
|
|||
|
focus prev|next [sibling]
|
|||
|
Moves focus to the previous or next container in the current lay‐
|
|||
|
out. By default, the last active child of the newly focused con‐
|
|||
|
tainer will be focused. The sibling option indicates not to immedi‐
|
|||
|
ately focus a child of the container.
|
|||
|
|
|||
|
focus child
|
|||
|
Moves focus to the last-focused child of the focused container.
|
|||
|
|
|||
|
focus parent
|
|||
|
Moves focus to the parent of the focused container.
|
|||
|
|
|||
|
focus output up|right|down|left
|
|||
|
Moves focus to the next output in the specified direction.
|
|||
|
|
|||
|
focus output <name>
|
|||
|
Moves focus to the named output.
|
|||
|
|
|||
|
focus tiling
|
|||
|
Sets focus to the last focused tiling container.
|
|||
|
|
|||
|
focus floating
|
|||
|
Sets focus to the last focused floating container.
|
|||
|
|
|||
|
focus mode_toggle
|
|||
|
Moves focus between the floating and tiled layers.
|
|||
|
|
|||
|
fullscreen [enable|disable|toggle] [global]
|
|||
|
Makes focused view fullscreen, non-fullscreen, or the opposite of
|
|||
|
what it is now. If no argument is given, it does the same as tog‐
|
|||
|
gle. If global is specified, the view will be fullscreen across all
|
|||
|
outputs.
|
|||
|
|
|||
|
gaps inner|outer|horizontal|vertical|top|right|bottom|left all|current
|
|||
|
set|plus|minus|toggle <amount>
|
|||
|
Changes the inner or outer gaps for either all workspaces or the
|
|||
|
current workspace. outer gaps can be altered per side with top,
|
|||
|
right, bottom, and left or per direction with horizontal and verti‐
|
|||
|
cal.
|
|||
|
|
|||
|
inhibit_idle focus|fullscreen|open|none|visible
|
|||
|
Set/unset an idle inhibitor for the view. focus will inhibit idle
|
|||
|
when the view is focused by any seat. fullscreen will inhibit idle
|
|||
|
when the view is fullscreen (or a descendant of a fullscreen con‐
|
|||
|
tainer) and is visible. open will inhibit idle until the view is
|
|||
|
closed (or the inhibitor is unset/changed). visible will inhibit
|
|||
|
idle when the view is visible on any output. none will remove any
|
|||
|
existing idle inhibitor for the view.
|
|||
|
|
|||
|
This can also be used with criteria to set an idle inhibitor for
|
|||
|
any existing view or with for_window to set idle inhibitors for fu‐
|
|||
|
ture views.
|
|||
|
|
|||
|
layout default|splith|splitv|stacking|tabbed
|
|||
|
Sets the layout mode of the focused container.
|
|||
|
|
|||
|
When using the stacking layout, only the focused window in the con‐
|
|||
|
tainer is displayed, with the opened windows' list on the top of
|
|||
|
the container.
|
|||
|
|
|||
|
The tabbed layout is similar to stacking, but the windows’ list is
|
|||
|
vertically split.
|
|||
|
|
|||
|
layout toggle [split|all]
|
|||
|
Cycles the layout mode of the focused container though a preset
|
|||
|
list of layouts. If no argument is given, then it cycles through
|
|||
|
stacking, tabbed and the last split layout. If split is given, then
|
|||
|
it cycles through splith and splitv. If all is given, then it cy‐
|
|||
|
cles through every layout.
|
|||
|
|
|||
|
layout toggle [split|tabbed|stacking|splitv|splith]
|
|||
|
[split|tabbed|stacking|splitv|splith]...
|
|||
|
Cycles the layout mode of the focused container through a list of
|
|||
|
layouts.
|
|||
|
|
|||
|
max_render_time off|<msec>
|
|||
|
Controls when the relevant application is told to render this win‐
|
|||
|
dow, as a positive number of milliseconds before the next time sway
|
|||
|
composites the output. A smaller number leads to fresher rendered
|
|||
|
frames being composited by sway and lower perceived input latency,
|
|||
|
but if set too low, the application may not finish rendering before
|
|||
|
sway composites the output, leading to delayed frames.
|
|||
|
|
|||
|
When set to off, the relevant application is told to render this
|
|||
|
window immediately after display refresh. How much time is left for
|
|||
|
rendering before sway composites the output at that point depends
|
|||
|
on the output max_render_time setting.
|
|||
|
|
|||
|
To set this up for optimal latency:
|
|||
|
1. Set up output max_render_time (see sway-output(5)).
|
|||
|
2. Put the target application in full-screen and have it continu‐
|
|||
|
ously render something.
|
|||
|
3. Start by setting max_render_time 1. If the application drops
|
|||
|
frames, increment by 1.
|
|||
|
|
|||
|
This setting only has an effect if a per-output max_render_time is
|
|||
|
in effect on the output the window is currently on. See sway-out‐
|
|||
|
put(5) for further details.
|
|||
|
|
|||
|
move left|right|up|down [<px> px]
|
|||
|
Moves the focused container in the direction specified. The op‐
|
|||
|
tional px argument specifies how many pixels to move the container.
|
|||
|
If unspecified, the default is 10 pixels. Pixels are ignored when
|
|||
|
moving tiled containers.
|
|||
|
|
|||
|
move [absolute] position <pos_x> [px|ppt] <pos_y> [px|ppt]
|
|||
|
Moves the focused container to the specified position in the
|
|||
|
workspace. The position can be specified in pixels or percentage
|
|||
|
points, omitting the unit defaults to pixels. If absolute is used,
|
|||
|
the position is relative to all outputs. absolute can not be used
|
|||
|
with percentage points.
|
|||
|
|
|||
|
move [absolute] position center
|
|||
|
Moves the focused container to be centered on the workspace. If ab‐
|
|||
|
solute is used, it is moved to the center of all outputs.
|
|||
|
|
|||
|
move position cursor|mouse|pointer
|
|||
|
Moves the focused container to be centered on the cursor.
|
|||
|
|
|||
|
move [container|window] [to] mark <mark>
|
|||
|
Moves the focused container to the specified mark.
|
|||
|
|
|||
|
move [--no-auto-back-and-forth] [container|window] [to] workspace [num‐
|
|||
|
ber] <name>
|
|||
|
Moves the focused container to the specified workspace. The string
|
|||
|
number is optional and is used to match a workspace with the same
|
|||
|
number, even if it has a different name.
|
|||
|
|
|||
|
move [container|window] [to] workspace prev|next|current
|
|||
|
Moves the focused container to the previous, next or current
|
|||
|
workspace on this output, or if no workspaces remain, the previous
|
|||
|
or next output.
|
|||
|
|
|||
|
move [container|window] [to] workspace prev_on_output|next_on_output
|
|||
|
Moves the focused container to the previous or next workspace on
|
|||
|
this output, wrapping around if already at the first or last
|
|||
|
workspace.
|
|||
|
|
|||
|
move [container|window] [to] workspace back_and_forth
|
|||
|
Moves the focused container to previously focused workspace.
|
|||
|
|
|||
|
move [container|window] [to] output <name-or-id>|current
|
|||
|
Moves the focused container to the specified output.
|
|||
|
|
|||
|
move [container|window] [to] output up|right|down|left
|
|||
|
Moves the focused container to next output in the specified direc‐
|
|||
|
tion.
|
|||
|
|
|||
|
move [container|window] [to] scratchpad
|
|||
|
Moves the focused container to the scratchpad.
|
|||
|
|
|||
|
move workspace [to] output <name-or-id>|current
|
|||
|
Moves the focused workspace to the specified output.
|
|||
|
|
|||
|
move workspace to [output] <name-or-id>|current
|
|||
|
Moves the focused workspace to the specified output.
|
|||
|
|
|||
|
move workspace [to] output up|right|down|left
|
|||
|
Moves the focused workspace to next output in the specified direc‐
|
|||
|
tion.
|
|||
|
|
|||
|
move workspace to [output] up|right|down|left
|
|||
|
Moves the focused workspace to next output in the specified direc‐
|
|||
|
tion.
|
|||
|
|
|||
|
nop <comment>
|
|||
|
A no operation command that can be used to override default behav‐
|
|||
|
iour. The optional comment argument is ignored, but logged for de‐
|
|||
|
bugging purposes.
|
|||
|
|
|||
|
reload
|
|||
|
Reloads the sway config file and applies any changes. The config
|
|||
|
file is located at path specified by the command line arguments
|
|||
|
when started, otherwise according to the priority stated in
|
|||
|
sway(1).
|
|||
|
|
|||
|
rename workspace [<old_name>] to <new_name>
|
|||
|
Rename either <old_name> or the focused workspace to the <new_name>
|
|||
|
|
|||
|
resize shrink|grow width|height [<amount> [px|ppt]]
|
|||
|
Resizes the currently focused container by amount, specified in
|
|||
|
pixels or percentage points. If the units are omitted, floating
|
|||
|
containers are resized in px and tiled containers by ppt. amount
|
|||
|
will default to 10 if omitted.
|
|||
|
|
|||
|
resize set height <height> [px|ppt]
|
|||
|
Sets the height of the container to height, specified in pixels or
|
|||
|
percentage points. If the units are omitted, floating containers
|
|||
|
are resized in px and tiled containers by ppt. If height is 0, the
|
|||
|
container will not be resized.
|
|||
|
|
|||
|
resize set [width] <width> [px|ppt]
|
|||
|
Sets the width of the container to width, specified in pixels or
|
|||
|
percentage points. If the units are omitted, floating containers
|
|||
|
are resized in px and tiled containers by ppt. If width is 0, the
|
|||
|
container will not be resized.
|
|||
|
|
|||
|
resize set [width] <width> [px|ppt] [height] <height> [px|ppt]
|
|||
|
Sets the width and height of the container to width and height,
|
|||
|
specified in pixels or percentage points. If the units are omitted,
|
|||
|
floating containers are resized in px and tiled containers by ppt.
|
|||
|
If width or height is 0, the container will not be resized on that
|
|||
|
axis.
|
|||
|
|
|||
|
scratchpad show
|
|||
|
Shows a window from the scratchpad. Repeatedly using this command
|
|||
|
will cycle through the windows in the scratchpad.
|
|||
|
|
|||
|
shortcuts_inhibitor enable|disable
|
|||
|
Enables or disables the ability of clients to inhibit keyboard
|
|||
|
shortcuts for a view. This is primarily useful for virtualization
|
|||
|
and remote desktop software. It affects either the currently fo‐
|
|||
|
cused view or a set of views selected by criteria. Subcommand dis‐
|
|||
|
able additionally deactivates any active inhibitors for the given
|
|||
|
view(s). Criteria are particularly useful with the for_window com‐
|
|||
|
mand to configure a class of views differently from the per-seat
|
|||
|
defaults established by the seat subcommand of the same name. See
|
|||
|
sway-input(5) for more ways to affect inhibitors.
|
|||
|
|
|||
|
split vertical|v|horizontal|h|none|n|toggle|t
|
|||
|
Splits the current container, vertically or horizontally. When none
|
|||
|
is specified, the effect of a previous split is undone if the cur‐
|
|||
|
rent container is the only child of a split parent. When toggle is
|
|||
|
specified, the current container is split opposite to the parent
|
|||
|
container's layout.
|
|||
|
|
|||
|
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.
|
|||
|
|
|||
|
swap container with id|con_id|mark <arg>
|
|||
|
Swaps the position, geometry, and fullscreen status of two contain‐
|
|||
|
ers. The first container can be selected either by criteria or fo‐
|
|||
|
cus. The second container can be selected by id, con_id, or mark.
|
|||
|
id can only be used with xwayland views. If the first container has
|
|||
|
focus, it will retain focus unless it is moved to a different
|
|||
|
workspace or the second container becomes fullscreen on the same
|
|||
|
workspace as the first container. In either of those cases, the
|
|||
|
second container will gain focus.
|
|||
|
|
|||
|
title_format <format>
|
|||
|
Sets the format of window titles. The following placeholders may be
|
|||
|
used:
|
|||
|
|
|||
|
%title - The title supplied by the window
|
|||
|
%app_id - The wayland app ID (applicable to wayland
|
|||
|
windows only)
|
|||
|
%class - The X11 classname (applicable to xwayland
|
|||
|
windows only)
|
|||
|
%instance - The X11 instance (applicable to xwayland
|
|||
|
windows only)
|
|||
|
%shell - The protocol the window is using (typically
|
|||
|
xwayland or
|
|||
|
xdg_shell)
|
|||
|
|
|||
|
This command is typically used with for_window criteria. For exam‐
|
|||
|
ple:
|
|||
|
|
|||
|
for_window [title="."] title_format "<b>%title</b> (%app_id)"
|
|||
|
|
|||
|
Note that markup requires pango to be enabled via the font command.
|
|||
|
|
|||
|
The default format is "%title".
|
|||
|
|
|||
|
The following commands may be used either in the configuration file or
|
|||
|
at runtime.
|
|||
|
|
|||
|
assign <criteria> [→] [workspace] [number] <workspace>
|
|||
|
Assigns views matching criteria (see CRITERIA for details) to
|
|||
|
workspace. The → (U+2192) is optional and cosmetic. This command is
|
|||
|
equivalent to:
|
|||
|
|
|||
|
for_window <criteria> move container to workspace <workspace>
|
|||
|
|
|||
|
assign <criteria> [→] output left|right|up|down|<name>
|
|||
|
Assigns views matching criteria (see CRITERIA for details) to the
|
|||
|
specified output. The → (U+2192) is optional and cosmetic. This
|
|||
|
command is equivalent to:
|
|||
|
|
|||
|
for_window <criteria> move container to output <output>
|
|||
|
|
|||
|
bindsym [--whole-window] [--border] [--exclude-titlebar] [--release]
|
|||
|
[--locked] [--to-code] [--input-device=<device>] [--no-warn] [--no-re‐
|
|||
|
peat] [Group<1-4>+]<key combo> <command>
|
|||
|
Binds key combo to execute the sway command command when pressed.
|
|||
|
You may use XKB key names here (wev(1) is a good tool for discover‐
|
|||
|
ing these). With the flag --release, the command is executed when
|
|||
|
the key combo is released. If input-device is given, the binding
|
|||
|
will only be executed for that input device and will be executed
|
|||
|
instead of any binding that is generic to all devices. If a group
|
|||
|
number is given, then the binding will only be available for that
|
|||
|
group. By default, if you overwrite a binding, swaynag will give
|
|||
|
you a warning. To silence this, use the --no-warn flag.
|
|||
|
|
|||
|
Unless the flag --locked is set, the command will not be run when a
|
|||
|
screen locking program is active. If there is a matching binding
|
|||
|
with and without --locked, the one with will be preferred when
|
|||
|
locked and the one without will be preferred when unlocked. If
|
|||
|
there are matching bindings and one has both --input-device and
|
|||
|
--locked and the other has neither, the former will be preferred
|
|||
|
even when unlocked.
|
|||
|
|
|||
|
Unless the flag --inhibited is set, the command will not be run
|
|||
|
when a keyboard shortcuts inhibitor is active for the currently fo‐
|
|||
|
cused window. Such inhibitors are usually requested by remote desk‐
|
|||
|
top and virtualization software to enable the user to send keyboard
|
|||
|
shortcuts to the remote or virtual session. The --inhibited flag
|
|||
|
allows one to define bindings which will be exempt from pass-
|
|||
|
through to such software. The same preference logic as for --locked
|
|||
|
applies.
|
|||
|
|
|||
|
Unless the flag --no-repeat is set, the command will be run repeat‐
|
|||
|
edly when the key is held, according to the repeat settings speci‐
|
|||
|
fied in the input configuration.
|
|||
|
|
|||
|
Bindings to keysyms are layout-dependent. This can be changed with
|
|||
|
the --to-code flag. In this case, the keysyms will be translated
|
|||
|
into the corresponding keycodes in the first configured layout.
|
|||
|
|
|||
|
Mouse bindings operate on the container under the cursor instead of
|
|||
|
the container that has focus. Mouse buttons can either be specified
|
|||
|
in the form button[1-9] or by using the name of the event code (ex
|
|||
|
BTN_LEFT or BTN_RIGHT). For the former option, the buttons will be
|
|||
|
mapped to their values in X11 (1=left, 2=middle, 3=right, 4=scroll
|
|||
|
up, 5=scroll down, 6=scroll left, 7=scroll right, 8=back, 9=for‐
|
|||
|
ward). For the latter option, you can find the event names using
|
|||
|
libinput debug-events.
|
|||
|
|
|||
|
The priority for matching bindings is as follows: input device,
|
|||
|
group, and locked state.
|
|||
|
|
|||
|
--whole-window, --border, and --exclude-titlebar are mouse-only op‐
|
|||
|
tions which affect the region in which the mouse bindings can be
|
|||
|
triggered. By default, mouse bindings are only triggered when over
|
|||
|
the title bar. With the --border option, the border of the window
|
|||
|
will be included in this region. With the --whole-window option,
|
|||
|
the cursor can be anywhere over a window including the title, bor‐
|
|||
|
der, and content. --exclude-titlebar can be used in conjunction
|
|||
|
with any other option to specify that the titlebar should be ex‐
|
|||
|
cluded from the region of consideration.
|
|||
|
|
|||
|
If --whole-window is given, the command can be triggered when the
|
|||
|
cursor is over an empty workspace. Using a mouse binding over a
|
|||
|
layer surface's exclusive region is not currently possible.
|
|||
|
|
|||
|
Example:
|
|||
|
# Execute firefox when alt, shift, and f are pressed together
|
|||
|
bindsym Mod1+Shift+f exec firefox
|
|||
|
|
|||
|
bindcode [--whole-window] [--border] [--exclude-titlebar] [--re‐
|
|||
|
lease] [--locked] [--input-device=<device>] [--no-warn]
|
|||
|
[Group<1-4>+]<code> <command> is also available for binding with
|
|||
|
key/button codes instead of key/button names.
|
|||
|
|
|||
|
bindswitch [--locked] [--no-warn] [--reload] <switch>:<state> <command>
|
|||
|
Binds <switch> to execute the sway command command on state
|
|||
|
changes. Supported switches are lid (laptop lid) and tablet (tablet
|
|||
|
mode) switches. Valid values for state are on, off and toggle.
|
|||
|
These switches are on when the device lid is shut and when tablet
|
|||
|
mode is active respectively. toggle is also supported to run a com‐
|
|||
|
mand both when the switch is toggled on or off.
|
|||
|
|
|||
|
Unless the flag --locked is set, the command will not be run when a
|
|||
|
screen locking program is active. If there is a matching binding
|
|||
|
with and without --locked, the one with will be preferred when
|
|||
|
locked and the one without will be preferred when unlocked.
|
|||
|
|
|||
|
If the --reload flag is given, the binding will also be executed
|
|||
|
when the config is reloaded. toggle bindings will not be executed
|
|||
|
on reload. The --locked flag will operate as normal so if the con‐
|
|||
|
fig is reloaded while locked and --locked is not given, the binding
|
|||
|
will not be executed.
|
|||
|
|
|||
|
By default, if you overwrite a binding, swaynag will give you a
|
|||
|
warning. To silence this, use the --no-warn flag.
|
|||
|
|
|||
|
Example:
|
|||
|
# Show the virtual keyboard when tablet mode is entered.
|
|||
|
bindswitch tablet:on busctl call --user sm.puri.OSK0 /sm/puri/OSK0 sm.puri.OSK0 SetVisible b true
|
|||
|
|
|||
|
# Log a message when the laptop lid is opened or closed.
|
|||
|
bindswitch lid:toggle exec echo "Lid moved"
|
|||
|
|
|||
|
bindgesture [--exact] [--input-device=<device>] [--no-warn] <ges‐
|
|||
|
ture>[:<fingers>][:directions] <command>
|
|||
|
Binds gesture to execute the sway command command when detected.
|
|||
|
Currently supports the hold, pinch or swipe gesture. Optionally can
|
|||
|
be limited to bind to a certain number of fingers or, for a pinch
|
|||
|
or swipe gesture, to certain directions.
|
|||
|
|
|||
|
┌──────┬─────────┬─────────────────────────────────────────────────────┐
|
|||
|
│type │ fingers │ direction │
|
|||
|
├──────┼─────────┼─────────────────────────────────────────────────────┤
|
|||
|
│hold │ 1 - 5 │ none │
|
|||
|
├──────┼─────────┼─────────────────────────────────────────────────────┤
|
|||
|
│swipe │ 3 - 5 │ up, down, left, right │
|
|||
|
├──────┼─────────┼─────────────────────────────────────────────────────┤
|
|||
|
│pinch │ 2 - 5 │ all above + inward, outward, clockwise, counter‐ │
|
|||
|
│ │ │ clockwise │
|
|||
|
└──────┴─────────┴─────────────────────────────────────────────────────┘
|
|||
|
The fingers can be limited to any sensible number or left empty to
|
|||
|
accept any finger counts. Valid directions are up, down, left and
|
|||
|
right, as well as inward, outward, clockwise, counterclockwise for
|
|||
|
the pinch gesture. Multiple directions can be combined by a plus.
|
|||
|
|
|||
|
If a input-device is given, the binding will only be executed for
|
|||
|
that input device and will be executed instead of any binding that
|
|||
|
is generic to all devices. By default, if you overwrite a binding,
|
|||
|
swaynag will give you a warning. To silence this, use the --no-warn
|
|||
|
flag.
|
|||
|
|
|||
|
The --exact flag can be used to ensure a binding only matches when
|
|||
|
exactly all specified directions are matched and nothing more. If
|
|||
|
there is matching binding with --exact, it will be preferred.
|
|||
|
|
|||
|
The priority for matching bindings is as follows: input device,
|
|||
|
then exact matches followed by matches with the highest number of
|
|||
|
matching directions.
|
|||
|
|
|||
|
Gestures executed while the pointer is above a bar are not handled
|
|||
|
by sway. See the respective documentation, e.g. bindgesture in
|
|||
|
sway-bar(5).
|
|||
|
|
|||
|
Example:
|
|||
|
# Allow switching between workspaces with left and right swipes
|
|||
|
bindgesture swipe:right workspace prev
|
|||
|
bindgesture swipe:left workspace next
|
|||
|
|
|||
|
# Allow container movements by pinching them
|
|||
|
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 <color>
|
|||
|
This command is ignored and is only present for i3 compatibility.
|
|||
|
|
|||
|
client.<class> <border> <background> <text> [<indicator> [<child_bor‐
|
|||
|
der>]]
|
|||
|
Configures the color of window borders and title bars. The first
|
|||
|
three colors are required. When omitted indicator will use a sane
|
|||
|
default and child_border will use the color set for background.
|
|||
|
Colors may be specified in hex, either as #RRGGBB or #RRGGBBAA.
|
|||
|
|
|||
|
The available classes are:
|
|||
|
|
|||
|
client.focused
|
|||
|
The window that has focus.
|
|||
|
|
|||
|
client.focused_inactive
|
|||
|
The most recently focused view within a container which is not
|
|||
|
focused.
|
|||
|
|
|||
|
client.focused_tab_title
|
|||
|
A view that has focused descendant container. Tab or stack con‐
|
|||
|
tainer title that is the parent of the focused container but is
|
|||
|
not directly focused. Defaults to focused_inactive if not spec‐
|
|||
|
ified and does not use the indicator and child_border colors.
|
|||
|
|
|||
|
client.placeholder
|
|||
|
Ignored (present for i3 compatibility).
|
|||
|
|
|||
|
client.unfocused
|
|||
|
A view that does not have focus.
|
|||
|
|
|||
|
client.urgent
|
|||
|
A view with an urgency hint. Note: Native Wayland windows do
|
|||
|
not support urgency. Urgency only works for Xwayland windows.
|
|||
|
|
|||
|
The meaning of each color is:
|
|||
|
|
|||
|
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 cur‐
|
|||
|
rent view if a new view would be opened to the right.
|
|||
|
|
|||
|
child_border
|
|||
|
The border around the view itself.
|
|||
|
|
|||
|
The default colors are:
|
|||
|
|
|||
|
┌──────────────┬─────────┬────────────┬─────────┬───────────┬────────────┐
|
|||
|
│ class │ border │ background │ text │ indicator │ child_bor‐ │
|
|||
|
│ │ │ │ │ │ der │
|
|||
|
├──────────────┼─────────┼────────────┼─────────┼───────────┼────────────┤
|
|||
|
│background │ n/a │ #ffffff │ n/a │ n/a │ n/a │
|
|||
|
├──────────────┼─────────┼────────────┼─────────┼───────────┼────────────┤
|
|||
|
│focused │ #4c7899 │ #285577 │ #ffffff │ #2e9ef4 │ #285577 │
|
|||
|
├──────────────┼─────────┼────────────┼─────────┼───────────┼────────────┤
|
|||
|
│focused_in‐ │ #333333 │ #5f676a │ #ffffff │ #484e50 │ #5f676a │
|
|||
|
│active │ │ │ │ │ │
|
|||
|
├──────────────┼─────────┼────────────┼─────────┼───────────┼────────────┤
|
|||
|
│fo‐ │ #333333 │ #5f676a │ #ffffff │ n/a │ n/a │
|
|||
|
│cused_tab_ti‐ │ │ │ │ │ │
|
|||
|
│tle │ │ │ │ │ │
|
|||
|
├──────────────┼─────────┼────────────┼─────────┼───────────┼────────────┤
|
|||
|
│unfocused │ #333333 │ #222222 │ #888888 │ #292d2e │ #222222 │
|
|||
|
├──────────────┼─────────┼────────────┼─────────┼───────────┼────────────┤
|
|||
|
│urgent │ #2f343a │ #900000 │ #ffffff │ #900000 │ #900000 │
|
|||
|
├──────────────┼─────────┼────────────┼─────────┼───────────┼────────────┤
|
|||
|
│placeholder │ #000000 │ #0c0c0c │ #ffffff │ #000000 │ #0c0c0c │
|
|||
|
└──────────────┴─────────┴────────────┴─────────┴───────────┴────────────┘
|
|||
|
|
|||
|
default_border normal|none|pixel [<n>]
|
|||
|
Set default border style for new tiled windows.
|
|||
|
|
|||
|
default_floating_border normal|none|pixel [<n>]
|
|||
|
Set default border style for new floating windows. This only ap‐
|
|||
|
plies to windows that are spawned in floating mode, not windows
|
|||
|
that become floating afterwards.
|
|||
|
|
|||
|
exec <shell command>
|
|||
|
Executes shell command with sh.
|
|||
|
|
|||
|
exec_always <shell command>
|
|||
|
Like exec, but the shell command will be executed again after
|
|||
|
reload.
|
|||
|
|
|||
|
floating_maximum_size <width> x <height>
|
|||
|
Specifies the maximum size of floating windows. -1 x -1 removes the
|
|||
|
upper limit. The default is 0 x 0, which will use the width and
|
|||
|
height of the entire output layout as the maximums
|
|||
|
|
|||
|
floating_minimum_size <width> x <height>
|
|||
|
Specifies the minimum size of floating windows. The default is 75 x
|
|||
|
50.
|
|||
|
|
|||
|
floating_modifier <modifier> [normal|inverse]
|
|||
|
When the modifier key is held down, you may hold left click to move
|
|||
|
windows, and right click to resize them. Setting modifier to none
|
|||
|
disables this feature. If inverse is specified, left click is used
|
|||
|
for resizing and right click for moving.
|
|||
|
|
|||
|
focus_follows_mouse yes|no|always
|
|||
|
If set to yes, moving your mouse over a window will focus that win‐
|
|||
|
dow. If set to always, the window under the cursor will always be
|
|||
|
focused, even after switching between workspaces.
|
|||
|
|
|||
|
focus_on_window_activation smart|urgent|focus|none
|
|||
|
This option determines what to do when a client requests window ac‐
|
|||
|
tivation. If set to urgent, the urgent state will be set for that
|
|||
|
window. If set to focus, the window will become focused. If set to
|
|||
|
smart, the window will become focused only if it is already visi‐
|
|||
|
ble, otherwise the urgent state will be set. Default is urgent.
|
|||
|
|
|||
|
focus_wrapping yes|no|force|workspace
|
|||
|
This option determines what to do when attempting to focus over the
|
|||
|
edge of a container. If set to no, the focused container will re‐
|
|||
|
tain focus, if there are no other containers in the direction. If
|
|||
|
set to yes, focus will be wrapped to the opposite edge of the con‐
|
|||
|
tainer, if there are no other containers in the direction. If set
|
|||
|
to force, focus will be wrapped to the opposite edge of the con‐
|
|||
|
tainer, even if there are other containers in the direction. If set
|
|||
|
to workspace, focus will wrap like in the yes case and additionally
|
|||
|
wrap when moving outside of workspaces boundaries. Default is yes.
|
|||
|
|
|||
|
font [pango:]<font>
|
|||
|
Sets font to use for the title bars. To enable support for pango
|
|||
|
markup, preface the font name with pango:. For example, monospace
|
|||
|
10 is the default font. To enable support for pango markup,
|
|||
|
pango:monospace 10 should be used instead. Regardless of whether
|
|||
|
pango markup is enabled, font should be specified as a pango font
|
|||
|
description. For more information on pango font descriptions, see
|
|||
|
https://docs.gtk.org/Pango/type_func.FontDescrip‐
|
|||
|
tion.from_string.html#description
|
|||
|
|
|||
|
force_display_urgency_hint <timeout> [ms]
|
|||
|
If an application on another workspace sets an urgency hint,
|
|||
|
switching to this workspace may lead to immediate focus of the ap‐
|
|||
|
plication, which also means the window decoration color would be
|
|||
|
immediately reset to client.focused. This may make it unnecessarily
|
|||
|
hard to tell which window originally raised the event. This option
|
|||
|
allows one to set a timeout in ms to delay the urgency hint reset.
|
|||
|
|
|||
|
titlebar_border_thickness <thickness>
|
|||
|
Thickness of the titlebar border in pixels
|
|||
|
|
|||
|
titlebar_padding <horizontal> [<vertical>]
|
|||
|
Padding of the text in the titlebar. horizontal value affects hori‐
|
|||
|
zontal padding of the text while vertical value affects vertical
|
|||
|
padding (space above and below text). Padding includes titlebar
|
|||
|
borders so their value should be greater than titlebar_bor‐
|
|||
|
der_thickness. If vertical value is not specified it is set to the
|
|||
|
horizontal value.
|
|||
|
|
|||
|
for_window <criteria> <command>
|
|||
|
Whenever a window that matches criteria appears, run list of com‐
|
|||
|
mands. See CRITERIA for more details.
|
|||
|
|
|||
|
gaps inner|outer|horizontal|vertical|top|right|bottom|left <amount>
|
|||
|
Sets default amount pixels of inner or outer gap, where the inner
|
|||
|
affects spacing around each view and outer affects the spacing
|
|||
|
around each workspace. Outer gaps are in addition to inner gaps. To
|
|||
|
reduce or remove outer gaps, outer gaps can be set to a negative
|
|||
|
value. outer gaps can also be specified per side with top, right,
|
|||
|
bottom, and left or per direction with horizontal and vertical.
|
|||
|
|
|||
|
This affects new workspaces only, and is used when the workspace
|
|||
|
doesn't have its own gaps settings (see: workspace <ws> gaps ...).
|
|||
|
|
|||
|
hide_edge_borders [--i3] none|vertical|horizon‐
|
|||
|
tal|both|smart|smart_no_gaps
|
|||
|
Hides window borders adjacent to the screen edges. Default is none.
|
|||
|
The --i3 option enables i3-compatible behavior to hide the title
|
|||
|
bar on tabbed and stacked containers with one child. The
|
|||
|
smart|smart_no_gaps options are equivalent to setting smart_borders
|
|||
|
smart|no_gaps and hide_edge_borders none.
|
|||
|
|
|||
|
input <input_device> <input-subcommands...>
|
|||
|
For details on input subcommands, see sway-input(5).
|
|||
|
|
|||
|
* may be used in lieu of a specific device name to configure all
|
|||
|
input devices. A list of input device names may be obtained via
|
|||
|
swaymsg -t get_inputs.
|
|||
|
|
|||
|
seat <seat> <seat-subcommands...>
|
|||
|
For details on seat subcommands, see sway-input(5).
|
|||
|
|
|||
|
kill
|
|||
|
Kills (closes) the currently focused container and all of its chil‐
|
|||
|
dren.
|
|||
|
|
|||
|
smart_borders on|no_gaps|off
|
|||
|
If smart_borders are on, borders will only be enabled if the
|
|||
|
workspace has more than one visible child. If smart_borders is set
|
|||
|
to no_gaps, borders will only be enabled if the workspace has more
|
|||
|
than one visible child and gaps equal to zero.
|
|||
|
|
|||
|
smart_gaps on|off|toggle|inverse_outer
|
|||
|
If smart_gaps are on gaps will only be enabled if a workspace has
|
|||
|
more than one child. If smart_gaps are inverse_outer outer gaps
|
|||
|
will only be enabled if a workspace has exactly one child.
|
|||
|
|
|||
|
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. Each identifier can
|
|||
|
only be set on a single window at a time since they act as a unique
|
|||
|
identifier. By default, mark sets identifier as the only mark on a
|
|||
|
window. --add will instead add identifier to the list of current
|
|||
|
marks for that window. If --toggle is specified mark will remove
|
|||
|
identifier if it is already marked.
|
|||
|
|
|||
|
mode <mode>
|
|||
|
Switches to the specified mode. The default mode is default.
|
|||
|
|
|||
|
mode [--pango_markup] <mode> <mode-subcommands...>
|
|||
|
The only valid mode-subcommands... are bindsym, bindcode,
|
|||
|
bindswitch, and set. If --pango_markup is given, then mode will be
|
|||
|
interpreted as pango markup.
|
|||
|
|
|||
|
mouse_warping output|container|none
|
|||
|
If output is specified, the mouse will be moved to new outputs as
|
|||
|
you move focus between them. If container is specified, the mouse
|
|||
|
will be moved to the middle of the container on switch. Default is
|
|||
|
output.
|
|||
|
|
|||
|
no_focus <criteria>
|
|||
|
Prevents windows matching <criteria> from being focused automati‐
|
|||
|
cally when they're created. This has no effect on the first window
|
|||
|
in a workspace.
|
|||
|
|
|||
|
output <output_name> <output-subcommands...>
|
|||
|
For details on output subcommands, see sway-output(5).
|
|||
|
|
|||
|
* may be used in lieu of a specific output name to configure all
|
|||
|
outputs. A list of output names may be obtained via swaymsg -t
|
|||
|
get_outputs.
|
|||
|
|
|||
|
popup_during_fullscreen smart|ignore|leave_fullscreen
|
|||
|
Determines what to do when a fullscreen view opens a dialog. If
|
|||
|
smart (the default), the dialog will be displayed. If ignore, the
|
|||
|
dialog will not be rendered. If leave_fullscreen, the view will
|
|||
|
exit fullscreen mode and the dialog will be rendered.
|
|||
|
|
|||
|
set $<name> <value>
|
|||
|
Sets variable $name to value. You can use the new variable in the
|
|||
|
arguments of future commands. When the variable is used, it can be
|
|||
|
escaped with an additional $ (ie $$name) to have the replacement
|
|||
|
happen at run time instead of when reading the config. However, it
|
|||
|
does not always make sense for the variable to be replaced at run
|
|||
|
time since some arguments do need to be known at config time.
|
|||
|
|
|||
|
show_marks yes|no
|
|||
|
If show_marks is yes, marks will be displayed in the window bor‐
|
|||
|
ders. Any mark that starts with an underscore will not be drawn
|
|||
|
even if show_marks is yes. The default is yes.
|
|||
|
|
|||
|
opacity [set|plus|minus] <value>
|
|||
|
Adjusts the opacity of the window between 0 (completely transpar‐
|
|||
|
ent) and 1 (completely opaque). If the operation is omitted, set
|
|||
|
will be used.
|
|||
|
|
|||
|
tiling_drag enable|disable|toggle
|
|||
|
Sets whether or not tiling containers can be dragged with the
|
|||
|
mouse. If enabled (default), the floating_mod can be used to drag
|
|||
|
tiling, as well as floating, containers. Using the left mouse but‐
|
|||
|
ton on title bars without the floating_mod will also allow the con‐
|
|||
|
tainer to be dragged. toggle should not be used in the config file.
|
|||
|
|
|||
|
tiling_drag_threshold <threshold>
|
|||
|
Sets the threshold that must be exceeded for a container to be
|
|||
|
dragged by its titlebar. This has no effect if floating_mod is used
|
|||
|
or if tiling_drag is set to disable. Once the threshold has been
|
|||
|
exceeded once, the drag starts and the cursor can come back inside
|
|||
|
the threshold without stopping the drag. threshold is multiplied
|
|||
|
by the scale of the output that the cursor on. The default is 9.
|
|||
|
|
|||
|
title_align left|center|right
|
|||
|
Sets the title alignment. If right is selected and show_marks is
|
|||
|
set to yes, the marks will be shown on the left side instead of the
|
|||
|
right side.
|
|||
|
|
|||
|
unbindswitch <switch>:<state>
|
|||
|
Removes a binding for when <switch> changes to <state>.
|
|||
|
|
|||
|
unbindgesture [--exact] [--input-device=<device>] <gesture>[:<fin‐
|
|||
|
gers>][:directions]
|
|||
|
Removes a binding for the specified gesture, fingers and directions
|
|||
|
combination.
|
|||
|
|
|||
|
unbindsym [--whole-window] [--border] [--exclude-titlebar] [--release]
|
|||
|
[--locked] [--to-code] [--input-device=<device>] <key combo>
|
|||
|
Removes the binding for key combo that was previously bound with
|
|||
|
the given flags. If input-device is given, only the binding for
|
|||
|
that input device will be unbound.
|
|||
|
|
|||
|
unbindcode [--whole-window] [--border] [--exclude-titlebar] [--re‐
|
|||
|
lease] [--locked] [--input-device=<device>] <code> is also avail‐
|
|||
|
able for unbinding with key/button codes instead of key/button
|
|||
|
names.
|
|||
|
|
|||
|
unmark [<identifier>]
|
|||
|
unmark will remove identifier from the list of current marks on a
|
|||
|
window. If identifier is omitted, all marks are removed.
|
|||
|
|
|||
|
urgent enable|disable|allow|deny
|
|||
|
Using enable or disable manually sets or unsets the window's urgent
|
|||
|
state. Using allow or deny controls the window's ability to set it‐
|
|||
|
self as urgent. By default, windows are allowed to set their own
|
|||
|
urgency.
|
|||
|
|
|||
|
workspace [--no-auto-back-and-forth] [number] <[num:]name>
|
|||
|
Switches to the specified workspace. The num: portion of the name
|
|||
|
is optional and will be used for ordering. If num: is not given and
|
|||
|
name is a number, then it will be also be used for ordering.
|
|||
|
|
|||
|
If the no-auto-back-and-forth option is given, then this command
|
|||
|
will not perform a back-and-forth operation when the workspace is
|
|||
|
already focused and workspace_auto_back_and_forth is enabled.
|
|||
|
|
|||
|
If the number keyword is specified and a workspace with the number
|
|||
|
already exists, then the workspace with the number will be used. If
|
|||
|
a workspace with the number does not exist, a new workspace will be
|
|||
|
created with the name name.
|
|||
|
|
|||
|
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 back_and_forth
|
|||
|
Switches to the previously focused workspace.
|
|||
|
|
|||
|
workspace <name> gaps inner|outer|horizontal|vertical|top|right|bot‐
|
|||
|
tom|left <amount>
|
|||
|
Specifies that workspace name should have the given gaps settings
|
|||
|
when it is created.
|
|||
|
|
|||
|
This command does not affect existing workspaces. To alter the gaps
|
|||
|
of an existing workspace, use the gaps command.
|
|||
|
|
|||
|
workspace <name> output <outputs...>
|
|||
|
Specifies that workspace name should be shown on the specified out‐
|
|||
|
puts. Multiple outputs can be listed and the first available will
|
|||
|
be used. If the workspace gets placed on an output further down the
|
|||
|
list and an output that is higher on the list becomes available,
|
|||
|
the workspace will be moved to the higher priority output.
|
|||
|
|
|||
|
This command does not affect existing workspaces. To move an exist‐
|
|||
|
ing workspace, use the move command in combination with the
|
|||
|
workspace criteria (non-empty workspaces only) or workspace command
|
|||
|
(to switch to the workspace before moving).
|
|||
|
|
|||
|
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. Default is no.
|
|||
|
|
|||
|
CRITERIA
|
|||
|
A criteria is a string in the form of, for example:
|
|||
|
|
|||
|
[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. Crite‐
|
|||
|
ria is retained across commands separated by a ,, but will be reset
|
|||
|
(and allow for new criteria, if desired) for commands separated by a ;.
|
|||
|
|
|||
|
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
|
|||
|
|
|||
|
You may like to use swaymsg -t get_tree for finding the values of these
|
|||
|
properties in practice for your applications.
|
|||
|
|
|||
|
The following attributes may be matched with:
|
|||
|
|
|||
|
app_id
|
|||
|
Compare value against the app id. Can be a regular expression. If
|
|||
|
value is __focused__, then the app id must be the same as that of
|
|||
|
the currently focused window. app_id are specific to Wayland appli‐
|
|||
|
cations.
|
|||
|
|
|||
|
class
|
|||
|
Compare value against the window class. Can be a regular expres‐
|
|||
|
sion. If value is __focused__, then the window class must be the
|
|||
|
same as that of the currently focused window. class are specific to
|
|||
|
X11 applications and require XWayland.
|
|||
|
|
|||
|
con_id
|
|||
|
Compare against the internal container ID, which you can find via
|
|||
|
IPC. If value is __focused__, then the id must be the same as that
|
|||
|
of the currently focused window.
|
|||
|
|
|||
|
con_mark
|
|||
|
Compare against the window marks. Can be a regular expression.
|
|||
|
|
|||
|
floating
|
|||
|
Matches floating windows.
|
|||
|
|
|||
|
id
|
|||
|
Compare value against the X11 window ID. Must be numeric. id is
|
|||
|
specific to X11 applications and requires XWayland.
|
|||
|
|
|||
|
instance
|
|||
|
Compare value against the window instance. Can be a regular expres‐
|
|||
|
sion. If value is __focused__, then the window instance must be the
|
|||
|
same as that of the currently focused window. instance is specific
|
|||
|
to X11 applications and requires XWayland.
|
|||
|
|
|||
|
pid
|
|||
|
Compare value against the window's process ID. Must be numeric.
|
|||
|
|
|||
|
shell
|
|||
|
Compare value against the window shell, such as "xdg_shell" or
|
|||
|
"xwayland". Can be a regular expression. If value is __focused__,
|
|||
|
then the shell must be the same as that of the currently focused
|
|||
|
window.
|
|||
|
|
|||
|
tiling
|
|||
|
Matches tiling windows.
|
|||
|
|
|||
|
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.
|
|||
|
|
|||
|
urgent
|
|||
|
Compares the urgent state of the window. Can be first, last, lat‐
|
|||
|
est, newest, oldest or recent.
|
|||
|
|
|||
|
window_role
|
|||
|
Compare against the window role (WM_WINDOW_ROLE). Can be a regular
|
|||
|
expression. If value is __focused__, then the window role must be
|
|||
|
the same as that of the currently focused window. window_role is
|
|||
|
specific to X11 applications and requires XWayland.
|
|||
|
|
|||
|
window_type
|
|||
|
Compare against the window type (_NET_WM_WINDOW_TYPE). Possible
|
|||
|
values are normal, dialog, utility, toolbar, splash, menu, drop‐
|
|||
|
down_menu, popup_menu, tooltip and notification. window_type is
|
|||
|
specific to X11 applications and requires XWayland.
|
|||
|
|
|||
|
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-output(5) sway-bar(5) sway-ipc(7)
|
|||
|
|
|||
|
2022-12-25 sway(5)
|