From a9386df5581487e5e34ecb3ce422bacf62d10c3d Mon Sep 17 00:00:00 2001 From: Oliver Kiddle Date: Sun, 29 Aug 2021 17:08:34 +0200 Subject: 49319: completion options update --- Completion/Linux/Command/_btrfs | 52 +++++++++++++-------------- Completion/Linux/Command/_cpupower | 3 +- Completion/Linux/Command/_cryptsetup | 13 +++++-- Completion/Linux/Command/_dkms | 11 +++--- Completion/Linux/Command/_ethtool | 60 ++++++++++++++++++++++++++------ Completion/Linux/Command/_findmnt | 9 +++-- Completion/Linux/Command/_networkmanager | 9 ++++- Completion/Linux/Command/_pidof | 2 ++ Completion/Linux/Command/_sysstat | 7 ++-- Completion/Linux/Command/_valgrind | 1 + Completion/Linux/Command/_wipefs | 1 + 11 files changed, 117 insertions(+), 51 deletions(-) (limited to 'Completion/Linux') diff --git a/Completion/Linux/Command/_btrfs b/Completion/Linux/Command/_btrfs index d560928ae..bb0f724e6 100644 --- a/Completion/Linux/Command/_btrfs +++ b/Completion/Linux/Command/_btrfs @@ -17,11 +17,14 @@ cmds_7=( get set list ) cmds_8=( enable disable rescan help ) cmds_9=( assign remove create destroy show limit help ) cmds_10=( start status cancel help ) -cmds_11=( chunk-recover fix-device-size super-recover zero-log ) +cmds_11=( chunk-recover fix-device-size super-recover zero-log create-control-device ) _arguments -C -A "-*" "$args[@]" \ '(- *)--help[print help information]' \ '(- *)--version[print version information]' \ + '(-v --verbose -q --quiet --help --version)'{-v,--verbose}'[verbose output of operation]' \ + '(-v --verbose -q --quiet --help --version)'{-q,--quiet}'[suppress all messages except errors]' \ + '(--help --version)--format=[specify output format]:format:(text json)' \ '(--version)1: :->groups' \ '2: :->cmds' \ '*:: :->args' && ret=0 @@ -60,6 +63,11 @@ while (( $#state )); do fi args=( '(-)--help[print help information]' ) case ${cont} in + (balance|replace):start|device:(add|delete|remove)|filesystem:resize) + args+=( + "--enqueue[wait if there's another exclusive operation running, otherwise continue]" + ) + ;| subvolume:create) args+=( '*-i[add the newly created subvolume to a qgroup]:qgroup' @@ -67,11 +75,10 @@ while (( $#state )); do ) ;; subvolume:delete) - args+=( + args+=( '!-v' '!--verbose' '(-c --commit-after -C --commit-each)'{-c,--commit-after}'[wait for transaction commit at the end of the operation]' '(-c --commit-after -C --commit-each)'{-C,--commit-each}'[wait for transaction commit after deleting each subvolume]' '(-i --subvolid)'{-i+,--subvolid=}'[specify id of subvolume to be removed]:subvolume id' - '(-v --verbose)'{-v,--verbose}'[verbose output of operations]' '1:subvolume:_files -/' ) ;; @@ -113,7 +120,7 @@ while (( $#state )); do ;| subvolume:sync) args+=( '-s[sleep between checks]:delay (seconds) [1]' );; subvolume:find-new) args+=( '1:subvol:_files -/' '2:lastgen: _message "last gen"' );; - (device|filesystem|qgroup|subvolume):(df|du|show|usage)) + (device|filesystem|qgroup|subvolume):(df|du|show|usage)|scrub:status) args+=( '--iec[use 1024 as a base]' '--si[use 1000 as a base]' @@ -130,7 +137,7 @@ while (( $#state )); do '(-t --tbytes)'{-t,--tbytes}'[show sizes in TiB, or TB with --si]' ) ;| - (filesystem|qgroup):(du|show)) + (filesystem|qgroup|scrub):(du|show|status)) args+=( '--raw[output raw numbers in bytes]' '--human-readable[output human friendly numbers, base 1024]' @@ -142,8 +149,7 @@ while (( $#state )); do ;| filesystem:resize) args+=( '1:size:_guard "(|+|-)[0-9]#[GKM]"' '2:path:->mounts' );; filesystem:defragment) - args+=( - '-v[verbose]' + args+=( '!-v' '-r[defragment files recursively]' '-c+[compress files while defragmenting]::compression algorithm:(zlib lzo zstd)' '-r[defragment files recursively]' @@ -193,10 +199,9 @@ while (( $#state )); do ;; device:ready) args+=( '1:device: _files -g "*(-%)"' );; scrub:(start|resume)) - args+=( + args+=( '!-q' "-B[don't background and print statistics at end]" '-d[print separate statistics for each device]' - '-q[omit error message and statistics]' '-r[read only mode]' '-R[raw print mode]' '-c[set ioprio class]:class:(( 0\:none 1\:realtime 2\:best-effort 3\:idle))' @@ -216,18 +221,17 @@ while (( $#state )); do ) ;; balance:start) - args+=( + args+=( '!-v' '!--verbose' '(-m -s)-d+[act on data chunks]:filter:->filters' '(-d -s)-m+[act on metadata chunks]:filter:->filters' '(-d -m)-s+[act on system chunks (only under -f)]:filters:->filters' - '(-v --verbose)'{-v,--verbose}'[verbose mode]' '-f[force a reduction of metadata integrity]' "--full-balance[don't print warning and don't delay start]" '(--background --bg)'{--background,--bg}'[run balance operation asynchronously in the background]' '1:path:_files -/' ) ;; - balance:status) args+=( '(-v --verbose)'{-v,--verbose}'[verbose mode]' '1:path:_files -/' );; + balance:status) args+=( '!-v' '!--verbose' '1:path:_files -/' );; balance:(pause|cancel|resume)) args+=( '1:path:_files -/' );; property:set) args+=( '3:value' );& property:get) args+=( '2:property:(ro label compression)' );& @@ -304,6 +308,8 @@ while (( $#state )); do '!(--dfs)--bfs' '--dfs[depth-first traversal of the trees]' '--hide-names[hide filenames/subvolume/xattrs and other name references]' + '--csum-headers[print node checksums stored in headers (metadata)]' + '--csum-items[print checksums stored in checksum items (data)]' ) ;; inspect*:dump-super) @@ -315,11 +321,10 @@ while (( $#state )); do '--bytenr[specify alternate superblock offset]:offset' ) ;; - inspect*:inode*) args+=( '-v[verbose mode]' '1:inode:_files' '2:path:_files -/' );; - inspect*:subvol*) args+=( '-v[verbose mode]' '1:subvolid:_guard "[0-9]#" subvolume id' '2:path:_files -/' );; + inspect*:inode*) args+=( '!-v' '1:inode:_files' '2:path:_files -/' );; + inspect*:subvol*) args+=( '!-v' '1:subvolid:_guard "[0-9]#" subvolume id' '2:path:_files -/' );; inspect*:logical*) - args+=( - '-v[verbose mode]' + args+=( '!-v' '-P[skip the path resolving and print the inodes instead]' '-o[ignore offsets when matching references]' '-s[specify buffer size]:buffer size [4096]' @@ -331,9 +336,8 @@ while (( $#state )); do inspect*:rootid) args+=( '1:path:_files -/' );; inspect*:tree*) args+=( '-b[print raw numbers in bytes]' );; rescue:(chunk|super)-recover) - args+=( + args+=( '!-v' '-y[assume yes to every question]' - '-v[verbose mode]' '1:device:_files' ) [[ ${${(P)group}[cmd]} == chunk-recover ]] && args+=('(-)-h[display help]') @@ -361,12 +365,11 @@ while (( $#state )); do ) ;; restore) - args+=( + args+=( '!-v' '!--verbose' '(-s --snapshots)'{-s,--snapshots}'[get snapshots]' '(-x --xattr)'{-x,--xattr}'[restore extended attributes]' '(-m --metadata)'{-m,--metadata}'[restore owner, mode and times]' '(-S --symlink)'{-S,--symlink}'[restore symbolic links]' - '(-v --verbose)'{-v,--verbose}'[be verbose and output what is restored]' '(-i --ignore-errors)'{-i,--ignore-errors}'[ignore errors]' '(-o --overwrite)'{-o,--overwrite}'[overwrite directories and files]' '-t[specify tree location]:tree root' @@ -383,23 +386,20 @@ while (( $#state )); do ) ;; send|receive) - args+=( '(-q --quiet)'{-q,--quiet}'[suppress all messages except errors]' ) + args+=( '!-q' '!--quiet' ) ;| send) - args+=( - '*-v[verbose mode]' + args+=( '!-v' '-e[if sending multiple subvolumes at once, use the new format]' '-p[send incremental stream]:parent:_files -/' '*-c[use snapshot as clone source]:clone:_files -/' '-f[specify output file]:file:_files' '--no-data[send in NO_FILE_DATA mode]' - '(-v --verbose)'{-v,--verbose}'[enable verbose output]' '1:subvolume:_files -/' ) ;; receive) - args+=( - '*-v[verbose mode]' + args+=( '!-v' '-f[input file]:file: _files' '-e[terminate after ]' '(-C --chroot)'{-C,--chroot}'[confine the process to destination path using chroot(1)]' diff --git a/Completion/Linux/Command/_cpupower b/Completion/Linux/Command/_cpupower index ae1f1d3d1..6763bdd12 100644 --- a/Completion/Linux/Command/_cpupower +++ b/Completion/Linux/Command/_cpupower @@ -20,11 +20,12 @@ cmds=( 'info:show global power parameters' 'set:set global power parameters' 'monitor:report frequency and idle statistics' + 'powercap-info:show powercapping related kernel and hardware configurations' 'help:print usage information' ) case $state in cmds) - _describe command cmds && ret=0 + _describe command cmds -M 'r:|-=* r:|=*' && ret=0 ;; args) curcontext="${curcontext%:*}-$words[1]" diff --git a/Completion/Linux/Command/_cryptsetup b/Completion/Linux/Command/_cryptsetup index 45159d0be..f7149a76f 100644 --- a/Completion/Linux/Command/_cryptsetup +++ b/Completion/Linux/Command/_cryptsetup @@ -21,6 +21,7 @@ _arguments -s \ '--new-keyfile-offset=[specify number of bytes to skip in newly added keyfile]:offset (bytes)' \ '(-S --key-slot)'{-S+,--key-slot=}'[select key slot]:key slot' \ '(-b --size)'{-b+,--size=}'[force device size]:sectors' \ + '--device-size=[use only specified device size (ignore rest of device)]:size (bytes)' \ '(-o --offset)'{-o+,--offset=}'[set start offset]:sectors' \ '(-p --skip)'{-p+,--skip=}'[data to skip at beginning]:sectors' \ '(-r --readonly)'{-r,--readonly}'[create a read-only mapping]' \ @@ -44,10 +45,12 @@ _arguments -s \ '--veracrypt[scan also for VeraCrypt compatible device]' \ '--veracrypt-pim=[specify personal iteration multiplier for VeraCrypt compatible device]:multiplier' \ '--veracrypt-query-pim[query personal iteration multiplier for VeraCrypt compatible device]' \ - '(-M --type)'{-M+,--type=}'[specify type of device metadata]:type:(luks plain loopaes tcrypt)' \ + '(-M --type)'{-M+,--type=}'[specify type of device metadata]:type:(luks luks1 luks2 plain loopaes tcrypt bitlk)' \ '--force-password[disable password quality check (if enabled)]' \ '--perf-same_cpu_crypt[use dm-crypt same_cpu_crypt performance compatibility option]' \ '--perf-submit_from_crypt_cpus[use dm-crypt submit_from_crypt_cpus performance compatibility option]' \ + '--perf-no_read_workqueue[bypass dm-crypt workqueue and process read requests synchronously]' \ + '--perf-no_write_workqueue[bypass dm-crypt workqueue and process write requests synchronously]' \ '--deferred[device removal is deferred until the last user closes it]' \ '--serialize-memory-hard-pbkdf[use global lock to serialize memory]' \ '--pbkdf=[specify PBKDF algorithm for LUKS2]:algorithm:(argon2i argon2id pbkdf2)' \ @@ -60,14 +63,16 @@ _arguments -s \ '(-I --integrity)'{-I+,--integrity=}'[specify data integrity algorithm (LUKS2 only)]:algorithm' \ '--integrity-no-journal[disable journal for integrity device]' \ "--integrity-no-wipe[don't wipe device after format]" \ + '--integrity-legacy-padding[use inefficient legacy padding (old kernels)]' \ "--token-only[don't ask for passphrase if activation by token fails]" \ '--token-id=[specify token number]:number [any]' \ '--key-description=[specify key description]:description' \ '--sector-size=[specify encryption sector size]:size [512 bytes]' \ + '--iv-large-sectors[use IV counted in sector size (not in 512 bytes)]' \ '--persistent[set activation flags persistent for device]' \ '--label=[set label for the LUKS2 device]:label' \ '--subsystem=[set subsystem label for the LUKS2 device]:subsystem' \ - '--unbound[create unbound (no assigned data segment) LUKS2 keyslot]' \ + '--unbound[create or dump unbound (no assigned data segment) LUKS2 keyslot]' \ '--json-file=[read or write token to json file]:json file:_files -g "*.json(-.)"' \ '--luks2-metadata-size=[specify LUKS2 header metadata area size]:size (bytes)' \ '--luks2-keyslots-size=[specify LUKS2 header keyslots area size]:size (bytes)' \ @@ -77,12 +82,13 @@ _arguments -s \ '--encrypt[Encrypt LUKS2 device (in-place encryption)]' \ '--decrypt[decrypt LUKS2 device (remove encryption)]' \ '--init-only[initialize LUKS2 reencryption in metadata only]' \ + '--resume-only[resume initialized LUKS2 reencryption only]' \ '--reduce-device-size=[reduce data device size (move data offset)]:size (bytes)' \ '--hotzone-size=[specify maximal reencryption hotzone size]:size (bytes)' \ '--resilience=[specify reencryption hotzone resilience type]:resilience type:(checksum journal none)' \ '--resilience-hash=[specify reencryption hotzone checksums hash]:string' \ '--active-name=[override device autodetection of dm device to be reencrypted]:string' \ - "${ign}(- : *)--version[show version information]" \ + "${ign}(- : *)"{-V,--version}'[show version information]' \ "${ign}(- : *)"{-\?,--help}'[display help information]' \ "${ign}(- : *)--usage[display brief usage]" \ ':action:->actions' \ @@ -111,6 +117,7 @@ case $state in 'isLuks:check if device is a LUKS partition' 'luksDump:dump header information' 'tcryptDump:dump TCRYPT device information' + 'bitlkDump:dump BITLK device information' 'luksSuspend:suspend LUKS device and wipe key' 'luksResume:resume suspended LUKS device' 'luksHeaderBackup:store binary backup of headers' diff --git a/Completion/Linux/Command/_dkms b/Completion/Linux/Command/_dkms index a0a666e33..2a3c016c5 100644 --- a/Completion/Linux/Command/_dkms +++ b/Completion/Linux/Command/_dkms @@ -8,6 +8,7 @@ subcmds=( 'add:add a module/version combination to the tree for builds and installs' 'remove:remove a module from the tree' 'build:compile a module for a kernel' + 'unbuild:undoes the build of a module' "install:install a build module for it's corresponding kernel" 'uninstall:uninstall a module for a kernel' 'match:install every module that is installed for a template kernel for another kernel' @@ -17,6 +18,7 @@ subcmds=( 'mkrpm:create an RPM package for a module' 'mkdeb:create a debian binary package for a module' 'mkdsc:create a debian source package for a module' + 'mkbmdeb:create a debian package containing just binary modules' 'mkkmp:create a Kernel Module Package source RPM for a module' 'status:display the current status of modules, versions and kernels within the tree' 'autoinstall:try to install the latest revision of all modules that have been installed for other kernel revisions' @@ -32,6 +34,7 @@ args=( '--installtree=:path:_directories' '--sourcetree=:path:_directories' '--dkmsframework=:path:_directories' + '--force-version-override' '1: : _describe -t commands command subcmds' ) @@ -44,7 +47,7 @@ else '(remove|build|install|uninstall|match|status|mk(^kmp))' 'k' \ '(add|remove)' '-rpm_safe_upgrade' \ 'mk(driverdisk|kmp)' '-spec' \ - 'mk(deb|dsc|rpm)' '-legacy-postinst' \ + 'mk(deb|dsc|bmdeb|rpm)' '-legacy-postinst' \ 'mk(tarball|rpm|deb|dsc)' '-(source|binary)-only' \ '(match|build|mkkmp)' '(k|-no-(prepare|clean)-kernel|-kernelsourcedir)' \ '(|un)install' '-no-(depmod|initrd)' \ @@ -67,7 +70,7 @@ case $cmd in remove|build|install|uninstall|mk*|status) args+=( ': :->modules' ) ;| - |remove|build|install|uninstall|match|status|mk(^kmp)) + |remove|(un|)build|install|uninstall|match|status|mk(^kmp)) args+=( '(--all)*-k[specify kernel version]:kernel:->kernels' ) ;| |add|remove) args+=( "${ign}--rpm_safe_upgrade" ) ;| @@ -77,7 +80,7 @@ case $cmd in |(mk|ld)tarball) args+=( "${ign}--archive=:tarball:_files -g '*.tar(-.)'" ) ;| - |mk(deb|dsc|rpm)) + |mk(deb|dsc|bmdeb|rpm)) args+=( "${ign}--legacy-postinst=:value [1]:(0 1)" ) ;| |mk(tarball|rpm|deb|dsc)) args+=( "${ign}(--source-only --binaries-only)--"{source,binaries}-only ) ;| @@ -100,7 +103,7 @@ case $cmd in '-c[specify location of dkms.conf file]:location:_files' ) ;| - |remove|build|install|status|mk(^kmp)) + |remove|(un|)build|install|status|mk(^kmp)) args+=( '(-a --arch -k)--all[specify all relevant kernels/arches]' ) ;| |build) diff --git a/Completion/Linux/Command/_ethtool b/Completion/Linux/Command/_ethtool index dccda4684..95a8bbfb6 100644 --- a/Completion/Linux/Command/_ethtool +++ b/Completion/Linux/Command/_ethtool @@ -5,16 +5,21 @@ local -a state line expl cmds local -A opt_args _arguments -C \ + '--debug[turn on debugging messages]:mask:((1\:parser\ information))' \ + '--json[output results in JSON]' \ + '(-I --include-statistics)'{-I,--include-statistics}'[include command-related statistics in the output]' \ + '(cmds)'{-Q,--per-queue}'[apply per-queue command]: :(queue_mask):queue mask' \ "1:interface:_net_interfaces" \ - '*: :->args' \ + '*:: :->args' \ + + '(cmdc)' \ + '(cmds)'{-c,--show-coalesce}'[query the specified ethernet device for coalescing information]' \ + '(cmds)'{-C,--coalesce}'[change the coalescing settings of the specified ethernet device]' \ + '(cmds)' \ '(1)'{-h,--help}'[display help information]' \ '(1)--version[display version information]' \ {-s,--change}'[allow changing some or all settings of the specified ethernet device]' \ {-a,--show-pause}'[query the specified ethernet device for pause parameter information]' \ {-A,--pause}'[change the pause parameters of the specified ethernet device]' \ - {-c,--show-coalesce}'[query the specified ethernet device for coalescing information]' \ - {-C,--coalesce}'[change the coalescing settings of the specified ethernet device]' \ {-g,--show-ring}'[query the specified ethernet device for RX/TX ring parameter information]' \ {-G,--set-ring}'[change the RX/TX ring parameters of the specified ethernet device]' \ {-k,--show-features,--show-offload}'[query the specified ethernet device for offload information]' \ @@ -46,10 +51,21 @@ _arguments -C \ '--set-eee[set EEE settings]' \ '--set-phy-tunable[set PHY tunable]' \ '--get-phy-tunable[get PHY tunable]' \ + '--get-tunable[get tunable parameters]' \ + "--set-tunable[set driver's tunable parameters]" \ '--reset[reset hardware components]' \ '--show-fec[query device for forward error correction support]' \ '--set-fec[configure forward error correction for device]' \ - {-Q,--per-queue}'[apply per-queue command]' && return + '--cable-test[perform cable test and report the results]' \ + '--cable-test-tdr[perform cable test and report Time Domain Reflectometer data]' \ + '--show-tunnels[show tunnel-related device capabilities and state]' \ + '--monitor[listen to netlink notifications and displays them]::command:( + --all -s --change -k --show-features --show-offload -K + --features --offload --show-priv-flags --set-priv-flags -g --show-ring + -G --set-ring -l --show-channels -L --set-channels -c --show-coalesce + -C --coalesce -a --show-pause -A --pause --show-eee --set-eee + --cable-test --cable-test-tdr + )' && return if [[ -n $state ]]; then case $words[CURRENT-1] in @@ -62,7 +78,8 @@ if [[ -n $state ]]; then _wanted onoff expl 'enabled' compadd off on fi ;; - autoneg|adaptive-[rt]x|raw|hex|sg|tso|ufo|gso|lro|eee|tx-lpi|downshift|fast-link-down) + autoneg|adaptive-[rt]x|raw|hex|sg|tso|ufo|gso|lro|eee|tx-lpi|downshift) ;& + fast-link-down|energy-detect-power-down|mode) _wanted onoff expl 'enabled' compadd off on ;; rx-usecs|rx-frames|rx-usecs-irq|rx-frames-irq|tx-usecs|tx-frames) ;& @@ -71,6 +88,8 @@ if [[ -n $state ]]; then rx-frames-high|tx-usecs-high|tx-frames-high|sample-interval|dmac|rx-mini) ;& rx-jumbo|offset|length|magic|value|phyad|proto|tos|tclass|l4proto|src-port) ;& dst-port|spi|l4data|vlan-etype|vlan|user-def|action|vf|queue|loc) ;& + page|bank|i2c|first|last|step|pair|lanes) ;& + rx-copybreak|tx-copybreak|pfc-prevention-tout) ;& other|combined|tx-timer|count|msecs) _message -e numbers 'number' ;; @@ -81,7 +100,10 @@ if [[ -n $state ]]; then _wanted duplex expl 'duplex mode' compadd half full ;; port) - _wanted port expl 'device port' compadd tp aui bnc mii fibre + _wanted port expl 'device port' compadd tp aui bnc mii fibre da + ;; + master-slave) + _wanted roles expl role compadd {preferred,forced}-{master,slave} ;; advertise) _values 'hexadecimal value (or a combination of the following)' \ @@ -93,7 +115,8 @@ if [[ -n $state ]]; then '0x020[1000 full]' \ '0x8000[2500 full(not supported by IEEE standards)]' \ '0x800[10000 full]' \ - '0x03F[auto]' + '0x03F[auto]' \ + 'mode[set mode]' ;; xcvr) _wanted xcvr expl 'transceiver type' compadd internal external @@ -144,7 +167,7 @@ if [[ -n $state ]]; then _message -e contexts 'RSS context' ;; *) - case $words[2] in + case ${${(Mk)opt_args:#cmd?*}[1]#cmd?-} in -A|--pause) _values -S ' ' -w 'pause parameter' \ 'autoneg[specify if pause autonegotiation is enabled]' \ @@ -192,6 +215,9 @@ if [[ -n $state ]]; then -p|--identify) (( CURRENT = 4 )) && _message -e length 'duration (seconds)' ;; + -S|--statistics) + _arguments '(-)--all-groups' '(-)--groups:eth-phy: :eth-mac: :eth-ctrl: :rmon' + ;; -t|--test) _values -S ' ' -w 'test mode' \ '(online)offline:perform full set of tests possibly causing normal operation interruption (default)]' \ @@ -202,8 +228,10 @@ if [[ -n $state ]]; then if (( ! $words[(I)msglvl] )); then _values -S ' ' -w 'generic option' \ 'speed[set speed in Mb/s]' \ + 'lanes[set number of lanes]' \ 'duplex[set full or half duplex mode]' \ 'port[select device port]' \ + 'master-slave[configure interface role]' \ 'autoneg[specify if autonegotiation is enabled]' \ 'advertise[set the speed and duplex advertised by autonegotiation]' \ 'phyad[PHY address]' \ @@ -274,16 +302,23 @@ if [[ -n $state ]]; then fi ;; -m|--dump-module-eeprom|--module-info) - _wanted options expl option compadd -F line - raw hex offset length + _wanted options expl option compadd -F line - raw hex offset \ + length page bank i2c ;; --set-eee) _wanted behaviours expl behaviour compadd -F line - eee advertise tx-lpi tx-timer ;; --set-phy-tunable) - _wanted options expl tunable compadd -F line - downshift count fast-link-down msecs + _wanted options expl tunable compadd -F line - downshift count \ + fast-link-down msecs energy-detect-power-down ;; --get-phy-tunable) - _wanted options expl tunable compadd downshift fast-link-down + _wanted options expl tunable compadd downshift fast-link-down \ + energy-detect-power-down + ;; + --[gs]et-tunable) + _wanted options expl tunable compadd rx-copybreak tx-copybreak \ + pfc-prevention-tout ;; --reset) _wanted components expl component compadd flags dedicated all \ @@ -303,6 +338,9 @@ if [[ -n $state ]]; then _wanted options expl option compadd -c --show-coalescing -C --coalesce fi ;; + --cable-test-tdr) + _wanted options expl 'distance options' compadd first last step pair + ;; esac ;; esac diff --git a/Completion/Linux/Command/_findmnt b/Completion/Linux/Command/_findmnt index 9f13e695f..0c832364d 100644 --- a/Completion/Linux/Command/_findmnt +++ b/Completion/Linux/Command/_findmnt @@ -22,9 +22,12 @@ _arguments -s -C \ '(H -M --mountpoint :)'{-M+,--mountpoint=}'[specify the mountpoint]: :->targets' \ '(H -n --noheadings)'{-n,--noheadings}'[do not print a header line]' \ '(H -O --options)'{-O+,--options=}'[only print the filesystems with the specified options]:list of options: ' \ - '(H -o --output)'{-o+,--output=}'[specify output columns]: :->columns' \ + '(H -o --output --output-all)'{-o+,--output=}'[specify output columns]: :->columns' \ + '(H -o --output)--output-all[output all available columns]' \ '(H -p --poll)'{-p+,--poll=}'[monitor changes in /proc/self/mountinfo]::action:(mount umount remount move)' \ + '(H --real)--pseudo[print only pseudo-filesystems]' \ '(H -R --submounts)'{-R,--submounts}'[print recursively all submounts]' \ + '(H --pseudo)--real[print only real filesystems]' \ '(H -S --source :)'{-S+,--source=}'[specify the mount source]: :->sources' \ '(H -T --target :)'{-T+,--target=}'[specify the mount target]:target:_files' \ '(H -t --types)'{-t+,--types=}'[specify the type of filesystems]:filesystem types:_sequence -s , _file_systems' \ @@ -39,7 +42,7 @@ _arguments -s -C \ '(H)2:: :->targets' \ + '(format)' \ '(H)'{-D,--df}'[imitate the output of df command]' \ - '(H)'{-J,--json}'[use JASON output format]' \ + '(H)'{-J,--json}'[use JSON output format]' \ '(H)'{-l,--list}'[use list output format]' \ '(H)'{-P,--pairs}'[use key="value" output format]' \ '(H)'{-r,--raw}'[use raw output format]' \ @@ -101,7 +104,7 @@ case $state in 'prefixes:prefix:compadd -S "" LABEL= UUID= PARTLABEL= PARTUUID=' ) [[ $state = sources_targets ]] && - alts+=( 'mount-points:moutpoint:__findmnt_mountpoints' ) + alts+=( 'mount-points:mountpoint:__findmnt_mountpoints' ) _alternative $alts && ret=0 fi ;; diff --git a/Completion/Linux/Command/_networkmanager b/Completion/Linux/Command/_networkmanager index c9b09d145..1e05252b2 100644 --- a/Completion/Linux/Command/_networkmanager +++ b/Completion/Linux/Command/_networkmanager @@ -244,7 +244,7 @@ _nm_device_wifi() { local curcontext="$curcontext" state line _arguments -C \ - "1:command:(list connect hotspot rescan)" \ + "1:command:(list connect hotspot rescan show-password)" \ "*::arg:->args" case $line[1] in @@ -252,6 +252,7 @@ _nm_device_wifi() { c*) _nm_device_wifi_connect ;; ho*) _nm_device_wifi_hotspot ;; r*) _nm_device_wifi_rescan ;; + s*) _nm_device_wifi_show-password ;; esac } @@ -362,6 +363,12 @@ _nm_device_wifi_rescan() { "4:ssid:_nm_device_wifi_ssids" } +_nm_device_wifi_show-password() { + _arguments \ + "1: :(ifname)" \ + "2:interface:_nm_device_ifnames" +} + _nm_device_wifi_bssids() { local -a bssids bssids=(${(f)"$(_call_program nmcli nmcli -t -f bssid device wifi list)"}) diff --git a/Completion/Linux/Command/_pidof b/Completion/Linux/Command/_pidof index 05fb23d45..dd0649ce9 100644 --- a/Completion/Linux/Command/_pidof +++ b/Completion/Linux/Command/_pidof @@ -9,6 +9,8 @@ _arguments -C -s -w \ '(- *)'{-V,--version}'[print program version]' \ "(-s --single-shot $exargs)"{-s,--single-shot}'[return one PID only]' \ "(-c --check-root $exargs)"{-c,--check-root}'[omit processes with different root]' \ + '-q[quiet mode, only set the exit code]' \ + '(-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' \ '(-S --separator)'{-S+,--separator=}'[specify separator put between PIDs]:separator' \ diff --git a/Completion/Linux/Command/_sysstat b/Completion/Linux/Command/_sysstat index 4de855b69..eba99fc5a 100644 --- a/Completion/Linux/Command/_sysstat +++ b/Completion/Linux/Command/_sysstat @@ -11,6 +11,7 @@ _mpstat() { '--dec=-[specify the number of decimal places to use]:decimal places [2]:(0 1 2)' \ '-o[display statistics in JSON]:format:(JSON)' \ '(-A)-P[specify processor number]:processor: _values -s "," processor ALL {0..$(_call_program processors getconf _NPROCESSORS_ONLN)}' \ + '-T[display topology elements in the CPU report]' \ '-u[report CPU utilization]' \ '(- 1 2)-V[display version information]' \ '1: : _guard "^-*" interval' \ @@ -26,6 +27,7 @@ _cifsiostat() { '-t[print timestamp for each report]' \ '(- 1 2)-V[print version number]' \ '--human[print sizes in human readable format]' \ + '--pretty[make the CIFS report easier to read by a human]' \ '1: : _guard "^-*" interval' \ '2: : _guard "^-*" count' } @@ -49,7 +51,7 @@ _sadf() { '-H[display only the header of the report]' \ '(-g -j -p -r -x)-h[print on a single line when used with -d]' \ '-O[specify output options]: : _values -s , option - autoscale height\:value oneday packed showidle showinfo skipempty showhints' \ + autoscale bwcol customcol height\:value oneday packed showidle showinfo showtoc skipempty hz\:value pcparchive\:name\:_files debug' \ '-P[restrict processor dependant statistics]:processor number(zero indexed) or ALL:(ALL)' \ '--dev=-[specify block devices for which statistics are to be displayed]:block device:_files -g "*(-%)"' \ '--fs=-[specify filesystems for which statistics are to be displayed]:file system:_dir_list -s ,' \ @@ -66,6 +68,7 @@ _sadf() { '-d[output file in SQL format]' \ '-g[print data in SVG format]' \ '-j[output file in JSON]' \ + '-l[export the contents of the data file to a PCP (Performance Co-Pilot) archive]' \ '-p[print in format parsable by tools like awk]' \ '-r[print raw contents of data file]' \ '-x[output file in XML]' \ @@ -105,7 +108,7 @@ _sar() { '-o[save readings to file in binary form]:file:_files' \ '-P[report per-processor statistics]:processor: _values -s "," processors ALL' \ '-p[pretty-print device names]' \ - '-q[report queue length and load averages]' \ + '-q[report queue length and load averages]::keyword:(CPU IO LOAD MEM PSI ALL)' \ '-R[report memory statistics]' \ '-r[report memory utilization statistics]:: :(ALL)' \ '-S[report swap space utilization]' \ diff --git a/Completion/Linux/Command/_valgrind b/Completion/Linux/Command/_valgrind index 23a8cd734..b4bb3248e 100644 --- a/Completion/Linux/Command/_valgrind +++ b/Completion/Linux/Command/_valgrind @@ -205,6 +205,7 @@ _arguments -C ${(P)args} $cmd \ '(--version)--tool=-[specify valgrind tool]:valgrind tool:->tools' \ '(-h --help)'{-h,--help}'[show help information]' \ '--help-debug[show help info including debugging options]' \ + '--help-dyn-options[show the dynamically changeable options]' \ '(-)--version[show version]' \ '(-q --quiet)'{-q,--quiet}'[run silently; only print error msgs]' \ '(-v --verbose)'{-v,--verbose}'[be more verbose]' \ diff --git a/Completion/Linux/Command/_wipefs b/Completion/Linux/Command/_wipefs index 5142def8a..8642aab92 100644 --- a/Completion/Linux/Command/_wipefs +++ b/Completion/Linux/Command/_wipefs @@ -19,6 +19,7 @@ _arguments -s -S \ '(H -p --parsable -i --no-headings -J --json)'{-p,--parsable}'[print out in parsable instead of printable format]' \ '(H -q --quiet)'{-q,--quiet}'[suppress output messages]' \ '(H -t --types)'{-t+,--types=}'[limit the set of filesystem, RAIDs or partition tables]:type:_file_systems' \ + '(H)--lock=-[use exclusive device lock]::mode:(yes no nonblock)' \ '(H)*:disk device:_files -g "*(-%)" -P / -W /' \ + '(H)' \ '(- *)'{-h,--help}'[display help information]' \ -- cgit 1.4.1