mirror of
https://github.com/NickHu/sway
synced 2024-12-27 21:58:11 +01:00
bf9a52bab0
In `i3 4.16`, `i3-msg` can be used with the message type `subscribe` and has the ability to monitor for responses until killed. This adds support for both to swaymsg. If the JSON array of event types is malformed or contains an invalid event, sway will send a response with `success` set to `false`. If swaymsg sees this, it will not display the failure and exit. If the `subscribe` event is successful, swaymsg will wait for the first response and display that instead of the success message. If `-m/--monitor` is given, swaymsg will continue monitor for responses until killed or a malformed response is received. For the `subscribe` event, the responses will always be printed as JSON. If `-r/--raw` is given, the JSON will not be pretty printed, which may be preferred when monitoring due to there being multiple responses. Example: `swaymsg -t SUBSCRIBE -m "['window']"`
84 lines
2.1 KiB
Markdown
84 lines
2.1 KiB
Markdown
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.
|
|
|
|
*-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.
|
|
|
|
*-q, --quiet*
|
|
Sends the IPC message but does not print the response from sway.
|
|
|
|
*-r, --raw*
|
|
Use raw output even if using a tty.
|
|
|
|
*-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.
|
|
|
|
See **sway**(5) for a list of commands.
|
|
|
|
*get\_workspaces*
|
|
Gets a JSON-encoded list of workspaces and their status.
|
|
|
|
*get\_inputs*
|
|
Gets a JSON-encoded list of current inputs.
|
|
|
|
*get\_outputs*
|
|
Gets a JSON-encoded list of current outputs.
|
|
|
|
*get\_tree*
|
|
Gets a JSON-encoded layout tree of all open windows, containers, outputs,
|
|
workspaces, and so on.
|
|
|
|
*get\_seats*
|
|
Gets a JSON-encoded list of all seats,
|
|
its properties and all assigned devices.
|
|
|
|
*get\_marks*
|
|
Get a JSON-encoded list of marks.
|
|
|
|
*get\_bar\_config*
|
|
Get a JSON-encoded configuration for swaybar.
|
|
|
|
*get\_version*
|
|
Get JSON-encoded version information for the running instance of sway.
|
|
|
|
*get\_binding\_modes*
|
|
Gets a JSON-encoded list of currently configured binding modes.
|
|
|
|
*get\_config*
|
|
Gets a JSON-encoded copy of the current configuration.
|
|
|
|
*send\_tick*
|
|
Sends a tick event to all subscribed clients.
|
|
|
|
*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
|
|
or if an valid JSON array is not provided, this will result in an failure.
|