From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.1 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham autolearn_force=no version=3.4.2 Received: from primenet.com.au (ns1.primenet.com.au [203.24.36.2]) by inbox.vuxu.org (OpenSMTPD) with ESMTP id 4b49e5f4 for ; Wed, 22 May 2019 00:02:28 +0000 (UTC) Received: (qmail 13145 invoked by alias); 22 May 2019 00:02:13 -0000 Mailing-List: contact zsh-workers-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Workers List List-Post: List-Help: List-Unsubscribe: X-Seq: 44349 Received: (qmail 28231 invoked by uid 1010); 22 May 2019 00:02:13 -0000 X-Qmail-Scanner-Diagnostics: from park01.gkg.net by f.primenet.com.au (envelope-from , uid 7791) with qmail-scanner-2.11 (clamdscan: 0.101.2/25454. spamassassin: 3.4.2. Clear:RC:0(205.235.26.22):SA:0(-1.9/5.0):. Processed in 3.17674 secs); 22 May 2019 00:02:13 -0000 X-Envelope-From: SRS0=W5P1=TW=yahoo.co.uk=okiddle@bounces.park01.gkg.net X-Qmail-Scanner-Mime-Attachments: | X-Qmail-Scanner-Zip-Files: | Received-SPF: pass (ns1.primenet.com.au: SPF record at bounces.park01.gkg.net designates 205.235.26.22 as permitted sender) X-Virus-Scanned: by amavisd-new at gkg.net Authentication-Results: amavisd4.gkg.net (amavisd-new); dkim=pass (2048-bit key) header.d=yahoo.co.uk X-Greylist: domain auto-whitelisted by SQLgrey-1.8.0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.co.uk; s=s2048; t=1558483286; bh=BXY8MFhgdd9iO74PO3cVtVqycQjXyKXnVf/y+E0z6yc=; h=From:To:Subject:Date:From:Subject; b=sVXR2J0wpwBDDeROIKjMfA1acKf5s1DHytCZQtcoV0EhuitBHqAh0S5QYmtZFHvS+mZ3VHAHsrJ6zUzrfObeiZwM8DBGYkr0JnBEjNd6fwXONgHpIza8JbFI9B5kzuL8R6PQXHGY0v/Ag0d4I6VzVc9WWP7yIqmzM1tIB93VCzi/rxGnJ+uQWY/gW2GCgAvy60rduH4EsM2RLfvZpXoWeh7f8kJuFTYC3XhgMbypGOCpDx34jraEyNgFiXRUQcOMGLveUT98Q42YAZMjVgKKmK2z20x0ammafCWqFQvIMchH8Sn1cTW0tzOVjh9sd9QuRkpOSYBTLvHktXe6oxd2fw== X-YMail-OSG: 0oA_lcQVM1ljfnHxSpZtxVdGKHCRF33L1E5eKy8oa9QuAUobZspUIzqSY71v5s. IhViCkNeDshFkEactd80shkooAAY1iLq0Kch3njeaVdysPYKV3tHk_..TvW9zzXhUD0jKkpUJL0e SD08uX2n8xAsbdSIrBLaa1q.2wxq3HDYuHCGbkPiRD5XryleTDxtvTFzlkWWPTXi6MtepG0obgkl .u1wDNlFVZujzvEOaD.OddrSiqzuKXHwdTnv.FuXAaw7Zcrk3zyPF_Yr_nii_YU8byDpqZAGQZJi z4mH8PDEBltqtc7IbJiz0laseGu1Ksi8lrZaOsDvzS3HWGWqC6qfA5hSGz86GOLdFJBc7g5obUbZ 34o_wPn9hUEU9uNCclOxb00Ngc4vV4IJBhaKDWz1zhWR9WbO7yOwFqUdIKHwnLfTbsXmi3Omlrmo IlTl2fdujsXiJRcuhfx7_I0eCkgJmwcOrHphQ8ANd211xhMO_5g8sfiuKRykUwsfx9ED8ilYFkDL Bna8I4xDgFcU0mx3.YLN6Ml6KPBJJJHMufo1YARj0vOIsw3KSY0fvmmGVodlBVpnxcNVWVmVCgd9 1FDP16WDIETEsVRETiIkKDJPgzbcHifwzBMkXU_5DUMaQcwlCNlTrQWL5TdL38N87C.2QuWUx_B. bwxnzHl.c6gTY903hjFHmHEiqlOfo8C1D4Yj6eI0dVWEqwn2uILSIJ9fi91S7VpuAmUTr6A5czQE AMPNaagU3y7tGcQQaXOnuNEoVrun5pFhHDnUlFCwXECzx6D.uSxBGO2iwM04rqbAgP5hPaUUJsw6 Qdb6XiwHbV7GYZirQPMv3dfgkX_.gFEdbgRM65so6iFoNa0vihWRro7sHG2hdmy_cNdCcrPZcwwa Ij.W4IUQM8_MFaxznwBTq6KtoTuFqntetpuXiJZiUG7EIi.9Kudqj.C49HMIPPuH0GOSakEvlPWy O4JSFYDKbei3DsSiI33h2apIdVTQxehlgu8AWWyo8xn1IN3mWVWKWjiMu_kltSAvQogxzkkUFJLS U7WS8vNjb0KpI66fWRc.jJtDut8ToHEpSgjiHNaq5aQR24ILQF99B9khex_qdXuiRnzKSzW0Ae1Y wtqKE1oTo021NZ9I4TyuUDRmhseu8vr7FkjJMtQ_cQobOc7mgrZOnwgJm1rcXOUu5yGi6LAi_M0B BplPMYfVn_qtFscHnOcw- From: Oliver Kiddle To: Zsh workers Subject: PATCH: completion option updates MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <18500.1558483283.1@hydra> Content-Transfer-Encoding: quoted-printable Date: Wed, 22 May 2019 02:01:23 +0200 Message-ID: <18501-1558483283.129096@JUth.QHwb.oiiP> Following is a patch to update a number of completion functions based on diffing help output. Relevant versions are as follows. ethtool 5.1 valgrind 3.15.0 sqlite 3.28.0 coreutils 8.31 (env) ruby 2.6.3p62, gem 3.0.3 dig 9.11.6-P1 util-linux 2.34 (lsblk) bash 5.0.2 ISC dhclient 4.4.1 entr 4.2 ss 190319 gnutls 3.6.7 cryptsetup 2.2.0 xsetroot 1.1.2 tree 1.8.0 GNU sed 4.7 wget 1.20.3 strace 5.0 tiff 4.0.10 links 2.19 openssh 8.0p1 - this was already done but args to -T were missed binutils 2.32 (nm and objdump) Oliver diff --git a/Completion/Linux/Command/_cryptsetup b/Completion/Linux/Comma= nd/_cryptsetup index ddb2ad3a9..45159d0be 100644 --- a/Completion/Linux/Command/_cryptsetup +++ b/Completion/Linux/Command/_cryptsetup @@ -6,7 +6,8 @@ local -a actions state line expl (( $#words > 2 )) && ign=3D'!' _arguments -s \ '(-v --verbose)'{-v,--verbose}'[enable verbose mode]' \ - '--debug[enable debug mode]' \ + '--debug[show debug messages]' \ + '--debug-json[show debug messages including JSON metadata]' \ '(-c --cipher)'{-c+,--cipher=3D}'[set cipher]:cipher specification' \ '(-h --hash)'{-h+,--hash=3D}'[hash algorithm]:hash algorithm' \ '(-y --verify-passphrase)'{-y,--verify-passphrase}'[query for password = twice]' \ @@ -48,6 +49,7 @@ _arguments -s \ '--perf-same_cpu_crypt[use dm-crypt same_cpu_crypt performance compatib= ility option]' \ '--perf-submit_from_crypt_cpus[use dm-crypt submit_from_crypt_cpus perf= ormance compatibility option]' \ '--deferred[device removal is deferred until the last user closes it]' = \ + '--serialize-memory-hard-pbkdf[use global lock to serialize memory]' \ '--pbkdf=3D[specify PBKDF algorithm for LUKS2]:algorithm:(argon2i argon= 2id pbkdf2)' \ '--pbkdf-memory=3D[specify PBKDF memory cost limit]:limit (kilobytes)' = \ '--pbkdf-parallel=3D[specify PBKDF parallel cost]:threads' \ @@ -67,6 +69,19 @@ _arguments -s \ '--subsystem=3D[set subsystem label for the LUKS2 device]:subsystem' \ '--unbound[create unbound (no assigned data segment) LUKS2 keyslot]' \ '--json-file=3D[read or write token to json file]:json file:_files -g "= *.json(-.)"' \ + '--luks2-metadata-size=3D[specify LUKS2 header metadata area size]:size= (bytes)' \ + '--luks2-keyslots-size=3D[specify LUKS2 header keyslots area size]:size= (bytes)' \ + '--refresh[refresh (reactivate) device with new parameters]' \ + '--keyslot-key-size=3D[specify size of the encryption key]:size (bits)'= \ + '--keyslot-cipher=3D[specify cipher used for LUKS2 keyslot encryption]:= cipher' \ + '--encrypt[Encrypt LUKS2 device (in-place encryption)]' \ + '--decrypt[decrypt LUKS2 device (remove encryption)]' \ + '--init-only[initialize LUKS2 reencryption in metadata only]' \ + '--reduce-device-size=3D[reduce data device size (move data offset)]:si= ze (bytes)' \ + '--hotzone-size=3D[specify maximal reencryption hotzone size]:size (byt= es)' \ + '--resilience=3D[specify reencryption hotzone resilience type]:resilien= ce type:(checksum journal none)' \ + '--resilience-hash=3D[specify reencryption hotzone checksums hash]:stri= ng' \ + '--active-name=3D[override device autodetection of dm device to be reen= crypted]:string' \ "${ign}(- : *)--version[show version information]" \ "${ign}(- : *)"{-\?,--help}'[display help information]' \ "${ign}(- : *)--usage[display brief usage]" \ @@ -82,6 +97,7 @@ case $state in 'resize:resize an active mapping' 'benchmark:benchmark cipher' 'repair:try to repair on-disk metadata' + 'reencrypt:reencrypt LUKS2 device' 'erase:erase all keyslots' 'convert:convert LUKS from/to LUKS2 format' 'config:set permanent configuration options for LUKS2' @@ -114,7 +130,7 @@ case $state in benchmark) args=3D( '--cipher=3D:cipher' );; luksKillSlot) args=3D( $device ':key slot number' );; remove|status|resize|*lose|luksSuspend|luksResume) args=3D( $mappin= g );; - erase|convert|config|repair|(luks(AddKey|Erase|RemoveKey|DelKey|UUI= D|Dump)|isLuks)) + erase|convert|config|repair|reencrypt|(luks(AddKey|Erase|RemoveKey|= DelKey|UUID|Dump)|isLuks)) args=3D( $device ) ;; luks(Format|AddKey|RemoveKey|ChangeKey|ConvertKey)) diff --git a/Completion/Linux/Command/_ethtool b/Completion/Linux/Command/= _ethtool index 33b7681dc..dccda4684 100644 --- a/Completion/Linux/Command/_ethtool +++ b/Completion/Linux/Command/_ethtool @@ -48,7 +48,8 @@ _arguments -C \ '--get-phy-tunable[get PHY tunable]' \ '--reset[reset hardware components]' \ '--show-fec[query device for forward error correction support]' \ - '--set-fec[configure forward error correction for device]' && return + '--set-fec[configure forward error correction for device]' \ + {-Q,--per-queue}'[apply per-queue command]' && return = if [[ -n $state ]]; then case $words[CURRENT-1] in @@ -61,7 +62,7 @@ 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) + autoneg|adaptive-[rt]x|raw|hex|sg|tso|ufo|gso|lro|eee|tx-lpi|downshift|= fast-link-down) _wanted onoff expl 'enabled' compadd off on ;; rx-usecs|rx-frames|rx-usecs-irq|rx-frames-irq|tx-usecs|tx-frames) ;& @@ -70,7 +71,7 @@ if [[ -n $state ]]; then rx-frames-high|tx-usecs-high|tx-frames-high|sample-interval|dmac|rx-min= i) ;& rx-jumbo|offset|length|magic|value|phyad|proto|tos|tclass|l4proto|src-p= ort) ;& dst-port|spi|l4data|vlan-etype|vlan|user-def|action|vf|queue|loc) ;& - other|combined|tx-timer|count) + other|combined|tx-timer|count|msecs) _message -e numbers 'number' ;; speed) @@ -279,10 +280,10 @@ if [[ -n $state ]]; then _wanted behaviours expl behaviour compadd -F line - eee advertise t= x-lpi tx-timer ;; --set-phy-tunable) - _wanted options expl tunable compadd -F line - downshift count + _wanted options expl tunable compadd -F line - downshift count fast= -link-down msecs ;; --get-phy-tunable) - _wanted options expl tunable compadd downshift + _wanted options expl tunable compadd downshift fast-link-down ;; --reset) _wanted components expl component compadd flags dedicated all \ @@ -295,6 +296,13 @@ if [[ -n $state ]]; then _wanted encodings expl encoding compadd -F line auto off rs baser fi ;; + -Q|--pre-queue) + if (( CURRENT =3D=3D 4 )); then + _wanted options expl option compadd - queue_mask + elif (( CURRENT =3D=3D 6)); then + _wanted options expl option compadd -c --show-coalescing -C --coa= lesce + fi + ;; esac ;; esac diff --git a/Completion/Linux/Command/_lsblk b/Completion/Linux/Command/_l= sblk index a95ebe776..8a9bc18bf 100644 --- a/Completion/Linux/Command/_lsblk +++ b/Completion/Linux/Command/_lsblk @@ -1,11 +1,12 @@ #compdef lsblk = local sep ret=3D1 -local -a values dedup suf=3D( -qS , ) +local -a values dedup suf local curcontext=3D"$curcontext" state line expl typeset -A opt_args = _arguments -C -s -S \ + '(H -E --dedup)'{-E+,--dedup=3D}'[de-duplicate output by specified colu= mn]:column:->columns' \ '(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]" \ @@ -30,7 +31,7 @@ _arguments -C -s -S \ '(H)'{-i,--ascii}'[output ascii characters only]' \ '(H)'{-J,--json}'[use JSON output format]' \ '(H)'{-l,--list}'[use list format output]' \ - '(H)'{-t,--tree}'[use tree format output]' \ + '(H)'{-T+,--tree=3D}'[use tree format output]:column:->columns' \ '(H)'{-P,--pairs}'[use key=3D"value" output format]' \ '(H)'{-r,--raw}'[use raw output format]' \ + 'H' \ @@ -44,6 +45,7 @@ case $state in ;| *list) dedup=3D( ${(Ms.,.)PREFIX##*,} ${(Ms.,.)SUFFIX%%,*} ) + suf=3D( -qS , ) compset -S ',*' && suf=3D() compset -P '*,' ;| diff --git a/Completion/Linux/Command/_ss b/Completion/Linux/Command/_ss index b1bfa207c..f19b94995 100644 --- a/Completion/Linux/Command/_ss +++ b/Completion/Linux/Command/_ss @@ -20,6 +20,7 @@ _arguments -C -s \ "($info -i --info)"{-i,--info}'[show internal TCP information]' \ "($info)--tipcinfo[show internal tipc socket information]" \ "($info -s --summary)"{-s,--summary}'[print summary statistics]' \ + "($info)--tos[show tos and priority information]" \ "($info -b --bpf)"{-b,--bpf}'[show bpf filter socket information]' \ "($info -E --events)"{-E,--events}'[continually display sockets as they= are destroyed]' \ "($info -Z --context)"{-Z,--context}'[display process SELinux security = contexts]' \ diff --git a/Completion/Linux/Command/_strace b/Completion/Linux/Command/_= strace index 83ccc6afb..e6dc88659 100644 --- a/Completion/Linux/Command/_strace +++ b/Completion/Linux/Command/_strace @@ -19,6 +19,7 @@ _arguments -C -s \ '(-c)-T[show the time spent in system calls]' \ '(-xx)-x[print all non-ASCII strings in hexadecimal string format]' \ '(-x)-xx[print all strings in hexadecimal string format]' \ + '-X+[set the format for printing of named constants and flags]:format:(= raw abbrev verbose)' \ '(-c -yy)-y[print paths associated with file descriptor arguments]' \ '(-c -y)-yy[print protocol specific information associated with socket = file descriptors]' \ '(-C -i -k -r -ff -t -tt -ttt -T -y -yy)-c[count time, calls, and error= s for each system call and report a summary]' \ diff --git a/Completion/Linux/Command/_valgrind b/Completion/Linux/Command= /_valgrind index 21b7d88c7..4a710e7f7 100644 --- a/Completion/Linux/Command/_valgrind +++ b/Completion/Linux/Command/_valgrind @@ -39,6 +39,8 @@ common_report_errors=3D( '--exit-on-first-error=3D-[exit on the first error]:enable:(yes no)' \ '--error-exitcode=3D-[exit code to return if errors found]:exit code' \ '--error-markers=3D-[add lines with begin/end markers before/after]:mar= kers (begin,end)' \ + '(--show-error-list)-s[show detected errors list and suppression counts= at exit]' \ + '--show-error-list=3D-[show detected errors list and suppression counts= at exit]:enable [no]:(yes no)' '--keep-debuginfo=3D-[keep symbols etc for unloaded code]:enable:(yes n= o)' \ '--show-below-main=3D-[continue stack traces below main()]:enable [no]:= (yes no)' \ '--default-suppression=3D-[load default suppressions]:enable [yes]:(yes= no)' \ @@ -84,6 +86,7 @@ args_addrcheck=3D( args_drd=3D( $common_own_malloc $common_read_varinfo + $common_report_errors '--check-stack-var=3D-[detect data races on stack variables]:enable [no= ]:(yes no)' '--exclusive-threshold=3D-[print an error if any mutex or writer lock i= s held longer than specified time]:time (ms)' '--first-race-only=3D-[report only the first detected data race]:enable= [no]:(yes no)' @@ -111,6 +114,7 @@ args_drd=3D( args_memcheck=3D( $args_addrcheck $common_read_varinfo + $common_report_errors ) = args_cachegrind=3D( @@ -125,6 +129,7 @@ args_cachegrind=3D( args_helgrind=3D( $common_own_malloc $common_read_varinfo + $common_report_errors '--free-is-write=3D-[treat heap frees as writes]:enable [no]:(yes no)' '--track-lockorders=3D-[show lock ordering errors]:enable [yes]:(no yes= )' '--history-level=3D-[specify amount of history to show for data races]:= level [full]:(( @@ -186,6 +191,7 @@ args_exp_dhat=3D( = args_exp_sgcheck=3D( $common_partial + $common_report_errors '--enable-sg-checks=3D-[enable stack & global array checking]:enable [y= es]:(yes no)' ) = diff --git a/Completion/Unix/Command/_bash b/Completion/Unix/Command/_bash index cc219f788..383b369cb 100644 --- a/Completion/Unix/Command/_bash +++ b/Completion/Unix/Command/_bash @@ -22,6 +22,7 @@ args=3D( '--noprofile[do not load /etc/profile, ~/.bash_profile, etc.]' '--norc[do not load ~/.bashrc]' '--posix[enable POSIX mode]' + '--pretty-print[format a shell script]' '(-r --restricted)--restricted[act as restricted shell]' '(: -)--version[display version information]' # This is ugly, but this way the + variants have accurate descriptions.= Note diff --git a/Completion/Unix/Command/_dhclient b/Completion/Unix/Command/_= dhclient index ee309e1fd..fe5347bbc 100644 --- a/Completion/Unix/Command/_dhclient +++ b/Completion/Unix/Command/_dhclient @@ -45,7 +45,7 @@ case $OSTYPE in '-g[force giaddr field]:relay:_hosts' '-i[use a DUID with DHCPv4 clients]' '-I[use the standard DDNS scheme]' - '--version[display version number]' + '(-)--version[display version number]' '(-4)-S[use Information-request to get only stateless configuration= ]' '(-4)*-T[ask for IPv6 temporary addresses]' '(-4)-P[enable IPv6 prefix delegation]' @@ -67,6 +67,10 @@ case $OSTYPE in '--request-options[specify list of options the client is to request= from the server]:options' '--timeout[specify time after which dhclient will decide that no DH= CP servers can be contacted]:timeout' '--dad-wait-time[specify maximum time to wait for duplicate address= detection]:time (seconds)' + '--prefix-len-hint[specify length to request when requesting new pr= efixes]:length' + '--decline-wait-time[specify time an IPv4 client should wait betwee= n declining an address and issuing a discover]:time (seconds)' + '--address-prefix-len[specify length of the prefix for IPv6 address= es]:length' + '(-)'{--help,-h}'[display usage information]' ) ;; esac diff --git a/Completion/Unix/Command/_dig b/Completion/Unix/Command/_dig index d37f18643..d2ffb0a33 100644 --- a/Completion/Unix/Command/_dig +++ b/Completion/Unix/Command/_dig @@ -78,6 +78,7 @@ _arguments -s -C $args \ '*-6[use IPv6 only]' \ '*-t+[specify type]:type:_dns_types' \ '*-q+[specify host name to query]:host:_hosts' \ + "-r[don't read ~/.digrc]" \ '*-x+[reverse lookup]:IP address' \ '*-k+[specify TSIG key file]:file:_files' \ '*-y+[specify TSIG key]:hmac\:name\:key' \ diff --git a/Completion/Unix/Command/_entr b/Completion/Unix/Command/_entr index e1ba7cf2b..3e2261a18 100644 --- a/Completion/Unix/Command/_entr +++ b/Completion/Unix/Command/_entr @@ -4,11 +4,12 @@ local curcontext=3D"$curcontext" state state_descr line = ret=3D1 typeset -A opt_args = _arguments -s -S \ + '(-r)-a[respond to all events rather than consolidating them to avoid l= ooping]' \ '-c[execute clear before invoking utility]' \ '-d[track directories and exit if a new file is added]' \ "-n[non-interactive mode; don't access TTY]" \ '-p[postpone first execution of the utility]' \ - '-r[reload a persistent child process]' \ + '(-a)-r[reload a persistent child process]' \ '(*)-s[evaluate the first argument using interpreter specified by $SHEL= L]' \ '(-): :->command' \ '*::arguments:_normal' && ret=3D0 diff --git a/Completion/Unix/Command/_env b/Completion/Unix/Command/_env index 932a7fc89..27978d936 100644 --- a/Completion/Unix/Command/_env +++ b/Completion/Unix/Command/_env @@ -11,6 +11,10 @@ case $variant in '(--ignore-environment -i --help --version)*'{-u+,--unset=3D}'[remo= ve variable from the environment]:env var to remove:_parameters -g "*expor= t*"' '(-C --chdir)'{-C+,--chdir=3D}'[change working directory]:directory= :_directories' '(-S --split-string)'{-S+,--split-string=3D}'[perform word splittin= g]:string to split' + '--block-signal=3D[block delivery of signals to command]:signal:_se= quence _signals' + '--default-signal=3D[reset handling of signals to the default]:sign= al:_sequence _signals' + '--ignore-signal=3D[set handling of signals to do nothing]:signal:_= sequence _signals' + '--list-signal-handling[list non default signal handling to stderr]= ' '(-v --debug)'{-v,--debug}'[print verbose information for each proc= essing step]' "${ign}(- *)--help[display help information]" "${ign}(- *)--version[display version information]" diff --git a/Completion/Unix/Command/_gem b/Completion/Unix/Command/_gem index 512d2d193..b35a5c358 100644 --- a/Completion/Unix/Command/_gem +++ b/Completion/Unix/Command/_gem @@ -28,12 +28,12 @@ if [[ $state =3D command ]]; then else cmds=3D( build cert check cleanup contents dependency environment fetch - generate_index help install list lock mirror open outdated owner + generate_index help install info list lock mirror open outdated own= er pristine push query rdoc search server signin signout sources specification stale uninstall unpack update which yank ) cmds=3D( ${(M)cmds:#${words[1]}*} ) - if (( ${#cmds} =3D=3D 1 )); then + if (( ${#cmds} =3D=3D 1 )) || [[ $cmds[1] =3D install ]]; then cmd=3D"$cmds[1]" curcontext=3D"${curcontext%:*:*}:gem-${cmd}:" fi @@ -65,15 +65,19 @@ if [[ $state =3D command ]]; then contents|pristine|rdoc) args+=3D( '(*)--all[apply to all installed gems]' ) ;| - list|query) def[local]=3D'!' ;| + info|list|query) def[local]=3D'!' ;| search) def[remote]=3D'!' ;| - list|query|search) + info|list|query|search) args+=3D( ${(e)lropts} '(-a --all)'{-a,--all}'[display all gem versions]' '(-e --exact)'{-e,--exact}'[use exact string matching instead of = regex]' '(-I --no-installed -i --installed)'{-i,--installed}'[check if ge= m is installed]' '(-I --no-installed -i --installed)'{-I,--no-installed}'[check if= gem is not installed]' '--no-versions[display only gem names]' + ) + ;| + list|query|search) + args+=3D( '(-d --details)'{-d,--details}'[display detailed gem information]= ' '!(-d --details)--no-details' ) @@ -114,11 +118,15 @@ if [[ $state =3D command ]]; then '--suggestions[suggest alternates when gems are not found]' ) ;| + (un|)install|pristine|update) + args+=3D( + '(-n --bindir)'{-n,--bindir=3D}'[specify directory where binary f= iles are located]:directory:_directories' + ) + ;| (un|)install|update) args+=3D( '--ignore-dependencies[ignore dependency requirements]' '(-i --install-dir)'{-i,--install-dir=3D}'[specify gem repository= directory to get installed gems]:directory:_directories' - '(-n --bindir)'{-n,--bindir=3D}'[specify directory where binary f= iles are located]:directory:_directories' ) ;| owner|push) @@ -130,13 +138,18 @@ if [[ $state =3D command ]]; then owner|push|signin|yank) args+=3D( '--host=3D[use another gemcutter-compatible host]:host:_u= rls' ) ;| + owner|push|signin) + args+=3D( '--otp=3D[specify digit code for multifactor authenticati= on]:code' ) + ;| install|pristine|update) args+=3D( '(-E --env-shebang)'{-E,--env-shebang}'[rewrite executabl= es with a shebang of /usr/bin/env]' ) ;| - build) args+=3D( - '--force[skip validation of the spec]' + '(--strict)--force[skip validation of the spec]' + '(--force)--strict[consider warnings as errors when validating th= e spec]' + '(-o --output)'{-o+,--output=3D}'[output gem with the given filen= ame]:file:_files' + '-C+[run as if specified directory was the current directory]:dir= ectory:_directories' '1:gemspec file:_files -g "*.gemspec(-.)"' ) ;; @@ -150,6 +163,7 @@ if [[ $state =3D command ]]; then '(-K --private-key)'{-K,--private-key=3D}'[specify key for --sign= or --build]:key' '(-s --sign)'{-s,--sign=3D}'[sign specified certificate with the = key from -K and the certificate from -C]:certificate' '(-d --days)'{-d,--days=3D}'[specify days before certificate expi= res]:days' + '(-R --re-sign)'{-R,--re-sign}'[re-sign the certificate]' ) ;; check) @@ -161,7 +175,10 @@ if [[ $state =3D command ]]; then ) ;; cleanup) - args+=3D( '(-n -d --dryrun)'{-n,-d,--dryrun}"[don't uninstall gems]= " ) + args+=3D( + '(-n -d --dryrun)'{-n,-d,--dryrun}"[don't uninstall gems]" + "--user-install[cleanup in user's home directory instead of GEM_H= OME]" + ) ;; contents) args+=3D( diff --git a/Completion/Unix/Command/_gnutls b/Completion/Unix/Command/_gn= utls index 6035c5f83..b0d33e2fa 100644 --- a/Completion/Unix/Command/_gnutls +++ b/Completion/Unix/Command/_gnutls @@ -60,6 +60,7 @@ case "$service" in '--no-ca-verification[disable CA certificate verification]' '!--ca-= verification' '--ocsp[enable OCSP certificate verification]' '!--no-oscp' '(-r --resume)'{-r,--resume}'[establish a session and resume]' + '--earlydata=3D[send early data on resumption from the specified fi= le]:file:_files' '(-e --rehandshake)'{-e,--rehandshake}'[connect, establish a sessio= n and rehandshake immediately]' "--verify-hostname-str=3D[specify server's hostname to use for vali= dation]:hostname" '(-s --starttls)'{-s,--starttls}'[start TLS on EOF or SIGALRM]' @@ -89,6 +90,7 @@ case "$service" in '--inline-commands[inline commands of the form ^^]' '--inline-commands-prefix=3D[change delimiter used for inline comma= nds]:delimiter [^]' '--fips140-mode[report status of FIPS140-2 mode in gnutls library]' + '--logfile=3D[redirect informational messages to a specific file]:f= ile:_files' ) ;; = @@ -97,6 +99,8 @@ case "$service" in '--sni-hostname-fatal[send fatal alert on sni-hostname mismatch]' '*--alpn=3D[specify ALPN protocol to be enabled by the server]:prot= ocol' '--alpn-fatal[send fatal alert on non-matching ALPN name]' + '--earlydata[accept early data]' + '--maxearlydata=3D[specify maximum early data size to accept]:size' "--nocookie[don't require cookie on DTLS sessions]" '(-g --generate)'{-g,--generate}'[generate Diffie-Hellman parameter= s]' '(-q --quiet)'{-q,--quiet}'[suppress some messages]' @@ -189,6 +193,8 @@ case "$service" in '--stdout-info[print information to stdout instead of stderr]' '--ask-pass[enable interaction for entering password when in batch = mode]' '--pkcs-cipher=3D[specify cipher to use for pkcs operations]:cipher= :(3des 3des-pkcs12 aes-128 aes-192 aes-256 rc2-40 arcfour)' + '!(--no-text)--text' + "--no-text[don't output textual information before PEM-encoded cert= ificates, private keys, etc]" ) ;; = diff --git a/Completion/Unix/Command/_links b/Completion/Unix/Command/_lin= ks index 8bb9fee1c..3f55e9c8b 100644 --- a/Completion/Unix/Command/_links +++ b/Completion/Unix/Command/_links @@ -108,10 +108,10 @@ _arguments -C \ '-html-target-in-new-window[allow opening new windows from html]' \ '-html-margin[specify margin]:margin (spaces)' \ '-html-user-font-size[specify font size in graphics mode]:size' \ - '-html-t-text-color[specify text color in text mode]:color (0..15)' \ - '-html-t-link-color[specify link color in text mode]:color (0..15)' \ - '-html-t-background-color[specify background color in text mode]:color = (0..15)' \ - '-html-t-ignore-document-color[ignore colors from HTML in text mode]:ig= nore:(0 1)' \ + '-html-text-color[specify text color in text mode]:color (0..15)' \ + '-html-link-color[specify link color in text mode]:color (0..15)' \ + '-html-background-color[specify background color in text mode]:color (0= ..15)' \ + '-html-ignore-document-color[ignore colors from HTML in text mode]:igno= re:(0 1)' \ '-html-g-text-color[specify text color in graphics mode]:color (0xRRGGB= B)' \ '-html-g-link-color[specify link color in graphics mode]:color (0xRRGGB= B)' \ '-html-g-background-color[specify background color in graphics mode]:co= lor (0xRRGGBB)' \ diff --git a/Completion/Unix/Command/_nm b/Completion/Unix/Command/_nm index 4754a6623..423fd3223 100644 --- a/Completion/Unix/Command/_nm +++ b/Completion/Unix/Command/_nm @@ -59,6 +59,8 @@ if _pick_variant -r variant binutils=3DGNU elftoolchain=3D= elftoolchain elfutils=3Delfu binutils) compset -P '@' && files=3D'*:options file:_files' args+=3D( + '!(--no-recurse-limit)--recurse-limit' + '--no-recurse-limit[disable demangling recursion limit]' '(-f --format -P)-f+[specify output format]:format:(bsd sysv posix)' '(-C --no-demangle)--demangle=3D-[decode symbol names]::style:(auto gnu = lucid arm hp edg gnu-v3 java gnat rust dlang)' '--plugin[load specified plugin]:plugin' diff --git a/Completion/Unix/Command/_objdump b/Completion/Unix/Command/_o= bjdump index 07dbd31de..d502f2803 100644 --- a/Completion/Unix/Command/_objdump +++ b/Completion/Unix/Command/_objdump @@ -24,6 +24,7 @@ case $variant in "*"{-P,--private=3D}"[Display object format specific contents]:option= " "(-h --section-headers --headers)"{-h,--section-headers,--headers}"[D= isplay the contents of the section headers]" "(-x --all-headers)"{-x,--all-headers}"[Display the contents of all h= eaders]" + '--disassemble=3D[display assembler contents for specified symbol]:sy= mbol' "(-D --disassemble-all)"{-D,--disassemble-all}"[Display assembler con= tents of all sections]" "(-S --source)"{-S,--source}"[Intermix source code with disassembly]" "(-g --debugging)"{-g,--debugging}"[Display debug information in obje= ct file]" @@ -55,6 +56,8 @@ case $variant in "(-F --file-offsets)"{-F,--file-offsets}"[Include file offsets when d= isplaying information]" "(-C --demangle)-C[Decode mangled/processed symbol names]" "(-C --demangle)--demangle=3D-[decode mangled/processed symbol names]= ::style:(auto gnu lucid arm hp edg gnu-v3 java gnat rust dlang)" + '!(--no-recurse-limit)--recurse-limit' + '--no-recurse-limit[disable demangling recursion limit]' "(-w --wide)"{-w,--wide}"[Format output for more than 80 columns]" "(-z --disassemble-zeroes)"{-z,--disassemble-zeroes}"[Do not skip blo= cks of zeroes when disassembling]" = diff --git a/Completion/Unix/Command/_ruby b/Completion/Unix/Command/_ruby index d69c378fc..11df80f5d 100644 --- a/Completion/Unix/Command/_ruby +++ b/Completion/Unix/Command/_ruby @@ -36,15 +36,24 @@ opts=3D( '-s[enable some switch parsing for switches after script name]' '-S[look for the script using PATH environment variable]' '-T-[turn on tainting checks]::taint level [1]:((0\:strings\ from\ stre= ams/environment/ARGV\ are\ tainted 1\:no\ dangerous\ operation\ by\ tainte= d\ value 2\:process/file\ operations\ prohibited 3\:all\ generated\ object= s\ are\ tainted 4\:no\ global\ \(non-tainted\)\ variable\ modification/no\= direct\ output))' - '(-v --verbose)'{-v,--verbose}'[print version number, then turn on verb= ose mode]' + '(--verbose)-v[print version number, then turn on verbose mode]' + '(-v)--verbose[turn on verbose mode and disable script from stdin]' '-x-[strip off text before #!ruby line and perhaps cd to directory]:dir= ectory:_files -/' '(1 * -)--copyright[print the copyright]' - --{en,dis}'able=3D[enable or disable features]:feature:(gems did_you_me= an rubyopt frozen_string_literal all)' + --{en,dis}'able=3D[enable or disable features]:feature:(gems did_you_me= an rubyopt frozen_string_literal jit all)' \!--{en,dis}able-{gems,rubyopt,all} '--dump=3D[dump debug information]:information:_sequence compadd - insn= s yydebug parsetree parsetree_with_comment' --{external,internal}'-encoding=3D:charset:->charsets' '!'{-y,--yydebug} '!--dump=3D:target:(version copyright usage yydebug syntax parsetree pa= rsetree_with_comment insns)' + '--jit[enable jit with default options]' + '--jit-warnings[enable printing JIT warnings]' + '--jit-debug[enable JIT debugging (very slow)]' + '--jit-wait[wait until JIT compilation is finished everytime (for testi= ng)]' + '--jit-save-temps[save JIT temporary files]' + '--jit-verbose=3D-[print JIT logs of level num or less to stderr]:maxim= um log level [0]' + '--jit-max-cache=3D-[specify max number of methods to be JIT-ed in a ca= che]:number [1000]' + '--jit-min-calls=3D-[specify number of calls to trigger JIT]:calls [5]' ) = irb=3D( @@ -70,7 +79,6 @@ irb=3D( = erb=3D( "-P[don't evaluate lines which start with %]" - '-S[specify safe level for running script]:level:(1 2 3 4)' '-T[specify trim mode]:mode [0]:((0\:EOL\ remains 1\:EOL\ removed\ if\ = line\ ends\ with\ %\> 2\:EOL\ removed\ if\ line\ starts\ with\ \<%\ and\ e= nds\ with\ %\> -\:EOL\ is\ removed\ if\ line\ ends\ with\ -%\>,\ leading\ = whitespace\ removed\ after\ \<%-))' '(-d --debug)'{-d,--debug}'[set debugging flags (set $DEBUG to true)]' '-n[used with -x, prepends line number to output]' diff --git a/Completion/Unix/Command/_sed b/Completion/Unix/Command/_sed index f03278364..b08eaa281 100644 --- a/Completion/Unix/Command/_sed +++ b/Completion/Unix/Command/_sed @@ -66,6 +66,7 @@ elif _pick_variant -r variant gnu=3DGNU unix --version; = then aopts=3D( ) (( $#words > 2 )) && ign=3D'!' args+=3D( + '--debug[annotate program execution]' '--follow-symlinks[follow symlinks when processing in place]' '(-i --in-place -s --separate)'{-i-,--in-place=3D-}$inplace '(-c --copy)'{-c,--copy}'[copy instead of rename when shuffling files= in in-place mode]' diff --git a/Completion/Unix/Command/_sqlite b/Completion/Unix/Command/_sq= lite index 4604fb40c..924b80926 100644 --- a/Completion/Unix/Command/_sqlite +++ b/Completion/Unix/Command/_sqlite @@ -49,6 +49,7 @@ options+=3D( '(-*batch -*interactive)'$^dashes'-batch[force batch I/O]' '(-*batch -*interactive)'$^dashes'-interactive[force interactive I/O]' $^dashes'-lookaside[specify size and number of entries for lookaside me= mory]:size (bytes): :entries' + $^dashes'-memtrace[trace all memory allocations and deallocations' $^dashes'-mmap[set default mmap size]:size' $^dashes'-newline[set output row separator]:separator [\n]' $^dashes'-pagecache[specify size and number of slots for page cache mem= ory]:size (bytes): :slots' @@ -69,6 +70,7 @@ if [[ -n $words[(r)-A*] ]]; then + '(commands)' \ '(-c --create)'{-c,--create}'[create a new archive]' '(-u --update)'{-u,--update}'[update or add files to an existing arch= ive]' + '(-i --insert)'{-i,--insert}'[like -u but always add even if mtime un= changed]' '(-t --list)'{-t,--list}'[list contents of archive]' '(-x --extract)'{-x,--extract}'[extract files from archive]' ) diff --git a/Completion/Unix/Command/_ssh b/Completion/Unix/Command/_ssh index 408f1d05d..f8f4e0091 100644 --- a/Completion/Unix/Command/_ssh +++ b/Completion/Unix/Command/_ssh @@ -97,7 +97,7 @@ _ssh () { '-M+[specify maximum number of signatures]:number' \ '-s+[add keys provided by the PKCS#11 shared library]:library:_file= s -g "*.(so|dylib)(|.<->)(-.)"' \ '-t+[set maximum lifetime for identity]:maximum lifetime (in second= s or time format):' \ - "-T[test usability of identity files' private keys]" \ + "-T[test usability of identity files' private keys]:*:public key fi= le:_files -g '*.pub(-.)'" \ '-v[verbose mode]' \ '-q[be quiet after a successful operation]' \ '-X[unlock the agent]' \ diff --git a/Completion/Unix/Command/_tiff b/Completion/Unix/Command/_tiff index 128aeb0c0..da55b541c 100644 --- a/Completion/Unix/Command/_tiff +++ b/Completion/Unix/Command/_tiff @@ -249,7 +249,7 @@ if [[ -n "$state" ]]; then _message -e values "compression quality (0-100), or \`r' (output RG= B)" ret=3D0 ;; - lzw|lzma|zip) + lzw|lzma|zip|zstd|webp) _values 'LZW and deflate option' \ '1[without differencing]' \ '2[with differencing]' && ret=3D0 @@ -260,7 +260,7 @@ if [[ -n "$state" ]]; then while _tags; do while _next_label values expl 'compression scheme'; do compadd "$expl[@]" - none jbig g4 packbits sgilog && ret=3D0 - compadd "$expl[@]" -qS: - lzw zip lzma jpeg g3 && ret=3D0 + compadd "$expl[@]" -qS: - lzw zip lzma zstd webp jpeg g3 && ret=3D= 0 done (( ret )) || return 0 done diff --git a/Completion/Unix/Command/_tree b/Completion/Unix/Command/_tree index 4fd9aed44..595249126 100644 --- a/Completion/Unix/Command/_tree +++ b/Completion/Unix/Command/_tree @@ -49,6 +49,7 @@ _arguments -s -S \ '(-n -C -X)-H[turn on HTML output]:base HREF' \ '(-n -C -X)-T[title for HTML output]:title' \ '(-n -C -X)--nolinks[turn off hyperlinks in HTML output]' \ + '--fromfile[read paths from specified files]' \ '(-)--version[version of tree]' \ '(-)--help[verbose usage listing]' \ '*:directory:_files -/' diff --git a/Completion/Unix/Command/_wget b/Completion/Unix/Command/_wget index 2a4e722d8..49c8e8b01 100644 --- a/Completion/Unix/Command/_wget +++ b/Completion/Unix/Command/_wget @@ -16,6 +16,7 @@ _arguments -C -s \ '*-n+[turn off flags]:flags:->noflags' \ '--report-speed=3D:type:(bits)' \ '(--input-file -i)'{--input-file=3D,-i+}'[specify input file]:file cont= aining URLs:_files' \ + '--input-metalink=3D[download files covered in local Metalink file]:fil= e:_files' \ '(--force-html -F)'{--force-html,-F}'[treat input file as html]' \ '(--base -B)'{--base=3D,-B+}'[prepend URL to relative links]:base URL:_= urls' \ '--config=3D[specify config file]:config file:_files' \ @@ -57,7 +58,11 @@ _arguments -C -s \ '--local-encoding=3D[specify local encoding for IRIs]:encoding' \ '--remote-encoding=3D[specify default remote encoding]:encoding' \ '--unlink[remove file before clobber]' \ - '--no-xattr[turn off storage of metadata in extended file attributes]' = \ + '--keep-badhash[Keep files with checksum mismatch (append .badhash)]' \ + '--metalink-index=3D[metalink application/metalink4+xml metaurl ordinal= ]:number' \ + '--metalink-over-http[use Metalink metadata from HTTP response headers]= ' \ + '--preferred-location[preferred location for Metalink resources]' \ + '--xattr[turn on storage of metadata in extended file attributes]' \ '(-nd --no-directories)'{-nd,--no-directories}"[don't create directorie= s]" \ '(--force-directories -x)'{--force-directories,-x}'[force creation of d= irectories]' \ '(-nH --no-host-directories)'{-nH,--no-host-directories}"[don't create = host directories]" \ @@ -102,7 +107,7 @@ _arguments -C -s \ "--ca-directory=3D[specify dir where hash list of CA's are stored]:dire= ctory:_directories" \ '--crl-file=3D[specify file with bundle of CRLs]:file:_files' \ '--pinnedpubkey=3D:file:_files' \ - '--random-file[specify file with random data for seeding generator]:fil= e:_files' \ + '!--random-file=3D:file:_files' \ '--egd-file=3D[specify filename of EGD socket]:file:_files' \ '--ciphers=3D[set the priority string (GnuTLS) or cipher list string (O= penSSL) directly]:string' \ '--no-hsts[disable HSTS]' \ diff --git a/Completion/X/Command/_x_utils b/Completion/X/Command/_x_utils index 13c5572af..4b98ec48e 100644 --- a/Completion/X/Command/_x_utils +++ b/Completion/X/Command/_x_utils @@ -150,9 +150,10 @@ xon) ;; xsetroot) _x_arguments \ - -{help,def,gray,grey,rv} \ + -{help,version,def,default,gray,grey,rv,reverse} \ '-cursor:cursor file:_files -g \*.\(\#i\)\(xbm\|curs\(\|or\)\):mask f= ile:_files -g \*.\(\#i\)\(xbm\|curs\(\|or\)\|mask\)\(-.\)' \ '-cursor_name:cursor name:_x_cursor' \ + '-xcf:cursor file:_files:size' \ '-bitmap:bitmap file:_files -g \*.\(\#i\)xbm\(-.\)' \ '-mod:x grid distance (1-16): :y grid distance (1-16)' \ '-fg:foreground color:_x_color' \