Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

PATCH: completion option updates for recent BSD releases



This patch covers changes in the recent OpenBSD 6.9 and DragonFly 6.0.
I also checked NetBSD 9.2 but there were no relevant changes in that.
Though I did notice completion for head was missing a couple of options
for NetBSD (that were newly added in DragonFly).

diff --git a/Completion/Unix/Command/_dhclient b/Completion/Unix/Command/_dhclient
index d5ca5b271..e22586b04 100644
--- a/Completion/Unix/Command/_dhclient
+++ b/Completion/Unix/Command/_dhclient
@@ -20,7 +20,6 @@ case $OSTYPE in
   openbsd*)
     args+=(
       '-i+[ignore values provided by leases for specified options]:options'
-      '-L+[specify file to write option data too]:file:_files'
       "-n[don't configure any interfaces]"
       '-r[release the current lease back to the server it came from]'
       '-v[verbose log messages]'
diff --git a/Completion/Unix/Command/_head b/Completion/Unix/Command/_head
index 1e968cc11..f25c97c83 100644
--- a/Completion/Unix/Command/_head
+++ b/Completion/Unix/Command/_head
@@ -18,7 +18,13 @@ else
   case $OSTYPE in
     (freebsd*|darwin*|dragonfly*|netbsd*)
       args+=( '(-n)-c+[display the first specified bytes]:number of bytes' )
-      ;;
+    ;|
+    dragonfly*|netbsd*)
+      args+=(
+        '(-v)-q[never print headers giving file names]'
+        '(-q)-v[always print headers giving file names]'
+      )
+    ;;
   esac
 fi
 
diff --git a/Completion/Unix/Command/_pgrep b/Completion/Unix/Command/_pgrep
index 5b1853e6b..e10f42f53 100644
--- a/Completion/Unix/Command/_pgrep
+++ b/Completion/Unix/Command/_pgrep
@@ -125,6 +125,10 @@ else
   fi
 fi
 
+if [[ $OSTYPE = dragonfly* ]]; then
+  arguments+=( '(-t)-T[match only processes associated with the current terminal]' )
+fi
+
 arguments+=( $sig_arguments + o '*: :->pname' )
 
 [[ $OSTYPE == linux* ]] || aopts+=( -A '*-' )
diff --git a/Completion/Unix/Command/_ping b/Completion/Unix/Command/_ping
index e69173430..b371e808f 100644
--- a/Completion/Unix/Command/_ping
+++ b/Completion/Unix/Command/_ping
@@ -189,6 +189,7 @@ case ${variant}:${${service#ping}:-4} in
     args+=(
       '-E[audible bell for no packet]'
       '-e[audible bell for each packet]'
+      '-g[provide a visual display of packets received and lost]'
       '-T+[change TOS value]:TOS value:(critical inetcontrol lowdelay netcontrol throughput reliability ef af cs)'
       '-V+[specify routing table to be used]:routing table'
     )
diff --git a/Completion/Unix/Command/_sed b/Completion/Unix/Command/_sed
index 73227901e..79a010c92 100644
--- a/Completion/Unix/Command/_sed
+++ b/Completion/Unix/Command/_sed
@@ -109,10 +109,10 @@ else
       )
     ;|
     openbsd*|freebsd*|netbsd*|dragonfly*) args+=( '(-r -E)'-r$extended ) ;|
-    darwin*|freebsd*|netbsd*|openbsd*) args+=( '-i+'$inplace ) ;|
-    darwin*|freebsd*|netbsd*) args+=( '-l[make output line buffered]' ) ;|
-    freebsd*) args+=( '-u[disable data buffering]' ) ;|
-    freebsd*|netbsd*)
+    darwin*|freebsd*|netbsd*|openbsd*|dragonfly*) args+=( '-i+'$inplace ) ;|
+    darwin*|freebsd*|netbsd*|dragonfly*) args+=( '-l[make output line buffered]' ) ;|
+    freebsd*|dragonfly*) args+=( '-u[disable data buffering]' ) ;|
+    freebsd*|netbsd*|dragonfly*)
       args+=(
         '-I+[edit files in-place, treating all files as a single input stream]:: :_guard "^(*[@/; \\\]*|?(#c6,)|-*)" "suffix for backup"'
       )
diff --git a/Completion/Unix/Command/_tail b/Completion/Unix/Command/_tail
index 3bfbe37ca..6d6e9b2d5 100644
--- a/Completion/Unix/Command/_tail
+++ b/Completion/Unix/Command/_tail
@@ -43,7 +43,7 @@ else
 	'(-v)-q[never output headers giving file names]'
       )
       ;|
-    (netbsd*)
+    (dragonfly*|netbsd*)
       args+=( '(-q)-v[always output headers giving file names]' )
       ;;
   esac
diff --git a/Completion/Unix/Command/_timeout b/Completion/Unix/Command/_timeout
index d0ff085bb..223059e4d 100644
--- a/Completion/Unix/Command/_timeout
+++ b/Completion/Unix/Command/_timeout
@@ -2,8 +2,8 @@
 
 local args
 
-if [[ $service = g* || $OSTYPE != *bsd* ]]; then
-  # GNU coreutils as opposed to Free/NetBSD implementation
+if [[ $service = g* || $OSTYPE != *(freebsd|netbsd)* ]]; then
+  # GNU coreutils or DFly as opposed to Free/NetBSD implementation
   args=(
     '(-v --verbose)'{-v,--verbose}'[indicate when signal is sent upon timeout]'
     '(- *)--help[display usage information]'
diff --git a/Completion/Unix/Command/_uname b/Completion/Unix/Command/_uname
index 0e55ba1c3..96194842a 100644
--- a/Completion/Unix/Command/_uname
+++ b/Completion/Unix/Command/_uname
@@ -62,13 +62,19 @@ else
     '-v[print detailed operating system version]'
   )
   case $OSTYPE in
-    freebsd*|dragonfly*) args+=( '-i[print kernel ident]' ) ;|
-    freebsd<10->.*)
+    freebsd*|dragonfly*)
       args+=(
-	'-K[print FreeBSD kernel version]'
-	'-U[print FreeBSD user environment version]'
+        '-i[print kernel ident]'
+        '-K[print kernel version]'
+        '-U[print user environment version]'
       )
     ;|
+    dragonfly*)
+      args+=(
+        '-P[write ABI string for dports / pkgng, including odd-to-even version-munging]'
+        '-PP[write ABI string for dports / pkgng, without version-munging]'
+      )
+    ;;
     freebsd<13->.*)
       args+=( "-b[print kernel's linker-generated build-id]" )
     ;;




Messages sorted by: Reverse Date, Date, Thread, Author