aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt5
-rw-r--r--completions/zsh/CMakeLists.txt4
-rw-r--r--completions/zsh/_sway28
-rw-r--r--completions/zsh/_swaygrab28
-rw-r--r--completions/zsh/_swaymsg26
5 files changed, 90 insertions, 1 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 587c3dac..c63a88c7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -45,6 +45,7 @@ option(enable-swaygrab "Enables the swaygrab utility" YES)
45option(enable-swaymsg "Enables the swaymsg utility" YES) 45option(enable-swaymsg "Enables the swaymsg utility" YES)
46option(enable-gdk-pixbuf "Use Pixbuf to support more image formats" YES) 46option(enable-gdk-pixbuf "Use Pixbuf to support more image formats" YES)
47option(enable-binding-event "Enables binding event subscription" YES) 47option(enable-binding-event "Enables binding event subscription" YES)
48option(zsh-completions "Zsh shell completions" YES)
48option(default-wallpaper "Installs the default wallpaper" YES) 49option(default-wallpaper "Installs the default wallpaper" YES)
49 50
50find_package(JsonC REQUIRED) 51find_package(JsonC REQUIRED)
@@ -117,7 +118,9 @@ if(enable-swaylock)
117 message(WARNING "Not building swaylock - cairo, pango, and PAM are required.") 118 message(WARNING "Not building swaylock - cairo, pango, and PAM are required.")
118 endif() 119 endif()
119endif() 120endif()
120 121if(zsh-completions)
122 add_subdirectory(completions/zsh)
123endif()
121install( 124install(
122 FILES ${CMAKE_CURRENT_SOURCE_DIR}/sway.desktop 125 FILES ${CMAKE_CURRENT_SOURCE_DIR}/sway.desktop
123 DESTINATION share/wayland-sessions 126 DESTINATION share/wayland-sessions
diff --git a/completions/zsh/CMakeLists.txt b/completions/zsh/CMakeLists.txt
new file mode 100644
index 00000000..561636f2
--- /dev/null
+++ b/completions/zsh/CMakeLists.txt
@@ -0,0 +1,4 @@
1install(
2 FILES _sway _swaymsg _swaygrab
3 DESTINATION share/zsh/site-functions/
4)
diff --git a/completions/zsh/_sway b/completions/zsh/_sway
new file mode 100644
index 00000000..a9b1a14f
--- /dev/null
+++ b/completions/zsh/_sway
@@ -0,0 +1,28 @@
1#compdef sway
2#------------
3# Description
4# -----------
5#
6# Completion script for the sway window manager (http://swaywm.org)
7#
8# ---------------------------------------------
9# Author
10# -------
11#
12# * Seth Barberee <seth.barberee@gmail.com>
13#
14# -------------------------------
15
16_sway() {
17 local -a options
18 options=('--version:shows version'
19 '--help:shows help message'
20 '--config:Specify a config file different than $HOME/.config/sway/config'
21 '--validate:Check validity of the config file, then exit'
22 '--debug:Enables full logging, including debug information'
23 '--verbose:Enables more verbose logging'
24 '--get-socketpath:Gets the IPC socket path and prints it, then exits'
25 )
26 _describe 'values' options
27 }
28_sway "$@"
diff --git a/completions/zsh/_swaygrab b/completions/zsh/_swaygrab
new file mode 100644
index 00000000..64d9d2c8
--- /dev/null
+++ b/completions/zsh/_swaygrab
@@ -0,0 +1,28 @@
1#compdef swaygrab
2#-----------------
3# Description
4# -----------
5#
6# Completion script for swaygrab in the sway wm (http://swaywm.org)
7#
8# -----------------------------------------------------
9# Author
10# ------
11#
12# * Seth Barberee <seth.barberee@gmail.com>
13#
14# ------------------------------------------
15
16_swaygrab() {
17 local -a options
18 options=('--version:shows version'
19 '--help:shows help message'
20 '--capture:Captures multiple frames as video as passes into ffmpeg until SIGTERM (ctrl+c) is sent to swaygrab'
21 '--output:Use the specified output. If no output is defined, the currently focused output in sway is used'
22 '--socket:Use the specified socket path. Otherwise, swayuses $SWAYSOCK then $I3SOCK'
23 '--rate:Specify a framerate (in fps). Used in combination with -c. Default is 30 and must be an integer'
24 '--raw:Instead of ImageMagick or ffmpeg, dump raw rgba data to stdout'
25 )
26 _describe 'values' options
27 }
28_swaygrab "$@"
diff --git a/completions/zsh/_swaymsg b/completions/zsh/_swaymsg
new file mode 100644
index 00000000..5d9277c4
--- /dev/null
+++ b/completions/zsh/_swaymsg
@@ -0,0 +1,26 @@
1#compdef swaymsg
2#-----------------
3# Description
4# -----------
5#
6# Completion script for swaymsg in sway wm (http://swaywm.org)
7#
8# ------------------------------------------------------
9# Author
10# --------
11#
12# * Seth Barberee <seth.barberee@gmail.com>
13#
14# -------------------------------------------
15
16_swaymsg() {
17 local -a options
18 options=('--version:shows version'
19 '--help:shows help message'
20 '--quiet:sends the IPC message but does not print the response from sway'
21 '--socket:Use the specified socket path. Otherwise, swaymsg uses $SWAYSOCK then $I3SOCK'
22 '--type:Specify the type of IPC message. Tab completion still coming so use the man page instead'
23 )
24 _describe 'values' options
25 }
26_swaymsg "$@"