From 1bd2ecc17d74b6a8ffba97806cf90ef706d7411b Mon Sep 17 00:00:00 2001 From: Oliver Kiddle Date: Sat, 31 Mar 2018 10:12:59 +0200 Subject: 42572: various completion option updates --- ChangeLog | 9 +++++++++ Completion/Linux/Command/_ethtool | 20 ++++++++++++++++++-- Completion/Linux/Command/_ss | 7 ++++--- Completion/Unix/Command/_arping | 5 ++++- Completion/Unix/Command/_mosh | 7 +++++++ Completion/Unix/Command/_mpc | 1 + Completion/Unix/Command/_notmuch | 8 +++++++- Completion/Unix/Command/_objdump | 16 ++++++++-------- Completion/Unix/Command/_prove | 1 + Completion/Unix/Command/_readelf | 4 ++-- Completion/Unix/Command/_rsync | 9 ++++++--- Completion/Unix/Command/_ruby | 3 ++- Completion/Unix/Command/_strip | 8 ++++++-- Completion/Unix/Command/_vim | 2 ++ Completion/X/Command/_evince | 4 ---- 15 files changed, 77 insertions(+), 27 deletions(-) diff --git a/ChangeLog b/ChangeLog index 0a3594ee2..a2e83fb6e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,14 @@ 2018-03-31 Oliver Kiddle + * 42572: Completion/Linux/Command/_ethtool, + Completion/Linux/Command/_ss, Completion/Unix/Command/_arping, + Completion/Unix/Command/_mosh, Completion/Unix/Command/_notmuch, + Completion/Unix/Command/_mpc, Completion/Unix/Command/_objdump, + Completion/Unix/Command/_prove, Completion/Unix/Command/_rsync, + Completion/Unix/Command/_readelf, Completion/Unix/Command/_ruby, + Completion/Unix/Command/_strip, Completion/Unix/Command/_vim, + Completion/X/Command/_evince: various completion option updates + * 42571: Completion/BSD/Command/_jail, Completion/BSD/Command/_jexec: new completion for FreeBSD jail diff --git a/Completion/Linux/Command/_ethtool b/Completion/Linux/Command/_ethtool index 7c62fd7f7..52b8f0451 100644 --- a/Completion/Linux/Command/_ethtool +++ b/Completion/Linux/Command/_ethtool @@ -45,7 +45,10 @@ _arguments -C \ '--show-eee[show EEE settings]' \ '--set-eee[set EEE settings]' \ '--set-phy-tunable[set PHY tunable]' \ - '--get-phy-tunable[get PHY tunable]' && return + '--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 if [[ -n $state ]]; then case $words[CURRENT-1] in @@ -132,6 +135,12 @@ if [[ -n $state ]]; then hfunc) _message -e functions expl 'hash function' ;; + flags) + _message -e masks expl mask + ;; + encoding) + _wanted encodings expl encoding compadd auto off rs baser + ;; *) case $words[2] in -A|--pause) @@ -143,7 +152,7 @@ if [[ -n $state ]]; then -C|--coalesce) _wanted settings expl 'coalescing setting' compadd -F line -M 'r:|-=* r:|=*' - \ adaptive-{r,t}x {r,t}x-{usecs,frames}{,-irq,-high,-low} \ - stats-block-usecs pkt-rate-{low,high} sample-interval dmac + stats-block-usecs pkt-rate-{low,high} sample-interval ;; -G|--set-ring) _values -S ' ' -w 'ring parameter' \ @@ -268,6 +277,13 @@ if [[ -n $state ]]; then --get-phy-tunable) _wanted options expl tunable compadd downshift ;; + --reset) + _wanted components expl component compadd flags dedicated all \ + {mgmt,irq,dma,filter,offload,mac,phy,ram,ap}{,-shared} + ;; + --set-fec) + _wanted options expl tunable compadd -F line - encoding + ;; esac ;; esac diff --git a/Completion/Linux/Command/_ss b/Completion/Linux/Command/_ss index e5289b0a7..afe00b6a3 100644 --- a/Completion/Linux/Command/_ss +++ b/Completion/Linux/Command/_ss @@ -33,10 +33,11 @@ _arguments -C -s \ "($info -d --dccp)"{-d,--dccp}'[display DCCP sockets]' \ "($info -w --raw)"{-w,--raw}'[display RAW sockets]' \ "($info -x --unix)"{-x,--unix}'[display Unix domain sockets]' \ - "($info -f --family)"{-f,--family}'[display sockets of specified type]:family:(unix inet inet6 link netlink unix)' \ + "($info)--vsock[display only vsock sockets]' \ + "($info -f --family)"{-f,--family}'[display sockets of specified type]:family:(unix inet inet6 link netlink unix vsock)' \ "($info -K --kill)"{-K,--kill}'[forcibly close sockets, display what was closed]' \ "($info -H --no-header)"{-H,--no-header}'[suppress header line]' \ - "($info -A --query --socket)"{-A,--query,--socket}'[specify socket tables to show]: :_values -s , socket\ table all inet tcp udp raw unix packet netlink unix_dgram unix_stream unix_seqpacket packet_raw packet_dgram' \ + "($info -A --query --socket)"{-A,--query,--socket}'[specify socket tables to show]: :_values -s , socket\ table all inet tcp udp raw unix packet netlink unix_dgram unix_stream unix_seqpacket packet_raw packet_dgram vsock_stream vsock_dgram' \ "($info -D)"{-D,--diag=}'[dump raw info to file]:file:_files' \ "($info -F)"{-F,--filter=}'[read filter information from a file]:file:_files' \ "($info)*: :->filter" && ret=0 @@ -78,7 +79,7 @@ if [[ -n $state ]]; then state|exclude) _wanted states expl state compadd -M 'm:{a-zA-Z_}={A-Za-z-}' \ ESTABLISHED SYN-SENT SYN-RECV FIN-WAIT-1 FIN-WAIT-2 TIME-WAIT \ - CLOSED CLOSE-WAIT LAST-ACK LISTEN CLOSING \ + CLOSED CLOSE-WAIT LAST-ACK LISTENING CLOSING \ all connected synchronized bucket big && ret=0 ;; *) diff --git a/Completion/Unix/Command/_arping b/Completion/Unix/Command/_arping index bd9bc8ccc..66ce7bc18 100644 --- a/Completion/Unix/Command/_arping +++ b/Completion/Unix/Command/_arping @@ -29,6 +29,7 @@ _arguments -s -S -A "-*" \ '-D[display answers as exclamation marks and missing packets as dots]' \ '-e[like -a but beep when there is no reply]' \ "-F[don't try to be smart about the interface name]" \ + '-g+[specify group to setgid() to]:group [nobody]:_groups' \ '-m+[specify type of timestamp for incoming packets]:timestamp type' \ '(:)-B[255.255.255.255]' \ '-0[source 0.0.0.0]' \ @@ -36,6 +37,7 @@ _arguments -s -S -A "-*" \ '-S+[set source IP]:source IP address:_hosts' \ '-T+[target IP]:target IP address:_hosts' \ '-p[turn on promiscuous mode]' \ + '-Q+[specify 802.1p priority to set]:priority [0]' \ '-s[set source MAC address]:source MAC address' \ '-t[set target MAC address]:target MAC address' \ '-c[send this many requests]:count' \ @@ -45,7 +47,8 @@ _arguments -s -S -A "-*" \ '-P[send ARP replies instead of requests]' \ '-u[show index=received/sent instead of just index=received when pinging MACs]' \ '-U[send unsolicited ARP]' \ - '-w+[specify time to wait between pings (ms)]:time (ms)' \ + '-V+[specify VLAN tag to set]:vlan' \ + '-w+[specify time to wait between pings (microseconds)]:time (microseconds)' \ '-W+[specify time to wait between pings (seconds)]:time (seconds)' \ '(-B):address:_hosts' diff --git a/Completion/Unix/Command/_mosh b/Completion/Unix/Command/_mosh index aa97587bb..7d1250320 100644 --- a/Completion/Unix/Command/_mosh +++ b/Completion/Unix/Command/_mosh @@ -12,8 +12,15 @@ _arguments -C \ '(-a -n)--predict=[control speculative local echo]:mode:(adaptive always never)' \ '(--predict -n)-a[synonym for --predict=always]' \ '(--predict -a)-n[synonym for --predict=never]' \ + '(--family -6)-4[use IPv4 only]' \ + '(--family -4)-6[use IPv6 only]' \ + '(-4 -6)--family=[specify address family]:family [prefer-inet]:(inet inet6 auto all prefer-inet prefer-inet6)' \ + '--bind-server=[ask the server to reply from an IP address]:{ssh|any|IP}' \ '--server[specify command to run server helper]:remote file:_files' \ '--client[specify command to run client helper]:_command_names -e' \ + "--no-ssh-pty[don't allocate a pseudo tty on ssh connection]" \ + '--local[run mosh-server locally without using ssh]' \ + '--experimental-remote-ip=[select method for discovering remote IP address to use for mosh]:method:(local remote proxy)' \ '1:remote host name:->userhost' \ '*:::args:_normal' && ret=0 diff --git a/Completion/Unix/Command/_mpc b/Completion/Unix/Command/_mpc index fee5e06f4..45d93550d 100644 --- a/Completion/Unix/Command/_mpc +++ b/Completion/Unix/Command/_mpc @@ -53,6 +53,7 @@ _mpc_command() { play:"start playing" playlist:"print the current playlist" prev:"play the previous song in the current playlist" + prio:"change song priorities in the queue" random:"toggle random mode, or specify state" repeat:"toggle repeat mode, or specify state" single:"toggle single mode, or specify state" diff --git a/Completion/Unix/Command/_notmuch b/Completion/Unix/Command/_notmuch index d6cc58deb..6174d2c00 100644 --- a/Completion/Unix/Command/_notmuch +++ b/Completion/Unix/Command/_notmuch @@ -6,12 +6,16 @@ _notmuch_commands() notmuch_commands=( 'setup:interactively set up notmuch for first use' 'new:find and import any new message to the database' + 'insert:add a new message into the maildir and notmuch database' 'search:search for messages matching the search terms, display matching threads as results' + 'address:get addresses from messages matching the given search terms' 'reply:constructs a reply template for a set of messages' 'show:show all messages matching the search terms' 'tag:add or remove tags for all messages matching the search terms' 'dump:creates a plain-text dump of the tags of each message' 'restore:restores the tags from the given file' + 'compact:compact the notmuch database' + 'reindex:re-index all messages matching the search terms' 'help:show details on a command' 'compact:compact the notmuch database' 'config:access the notmuch configuration file' @@ -30,7 +34,9 @@ _notmuch_help_topics() { local -a notmuch_help_topics notmuch_help_topics=( - 'search-terms:show common search-terms syntax' + 'search-terms:common search-term syntax' + 'hooks:hooks that will be run before or after certain commands' + 'properties:message property conventions and documentation' ) _describe -t notmuch-help-topics 'topic' notmuch_help_topics } diff --git a/Completion/Unix/Command/_objdump b/Completion/Unix/Command/_objdump index 8b0653267..ee2f3ea6f 100644 --- a/Completion/Unix/Command/_objdump +++ b/Completion/Unix/Command/_objdump @@ -1,6 +1,6 @@ #compdef objdump eu-objdump llvm-objdump -local opts args files variant curcontext=$context state state_descr line +local opts args files variant curcontext=$context state state_descr line ret=1 typeset -A opt_args files='*:object file:_object_files' @@ -148,23 +148,23 @@ case $variant in ;; esac -_arguments $opts -C : "$args[@]" $files && return 0 +_arguments $opts -C : "$args[@]" $files && ret=0 case "$state" in short_dwarf_names) - _values -s "" "dwarf section" "l[rawline]" "L[decodedline]" "i[info]" "a[abbrev]" "p[pubnames]" "r[aranges]" "m[macro]" "f[frames]" "F[frames-interp]" "s[str]" "o[loc]" "R[Ranges]" "t[pubtypes]" + _values -s "" "dwarf section" "l[rawline]" "L[decodedline]" "i[info]" "a[abbrev]" "p[pubnames]" "r[aranges]" "m[macro]" "f[frames]" "F[frames-interp]" "s[str]" "o[loc]" "R[Ranges]" "t[pubtypes]" "U[trace_info]" "u[trace_abbrev]" "g[gdb_index]" "T[trace_aranges]" "A[addr]" "c[cu_index]" "k[links]" "K[follow-links]" && ret=0 ;; dwarf_names) - _values -s , "dwarf section" rawline decodedline info abbrev pubnames aranges macro frames frames-interp str loc Ranges pubtypes gdb_index trace_info trace_abbrev trace_aranges addr cu_index + _values -s , "dwarf section" rawline decodedline info abbrev pubnames aranges macro frames frames-interp str loc Ranges pubtypes gdb_index trace_info trace_abbrev trace_aranges addr cu_index links follow-links && ret=0 ;; bfdname) - _values "object format" "${(z)${(@M)${(f)$(_call_program targets objdump --help)}##* supported targets:*}##*: }" + _values "object format" "${(z)${(@M)${(f)$(_call_program targets objdump --help)}##* supported targets:*}##*: }" && ret=0 ;; machine) - _values "machine architecture" "${(@)${(z)${(@M)${(f)$(_call_program targets objdump --help)}##* supported architectures:*}##*: }//:/\\:}" + _values "machine architecture" "${(@)${(z)${(@M)${(f)$(_call_program targets objdump --help)}##* supported architectures:*}##*: }//:/\\:}" && ret=0 ;; disassembler_options) - _values -s , "disassembler options" "${(@)${(@)${(@M)${(f)${(ps.-M switch.)$(_call_program targets objdump --help)}[2]}:# [^ ]*}# }%% *}" + _values -s , "disassembler options" "${(@)${(@)${(@M)${(f)${(ps.-M switch.)$(_call_program targets objdump --help)}[2]}:# [^ ]*}# }%% *}" && ret=0 ;; llvm_targets) _values "target architecture" "${(z)${(@)${(f)$(_call_program targets @@ -172,4 +172,4 @@ case "$state" in ;; esac - +return ret diff --git a/Completion/Unix/Command/_prove b/Completion/Unix/Command/_prove index 17b48a54d..27a73fba2 100644 --- a/Completion/Unix/Command/_prove +++ b/Completion/Unix/Command/_prove @@ -46,6 +46,7 @@ _arguments \ {-a,--archive}'[store output in archive file]:file:_files' \ {-j,--jobs}'[run N jobs in parallel]:jobs:' \ '*--state=[control persistent state]: :_values -s , state last failed passed all hot todo slow fast new old fresh save' \ + '--statefile=[specify file to use instead of .prove]:state file:_files' \ '--rc=[custom rcfile]:file:_files' \ '*--rules=[limit tests run (or not) in parallel]:rules' \ '*:file or directory:_files' diff --git a/Completion/Unix/Command/_readelf b/Completion/Unix/Command/_readelf index 46da00cc4..282431462 100644 --- a/Completion/Unix/Command/_readelf +++ b/Completion/Unix/Command/_readelf @@ -19,8 +19,8 @@ args=( '(-c --archive-index)'{-c,--archive-index}'[show symbol/file index in an archive]' \*{-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:(l L i a p r m f F s o R t)' - '--debug-dump=[show the contents of DWARF2 debug sections]::section:(rawline decodedline info abbrev pubnames aranges macro frames frames-interp str loc Ranges pubtypes gdb_index trace_info trace_abbrev trace_aranges)' + '-w+[show the contents of DWARF2 debug sections]::debug section:(l L i a p r m f F s o R t U u T g A c k K)' + '--debug-dump=[show the contents of DWARF2 debug sections]::section:(rawline decodedline info abbrev pubnames aranges macro frames frames-interp str loc Ranges pubtypes gdb_index trace_info trace_abbrev trace_aranges addr cu_index links follow-links)' '(-I --histogram)'{-I,--histogram}'[show histogram of bucket list lengths]' '(-W --wide)'{-W,--wide}'[allow output width to exceed 80 characters]' '(- *)'{-H,--help}'[display help information]' diff --git a/Completion/Unix/Command/_rsync b/Completion/Unix/Command/_rsync index f79ec1dfe..c1404c908 100644 --- a/Completion/Unix/Command/_rsync +++ b/Completion/Unix/Command/_rsync @@ -149,6 +149,7 @@ _rsync() { '(--devices --specials)-D[same as --devices --specials]' \ '(-D)--devices[preserve devices]' \ '--no-devices[turn off --devices]' \ + '--copy-devices[copy device contents as regular file]' \ '(-D)--specials[preserve special files]' \ '--no-specials[turn off --specials]' \ '--no-D[turn off --devices and --specials]' \ @@ -161,7 +162,8 @@ _rsync() { '(-n --dry-run)'{-n,--dry-run}'[show what would have been transferred]' \ '(-W --whole-file)'{-W,--whole-file}'[copy files whole (without delta-transfer algorithm)]' \ {--no-W,--no-whole-file}'[turn off --whole-file]' \ - '(-x --one-file-system)'{-x,--one-file-system}'[do not cross filesystem boundaries]' \ + '--checksum-choice=[choose the checksum algorithms]:algorithm:_sequence -n 2 compadd - auto md4 md5 none' \ + '(-x --one-file-system)'{-x,--one-file-system}"[don't cross filesystem boundaries]" \ '(-B --block-size)'{-B,--block-size=}'[force a fixed checksum block-size]:block size' \ '(-e --rsh)'{-e+,--rsh=}'[specify the remote shell to use]:remote-shell command:(rsh ssh)' \ '--rsync-path=[specify path to rsync on the remote machine]:remote command' \ @@ -190,9 +192,9 @@ _rsync() { '--numeric-ids[do not map uid/gid values by user/group name]' \ '--timeout=[set I/O timeout in seconds for lulls in a transfer]:seconds' \ '--contimeout=[set connect timeout in seconds for daemon connections]:seconds' \ - '(-I --ignore-times)'{-I,--ignore-times}'[do not skip files that match in size and mod-time]' \ + '(-I --ignore-times)'{-I,--ignore-times}"[don't skip files that match in size and mod-time]" \ '--size-only[skip files that match in size]' \ - '--modify-window=[compare mod-times with reduced accuracy]:seconds' \ + '(-@ --modify-window)'{-@+,--modify-window=}'[compare mod-times with reduced accuracy]:seconds' \ '(-y --fuzzy)'{-y,--fuzzy}'[find similar file for basis if no destination file]' \ '(--copy-dest --link-dest)*--compare-dest=[also compare destination files relative to specified directory]:directory:_directories' \ '(--compare-dest --link-dest)*--copy-dest=[like --compare-dest, but also includes copies of unchanged files]:directory:_directories' \ @@ -240,6 +242,7 @@ _rsync() { '--preallocate[preallocate the full length of new files]' \ '--iconv=[request charset conversion of filenames]:number' \ '--checksum-seed=:number' \ + "--noatime[don't alter atime when opening source files]" \ '--read-batch=[read a batched update from the specified file]:file:_files' } diff --git a/Completion/Unix/Command/_ruby b/Completion/Unix/Command/_ruby index 7f7af8776..d69c378fc 100644 --- a/Completion/Unix/Command/_ruby +++ b/Completion/Unix/Command/_ruby @@ -1,4 +1,4 @@ -#compdef ruby irb erb -P (ruby|[ei]rb)[0-9.]# -value-,RUBY(LIB|OPT|PATH),-default- +#compdef ruby irb erb ruby-mri -P (ruby|[ei]rb)[0-9.]# -value-,RUBY(LIB|OPT|PATH),-default- local curcontext="$curcontext" state line expl desc RUBY ret=1 typeset -A opt_args @@ -41,6 +41,7 @@ opts=( '(1 * -)--copyright[print the copyright]' --{en,dis}'able=[enable or disable features]:feature:(gems did_you_mean rubyopt frozen_string_literal all)' \!--{en,dis}able-{gems,rubyopt,all} + '--dump=[dump debug information]:information:_sequence compadd - insns yydebug parsetree parsetree_with_comment' --{external,internal}'-encoding=:charset:->charsets' '!'{-y,--yydebug} '!--dump=:target:(version copyright usage yydebug syntax parsetree parsetree_with_comment insns)' diff --git a/Completion/Unix/Command/_strip b/Completion/Unix/Command/_strip index 0703c50e4..630140c64 100644 --- a/Completion/Unix/Command/_strip +++ b/Completion/Unix/Command/_strip @@ -19,18 +19,22 @@ if _pick_variant gnu=GNU solaris --version; then '(-)--help[display usage information]' '(-)--info[display list of architectures and object formats]' '(-I --input-target)'{-I+,--input-target=}'[object code format of input]:bfd name:->bfdnames' - '(-O --output-target)'{-I+,--output-target=}'[object code format of output]:bfd name:->bfdnames' + '(-O --output-target)'{-O+,--output-target=}'[object code format of output]:bfd name:->bfdnames' + '(-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)]' '*'{-R+,--remove-section=}'[remove given sections]:section name' '--remove-relocations=[remove relocations from specified section]:section' '(-s --strip-all)'{-s,--strip-all}'[remove all symbols]' '(-g -S -d --strip-debug)'{-g,-S,-d,--strip-debug}'[remove debugging symbols]' + '--strip-dwo[remove all DWARF .dwo sections]' '--strip-unneeded[remove symbols not needed for relocation processing]' + '!(--no-merge-notes)'{-M,--merge-notes} "--no-merge-notes[don't attempt to remove redundant notes]" '*'{-K+,--keep-symbol=}'[keep given symbol]:symbol name' '*'{-N+,--strip-symbol=}'[strip given symbol]:symbol name' '(*)-o+[output file]:output file:_files' '(-p --preserve-dates)'{-p,--preserve-dates}'[preserve access and modification dates]' - '(-w --wildcard)'{-w,--wildcard}'[permit wilcards in symbol names]' + '(-w --wildcard)'{-w,--wildcard}'[permit wildcards in symbol names]' '(-x --discard-all)'{-x,--discard-all}'[remove non-global symbols]' '(-X --discard-locals)'{-X,--discard-locals}'[remove compiler-generated local symbols]' '--keep-file-symbols[retain symbols specifying source file names]' diff --git a/Completion/Unix/Command/_vim b/Completion/Unix/Command/_vim index c2612ebc2..042974338 100644 --- a/Completion/Unix/Command/_vim +++ b/Completion/Unix/Command/_vim @@ -40,6 +40,7 @@ arguments=( '(-A -H )-F[start in Farsi mode]' '-T[set terminal type]:::_terminals' '--not-a-term[skip warning for input/output not being a terminal]' + '--ttyfail[exit if input or output is not a terminal]' '-u[use given vimrc file instead of default .vimrc]::rc file:_files' "--noplugin[don't load plugin scripts]" '-o-[number of windows to open (default: one for each file)]::window count: ' @@ -70,6 +71,7 @@ arguments=( '--startuptime[write startup timing messages to given file]:log file:_files' '--socketid[run GVIM in another window]' '-i[use specified viminfo file]:viminfo file [~/.viminfo]:_files' + '--clean[defaults, no plugins, no viminfo]' '(- *)'{-h,--help}'[print help and exit]' '(- *)--version[print version information and exit]' '(* -q)-t[edit file where tag is defined]:tag:_complete_tag' diff --git a/Completion/X/Command/_evince b/Completion/X/Command/_evince index 48d5a9aeb..21b493360 100644 --- a/Completion/X/Command/_evince +++ b/Completion/X/Command/_evince @@ -5,12 +5,8 @@ _arguments -s -S \ '--version[display version information]' \ {-h,--help}'[display help information]' \ '--help-all[display help on all options]' \ - '--help-sm-client[display help on session management options]' \ '--help-gtk[display help on GTK+ options]' \ - normal \ - '--sm-client-disable[disable connection to session manager]' \ - '--sm-client-state-file=[specify file containing saved configuration]:file:_files' \ - '--sm-client-id=[specify session management ID]:id' \ '--class=[specify program class as used by the window manager]:class' \ '--name=[program name as used by the window manager]:name:_x_name' \ '--gdk-debug=[specify GDK debugging flags to set]:flag' \ -- cgit 1.4.1