mirror of
git://git.code.sf.net/p/zsh/code
synced 2025-07-23 20:51:02 +02:00
41958: update util-linux completions to 2.31; new hexdump completion
This commit is contained in:
parent
85e56b5a48
commit
01523f4145
6 changed files with 81 additions and 19 deletions
|
@ -1,3 +1,10 @@
|
|||
2017-10-29 Oliver Kiddle <opk@zsh.org>
|
||||
|
||||
* 41958: Completion/Linux/Command/_losetup,
|
||||
Completion/Linux/Command/_lsblk, Completion/Linux/Command/_wipefs,
|
||||
Completion/Unix/Command/_hexdump, Completion/Unix/Command/_last:
|
||||
update util-linux completions to 2.31; new hexdump completion
|
||||
|
||||
2017-10-28 Oliver Kiddle <opk@zsh.org>
|
||||
|
||||
* 41957: Completion/Unix/Command/_git: update for git 2.14.3
|
||||
|
|
|
@ -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)'{-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' \
|
||||
'(-O --output)'{-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' \
|
||||
'(-J --json --raw -O --output -n --noheadings)'{-J,--json}'[use JSON --list output format]' \
|
||||
'(-l --list)'{-l,--list}'[list currently used loop devices]' \
|
||||
'(-J --json)--raw[raw output format]' \
|
||||
|
@ -36,6 +36,7 @@ _arguments -s -S \
|
|||
'(-L --nooverlap)'{-L,--nooverlap}'[avoid possible conflict between devices]' \
|
||||
'(-P --partscan)'{-P,--partscan}'[scan the partition table of newly created loop devices]' \
|
||||
'--sizelimit[limit device to specified size]:size (bytes)' \
|
||||
'(-b --sector-size)'{-b+,--sector-size=}'[set logical sector size of loop device]:size (bytes)' \
|
||||
'--show[print device name after setup]' \
|
||||
'(-r --read-only)'{-r,--read-only}'[set up a read-only loop device]' \
|
||||
'1:file:_files' \
|
||||
|
|
|
@ -29,6 +29,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)'{-P,--pairs}'[use key="value" output format]' \
|
||||
'(H)'{-r,--raw}'[use raw output format]' \
|
||||
+ 'H' \
|
||||
|
|
|
@ -4,9 +4,19 @@ _arguments -s -S \
|
|||
'(H -a --all)'{-a,--all}'[wipe all magic strings]' \
|
||||
'(H -b --backup)'{-b,--backup}'[create a signature backup in $HOME]' \
|
||||
'(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]' \
|
||||
'(H -n --no-act)'{-n,--no-act}'[do everything except the actual write() call]' \
|
||||
'(H -o --offset)'{-o+,--offset=}'[specify offset to erase]:offset (bytes)' \
|
||||
'(H -p --parsable)'{-p,--parsable}'[print out in parsable instead of printable format]' \
|
||||
'(H -O --output)'{-O+,--output=}'[specify columns to display]: : _values -s, "column"
|
||||
"uuid[partition/filesystem UUID]"
|
||||
"label[filesystem label]"
|
||||
"length[magic string length]"
|
||||
"type[superblock type]"
|
||||
"offset[magic string offset]"
|
||||
"usage[type description]"
|
||||
"device[block device name]"' \
|
||||
'(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)*:disk device:_files -g "*(-%)" -P / -W /' \
|
||||
|
|
35
Completion/Unix/Command/_hexdump
Normal file
35
Completion/Unix/Command/_hexdump
Normal file
|
@ -0,0 +1,35 @@
|
|||
#compdef hexdump hd
|
||||
|
||||
local -a args fmts optpar
|
||||
fmts=(
|
||||
{--one-byte-octal,-b}'[one-byte octal display]'
|
||||
{--one-byte-char,-c}'[one-byte character display]'
|
||||
{--two-bytes-decimal,-d}'[two-byte decimal display]'
|
||||
{--two-bytes-octal,-o}'[two-byte octal display]'
|
||||
{--two-bytes-hex,-x}'[two-byte hexadecimal display]'
|
||||
{--format=,-e+}'[specify format string to be used for displaying data]:format'
|
||||
{--format-file=,-f+}'[specify file that contains format strings]:file:_files'
|
||||
)
|
||||
args=(
|
||||
'(H -n --length)'{--length=,-n+}'[interpret only specified amount of input]:length (bytes)'
|
||||
'(H -s --skip)'{--skip=,-s+}'[skip specified bytes at the beginning]:offset (bytes)'
|
||||
'(H -v --no-squeezing)'{--no-squeezing,-v}'[output identical lines]'
|
||||
)
|
||||
|
||||
[[ $service = hexdump ]] && fmts+=( {--canonical,-C}'[canonical hex+ASCII display]' )
|
||||
|
||||
if [[ $OSTYPE = linux* ]]; then
|
||||
args+=(
|
||||
'(-L --color)'{-L+,--color=}'[interpret color formatting specifiers colors are enabled by default]:mode'
|
||||
+ H
|
||||
'(- *)'{-h,--help}'[display usage information]'
|
||||
'(- *)'{-V,--version}'[display version information]'
|
||||
)
|
||||
else
|
||||
# strip long options by taking every second element
|
||||
print -v fmts -f '%2$s' -- "$fmts[@]"
|
||||
print -v args -f '%2$s' -- "$args[@]"
|
||||
optpar=( -A "-*" )
|
||||
fi
|
||||
|
||||
_arguments -s -S $optpar '*:file:_files' $args + '(formats)' '(H)'$^fmts
|
|
@ -4,19 +4,20 @@ local pattern arg args ttys
|
|||
ttys=( /dev/tty*(N) /dev/pts/*(N) reboot )
|
||||
ttys=( ${ttys#/dev/} )
|
||||
|
||||
[[ $OSTYPE = linux-gnu ]] || args=( -A "-*" )
|
||||
for pattern arg in \
|
||||
'(solaris*|linux-gnu)' '-a[display hostname in last column]' \
|
||||
'((free|net|open)bsd*|darwin*|dragonfly*|linux-gnu)' '-h[limit sessions by hostname]:host:_hosts' \
|
||||
'((free|open)bsd*|linux-gnu)' '-s[report duration in seconds]' \
|
||||
'(freebsd*|openbsd*)' '-d[limit sessions to those active at snapshot time]:time ([[CC]YY][MMDD]hhmm[.SS])' \
|
||||
'((net|free|open)bsd*|darwin*|dragonfly*)' '-t[limit sessions by tty]:tty:_ttys -D' \
|
||||
'(solaris*|linux-gnu)' '(--hostlast)-a[display hostname in last column]' \
|
||||
'((free|net|open)bsd*|darwin*|dragonfly*)' '-h+[limit sessions by hostname]:host:_hosts' \
|
||||
'((free|open)bsd*)' '-s[report duration in seconds]' \
|
||||
'(freebsd*|openbsd*)' '-d+[limit sessions to those active at snapshot time]:time ([[CC]YY][MMDD]hhmm[.SS])' \
|
||||
'((net|free|open)bsd*|darwin*|dragonfly*)' '-t+[limit sessions by tty]:tty:_ttys -D' \
|
||||
'openbsd*' '-c[calculate total time]' \
|
||||
'^darwin*' '-f[specify account file]:file:_files' \
|
||||
'(solaris*|linux-gnu|freebsd*|openbsd*)' '-n[specify number of lines to show]:number' \
|
||||
'^darwin*' '(--file)-f+[specify account file]:file:_files' \
|
||||
'(solaris*|linux-gnu|freebsd*|openbsd*)' '(--limit)-n+[specify number of lines to show]:number' \
|
||||
'((open|net)bsd*|dragonfly*)' '-T[show more detailed time information including year and seconds]' \
|
||||
'netbsd*' '-x[assume file is in wtmpx(5) format]' \
|
||||
'netbsd*' '-n[show IP of remote hosts]' \
|
||||
'freebsd*' '-w[show seconds in durarion field]' \
|
||||
'freebsd*' '-w[show seconds in duration field]' \
|
||||
'freebsd*' '-y[show year in session start time]'
|
||||
do
|
||||
[[ $OSTYPE = $~pattern ]] && args+=( $arg )
|
||||
|
@ -32,14 +33,21 @@ case $OSTYPE in
|
|||
;;
|
||||
linux-gnu)
|
||||
args+=(
|
||||
'-R[suppress display of hostname field]'
|
||||
'-d[translate IP to hostname]'
|
||||
'-F[show full login and logout times and dates]'
|
||||
'-i[show IP of remote hosts]'
|
||||
'-o[read old-format wtmp]'
|
||||
'-t[limit sessions to those active at snapshot time]:time (YYYYMMDDhhmmss)'
|
||||
'-w[show full user and domain names]'
|
||||
'-x[display shutdown/runlevel entries]'
|
||||
'(-a)--hostlast[display hostname in last column]'
|
||||
'(-d --dns -i --ip)'{-d,--dns}'[translate IP to hostname]'
|
||||
'(-f)--file=[specify account file]:file:_files'
|
||||
'(-F --fulltimes)'{-F,--fulltimes}'[show full login and logout times and dates]'
|
||||
'(-i --ip -d --dns)'{-i,--ip}'[show IP of remote hosts]'
|
||||
'(-n)--limit=[specify number of lines to show]:number'
|
||||
'(-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)'
|
||||
'(-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]'
|
||||
'--time-format=[show timestamps in the specified format]:format:(notime short full iso)'
|
||||
'(- *)'{-h,--help}'[display usage information]'
|
||||
'(- *)'{-V,--version}'[display version information]'
|
||||
)
|
||||
;;
|
||||
esac
|
||||
|
@ -50,4 +58,4 @@ else
|
|||
args+=( '*:user:_users' )
|
||||
fi
|
||||
|
||||
_arguments -s $args
|
||||
_arguments -s -S $args
|
||||
|
|
Loading…
Reference in a new issue