diff options
author | Peter Grayson <pete@jpgrayson.net> | 2019-03-08 12:43:04 -0500 |
---|---|---|
committer | Brian Ashworth <bosrsf04@gmail.com> | 2019-03-08 14:29:39 -0500 |
commit | b7fe5097e949b9bfde6fd52f26d2599068833563 (patch) | |
tree | 37459687d2f8a639bc0439c98fdb00bf87d61ad8 /swaymsg | |
parent | 7f700e08ac8ac95c395b54c86b40d2fc79242310 (diff) |
Add -p/--pretty option to swaymsg
This new option forces pretty (non-raw/non-JSON) output. By default, when
not using a tty, swaymsg outputs using the "raw" format. This makes it
impossible to, for example, pipe the pretty output to a pager such as
`less` since piping does not use a tty.
The new -p/--pretty option gives the user explicit control over the output
format while retaining the default tty-dependent behavior.
Signed-off-by: Peter Grayson <pete@jpgrayson.net>
Diffstat (limited to 'swaymsg')
-rw-r--r-- | swaymsg/main.c | 7 | ||||
-rw-r--r-- | swaymsg/swaymsg.1.scd | 3 |
2 files changed, 9 insertions, 1 deletions
diff --git a/swaymsg/main.c b/swaymsg/main.c index e51c00d9..a0ef7e3d 100644 --- a/swaymsg/main.c +++ b/swaymsg/main.c @@ -326,6 +326,7 @@ int main(int argc, char **argv) { static struct option long_options[] = { {"help", no_argument, NULL, 'h'}, {"monitor", no_argument, NULL, 'm'}, + {"pretty", no_argument, NULL, 'p'}, {"quiet", no_argument, NULL, 'q'}, {"raw", no_argument, NULL, 'r'}, {"socket", required_argument, NULL, 's'}, @@ -339,6 +340,7 @@ int main(int argc, char **argv) { "\n" " -h, --help Show help message and quit.\n" " -m, --monitor Monitor until killed (-t SUBSCRIBE only)\n" + " -p, --pretty Use pretty output even when not using a tty\n" " -q, --quiet Be quiet.\n" " -r, --raw Use raw output even if using a tty\n" " -s, --socket <socket> Use the specified socket.\n" @@ -350,7 +352,7 @@ int main(int argc, char **argv) { int c; while (1) { int option_index = 0; - c = getopt_long(argc, argv, "hmqrs:t:v", long_options, &option_index); + c = getopt_long(argc, argv, "hmpqrs:t:v", long_options, &option_index); if (c == -1) { break; } @@ -358,6 +360,9 @@ int main(int argc, char **argv) { case 'm': // Monitor monitor = true; break; + case 'p': // Pretty + raw = false; + break; case 'q': // Quiet quiet = true; break; diff --git a/swaymsg/swaymsg.1.scd b/swaymsg/swaymsg.1.scd index 523db6cc..1bcf956a 100644 --- a/swaymsg/swaymsg.1.scd +++ b/swaymsg/swaymsg.1.scd @@ -19,6 +19,9 @@ _swaymsg_ [options...] [message] there is a malformed response or an invalid event type was requested, swaymsg will stop monitoring and exit. +*-p, --pretty* + Use raw output even when not using a tty. + *-q, --quiet* Sends the IPC message but does not print the response from sway. |