swayfx/swaymsg/swaymsg.1.txt
Drew DeVault 60ce81e06a Add pretty printing to swaymsg
If stdout is a tty, it will pretty print unless -r (--raw) is given.

Sample outputs:

```
~/s/s/build > ./bin/swaymsg fullscreen toggle
Error: Permission denied for fullscreen toggle via IPC

~/s/s/build > ./bin/swaymsg -t get_workspaces
Workspace 3:三
  Output: DVI-I-1
  Layout: splith

Workspace 1:一 (off-screen)
  Output: HDMI-A-1
  Layout: splith

Workspace 5:五 (focused)
  Output: HDMI-A-1
  Layout: splith

~/s/s/build > ./bin/swaymsg -t get_inputs
Input device Metadot - Das Keyboard Das Keyboard
  Type: Keyboard
  Sway ID: 9456:320:Metadot_-_Das_Keyboard_Das_Keyb

Input device Wacom Intuos S 2 Pen
  Type: Tablet tool
  Sway ID: 1386:827:Wacom_Intuos_S_2

Input device Wacom Intuos S 2 Pad
  Type: Tablet pad
  Sway ID: 1386:827:Wacom_Intuos_S_2

Input device Logitech Gaming Mouse G502
  Type: Keyboard, Mouse
  Sway ID: 1133:49277:Logitech_Gaming_Mous

~/s/s/build > ./bin/swaymsg -t get_outputs
Output DVI-I-1
  Geometry: 1920x1080 @ 3840,0
  Scale factor: 1x
  Workspace: 3:三

Output DVI-D-1
  Geometry: 1920x1080 @ 0,0
  Scale factor: 1x
  Workspace: 4:四

Output HDMI-A-1
  Geometry: 1920x1080 @ 1920,0
  Scale factor: 1x
  Workspace: 5:五
```
2017-04-03 07:27:25 -04:00

79 lines
1.6 KiB
Plaintext

/////
vim:set ts=4 sw=4 tw=82 noet:
/////
:quotes.~:
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.
*-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.
*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_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.
Authors
-------
Maintained by Drew DeVault <sir@cmpwn.com>, who is assisted by other open
source contributors. For more information about sway development, see
<https://github.com/SirCmpwn/sway>.
See Also
--------
**sway**(5)