about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--Completion/BSD/Command/_rcctl13
2 files changed, 16 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index fcebf9b4a..abf676b4e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2021-10-27  Matthew Martin  <phy1729@gmail.com>
+
+	* 49529: Completion/BSD/Command/_rcctl: Add rogue and
+	descriptions to _rcctl ls.
+
 2021-10-26  Oliver Kiddle  <opk@zsh.org>
 
 	* Peter Palfrader: 49431 (tweaked, c.f. Bart: 49434):
diff --git a/Completion/BSD/Command/_rcctl b/Completion/BSD/Command/_rcctl
index 62cb8f634..44ba0f28b 100644
--- a/Completion/BSD/Command/_rcctl
+++ b/Completion/BSD/Command/_rcctl
@@ -1,11 +1,20 @@
 #compdef rcctl
 
 local context state line
-local -a actions subcmds variables
+local -a actions lsarg subcmds variables
 
 actions=(check reload restart start stop)
 subcmds=(disable enable get getdef ls order set)
 variables=(class flags status timeout user)
+lsarg=(
+  'all:all services and daemons'
+  'failed:enabled but stopped daemons'
+  'off:disabled services and daemons'
+  'on:enabled services and daemons'
+  'rogue:daemons which are disabled but currently running'
+  'started:running daemons'
+  'stopped:stopped daemons'
+)
 
 if [[ $service == "rcctl" ]]; then
   _arguments -C \
@@ -23,7 +32,7 @@ case $service in
       ':variable:compadd -a variables'
     ;;
   ls)
-     _arguments ':display a list of services and daemons matching:(all failed off on started stopped)'
+    _arguments ':display a list of services and daemons matching:(($lsarg))'
     ;;
   order)
     _arguments \