summaryrefslogtreecommitdiff
path: root/Completion
diff options
context:
space:
mode:
authorOliver Kiddle <opk@zsh.org>2025-01-27 23:06:16 +0100
committerOliver Kiddle <opk@zsh.org>2025-01-27 23:06:16 +0100
commitf3b865b9155269ba0dee7ced93b061e78df507c1 (patch)
tree7ff3e71038dfd5ab7c9e88a82980fd4d85637563 /Completion
parent87aba4d437f5fef46917c1235c00b9162d7bcbd0 (diff)
downloadzsh-f3b865b9155269ba0dee7ced93b061e78df507c1.tar.gz
zsh-f3b865b9155269ba0dee7ced93b061e78df507c1.zip
53326: completion updates for core Linux utils
Diffstat (limited to 'Completion')
-rw-r--r--Completion/Linux/Command/_findmnt14
-rw-r--r--Completion/Linux/Command/_free1
-rw-r--r--Completion/Linux/Command/_losetup3
-rw-r--r--Completion/Linux/Command/_lsblk7
-rw-r--r--Completion/Linux/Command/_pidof1
-rw-r--r--Completion/Linux/Command/_slabtop2
-rw-r--r--Completion/Linux/Command/_wipefs3
-rw-r--r--Completion/Unix/Command/_awk1
-rw-r--r--Completion/Unix/Command/_chmod14
-rw-r--r--Completion/Unix/Command/_chown3
-rw-r--r--Completion/Unix/Command/_cmp2
-rw-r--r--Completion/Unix/Command/_find1
-rw-r--r--Completion/Unix/Command/_hexdump1
-rw-r--r--Completion/Unix/Command/_last1
-rw-r--r--Completion/Unix/Command/_mv3
-rw-r--r--Completion/Unix/Command/_objdump6
-rw-r--r--Completion/Unix/Command/_pgrep1
-rw-r--r--Completion/Unix/Command/_ping5
-rw-r--r--Completion/Unix/Command/_ps1
-rw-r--r--Completion/Unix/Command/_readelf7
-rw-r--r--Completion/Unix/Command/_strip1
-rw-r--r--Completion/Unix/Command/_uptime7
-rw-r--r--Completion/Unix/Command/_w1
23 files changed, 58 insertions, 28 deletions
diff --git a/Completion/Linux/Command/_findmnt b/Completion/Linux/Command/_findmnt
index b29372c39..6155d4dc1 100644
--- a/Completion/Linux/Command/_findmnt
+++ b/Completion/Linux/Command/_findmnt
@@ -8,6 +8,7 @@
#
local curcontext=$curcontext state state_descr line ret=1
typeset -A opt_args
+local -a suf dedup
_arguments -s -C \
'(H -A --all)'{-A,--all}'[print all filesystems]' \
@@ -45,6 +46,7 @@ _arguments -s -C \
'(H)2:: :->targets' \
+ '(format)' \
'(H)'{-D,--df}'[imitate the output of df command]' \
+ '(H)'{-I,--dfi}'[imitate the output of df with -i option]' \
'(H)'{-J,--json}'[use JSON output format]' \
'(H)'{-l,--list}'[use list output format]' \
'(H)'{-P,--pairs}'[use key="value" output format]' \
@@ -55,6 +57,7 @@ _arguments -s -C \
'(H)'{-N+,--task=}'[search /proc/<pid>/mountinfo]: :_pids' \
'(H)'{-s,--fstab}'[search in /etc/fstab]' \
+ '(H)' \
+ '(* -)'{-H,--list-columns}'[list available columns]' \
'(- :)'{-h,--help}'[display help text and exit]' \
'(- :)'{-V,--version}'[display version and exit]' \
&& ret=0
@@ -66,13 +69,16 @@ __findmnt_mountpoints () {
case $state in
columns)
+ dedup=( ${(Ms.,.)${PREFIX#+}##*,} ${(Ms.,.)SUFFIX%%,*} )
+ suf=( -qS , )
+ compset -S ',*' && suf=()
compset -P '+' || _describe -t list-prefixes prefix \
- '( +:"not replace but extend the list" )' -S '' && ret=0
+ '( +:"not replace but extend the list" )' -S '' && ret=0
+ compset -P '*,'
local -a columns=(
- ${${${(f)"$(_call_program columns findmnt -h)"}[(r)Available*,-2]}[2,-1]}
+ ${${${${(f)"$(_call_program columns findmnt --list-columns)"}## #}//:/\\:}/ <[^>]#> #/:}
)
- columns=( ${${${${${${columns## #}//:/\\:}//\[/\\[}//]/\\]}/ /[}/%/]} )
- _values -s , -M 'm:{a-z}={A-Z}' column $columns && ret=0
+ _describe -t fields column columns -M 'm:{a-z}={A-Z}' $suf -F dedup && ret=0
;;
*) # call "findmnt $opts" to get possible sources/targets
local opts='-lnve'
diff --git a/Completion/Linux/Command/_free b/Completion/Linux/Command/_free
index a0da97446..376b8a21f 100644
--- a/Completion/Linux/Command/_free
+++ b/Completion/Linux/Command/_free
@@ -2,6 +2,7 @@
_arguments -s \
'(-l --lohi)'{-l,--lohi}'[show detailed low and high memory statistics]' \
+ '(-L --line)'{-L,--line}'[show output on a single line]' \
'(-t --total)'{-t,--total}'[show total for RAM + swap]' \
'(-v --committed)'{-v,--committed}'[show committed memory and commit limit]' \
'(-w --wide)'{-w,--wide}'[wide mode]' \
diff --git a/Completion/Linux/Command/_losetup b/Completion/Linux/Command/_losetup
index f5a7ec1b1..d8e792aaf 100644
--- a/Completion/Linux/Command/_losetup
+++ b/Completion/Linux/Command/_losetup
@@ -18,7 +18,7 @@ _arguments -s -S \
- 'info' \
'(-v --verbose)'{-v,--verbose}'[verbose mode]' \
'(-o --offset -a --all)'{-a,--all}'[show the status of all loop devices]' \
- '(-O --output --output-all)'{-O+,--output=}'[specify columns to be printed with --list]:column:_sequence -s , compadd - name autoclear back-file back-ino back-maj\:min maj\:min offset partscan ro sizelimit dio log-sec' \
+ '(-O --output --output-all)'{-O+,--output=}'[specify columns to be printed with --list]:column:_sequence -s , compadd -M "B\:+=" - name autoclear back-file back-ino back-maj\:min back-maj back-min maj\:min maj min offset partscan ref ro sizelimit dio log-sec' \
'(-O --output)--output-all[output all columns]' \
'(-J --json --raw -O --output -n --noheadings)'{-J,--json}'[use JSON --list output format]' \
'(-l --list)'{-l,--list}'[list currently used loop devices]' \
@@ -33,6 +33,7 @@ _arguments -s -S \
{-D,--detach-all}'[detach all associated loop devices]' \
- 'create' \
'--direct-io[open backing file with O_DIRECT]::enable:(on off)' \
+ '--loop-ref=[specify loop device reference]:string' \
'(-f --find 1)'{-f,--find}'[find the first unused loop device]' \
'(-L --nooverlap)'{-L,--nooverlap}'[avoid possible conflict between devices]' \
'(-P --partscan)'{-P,--partscan}'[scan the partition table of newly created loop devices]' \
diff --git a/Completion/Linux/Command/_lsblk b/Completion/Linux/Command/_lsblk
index 63aac743c..c8b30eb5e 100644
--- a/Completion/Linux/Command/_lsblk
+++ b/Completion/Linux/Command/_lsblk
@@ -8,6 +8,10 @@ typeset -A opt_args
_arguments -C -s -S \
'(H -A --noempty)'{-A,--noempty}"[don't print empty devices]" \
'(H -E --dedup)'{-E+,--dedup=}'[de-duplicate output by specified column]:column:->columns' \
+ '(H -Q --filter)'{-Q+,--filter=}'[only print lines matching expression]:expression' \
+ '(H)--highlight=[color lines matching expression]:expression' \
+ '(H)*--ct-filter=[restrict the next counter]:expression' \
+ '(H)*--ct=[define a custom counter]:name\:param\:func' \
'(H -a --all)'{-a,--all}'[print all devices]' \
'(H -b --bytes)'{-b,--bytes}'[print size in bytes rather than in human readable format]' \
'(H -d --nodeps)'{-d,--nodeps}"[don't print slaves or holders]" \
@@ -40,6 +44,7 @@ _arguments -C -s -S \
'(H)'{-P,--pairs}'[use key="value" output format]' \
'(H)'{-r,--raw}'[use raw output format]' \
+ 'H' \
+ '(* -)'{-H,--list-columns}'[list the available columns]' \
'(* -)'{-h,--help}'[display help information]' \
'(* -)'{-V,--version}'[display version information]' && ret=0
@@ -56,7 +61,7 @@ case $state in
;|
column*)
values=(
- ${${${${(f)"$(_call_program columns lsblk -h)"}[(r)Available*,-2]## #}[2,-1]//:/\\:}/ /:}
+ ${${${${(f)"$(_call_program columns lsblk --list-columns)"}## #}//:/\\:}/ <[^>]#> #/:}
)
_describe -t fields column values -M 'm:{a-z}={A-Z}' $suf -F dedup && ret=0
;;
diff --git a/Completion/Linux/Command/_pidof b/Completion/Linux/Command/_pidof
index 151a0e0f6..fdafd507d 100644
--- a/Completion/Linux/Command/_pidof
+++ b/Completion/Linux/Command/_pidof
@@ -17,6 +17,7 @@ case $variant in
'(-w --with-workers)'{-w,--with-workers}'[show kernel workers too]' \
"(-x $exargs)"-x'[include shells running named scripts]' \
"($exargs)"\*{-o+,--omit-pid=}'[omit processes with PIDs]:pids:_sequence -s , _pids' \
+ '(-t --lightweight)'{-t,--lightweight}'[list threads too]' \
'(-S --separator)'{-S+,--separator=}'[specify separator put between PIDs]:separator' \
'*:process:->procnames' \
&& return 0
diff --git a/Completion/Linux/Command/_slabtop b/Completion/Linux/Command/_slabtop
index 5c8919d12..2021ec332 100644
--- a/Completion/Linux/Command/_slabtop
+++ b/Completion/Linux/Command/_slabtop
@@ -1,5 +1,4 @@
#compdef slabtop
-# based on procps-ng-3.3.15
local -a criteria=(
'a:number of active objects'
@@ -18,5 +17,6 @@ _arguments -s \
'(-d --delay -o --once)'{-d+,--delay=}'[specify the delay between updates]:seconds: ' \
'(-s --sort)'{-s+,--sort=}'[specify the sort criteria]:criteria:(($criteria))' \
'(-d --delay -o --once)'{-o,--once}'[display the output once and exit]' \
+ '--human[show human-readable output]' \
'(-)'{-V,--version}'[display version information and exit]' \
'(-)'{-h,--help}'[display usage information and exit]'
diff --git a/Completion/Linux/Command/_wipefs b/Completion/Linux/Command/_wipefs
index 8642aab92..5cc97e85f 100644
--- a/Completion/Linux/Command/_wipefs
+++ b/Completion/Linux/Command/_wipefs
@@ -2,7 +2,8 @@
_arguments -s -S \
'(H -a --all)'{-a,--all}'[wipe all magic strings]' \
- '(H -b --backup)'{-b,--backup}'[create a signature backup in $HOME]' \
+ '(H --backup)-b[create a signature backup in $HOME]' \
+ '(H -b)--backup=-[create a signature backup in $HOME]::path [$HOME]:_directories' \
'(H -f --force)'{-f,--force}'[force erasure]' \
'(H -i --no-headings -J --json -p --parsable)'{-i,--no-headings}"[don't print headings]" \
'(H -J --json -i --no-headings -p --parsable)'{-J,--json}'[use JSON output format]' \
diff --git a/Completion/Unix/Command/_awk b/Completion/Unix/Command/_awk
index b69cc5cf8..694749d7d 100644
--- a/Completion/Unix/Command/_awk
+++ b/Completion/Unix/Command/_awk
@@ -51,6 +51,7 @@ case $variant in
{-g,--gen-pot}'[scan awk program and generate .po file on stdout]'
'*'{-i+,--include}'[load source library]:library file:->script'
{-I,--trace}'[print internal byte code names as they are executed]'
+ '(-k --csv)'{-k,--csv}'[enable CSV special processing]'
'*'{-l+,--load}'[load dynamic extension]:extension:->extension'
{-M,--bignum}'[select arbitrary-precision arithmetic on numbers]'
{-o-,--pretty-print=-}'[pretty-print awk program]::output file:_files'
diff --git a/Completion/Unix/Command/_chmod b/Completion/Unix/Command/_chmod
index 693f348dc..5ec60d707 100644
--- a/Completion/Unix/Command/_chmod
+++ b/Completion/Unix/Command/_chmod
@@ -19,6 +19,13 @@ case "$variant" in
'*: :->files'
)
;;
+ gnu|freebsd*|openbsd*|netbsd*|darwin*|dragonfly*)
+ args+=(
+ '(-H -L -P)-L[follow all symlinks]'
+ '(-H -L -P)-H[follow symlinks on the command line]'
+ '(-H -L -P)-P[do not follow symlinks (default)]'
+ )
+ ;|
gnu)
aopts=()
args+=(
@@ -49,13 +56,6 @@ case "$variant" in
'-h[operate on symlinks themselves]'
)
;|
- freebsd*|openbsd*|netbsd*|darwin*|dragonfly*)
- args+=(
- '(-H -L -P)-L[follow all symlinks]'
- '(-H -L -P)-H[follow symlinks on the command line]'
- '(-H -L -P)-P[do not follow symlinks (default)]'
- )
- ;|
darwin*)
args+=(
'(1)-C[return false if any specified files have ACLs]'
diff --git a/Completion/Unix/Command/_chown b/Completion/Unix/Command/_chown
index bcc6aec2f..c9fe8fadd 100644
--- a/Completion/Unix/Command/_chown
+++ b/Completion/Unix/Command/_chown
@@ -13,6 +13,7 @@ case "$variant" in
'(-h --no-dereference)--dereference[dereference symlinks]'
'(-h --no-dereference --dereference)'{-h,--no-dereference}'[operate on symlinks themselves]'
'(-f --silent --quiet)'{-f,--silent,--quiet}"[don't report errors]"
+ '--from=[restrict changes to files by current ownership]: :->owner'
'--preserve-root[fail to operate recursively on /]'
'--reference=[copy ownership of specified file]:file:_files'
'(-R --recursive)'{-R,--recursive}'[change files and directories recursively]'
@@ -22,8 +23,6 @@ case "$variant" in
'(- : *)--help[display help information]'
'(- : *)--version[display version information]'
)
- [[ $service = chown ]] &&
- args+=( '--from=[restrict changes to files by current ownership]: :->owner' )
;;
*)
args=(
diff --git a/Completion/Unix/Command/_cmp b/Completion/Unix/Command/_cmp
index 20d309e32..d0a4caa41 100644
--- a/Completion/Unix/Command/_cmp
+++ b/Completion/Unix/Command/_cmp
@@ -15,7 +15,7 @@ case $variant in
units=":_numbers -u bytes offset K M G T P E Z Y"
;|
gnu)
- args=(
+ args+=(
'(- *)'{-v,--version}'[display version information]'
'(- *)--help[display help information]'
)
diff --git a/Completion/Unix/Command/_find b/Completion/Unix/Command/_find
index 4f1c338ee..95e4fac4e 100644
--- a/Completion/Unix/Command/_find
+++ b/Completion/Unix/Command/_find
@@ -109,7 +109,6 @@ case $variant in
'-regextype:regexp syntax:(help findutils-default awk egrep ed emacs gnu-awk grep posix-awk posix-basic posix-egrep posix-extended posix-minimal-basic sed)'
'*-warn'
'*-nowarn'
- '*-xautofs'
'*-used:access after inode change (days)'
'*-executable'
'*-readable'
diff --git a/Completion/Unix/Command/_hexdump b/Completion/Unix/Command/_hexdump
index f700ca683..140422ac1 100644
--- a/Completion/Unix/Command/_hexdump
+++ b/Completion/Unix/Command/_hexdump
@@ -25,6 +25,7 @@ if [[ $OSTYPE = linux* ]]; then
'(- *)'{-h,--help}'[display usage information]'
'(- *)'{-V,--version}'[display version information]'
)
+ fmts+=( {--one-byte-hex,-X}'[one-byte hexadecimal display]' )
else
# strip long options by taking every second element
print -v fmts -f '%2$s' -- "$fmts[@]"
diff --git a/Completion/Unix/Command/_last b/Completion/Unix/Command/_last
index d76260c36..240b96e67 100644
--- a/Completion/Unix/Command/_last
+++ b/Completion/Unix/Command/_last
@@ -41,6 +41,7 @@ case $OSTYPE in
'(-R --nohostname)'{-R,--nohostname}'[suppress display of hostname field]'
'(-s --since)'{-s+,--since=}'[display lines since the specified time]:time (YYYYMMDDhhmmss)'
'(-t --until)'{-t+,--until=}'[display lines until the specified time]:time (YYYYMMDDhhmmss)'
+ '(-T --tab-separated)'{-T,--tab-separated}'[use tabs as delimiters]'
'(-p --present)'{-p+,--present=}'[display who were present at the specified time]:time (YYYYMMDDhhmmss)'
'(-w --fullnames)'{-w,--fullnames}'[show full user and domain names]'
'(-x --system)'{-x,--system}'[display shutdown/runlevel entries]'
diff --git a/Completion/Unix/Command/_mv b/Completion/Unix/Command/_mv
index 983c25ea8..e9227c334 100644
--- a/Completion/Unix/Command/_mv
+++ b/Completion/Unix/Command/_mv
@@ -14,6 +14,7 @@ case $variant; in
{simple,never}"[always make simple backups]"'
'(-b --backup -n --no-clobber)-b[make a backup of each existing destination file]'
'(-v)--debug[explain how a file is copied]'
+ '--exchange[exchange source and destination]'
'(-f --force -i --interactive -n --no-clobber)'{-f,--force}"[don't prompt before overwriting]"
'(-f --force -i --interactive -n --no-clobber)'{-i,--interactive}'[prompt before overwriting existing file]'
'(-f --force -i --interactive -n --no-clobber)'{-n,--no-clobber}"[don't overwrite existing file]"
@@ -22,7 +23,7 @@ case $variant; in
'(-S --suffix)'{-S+,--suffix=}'[specify the backup suffix]:backup suffix [~]'
'(-t --target-directory)'{-t+,--target-directory=}'[move all source arguments into specified directory]:directory:_directories'
'(-T --no-target-directory)'{-T,--no-target-directory}'[treat final argument as a normal file]'
- '(-u)--update=-[move only when destination file is older or missing]::update files [older]:(all none older)'
+ '(-u)--update=-[move only when destination file is older or missing]::update files [older]:(all none none-fail older)'
'(--update)-u[move only when destination file is older or missing]'
'(-v --verbose)'{-v,--verbose}'[show file names after they are moved]'
'(- *)--help[display usage information]'
diff --git a/Completion/Unix/Command/_objdump b/Completion/Unix/Command/_objdump
index 94c01eb83..71a615c97 100644
--- a/Completion/Unix/Command/_objdump
+++ b/Completion/Unix/Command/_objdump
@@ -32,6 +32,7 @@ case $variant in
'(-D --disassemble-all)'{-D,--disassemble-all}'[display assembler contents of all sections]'
'(-S --source)'{-S,--source}'[intermix source code with disassembly]'
'--source-comment=-[prefix lines of source code with specified text]::text prefix [# ]'
+ '(-Z --decompress)'{-Z,--decompress}'[decompress section(s) before displaying their contents]'
'(-g --debugging)'{-g,--debugging}'[display debug information in object file]'
'(-e --debugging-tags)'{-e,--debugging-tags}'[display debug information using ctags style]'
'(-G --stabs)'{-G,--stabs}'[display (in raw form) any STABS info in the file]'
@@ -176,13 +177,14 @@ case "$state" in
'O[str-offsets]' \
"o[loc]" "R[ranges]" "t[pubtypes]" "U[trace_info]" "u[trace_abbrev]" \
"T[trace_aranges]" "g[gdb_index]" "A[addr]" "c[cu_index]" "k[links]" \
- "K[follow-links]" && ret=0
+ "K[follow-links]" "D[use-debuginfod]" "E[do-not-use-debuginfod]" && ret=0
;;
dwarf-names)
_sequence _wanted dwarf-sections expl "dwarf section" compadd - \
rawline decodedline info abbrev pubnames aranges macro frames \
frames-interp str str-offsets loc Ranges pubtypes gdb_index trace_info \
- trace_abbrev trace_aranges addr cu_index links follow-links && ret=0
+ trace_abbrev trace_aranges addr cu_index links follow-links \
+ use-debuginfod do-not-use-debuginfod && ret=0
;;
bfdnames)
_wanted targets expl target compadd - \
diff --git a/Completion/Unix/Command/_pgrep b/Completion/Unix/Command/_pgrep
index 94c1dae1a..798b6d6d4 100644
--- a/Completion/Unix/Command/_pgrep
+++ b/Completion/Unix/Command/_pgrep
@@ -48,6 +48,7 @@ arguments=(
'--cgroup=[match by cgroup v2 names]:cgroup'
'--ns=[match only on same namespaces as specified PID]: :_pids'
'--nslist=[match only on specified namespaces (with --ns)]:namespace:(ipc mnt net pid user uts)'
+ '*--env=[match on environment variable]:var[=value]:_parameters -g "*export*" -qS='
'(: * -)'{-V,--version}'[display version information]'
'-z+[match only on specified zone IDs]:zone:_sequence _zones'
)
diff --git a/Completion/Unix/Command/_ping b/Completion/Unix/Command/_ping
index 84bd76b82..95e1fd604 100644
--- a/Completion/Unix/Command/_ping
+++ b/Completion/Unix/Command/_ping
@@ -196,6 +196,7 @@ case ${variant}:${${service#ping}:-4} in
;;
iputils:*)
args+=(
+ '-3[RTT precision (do not round up the result time)]'
'-A[adaptive]'
'-b[allow pinging a broadcast address]'
"-B[don't allow ping to change source address]"
@@ -204,12 +205,14 @@ case ${variant}:${${service#ping}:-4} in
'-e+[define identifier for ping session]:identifier'
'(-4)-F+[allocate and set 20-bit flow label]:flow label (hex)'
'(-)-h[show usage information]'
+ '(-n)-H[force reverse DNS name resolution even for numeric destination]'
'-I+[specify source interface]:interface:_net_interfaces'
'-m+[specify mark to tag outgoing packets]:mark'
"-M+[specify path MTU discovery strategy]:strategy:((
do\:prohibit\ fragmentation,\ even\ local\ one
want\:do\ PMTU\ discovery
- dont\:don\'t\ set\ DF\ flag))"
+ dont\:don\'t\ set\ DF\ flag
+ probe\:set\ DF\ flag\ and\ bypass\ PMTU\ checks))"
'(-4)-N+[send ICMPv6 node information queries instead of echo request]:sub option'
'-O[report outstanding ICMP ECHO reply before sending next packet]'
'-Q+[set Quality of Service-related bits in ICMP datagrams]:QoS TOS bits'
diff --git a/Completion/Unix/Command/_ps b/Completion/Unix/Command/_ps
index 158fb6b83..7d83f90ea 100644
--- a/Completion/Unix/Command/_ps
+++ b/Completion/Unix/Command/_ps
@@ -172,6 +172,7 @@ case $OSTYPE in
'--headers[repeat header lines, one per page of output]'
'(--cols --columns --width)'{--cols,--columns,--width}'[set screen width]:width'
'(--lines --rows)'{--lines,--rows}'[set screen height]'
+ '--signames[display signal masks using signal names]'
'--cumulative[include child process data with the parent]'
'-n[set namelist file for WCHAN display]:file:_files'
'(--no-headers --no-heading)'{--no-headers,--no-heading}'[suppress headers]'
diff --git a/Completion/Unix/Command/_readelf b/Completion/Unix/Command/_readelf
index b3abdf0a5..43cbc81c6 100644
--- a/Completion/Unix/Command/_readelf
+++ b/Completion/Unix/Command/_readelf
@@ -19,8 +19,8 @@ args=(
'(-D --use-dynamic)'{-D,--use-dynamic}'[use dynamic section info when showing symbols]'
\*{-x,--hex-dump=}"[dump contents of specified section as bytes]:section:($sections)"
\*{-p,--string-dump=}"[dump contents of specified section as strings]:section:($sections)"
- '-w+[show the contents of DWARF2 debug sections]::debug section:(a A r c L f F g i o m p t R l s O u T U k K N)'
- '--debug-dump=[show the contents of DWARF2 debug sections]::section:(abbrev addr aranges cu_index decodedline frames frames-interp gdb_index info loc macro pubnames pubtypes Ranges rawline str str-offsets trace_abbrev trace_aranges trace_info links follow-links no-follow-links)'
+ '*-w+[show the contents of DWARF2 debug sections]::debug section:(a A r c f F g i k K N D E l L m o O p r R s t T u U)'
+ '*--debug-dump=[show the contents of DWARF2 debug sections]::section:(abbrev addr cu_index frames frames-interp gdb_index info links follow-links no-follow-links use-debuginfod do-not-use-debuginfod rawline decodedline macro loc str-offsets pubnames aranges Ranges str pubtype trace_aranges trace_abbrev trace_info)'
'(-P --process-links)'{-P,--process-links}'[display the contents of non-debug sections in separate debuginfo files]'
'(-I --histogram)'{-I,--histogram}'[show histogram of bucket list lengths]'
'(-W --wide)'{-W,--wide}'[allow output width to exceed 80 characters]'
@@ -59,8 +59,11 @@ case $variant in
'--no-recurse-limit[disable demangling recursion limit]'
'-U+[specify how to display unicode characters]:method:(d l e x h i)'
'--unicode=[specify how to display unicode characters]:method:(default locale escape hex highlight invalid)'
+ '(-X --extra-sym-info)'{-X,--extra-sym-info}'[display extra information when showing symbols]'
+ '!(-X --extra-sym-info)--no-extra-sym-info'
'(-L --lint --enable-checks)'{-L,--lint,--enable-checks}'[display warning messages for possible problems]'
\*{-R,--relocated-dump=}"[dump contents of specified section as relocated bytes]:section:($sections)"
+ \*{-j,--display-section=}'[display contents of specified section]:section'
"--dwarf-depth=[don't show DIEs at greater than specified depth]:depth"
'--dwarf-start=[show DIEs starting at specified depth or deeper]:depth'
'--ctf=[display compact C type format info from section]:section'
diff --git a/Completion/Unix/Command/_strip b/Completion/Unix/Command/_strip
index cc67ae49a..59cb537b9 100644
--- a/Completion/Unix/Command/_strip
+++ b/Completion/Unix/Command/_strip
@@ -41,6 +41,7 @@ if _pick_variant -r variant gnu=GNU elftoolchain=elftoolchain $OSTYPE --version;
'(-D --enable-deterministic-archives -U --disable-deterministic-archives)'{-U,--disable-deterministic-archives}'[disable -D behavior]'
'(-D --enable-deterministic-archives -U --disable-deterministic-archives)'{-D,--enable-deterministic-archives}'[produce deterministic output when stripping archives (zero file metadata)]'
'--remove-relocations=[remove relocations from specified section]:section'
+ '--strip-section-headers[strip section headers from the output]'
'--strip-dwo[remove all DWARF .dwo sections]'
'!(--no-merge-notes)'{-M,--merge-notes}
"--no-merge-notes[don't attempt to remove redundant notes]"
diff --git a/Completion/Unix/Command/_uptime b/Completion/Unix/Command/_uptime
index 58b4d991b..64d2e15fe 100644
--- a/Completion/Unix/Command/_uptime
+++ b/Completion/Unix/Command/_uptime
@@ -9,9 +9,10 @@ case $variant in
_arguments -s -S : \
'(: -)'{-h,--help}'[display help information]' \
'(: -)'{-V,--version}'[display version information]' \
- + '(excl)' \
- {-p,--pretty}'[display uptime in pretty format]' \
- {-s,--since}'[display date/time of system boot]'
+ '(-c --container)'{-c,--container}'[show container uptime]' \
+ '(-p --pretty -s --since -r --raw)'{-p,--pretty}'[display uptime in pretty format]' \
+ '(-r --raw -p --pretty)'{-r,--raw}'[uptime values in raw format]' \
+ '(-s --since -p --pretty)'{-s,--since}'[display date/time of system boot]'
return
;;
gnu)
diff --git a/Completion/Unix/Command/_w b/Completion/Unix/Command/_w
index 408cb76af..2da57a8f6 100644
--- a/Completion/Unix/Command/_w
+++ b/Completion/Unix/Command/_w
@@ -6,6 +6,7 @@ case $OSTYPE in
linux*)
args=(
'(H -f --from)'{-f,--from}'[toggle display of remote hostname]'
+ '(-c --container)'{-c,--container}'[show container uptime]'
'(H -h)--no-header[suppress the heading]'
'(H -i --ip-addr)'{-i,--ip-addr}'[display IP address instead of hostname]'
'(H -o --old-style -s --short)'{-o,--old-style}'[old style output format]'