2018-05-12 01:39:47 +00:00
|
|
|
swaymsg(1)
|
|
|
|
|
|
|
|
# NAME
|
|
|
|
|
|
|
|
swaymsg - Send messages to a running instance of sway over the IPC socket.
|
|
|
|
|
|
|
|
# SYNOPSIS
|
|
|
|
|
|
|
|
_swaymsg_ [options...] [message]
|
|
|
|
|
|
|
|
# OPTIONS
|
|
|
|
|
|
|
|
*-h, --help*
|
|
|
|
Show help message and quit.
|
|
|
|
|
2018-11-28 16:19:18 +00:00
|
|
|
*-m, --monitor*
|
|
|
|
Monitor for responses until killed instead of exiting after the first
|
|
|
|
response. This can only be used with the IPC message type _subscribe_. If
|
|
|
|
there is a malformed response or an invalid event type was requested,
|
|
|
|
swaymsg will stop monitoring and exit.
|
|
|
|
|
2019-03-08 17:43:04 +00:00
|
|
|
*-p, --pretty*
|
2019-09-09 20:43:46 +00:00
|
|
|
Use pretty output even when not using a tty.
|
2021-10-15 13:03:38 +00:00
|
|
|
Not available for all message types.
|
2019-03-08 17:43:04 +00:00
|
|
|
|
2018-05-12 01:39:47 +00:00
|
|
|
*-q, --quiet*
|
|
|
|
Sends the IPC message but does not print the response from sway.
|
|
|
|
|
|
|
|
*-r, --raw*
|
2021-10-15 12:55:31 +00:00
|
|
|
Use raw JSON output even if using a tty.
|
2018-05-12 01:39:47 +00:00
|
|
|
|
|
|
|
*-s, --socket* <path>
|
|
|
|
Use the specified socket path. Otherwise, swaymsg will ask sway where the
|
|
|
|
socket is (which is the value of $SWAYSOCK, then of $I3SOCK).
|
|
|
|
|
|
|
|
*-t, --type* <type>
|
|
|
|
Specify the type of IPC message. See below.
|
|
|
|
|
|
|
|
*-v, --version*
|
|
|
|
Print the version (of swaymsg) and quit.
|
|
|
|
|
|
|
|
# IPC MESSAGE TYPES
|
|
|
|
|
|
|
|
*<command>*
|
|
|
|
The message is a sway command (the same commands you can bind to keybindings
|
|
|
|
in your sway config file). It will be executed immediately.
|
|
|
|
|
2020-07-13 14:47:20 +00:00
|
|
|
See *sway*(5) for a list of commands.
|
|
|
|
|
2021-10-15 13:04:26 +00:00
|
|
|
_swaymsg_ can return pretty printed (standalone-default) or JSON-formatted
|
|
|
|
(*--raw*) output. For detailed documentation on the returned JSON-data of
|
|
|
|
each message type listed below, refer to *sway-ipc*(7). The JSON-format can
|
|
|
|
contain more information than the pretty print.
|
|
|
|
|
2020-07-13 14:47:20 +00:00
|
|
|
Tips:
|
|
|
|
- Command expansion is performed twice: once by swaymsg, and again by sway.
|
|
|
|
If you have quoted multi-word strings in your command, enclose the entire
|
|
|
|
command in single-quotes. For example, use
|
|
|
|
_swaymsg 'output "Foobar Display" enable'_ instead of
|
2020-09-03 17:45:31 +00:00
|
|
|
_swaymsg output "Foobar Display" enable_. Furthermore, note that comma
|
|
|
|
separated options also count as multi-word strings, because commas can be
|
|
|
|
used to execute commands on the same line.
|
2020-08-06 00:35:25 +00:00
|
|
|
- If you are providing a command that contains a leading hyphen (_-_), insert
|
2020-07-13 14:47:20 +00:00
|
|
|
two hyphens (_--_) before the command to signal to swaymsg not to parse
|
|
|
|
anything beyond that point as an option. For example, use
|
|
|
|
_swaymsg -- mark --add test_ instead of _swaymsg mark --add test_.
|
2019-08-13 02:23:29 +00:00
|
|
|
|
2018-05-12 01:39:47 +00:00
|
|
|
*get\_workspaces*
|
2021-10-15 13:03:38 +00:00
|
|
|
Gets a list of workspaces and their status.
|
2018-05-12 01:39:47 +00:00
|
|
|
|
|
|
|
*get\_inputs*
|
2021-10-15 13:03:38 +00:00
|
|
|
Gets a list of current inputs.
|
2018-05-12 01:39:47 +00:00
|
|
|
|
|
|
|
*get\_outputs*
|
2021-10-15 13:03:38 +00:00
|
|
|
Gets a list of current outputs.
|
2018-05-12 01:39:47 +00:00
|
|
|
|
|
|
|
*get\_tree*
|
|
|
|
Gets a JSON-encoded layout tree of all open windows, containers, outputs,
|
|
|
|
workspaces, and so on.
|
|
|
|
|
2018-11-04 21:49:44 +00:00
|
|
|
*get\_seats*
|
2021-10-15 13:03:38 +00:00
|
|
|
Gets a list of all seats,
|
2018-11-04 21:49:44 +00:00
|
|
|
its properties and all assigned devices.
|
|
|
|
|
2018-05-12 01:39:47 +00:00
|
|
|
*get\_marks*
|
|
|
|
Get a JSON-encoded list of marks.
|
|
|
|
|
|
|
|
*get\_bar\_config*
|
|
|
|
Get a JSON-encoded configuration for swaybar.
|
|
|
|
|
|
|
|
*get\_version*
|
2021-10-15 13:03:38 +00:00
|
|
|
Get version information for the running instance of sway.
|
2018-05-12 01:39:47 +00:00
|
|
|
|
2018-07-08 19:32:42 +00:00
|
|
|
*get\_binding\_modes*
|
|
|
|
Gets a JSON-encoded list of currently configured binding modes.
|
|
|
|
|
2020-06-13 03:32:24 +00:00
|
|
|
*get\_binding\_state*
|
|
|
|
Gets JSON-encoded info about the current binding state.
|
|
|
|
|
2018-07-08 19:34:47 +00:00
|
|
|
*get\_config*
|
2021-10-15 13:03:38 +00:00
|
|
|
Gets a copy of the current configuration. Doesn't expand includes.
|
2018-07-18 11:30:39 +00:00
|
|
|
|
|
|
|
*send\_tick*
|
|
|
|
Sends a tick event to all subscribed clients.
|
2018-11-28 16:19:18 +00:00
|
|
|
|
|
|
|
*subscribe*
|
|
|
|
Subscribe to a list of event types. The argument for this type should be
|
|
|
|
provided in the form of a valid JSON array. If any of the types are invalid
|
2019-09-11 22:28:45 +00:00
|
|
|
or if a valid JSON array is not provided, this will result in a failure.
|
2023-02-01 15:16:21 +00:00
|
|
|
For a list of valid event types and the data returned with them refer to
|
|
|
|
*sway-ipc*(7).
|
2019-02-27 18:23:10 +00:00
|
|
|
|
2019-08-04 06:02:13 +00:00
|
|
|
# RETURN CODES
|
|
|
|
|
|
|
|
*0*
|
|
|
|
Success
|
|
|
|
|
|
|
|
*1*
|
|
|
|
swaymsg errors such as invalid syntax, unable to connect to the ipc socket
|
|
|
|
or unable to parse sway's reply
|
|
|
|
|
|
|
|
*2*
|
|
|
|
Sway returned an error when processing the command (ex. invalid command,
|
|
|
|
command failed, and invalid subscription request)
|
|
|
|
|
2019-02-27 18:23:10 +00:00
|
|
|
# SEE ALSO
|
|
|
|
|
|
|
|
*sway*(5) *sway-bar*(5) *sway-input*(5) *sway-output*(5) *sway-ipc*(7)
|