mirror of
git://git.code.sf.net/p/zsh/code
synced 2025-09-01 09:41:44 +02:00
42317: completion option updates for commands that have had recent updates
This commit is contained in:
parent
aabf978fce
commit
47430bcd7c
14 changed files with 225 additions and 156 deletions
|
@ -1,5 +1,14 @@
|
|||
2018-01-23 Oliver Kiddle <okiddle@yahoo.co.uk>
|
||||
|
||||
* 42317: Completion/Linux/Command/_cryptsetup,
|
||||
Completion/Linux/Command/_ethtool, Completion/Unix/Command/_wget,
|
||||
Completion/Linux/Command/_tune2fs, Completion/Unix/Command/_cowsay,
|
||||
Completion/Unix/Command/_git, Completion/Unix/Command/_gsettings,
|
||||
Completion/Unix/Command/_gzip, Completion/Unix/Command/_ssh,
|
||||
Completion/Unix/Command/_sudo, Completion/Unix/Command/_tidy,
|
||||
Completion/Unix/Command/_tmux, Completion/Unix/Command/_truss:
|
||||
option updates for commands that have had recent updates
|
||||
|
||||
* 42299: Completion/Zsh/Command/_typeset: correct optional argument
|
||||
|
||||
* Matthew Martin: 42309: Completion/Unix/Command/_dhclient,
|
||||
|
|
|
@ -25,6 +25,7 @@ _arguments -s \
|
|||
'(-i --iter-time)'{-i+,--iter-time=}'[set password processing duration]:duration (milliseconds)' \
|
||||
'(-q --batch-mode)'{-q,--batch-mode}"[don't ask for confirmation]" \
|
||||
'(-t --timeout)'{-t+,--timeout=}'[set password prompt timeout]:timeout (seconds)' \
|
||||
'--progress-frequency=[specify progress line update interval]:interval (seconds)' \
|
||||
'(-T --tries)'{-T+,--tries=}'[set maximum number of retries]:number of retries' \
|
||||
'--align-payload=[set payload alignment]:sectors' \
|
||||
'--header-backup-file=[specify file with LUKS header and keyslots backup]:file:_files' \
|
||||
|
@ -39,10 +40,30 @@ _arguments -s \
|
|||
'--tcrypt-system[device is system TCRYPT drive (with bootloader)]' \
|
||||
'--tcrypt-backup[use backup (secondary) TCRYPT header]' \
|
||||
'--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)' \
|
||||
'--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]' \
|
||||
'--deferred[device removal is deferred until the last user closes it]' \
|
||||
'--pbkdf=[specify PBKDF algorithm for LUKS2]:algorithm:(argon2i argon2id pbkdf2)' \
|
||||
'--pbkdf-memory=[specify PBKDF memory cost limit]:limit (kilobytes)' \
|
||||
'--pbkdf-parallel=[specify PBKDF parallel cost]:threads' \
|
||||
'--pbkdf-force-iterations=[specify PBKDF iterations cost]:cost' \
|
||||
'--priority=[specify keyslot priority]:priority:(ignore normal prefer)' \
|
||||
'--disable-locks[disable locking of on-disk metadata]' \
|
||||
'--disable-keyring[disable loading volume keys via kernel keyring]' \
|
||||
'(-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]" \
|
||||
"--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]' \
|
||||
'--persistent[set activation flags persistent for device]' \
|
||||
'--label=[set label for the LUKS2 device]:label' \
|
||||
'--subsystem=[set subsystem label for the LUKS2 device]:subsystem' \
|
||||
'(- : *)--version[show version information]' \
|
||||
'(- : *)'{-\?,--help}'[display help information]' \
|
||||
'(- : *)--usage[display brief usage]' \
|
||||
|
@ -59,6 +80,8 @@ case $state in
|
|||
'benchmark:benchmark cipher'
|
||||
'repair:try to repair on-disk metadata'
|
||||
'erase:erase all keyslots'
|
||||
'convert:convert LUKS from/to LUKS2 format'
|
||||
'config:set permanent configuration options for LUKS2'
|
||||
'luksFormat:initialize a LUKS partition'
|
||||
'luksAddKey:add a new key'
|
||||
'luksRemoveKey:remove a key'
|
||||
|
@ -86,7 +109,7 @@ case $state in
|
|||
benchmark) args=( '--cipher=:cipher' );;
|
||||
luksKillSlot) args=( $device ':key slot number' );;
|
||||
remove|status|resize|*lose|luksSuspend|luksResume) args=( $mapping );;
|
||||
erase|repair|(luks(AddKey|Erase|RemoveKey|DelKey|UUID|Dump)|isLuks))
|
||||
erase|convert|config|repair|(luks(AddKey|Erase|RemoveKey|DelKey|UUID|Dump)|isLuks))
|
||||
args=( $device )
|
||||
;;
|
||||
luks(Format|AddKey|RemoveKey|ChangeKey))
|
||||
|
|
|
@ -64,7 +64,7 @@ if [[ -n $state ]]; then
|
|||
rx-usecs|rx-frames|rx-usecs-irq|rx-frames-irq|tx-usecs|tx-frames) ;&
|
||||
tx-usecs-irq|tx-frames-irq|stats-block-usecs|pkt-rate-low|rx-usecs-low) ;&
|
||||
rx-frames-low|tx-usecs-low|tx-frames-low|pkt-rate-high|rx-usecs-high) ;&
|
||||
rx-frames-high|tx-usecs-high|tx-frames-high|sample-interval|rx-mini) ;&
|
||||
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|delete) ;&
|
||||
other|combined|tx-timer|count)
|
||||
|
@ -143,7 +143,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
|
||||
stats-block-usecs pkt-rate-{low,high} sample-interval dmac
|
||||
;;
|
||||
-G|--set-ring)
|
||||
_values -S ' ' -w 'ring parameter' \
|
||||
|
|
|
@ -25,7 +25,6 @@ _arguments -s -S \
|
|||
'-M+[set the last-mounted directory for the filesystem]:directory:_files -/' \
|
||||
'-o+[mount options]:options:_values -s , debug bsdgroups user_xattr acl uid16 journal_data journal_data_ordered journal_data_writeback nobarrier block_validity discard nodelalloc' \
|
||||
'-O+[set or clear filesystem features]: :_values -s , feature dir_index dir_nlink encrypt extentextent extra_isize filetype flex_bg has_journalhuge_file large_file metadata_csum mmp project quota read-only resize_inode sparse_super uninit_bg' \
|
||||
'-p+[set MMP check interval]:interval (seconds) [5]' \
|
||||
'-r+[set the number of reserved filesystem blocks]:number' \
|
||||
'-Q+[set quota feature on the superblock]: :_values -s , "quota option" usrquota grpquota prjquota' \
|
||||
'-s+[set sparse super feature]:state:((0\:off 1\:on))' \
|
||||
|
|
|
@ -3,26 +3,29 @@
|
|||
local context state line
|
||||
typeset -A opt_args
|
||||
|
||||
_arguments \
|
||||
'-e:eye string:' \
|
||||
'-f:cowfile:->cowfile' \
|
||||
'-T:tongue string:' \
|
||||
'-W:wrap column:' \
|
||||
'-b[borg mode]' \
|
||||
'-d[dead mode]' \
|
||||
'-g[greedy mode]' \
|
||||
'-h[help]' \
|
||||
'-l[list]' \
|
||||
'-n[no wordwrap]' \
|
||||
'-p[paranoia mode]' \
|
||||
'-s[stoned mode]' \
|
||||
'-t[tired mode]' \
|
||||
'-w[wired mode]' \
|
||||
'-y[youthful mode]' \
|
||||
':message:' && return 0
|
||||
_arguments -s -S -A "-*" \
|
||||
"(H mode)-e+[specify cow's eyes]:eye string [oo]" \
|
||||
'(H)-f+[specify cowfile]:cowfile:->cowfile' \
|
||||
"(H mode)-T+[specify cow's tongue]:tongue string" \
|
||||
'(H)-W+[specify width for message word wrap]:wrap column [40]' \
|
||||
'(H)-n[no wordwrap]' \
|
||||
'*:message' \
|
||||
+ 'H' \
|
||||
'(- *)-h[display usage information]' \
|
||||
'(- *)-l[list all cowfiles]' \
|
||||
+ '(mode)' \
|
||||
'(H -e -T)-b[borg mode]' \
|
||||
'(H -e -T)-d[dead mode]' \
|
||||
'(H -e -T)-g[greedy mode]' \
|
||||
'(H -e -T)-p[paranoia mode]' \
|
||||
'(H -e -T)-s[stoned mode]' \
|
||||
'(H -e -T)-t[tired mode]' \
|
||||
'(H -e -T)-w[wired mode]' \
|
||||
'(H -e -T)-y[youthful mode]' && return
|
||||
|
||||
case "$state" in
|
||||
(cowfile)
|
||||
compadd ${=${(f)"$($service -l 2>/dev/null)"}:#*\:} || _files
|
||||
_wanted -C option-f-1 cowfiles expl 'cow file' compadd \
|
||||
${=${(f)"$(_call_program cowfiles $words[1] -l)"}:#*\:} || _files -g "*.cow(-.)"
|
||||
;;
|
||||
esac
|
||||
|
|
|
@ -60,9 +60,10 @@ _git-add () {
|
|||
'(-i --interactive : -)'{-i,--interactive}'[add contents interactively to index]' \
|
||||
'(-p --patch)'{-p,--patch}'[like -i but go directly into patch mode for specified files]' \
|
||||
'(-e --edit)'{-e,--edit}'[open diff against index in editor]' \
|
||||
'(-A --all --no-ignore-removal -u --update --no-all --ignore-removal)'{-A,--all,--no-ignore-removal}'[add, modify, and remove index entries to match the working tree]' \
|
||||
'(-A --all --no-ignore-removal -u --update --no-all --ignore-removal)'{--no-all,--ignore-removal}'[like "--all" but ignore removals]' \
|
||||
'(-A --all --no-ignore-removal -u --update --no-all --ignore-removal --renormalize)'{-A,--all,--no-ignore-removal}'[add, modify, and remove index entries to match the working tree]' \
|
||||
'(-A --all --no-ignore-removal -u --update --no-all --ignore-removal --renormalize)'{--no-all,--ignore-removal}'[like "--all" but ignore removals]' \
|
||||
'(-A --all --no-ignore-removal -u --update --no-all --ignore-removal)'{-u,--update}'[update the index just where it already has an entry matching <pathspec>]' \
|
||||
'(-A --all --no-ignore-removal -u --update --no-all --ignore-removal)--renormalize[renormalize EOL of tracked files (implies -u)]' \
|
||||
'(-N --intent-to-add)'{-N,--intent-to-add}'[record only that path will be added later]' \
|
||||
'--refresh[do not add files, but refresh their stat() info in index]' \
|
||||
'--ignore-errors[continue adding if an error occurs]' \
|
||||
|
@ -1207,7 +1208,6 @@ _git-merge () {
|
|||
'--abort[restore the original branch and abort the merge operation]' \
|
||||
'--continue[continue the current in-progress merge]' \
|
||||
'--progress[force progress reporting]' \
|
||||
'--signoff[add Signed-off-by:]' \
|
||||
'--verify[verify commit-msg hook]' \
|
||||
'*: : __git_commits -O expl:git_commit_opts'
|
||||
}
|
||||
|
@ -1751,7 +1751,7 @@ _git-status () {
|
|||
normal\:"show untracked files and directories" \
|
||||
all\:"also show untracked files in untracked directories (default)"))' \
|
||||
'--ignore-submodules[ignore changes to submodules]:: :__git_ignore_submodules_whens' \
|
||||
'--ignored[show ignored files as well]' \
|
||||
'--ignored=-[show ignored files as well]:mode [traditional]:(traditional matching no)' \
|
||||
'(-z --null --column --no-column)'{-z,--null}'[use NUL termination on output]' \
|
||||
'(--no-column -z --null)--column=-[display in columns]::column.status option:((always\:"always show in columns" never\:"never show in columns" auto\:"show in columns if the output is to the terminal" column\:"fill columns before rows (default)" row\:"fill rows before columns" plain\:"show in one column" dense\:"make unequal size columns to utilize more space" nodense\:"make equal size columns"))' \
|
||||
'(--column)--no-column[do not display in columns]' \
|
||||
|
@ -2126,10 +2126,11 @@ _git-config () {
|
|||
'(--global --system -f --file --blob)--local[use local config file]' \
|
||||
'(--global --system --local --blob)'{-f+,--file=}'[use given config file]:config file:_files' \
|
||||
'(--global --system --local -f --file)--blob=[read config from given blob object]:blob:__git_blobs' \
|
||||
'( --int --bool-or-int --path)--bool[setting is a boolean]' \
|
||||
'(--bool --bool-or-int --path)--int[setting is an integer]' \
|
||||
'(--bool --int --path)--bool-or-int[setting is an integer]' \
|
||||
'(--bool --int --bool-or-int )--path[setting is a path]' \
|
||||
'( --int --bool-or-int --path --expiry-date)--bool[setting is a boolean]' \
|
||||
'(--bool --bool-or-int --path --expiry-date)--int[setting is an integer]' \
|
||||
'(--bool --int --path --expiry-date)--bool-or-int[setting is an integer]' \
|
||||
'(--bool --int --bool-or-int --expiry-date)--path[setting is a path]' \
|
||||
'(--bool --int --bool-or-int --path )--expiry-date[setting is an expiry date]' \
|
||||
'(-z --null)'{-z,--null}'[end values with NUL and newline between key and value]' \
|
||||
'(--get --get-all --get-urlmatch --replace-all --add --unset --unset-all --rename-section --remove-section -e --edit --get-color --get-colorbool)--name-only[show variable names only]' \
|
||||
'(--includes)'--no-includes"[don't respect \"include.*\" directives]" \
|
||||
|
@ -4669,6 +4670,8 @@ _git-pack-objects () {
|
|||
'--keep-true-parents[pack parents hidden by grafts]' \
|
||||
'--use-bitmap-index[use a bitmap index if available to speed up counting objects]' \
|
||||
'--write-bitmap-index[write a bitmap index together with the pack index]' \
|
||||
'--filter=[omit certain objects from pack file]:filter:_git_rev-list_filters' \
|
||||
'--missing=[specify how missing objects are handled]:action:(error allow-any print)' \
|
||||
':base-name:_files'
|
||||
}
|
||||
|
||||
|
@ -4781,6 +4784,10 @@ _git-update-index () {
|
|||
'--untracked-cache[enable/disable untracked cache]' \
|
||||
'--test-untracked-cache[test if the filesystem supports untracked cache]' \
|
||||
'--force-untracked-cache[enable untracked cache without testing the filesystem]' \
|
||||
'--force-write-index[write out the index even if is not flagged as changed]' \
|
||||
'--fsmonitor[enable or disable file system monitor]' \
|
||||
'--fsmonitor-valid[mark files as fsmonitor valid]' \
|
||||
'--no-fsmonitor-valid[clear fsmonitor valid bit]' \
|
||||
$z_opt \
|
||||
'*:: :_files'
|
||||
}
|
||||
|
@ -4972,7 +4979,8 @@ _git-ls-files () {
|
|||
'--exclude-standard[skip files in standard Git exclusion lists]' \
|
||||
'--error-unmatch[if any file does not appear in index, treat this as an error]' \
|
||||
'(-s --stage -u --unmerged)--with-tree=[treat paths removed since given tree-ish as still present]: :__git_tree_ishs' \
|
||||
'-v[identify each files status (hmrck?)]' \
|
||||
'(-f)-v[indicate status of each file using lowercase for assume changed files]' \
|
||||
'(-v)-f[indicate status of each file using lowercase for fsmonitor clean files]' \
|
||||
'--full-name[force paths to be output relative to the project top directory]' \
|
||||
'--recurse-submodules[recurse through submodules]' \
|
||||
'--abbrev=[set minimum SHA1 display-length]: :__git_guard_number length' \
|
||||
|
@ -5069,7 +5077,14 @@ _git-rev-list () {
|
|||
|
||||
_arguments -C -S \
|
||||
$revision_options \
|
||||
'(--pretty)--header[display contents of commit in raw-format]' \
|
||||
'--no-filter[turn off any previous --filter argument]' \
|
||||
'--filter-print-omitted[print a list of objects omitted by --filter]' \
|
||||
'--filter=[omit certain objects from pack file]:filter:_git_rev-list_filters' \
|
||||
'--missing=[specify how missing objects are handled]:action:(error allow-any print)' \
|
||||
'(--count --pretty --header --left-right --abbrev-commit --abbrev --parent --children)--quiet[print nothing; exit status indicates if objects are fully connected]' \
|
||||
'--use-bitmap-index[try to speed traversal using pack bitmap index if available]' \
|
||||
'--progress=-[show progress reports as objects are considered]:header' \
|
||||
'(--pretty --quiet)--header[display contents of commit in raw-format]' \
|
||||
'--timestamp[print raw commit timestamp]' \
|
||||
'( --bisect-vars --bisect-all)--bisect[show only middlemost commit object]' \
|
||||
'(--bisect)--bisect-vars[same as --bisect, displaying shell-evalable code]' \
|
||||
|
@ -5092,6 +5107,15 @@ _git-rev-list () {
|
|||
return ret
|
||||
}
|
||||
|
||||
(( $+functions[_git_rev-list_filters] )) ||
|
||||
_git_rev-list_filters() {
|
||||
_values 'filter' \
|
||||
'blob\:none[omit all blobs]' \
|
||||
'blob\:limit[omit blobs larger than specified size]:size' \
|
||||
'sparse\:oid[uses a sparse-checkout specification contained in the blob]:blob-ish' \
|
||||
'sparse\:path[uses a sparse-checkout specification contained in path]:path:_directories'
|
||||
}
|
||||
|
||||
(( $+functions[_git-show-index] )) ||
|
||||
_git-show-index () {
|
||||
_message 'no arguments allowed; accepts index file on standard input'
|
||||
|
@ -5812,16 +5836,24 @@ __git_extract_aliases () {
|
|||
__git_date_formats () {
|
||||
declare -a date_formats
|
||||
|
||||
if compset -P 'format:'; then
|
||||
_strftime
|
||||
return
|
||||
fi
|
||||
|
||||
date_formats=(
|
||||
relative:'show dates relative to the current time'
|
||||
local:'show timestamps in local timezone'
|
||||
iso:'show timestamps in ISO 8601 format'
|
||||
rfc:'show timestamps in RFC 2822 format'
|
||||
iso{,8601}:'show timestamps in ISO 8601 format'
|
||||
iso-strict:'show timestamps in strict ISO 8601 format'
|
||||
rfc{,2822}:'show timestamps in RFC 2822 format'
|
||||
short:'show only date but not time'
|
||||
raw:'show date in internal raw git format (%s %z)'
|
||||
default:'show timestamp in the original timezone')
|
||||
unix:'show date as a Unix epoch timestamp'
|
||||
default:'show timestamp in the original timezone'
|
||||
)
|
||||
|
||||
_describe -t date-formats 'date format' date_formats $*
|
||||
_describe -t date-formats 'date format' date_formats -- '( format\:custom\ format )' -S :
|
||||
}
|
||||
|
||||
(( $+functions[__git_gpg_secret_keys] )) ||
|
||||
|
@ -6983,6 +7015,8 @@ __git_setup_log_options () {
|
|||
# TODO: Need to implement -<n> for limiting the number of commits to show.
|
||||
log_options=(
|
||||
'(- *)-h[display help]'
|
||||
'--decorate-refs=[only decorate refs that match pattern]:pattern'
|
||||
"--decorate-refs-exclude=[don't decorate refs that match pattern]:pattern"
|
||||
'( --no-decorate)--decorate=-[print out ref names of any commits that are shown]: :__git_log_decorate_formats'
|
||||
'(--decorate )--no-decorate[do not print out ref names of any commits that are shown]'
|
||||
'( --no-follow)--follow[follow renames]'
|
||||
|
@ -7204,16 +7238,19 @@ __git_setup_revision_options () {
|
|||
'*--author=[limit commits to those by given author]:author'
|
||||
'*--committer=[limit commits to those by given committer]:committer'
|
||||
'*--grep=[limit commits to those with log messages matching the given pattern]:pattern'
|
||||
'--all-match[limit commits to ones matching all --grep, --author, and --committer]'
|
||||
'--all-match[limit commits to those matching all --grep, --author, and --committer]'
|
||||
'--invert-grep[limit commits to those not matching --grep, --author and --committer]'
|
||||
'(-i --regexp-ignore-case)'{-i,--regexp-ignore-case}'[match regexps ignoring case]'
|
||||
'(-E --extended-regexp)'{-E,--extended-regexp}'[use POSIX extended regexps]'
|
||||
'(-F --fixed-strings)'{-F,--fixed-strings}'[do not interpret patterns as regexps]'
|
||||
'!(-E --extended-regexp -F --fixed-strings -P --perl-regexp)--basic-regexp'
|
||||
'(-E --extended-regexp -F --fixed-strings -P --perl-regexp)'{-E,--extended-regexp}'[use POSIX extended regexps]'
|
||||
'(-E --extended-regexp -F --fixed-strings -P --perl-regexp)'{-F,--fixed-strings}"[don't interpret patterns as regexps]"
|
||||
'(-E --extended-regexp -F --fixed-strings -P --perl-regexp)'{-P,--perl-regexp}'[use perl regular expression]'
|
||||
'--remove-empty[stop when given path disappears from tree]'
|
||||
'--merges[display only merge commits]'
|
||||
'--no-merges[do not display commits with more than one parent]'
|
||||
'(--min-parents --no-min-parents)--min-parents=-[show only commits having at least <n> commits]: :__git_guard_number "minimum number of parents"'
|
||||
'(--min-parents --no-min-parents)--no-min-parents[reset limit]'
|
||||
'(--max-parents --no-max-parents)--max-parents=-[show only commits having at most <n> commits]: :__git_guard_number "maximum number of parents"'
|
||||
'(--no-merges --min-parents)--merges[display only merge commits]'
|
||||
"(--merges --max-parents)--no-merges[don't display commits with more than one parent]"
|
||||
'(--min-parents --no-min-parents --merges)--min-parents=-[show only commits with at least specified number of commits]: :__git_guard_number "number of parents"'
|
||||
'(--min-parents --no-min-parents --merges)--no-min-parents[reset limit]'
|
||||
'(--max-parents --no-max-parents --no-merges)--max-parents=-[show only commits with at most specified number of commits]: :__git_guard_number "number of parents"'
|
||||
'(--max-parents --no-max-parents)--no-max-parents[reset limit]'
|
||||
'--first-parent[follow only first parent from merge commits]'
|
||||
'*--not[reverses meaning of ^ prefix for revisions that follow]'
|
||||
|
@ -7242,18 +7279,20 @@ __git_setup_revision_options () {
|
|||
'(-g --walk-reflogs)--reverse[display commits in reverse order]'
|
||||
'( --objects-edge)--objects[display object ids of objects referenced by listed commits]'
|
||||
'(--objects )--objects-edge[display object ids of objects referenced by listed and excluded commits]'
|
||||
'( --do-walk)--no-walk[only display given revs, do not traverse their ancestors]'
|
||||
"( --do-walk)--no-walk=-[only display given revs, don't traverse their ancestors]::order:(sorted unsorted)"
|
||||
'(--no-walk )--do-walk[only display given revs, traversing their ancestors]'
|
||||
'( --cherry-pick)--cherry-mark[like --cherry-pick but mark equivalent commits instead of omitting them]'
|
||||
'(--cherry-pick )--cherry-pick[omit any commit that introduces the same change as another commit on "the other side" of a symmetric range]'
|
||||
'( --right-only)--left-only[list only commits on the left side of a symmetric range]'
|
||||
'(--left-only )--right-only[list only commits on the right side of a symmetric range]'
|
||||
'(--left-only --right-only --cherry-pick --cherry-mark)--cherry[synonym for --right-only --cherry-mark --no-merges]'
|
||||
'(--left-only --right-only --cherry-pick --cherry-mark --no-merges --merges --max-parents)--cherry[synonym for --right-only --cherry-mark --no-merges]'
|
||||
'(-c --cc )--full-diff[show full commit diffs when using log -p, not only those affecting the given path]'
|
||||
'--log-size[print log message size in bytes before the message]'
|
||||
'--use-mailmap[use mailmap file to map author and committer names and email]'
|
||||
|
||||
'--reflog[show all commits from reflogs]'
|
||||
'--single-worktree[examine the current working tree only]'
|
||||
'--stdin[additionally read commits from standard input]'
|
||||
'--default[use argument as default revision]:default revision:__git_revisions'
|
||||
# TODO: --early-output is undocumented.
|
||||
'--early-output=-[undocumented]::undocumented'
|
||||
|
@ -7278,6 +7317,7 @@ __git_setup_merge_options () {
|
|||
'(-n --no-stat)--stat[show a diffstat at the end of the merge]'
|
||||
'(--stat -n --no-stat)'{-n,--no-stat}'[do not show diffstat at the end of the merge]'
|
||||
'( --no-squash)--squash[merge, but do not commit]'
|
||||
'--signoff[add Signed-off-by:]'
|
||||
'(--squash )--no-squash[merge and commit]'
|
||||
'--ff-only[refuse to merge unless HEAD is up to date or merge can be resolved as a fast-forward]'
|
||||
'(-S --gpg-sign --no-gpg-sign)'{-S-,--gpg-sign=-}'[GPG-sign the commit]::key id'
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
local curcontext="$curcontext" state line expl ret=1
|
||||
local subcmds
|
||||
|
||||
_arguments \
|
||||
_arguments -A "-*" \
|
||||
'(- 1 *)--version[show version information]' \
|
||||
'--schemadir[specify location of schemata]:directory:_directories' \
|
||||
':command:->subcmds' \
|
||||
|
@ -20,6 +20,9 @@ if [[ $state = subargs ]]; then
|
|||
_arguments ':schema:->schemata' ':key:->keys' ':value'
|
||||
;;
|
||||
(list|reset)-(keys|recursively|children)) state=schemata ;;
|
||||
list-schemas)
|
||||
_arguments '--print-paths'
|
||||
;;
|
||||
*) _default && ret=0 ;;
|
||||
esac
|
||||
fi
|
||||
|
|
|
@ -13,7 +13,9 @@ unpigz|pigz)
|
|||
'(-b --blocksize)'{-b+,--blocksize}'[set compression block size]:size (KiB)'
|
||||
'(-p --processes)'{-p,--processes}'[specify number of processes to use]'
|
||||
'(-z --zlib)'{-z,--zlib}'[compress to zlib (.zz) format]'
|
||||
'(-T --no-time)'{-T,--no-time}"[don't store/restore modification time in/from header]"
|
||||
'(-m --no-time)'{-m,--no-time}"[don't store/restore modification time in/from header]"
|
||||
'(-M --time)'{-M,--time}"[store/restore modification time in/from header]"
|
||||
'(--synchronous)-Y[force output file write to permanent storage]'
|
||||
)
|
||||
;|
|
||||
pigz)
|
||||
|
@ -23,7 +25,7 @@ pigz)
|
|||
'(--rsyncable)-R[make rsync-friendly archive]'
|
||||
"($excl)"{-F,--first}'[do iterations first, before block split]'
|
||||
"($excl)"{-I+,--iterations}'[specify number of iterations for optimization]:iterations [15]'
|
||||
"($excl)"{-M+,--maxsplits}'[specify maximum number of split blocks]:split blocks [15]'
|
||||
"($excl)"{-J+,--maxsplits}'[specify maximum number of split blocks]:split blocks [15]'
|
||||
"($excl)"{-O,--oneblock}"[don't split into smaller blocks]"
|
||||
)
|
||||
;|
|
||||
|
@ -62,6 +64,7 @@ gzip|pigz)
|
|||
'(-R)--rsyncable[make rsync-friendly archive]' \
|
||||
'(--suffix)-S+[specify suffix for compressed files]:suffix:' \
|
||||
'(-S)--suffix=[specify suffix for compressed files]:suffix:' \
|
||||
'(-Y)--synchronous[force output file write to permanent storage]' \
|
||||
'(--test)-t[test compressed file integrity]' \
|
||||
'(-t)--test[test compressed file integrity]' \
|
||||
'(--verbose)-v[verbose mode]' \
|
||||
|
|
|
@ -8,19 +8,16 @@ _ssh () {
|
|||
typeset -A opt_args
|
||||
|
||||
common=(
|
||||
'(-2)-1[forces ssh to try protocol version 1 only]'
|
||||
'(-1)-2[forces ssh to try protocol version 2 only]'
|
||||
'(-6)-4[forces ssh to use IPv4 addresses only]'
|
||||
'(-4)-6[forces ssh to use IPv6 addresses only]'
|
||||
'-C[compress data]'
|
||||
# for protocol version 2, this can be a comma-separated list
|
||||
'-c+[select encryption cipher]:encryption cipher:(idea des 3des blowfish arcfour tss none)'
|
||||
'-c+[select encryption cipher]:encryption cipher:->ciphers'
|
||||
'-F+[specify alternate config file]:config file:_files'
|
||||
'*-i+[select identity file]:SSH identity file:_files -g "*(-.^AR)"'
|
||||
'*-o+[specify extra options]:option string:->option'
|
||||
)
|
||||
common_transfer=(
|
||||
'-l+[limit used bandwidth]:bandwidth in Kbit/s:'
|
||||
'-l+[limit used bandwidth]:bandwidth (Kbit/s)'
|
||||
'-P+[specify port on remote host]:port number on remote host'
|
||||
'-p[preserve modification times, access times and modes]'
|
||||
'-q[disable progress meter and warnings]'
|
||||
|
@ -49,8 +46,8 @@ _ssh () {
|
|||
'*-L+[specify local port forwarding]:local port forwarding:->forward' \
|
||||
'-l+[specify login name]:login name:_ssh_users' \
|
||||
'-M[master mode for connection sharing]' \
|
||||
'(-1)-m+[specify mac algorithms]:mac spec:->macs' \
|
||||
'(-1)-N[do not execute a remote command (protocol version 2 only)]' \
|
||||
'-m+[specify mac algorithms]: :->macs' \
|
||||
"-N[don't execute a remote command]" \
|
||||
'-n[redirect stdin from /dev/null]' \
|
||||
'-O+[control an active connection multiplexing master process]:multiplex control command:((check\:"check master process is running" exit\:"request the master to exit" forward\:"request forward without command execution" stop\:"request the master to stop accepting further multiplexing requests" cancel\:"cancel existing forwardings with -L and/or -R" proxy))' \
|
||||
'-P[use non privileged port]' \
|
||||
|
@ -59,8 +56,8 @@ _ssh () {
|
|||
'*-R+[specify remote port forwarding]:remote port forwarding:->forward' \
|
||||
'-S+[specify location of control socket for connection sharing]:path to control socket:_files' \
|
||||
'-Q+[query parameters]:parameter type:((cipher\:"supported symmetric ciphers" cipher-auth\:"supported symmetric ciphers that support authenticated encryption" mac\:"supported message integrity codes" kex\:"key exchange algorithms" key\:"key types" protocol-version\:"supported SSH protocol versions"))' \
|
||||
'(-1)-s[invoke subsystem]' \
|
||||
'(-1 -t)-T[disable pseudo-tty allocation (protocol version 2 only)]' \
|
||||
'-s[invoke subsystem]' \
|
||||
'(-t)-T[disable pseudo-tty allocation]' \
|
||||
'(-T)-t[force pseudo-tty allocation]' \
|
||||
'-V[show version number]' \
|
||||
'(-q)*-v[verbose mode (multiple increase verbosity, up to 3)]' \
|
||||
|
@ -95,6 +92,7 @@ _ssh () {
|
|||
'-l[list all identities]' \
|
||||
'-s+[add keys provided by the PKCS#11 shared library]:library:_files -g "*.(so|dylib)(|.<->)(-.)"' \
|
||||
'-t+[set maximum lifetime for identity]:maximum lifetime (in seconds or time format):' \
|
||||
'-q[be quiet after a successful operation]' \
|
||||
'-X[unlock the agent]' \
|
||||
'-x[lock the agent with a password]' \
|
||||
'*:SSH identity file:_files'
|
||||
|
@ -177,8 +175,14 @@ _ssh () {
|
|||
"($cmn)-s[$sdesc]:CA key:_files" \
|
||||
"$p1($cmn -f -u)-I+[specify key identifier to include in certificate]:key id" \
|
||||
"$p1($cmn -f -u)-h[generate host certificate instead of a user certificate]" \
|
||||
"$p1($cmn -f -u -D)-U[indicate that CA key is held by ssh-agent]" \
|
||||
"$p1($cmn -f -u -U)-D+[indicate the CA key is stored in a PKCS#11 token]:PKCS11 shared library:_files -g '*.(so|dylib)(|.<->)(-.)'" \
|
||||
"$p1($cmn -f -u)-n+[specify user/host principal names to include in certificate]:principals" \
|
||||
"$p1($cmn -f -u)-O+[specify a certificate option]:option" \
|
||||
"$p1($cmn -f -u)*-O+[specify a certificate option]: : _values 'option'
|
||||
clear critical\:name extension\:name force-command\:command\:_cmdstring
|
||||
no-agent-forwarding no-port-forwarding no-pty no-user-rc no-x11-forwarding
|
||||
permit-agent-forwarding permit-port-forwarding permit-pty permit-user-rc
|
||||
permit-x11-forwarding source-address\:source\ address" \
|
||||
"$p1($cmn -f -u)-V+[specify certificate validity interval]:interval" \
|
||||
"($cmn -I -h -n -O -V)-k[generate a KRL file]" \
|
||||
"$p1($cmn -I -h -n -O -V)-u[update a KRL]"
|
||||
|
@ -217,7 +221,7 @@ _ssh () {
|
|||
;;
|
||||
esac
|
||||
case "${IPREFIX#-o}" in
|
||||
(#i)(afstokenpassing|batchmode|canonicalizefallbacklocal|challengeresponseauthentication|checkhostip|clearallforwardings|compression|enablesshkeysign|exitonforwardfailure|fallbacktorsh|forward(agent|x11)|forwardx11trusted|gatewayports|gssapiauthentication|gssapidelegatecredentials|gssapitrustdns|hashknownhosts|hostbasedauthentication|identitiesonly|kbdinteractiveauthentication|(tcp|)keepalive|nohostauthenticationforlocalhost|passwordauthentication|permitlocalcommand|proxyusefdpass|pubkeyauthentication|rhosts(|rsa)authentication|rsaauthentication|streamlocalbindunlink|usersh|kerberos(authentication|tgtpassing)|useprivilegedport|visualhostkey)=*)
|
||||
(#i)(afstokenpassing|batchmode|canonicalizefallbacklocal|challengeresponseauthentication|checkhostip|clearallforwardings|compression|enablesshkeysign|exitonforwardfailure|fallbacktorsh|forward(agent|x11)|forwardx11trusted|gatewayports|gssapiauthentication|gssapidelegatecredentials|gssapikeyexchange|gssapirenewalforcesrekey|gssapitrustdns|hashknownhosts|hostbasedauthentication|identitiesonly|kbdinteractiveauthentication|(tcp|)keepalive|nohostauthenticationforlocalhost|passwordauthentication|permitlocalcommand|proxyusefdpass|pubkeyauthentication|rhosts(|rsa)authentication|rsaauthentication|streamlocalbindunlink|usersh|kerberos(authentication|tgtpassing)|useprivilegedport|visualhostkey)=*)
|
||||
_wanted values expl 'truth value' compadd yes no && ret=0
|
||||
;;
|
||||
(#i)addressfamily=*)
|
||||
|
@ -239,32 +243,7 @@ _ssh () {
|
|||
_message -e 'CNAME rule list (source_domain_list:target_domain_list, each pattern list comma separated)' && ret=0
|
||||
;;
|
||||
(#i)ciphers=*)
|
||||
_values -s , 'encryption cipher' \
|
||||
'3des-cbc' \
|
||||
'aes128-cbc' \
|
||||
'aes192-cbc' \
|
||||
'aes256-cbc' \
|
||||
'aes128-ctr' \
|
||||
'aes192-ctr' \
|
||||
'aes256-ctr' \
|
||||
'arcfour128' \
|
||||
'arcfour256' \
|
||||
'arcfour' \
|
||||
'blowfish-cbc' \
|
||||
'cast128-cbc' \
|
||||
\
|
||||
'rijndael128-cbc' \
|
||||
'rijndael192-cbc' \
|
||||
'rijndael256-cbc' \
|
||||
'rijndael-cbc@lysator.liu.se' \
|
||||
&& ret=0
|
||||
;;
|
||||
(#i)cipher=*)
|
||||
_wanted values expl 'encryption cipher (protocol version 1)' \
|
||||
compadd blowfish 3des des idea arcfour tss none && ret=0
|
||||
;;
|
||||
(#i)compressionlevel=*)
|
||||
_values 'compression level' {1..9} && ret=0
|
||||
state=ciphers
|
||||
;;
|
||||
(#i)connectionattempts=*)
|
||||
_message -e 'connection attempts' && ret=0
|
||||
|
@ -304,21 +283,7 @@ _ssh () {
|
|||
_wanted hosts expl 'real host name to log into' _ssh_hosts && ret=0
|
||||
;;
|
||||
(#i)(hostbasedkeytypes|hostkeyalgorithms|pubkeyacceptedkeytypes)=*)
|
||||
_values -s , 'key types' \
|
||||
'ecdsa-sha2-nistp256-cert-v01@openssh.com' \
|
||||
'ecdsa-sha2-nistp384-cert-v01@openssh.com' \
|
||||
'ecdsa-sha2-nistp521-cert-v01@openssh.com' \
|
||||
'ssh-ed25519-cert-v01@openssh.com' \
|
||||
'ssh-rsa-cert-v01@openssh.com' \
|
||||
'ssh-dss-cert-v01@openssh.com' \
|
||||
'ssh-rsa-cert-v00@openssh.com' \
|
||||
'ssh-dss-cert-v00@openssh.com' \
|
||||
'ecdsa-sha2-nistp256' \
|
||||
'ecdsa-sha2-nistp384' \
|
||||
'ecdsa-sha2-nistp521' \
|
||||
'ssh-ed25519' \
|
||||
'ssh-rsa' \
|
||||
'ssh-dss' && ret=0
|
||||
_wanted key-types expl 'key type' _sequence compadd - $(_call_program key-types ssh -Q key) && ret=0
|
||||
;;
|
||||
(#i)identityfile=*)
|
||||
_description files expl 'SSH identity file'
|
||||
|
@ -350,12 +315,9 @@ _ssh () {
|
|||
_values -s , 'keyboard-interactive authentication methods' \
|
||||
'bsdauth' 'pam' 'skey' && ret=0
|
||||
;;
|
||||
(#i)kexalgorithms=*)
|
||||
_values -s , 'KEX algorithms' \
|
||||
ecdh-sha2-nistp256 ecdh-sha2-nistp384 ecdh-sha2-nistp521 \
|
||||
diffie-hellman-group-exchange-sha256 \
|
||||
diffie-hellman-group-exchange-sha1 \
|
||||
diffie-hellman-group14-sha1 diffie-hellman-group1-sha1 && ret=0
|
||||
(#i)(kexalgorithms|gssapikexalgorithms)=*)
|
||||
_wanted algorithms expl 'key exchange algorithm' _sequence compadd - \
|
||||
$(_call_program algorithms ssh -Q kex) && ret=0
|
||||
;;
|
||||
(#i)localcommand=*)
|
||||
_description commands expl 'run command locally after connecting'
|
||||
|
@ -389,7 +351,7 @@ _ssh () {
|
|||
'1' \
|
||||
'2' && ret=0
|
||||
;;
|
||||
(#i)proxycommand=*)
|
||||
(#i)(proxy|remote)command=*)
|
||||
_cmdstring && ret=0
|
||||
;;
|
||||
(#i)rekeylimit=*)
|
||||
|
@ -421,7 +383,13 @@ _ssh () {
|
|||
(#i)streamlocalbindmask=*)
|
||||
_message -e 'octal mask' && ret=0
|
||||
;;
|
||||
(#i)(stricthostkeychecking|verifyhostkeydns|updatehostkeys)=*)
|
||||
(#i)stricthostkeychecking=*)
|
||||
_wanted values expl 'value' compadd yes no ask accept-new off && ret=0
|
||||
;;
|
||||
(#i)syslogfacility=*)
|
||||
_wanted facilities expl 'facility' compadd -M 'm:{a-z}={A-Z}' DAEMON USER AUTH LOCAL{0,1,2,3,4,5,6,7} && ret=0
|
||||
;;
|
||||
(#i)(verifyhostkeydns|updatehostkeys)=*)
|
||||
_wanted values expl 'truthish value' compadd yes no ask && ret=0
|
||||
;;
|
||||
(#i)transport=*)
|
||||
|
@ -466,11 +434,9 @@ _ssh () {
|
|||
CertificateFile \
|
||||
ChallengeResponseAuthentication \
|
||||
CheckHostIP \
|
||||
Cipher \
|
||||
Ciphers \
|
||||
ClearAllForwardings \
|
||||
Compression \
|
||||
CompressionLevel \
|
||||
ConnectionAttempts \
|
||||
ConnectTimeout \
|
||||
ControlMaster \
|
||||
|
@ -488,10 +454,14 @@ _ssh () {
|
|||
GatewayPorts \
|
||||
GlobalKnownHostsFile \
|
||||
GSSAPIAuthentication \
|
||||
GSSAPIClientIdentity \
|
||||
GSSAPIDelegateCredentials \
|
||||
GSSAPIKeyExchange \
|
||||
GSSAPIRenewalForcesRekey \
|
||||
GSSAPIServerIdentity \
|
||||
GSSAPITrustDns \
|
||||
GSSAPIKexAlgorithms \
|
||||
HashKnownHosts \
|
||||
Host \
|
||||
HostbasedAuthentication \
|
||||
HostbasedKeyTypes \
|
||||
HostKeyAlgorithms \
|
||||
|
@ -516,13 +486,13 @@ _ssh () {
|
|||
PKCS11Provider \
|
||||
Port \
|
||||
PreferredAuthentications \
|
||||
Protocol \
|
||||
ProxyCommand \
|
||||
ProxyJump \
|
||||
ProxyUseFdpass \
|
||||
PubkeyAcceptedKeyTypes \
|
||||
PubkeyAuthentication \
|
||||
RekeyLimit \
|
||||
RemoteCommand \
|
||||
RemoteForward \
|
||||
RequestTTY \
|
||||
RevokedHostKeys \
|
||||
|
@ -534,8 +504,8 @@ _ssh () {
|
|||
StreamLocalBindMask \
|
||||
StreamLocalBindUnlink \
|
||||
StrictHostKeyChecking \
|
||||
SyslogFacility \
|
||||
TCPKeepAlive \
|
||||
Transport \
|
||||
Tunnel \
|
||||
TunnelDevice \
|
||||
UpdateHostKeys \
|
||||
|
@ -608,11 +578,18 @@ _ssh () {
|
|||
return ret
|
||||
;;
|
||||
macs)
|
||||
_values -s , 'MAC algorithms' hmac-md5 hmac-sha1 umac-64@openssh.com \
|
||||
hmac-ripemd160 hmac-sha1-96 hmac-md5-96 hmac-sha2-256 \
|
||||
hmac-sha2-256-96 hmac-sha2-512 hmac-sha2-512-96 && ret=0
|
||||
_wanted macs expl 'MAC algorithm' _sequence compadd - $(_call_program macs ssh -Q mac)
|
||||
return
|
||||
;;
|
||||
ciphers)
|
||||
_wanted ciphers expl 'encryption cipher' _sequence compadd - $(_call_program ciphers ssh -Q cipher)
|
||||
return
|
||||
;;
|
||||
command)
|
||||
if (( $+opt_args[-s] )); then
|
||||
_wanted subsystems expl subsystem compadd sftp
|
||||
return
|
||||
fi
|
||||
local -a _comp_priv_prefix
|
||||
shift 1 words
|
||||
(( CURRENT-- ))
|
||||
|
|
|
@ -47,7 +47,8 @@ else
|
|||
'(-s --shell)'{-s,--shell}'[run shell as the target user; a command may also be specified]' \
|
||||
'(-i --login)'{-i,--login}'[run login shell as the target user; a command may also be specified]' \
|
||||
'(-b --background -i --login -s --shell -e --edit)'{-b,--background}'[run command in the background]' \
|
||||
'(-E --preserve-env -i --login -s --shell -e --edit)'{-E,--preserve-env}'[preserve user environment when running command]' \
|
||||
'(--preserve-env -i --login -s --shell -e --edit)-E[preserve user environment when running command]' \
|
||||
'(-E -i --login -s --shell -e --edit)--preserve-env=-[preserve user environment when running command]::environment variable:_sequence _parameters -g "*export*"' \
|
||||
'(-H --set-home -i --login -s --shell -e --edit)'{-H,--set-home}"[set HOME variable to target user's home dir]" \
|
||||
'(-P --preserve-groups -i -login -s --shell -e --edit)'{-P,--preserve-groups}"[preserve group vector instead of setting to target's]" \
|
||||
'(-)1:command: _command_names -e'
|
||||
|
|
|
@ -6,8 +6,8 @@ opts=( ${${${(s.</option>.)"$(_call_program options $words[1] -xml-config)"}##*<
|
|||
opts=( ${opts/;Integer*/:number} )
|
||||
opts=( ${opts/;Boolean*/:boolean:(yes no)} )
|
||||
opts=( ${opts/;AutoBool*/:value:(auto yes no)} )
|
||||
opts=( ${opts/;(String|Tag)*/:value} )
|
||||
opts=( ${opts/(#b);(enum|Encoding|DocType)*<default>(*)<*<example>([^<]#)<*/:value [${match[2]%% *}]:(${(j. .)${(@s., .)match[3]}%% *})} )
|
||||
opts=( ${opts/;(String|Tag|Attributes)*/:value} )
|
||||
opts=( ${opts/(#bi);(enum|Encoding|DocType)*<default>(*)<*<example>([^<]#)<*/:value [${match[2]%% *}]:(${(j. .)${(@s., .)match[3]}%% *})} )
|
||||
opts=( ${(M)opts:#*:*} )
|
||||
|
||||
_arguments -s -A "-*" --$^opts \
|
||||
|
@ -33,7 +33,10 @@ _arguments -s -A "-*" --$^opts \
|
|||
'(- *)'{-version,-v}'[show the version of Tidy]' \
|
||||
'(- *)'{-help,-h,-\?}'[list the command line options]' \
|
||||
'(- *)-help-config[list all configuration options]' \
|
||||
'(- *)-help-env[show details of environment and runtime configuration]' \
|
||||
'(- *)-show-config[list the current configuration settings]' \
|
||||
'(- *)-export-config[list the current settings in config file form]' \
|
||||
'(- *)-export-default-config[list the default settings in config file form]' \
|
||||
"(*)-help-option[show a description of specified configuration option]:config option:(${(@j. .)opts%%:*})" \
|
||||
'(-lang -language)'{-lang,-language}'[set the two-letter language code]:language:_locales' \
|
||||
'-xml-help[list the command line options in XML format]' \
|
||||
|
@ -41,6 +44,7 @@ _arguments -s -A "-*" --$^opts \
|
|||
"-xml-strings[output all of Tidy's strings in XML format]" \
|
||||
'-xml-error-strings[output error constants and strings in XML format]' \
|
||||
'-xml-options-strings[output option descriptions in XML format]' \
|
||||
'-options[specify file containing configuration settings]:config file:_files' \
|
||||
'*:file:_files' \
|
||||
+ '(encoding)' \
|
||||
'-ascii[use US-ASCII for output, ISO-8859-1 for input]' \
|
||||
|
|
|
@ -180,7 +180,7 @@ _tmux-bind-key() {
|
|||
'-r[the key may repeat]' \
|
||||
'-T+[specify key table for the binding]:key table' \
|
||||
'1:key' \
|
||||
'*:::template:_tmux'
|
||||
'*:::template:= _tmux'
|
||||
}
|
||||
|
||||
_tmux-break-pane() {
|
||||
|
@ -211,49 +211,38 @@ _tmux-capture-pane() {
|
|||
}
|
||||
|
||||
_tmux-choose-buffer() {
|
||||
[[ -n ${tmux_describe} ]] && print "put a window into buffer choice mode" && return
|
||||
[[ -n ${tmux_describe} ]] && print "put a pane into buffer choice mode" && return
|
||||
_arguments -s \
|
||||
'-F+[specify output format]:format:__tmux-format' \
|
||||
'-N[start without the preview]' \
|
||||
'-F+[specify format for each list item]:format:__tmux-formats' \
|
||||
'-f+[filter items]:filter format:__tmux-formats' \
|
||||
'-O+[initial sort order]:order:(time name size)' \
|
||||
'-t+[specify target window]:session:__tmux-windows' \
|
||||
'*:::template:_tmux'
|
||||
'*:::template:= _tmux'
|
||||
}
|
||||
|
||||
_tmux-choose-client() {
|
||||
[[ -n ${tmux_describe} ]] && print "put a window into client choice mode" && return
|
||||
_arguments -s \
|
||||
'-F+[specify output format]:format:__tmux-format' \
|
||||
'-N[start without the preview]' \
|
||||
'-F+[specify format for each list item]:format:__tmux-formats' \
|
||||
'-f+[filter items]:filter format:__tmux-formats' \
|
||||
'-O+[initial sort order]:order:(time name size)' \
|
||||
'-t+[specify target window]:session:__tmux-windows' \
|
||||
'*:::template:_tmux'
|
||||
}
|
||||
|
||||
_tmux-choose-session() {
|
||||
[[ -n ${tmux_describe} ]] && print "put a window into session choice mode" && return
|
||||
_arguments -s \
|
||||
'-F+[specify output format]:format:__tmux-format' \
|
||||
'-t+[specify target window]:session:__tmux-windows' \
|
||||
'*:::template:_tmux'
|
||||
'*:::template:= _tmux'
|
||||
}
|
||||
|
||||
_tmux-choose-tree() {
|
||||
[[ -n ${tmux_describe} ]] && print "put a window into tree choice mode" && return
|
||||
_arguments -s \
|
||||
'-b+[override default session command]:session-command' \
|
||||
'-c+[override default window command]:window-command' \
|
||||
'-S+[specify session format]:session-format:__tmux-formats' \
|
||||
'-N[start without the preview]' \
|
||||
'-F+[specify format for each list item]:format:__tmux-formats' \
|
||||
'-f+[filter items]:filter format:__tmux-formats' \
|
||||
'-O+[initial sort order]:order:(time name size)' \
|
||||
'-s[choose among sessions]' \
|
||||
'-t+[specify target window]:session:__tmux-windows' \
|
||||
'-u[show generated tree uncollapsed at startup]' \
|
||||
'-W+[specify window format]:window-format:__tmux-formats' \
|
||||
'-w[choose among windows]' \
|
||||
'*:::template:_tmux'
|
||||
}
|
||||
|
||||
_tmux-choose-window() {
|
||||
[[ -n ${tmux_describe} ]] && print "put a window into window choice mode" && return
|
||||
_arguments -s \
|
||||
'-F+[specify output format]:format:__tmux-formats' \
|
||||
'-t+[specify target window]:session:__tmux-windows' \
|
||||
'*:::template:_tmux'
|
||||
'*:::template:= _tmux'
|
||||
}
|
||||
|
||||
_tmux-clear-history() {
|
||||
|
@ -275,7 +264,7 @@ _tmux-command-prompt() {
|
|||
'-I+[specify list of initial inputs]:initial-text (comma-separated list)' \
|
||||
'-p+[specify list of prompts]:prompts (comma-separated list)' \
|
||||
'-t+[specify target client]:client:__tmux-clients' \
|
||||
'*:::template:_tmux'
|
||||
'*:::template:= _tmux'
|
||||
}
|
||||
|
||||
_tmux-confirm-before() {
|
||||
|
@ -283,7 +272,7 @@ _tmux-confirm-before() {
|
|||
_arguments -s \
|
||||
'-p+[specify prompt]:prompt string' \
|
||||
'-t+[specify target client]:client:__tmux-clients' \
|
||||
'*:::command:_tmux'
|
||||
'*:::command:= _tmux'
|
||||
}
|
||||
|
||||
_tmux-copy-mode() {
|
||||
|
@ -321,14 +310,16 @@ _tmux-display-message() {
|
|||
|
||||
_tmux-display-panes() {
|
||||
[[ -n ${tmux_describe} ]] && print "display an indicator for each visible pane" && return
|
||||
_arguments '-t+[specify target client]:client:__tmux-clients'
|
||||
_arguments -S \
|
||||
'-d+[time to show indicator for]:duration (ms)' \
|
||||
'-t+[specify target client]:client:__tmux-clients' \
|
||||
'*:::command:= _tmux'
|
||||
}
|
||||
|
||||
_tmux-find-window() {
|
||||
[[ -n ${tmux_describe} ]] && print "search for a pattern in windows" && return
|
||||
_arguments -s \
|
||||
'-C[match visible contents]' \
|
||||
'-F+[specify output format]:format:__tmux-formats' \
|
||||
'-N[match window name]' \
|
||||
'-T[match window title]' \
|
||||
'-t+[specify target window]:window:__tmux-windows' \
|
||||
|
@ -628,6 +619,7 @@ _tmux-resize-pane() {
|
|||
_tmux-respawn-pane() {
|
||||
[[ -n ${tmux_describe} ]] && print "reuse a pane in which a command has exited" && return
|
||||
_arguments -s -A "-*" -S \
|
||||
'-c+[specify a new working directory for the pane]:directory:_directories' \
|
||||
'-k[kill window if it is in use]' \
|
||||
'-t+[specify target pane]:pane:__tmux-pane' \
|
||||
':command:_cmdambivalent'
|
||||
|
@ -636,6 +628,7 @@ _tmux-respawn-pane() {
|
|||
_tmux-respawn-window() {
|
||||
[[ -n ${tmux_describe} ]] && print "reuse a window in which a command has exited" && return
|
||||
_arguments -s -A "-*" -S \
|
||||
'-c+[specify a new working directory for the window]:directory:_directories' \
|
||||
'-k[kill window if it is in use]' \
|
||||
'-t+[specify target window]:window:__tmux-windows' \
|
||||
':command:_cmdambivalent'
|
||||
|
@ -688,6 +681,7 @@ _tmux-select-pane() {
|
|||
'-R[move to the pane right of target]' \
|
||||
'-U[move to the pane above target]' \
|
||||
'-P+[set pane style]:style:__tmux-style' \
|
||||
'-T+[set the pane title]:title' \
|
||||
'-t+[specify target pane]:pane:__tmux-panes'
|
||||
}
|
||||
|
||||
|
@ -772,6 +766,7 @@ _tmux-set-option() {
|
|||
typeset -A opt_args
|
||||
_arguments -C -s : \
|
||||
'-a[append to string options]' \
|
||||
'-F[expand formats in the option value]' \
|
||||
'-g[set a global session option]' \
|
||||
'-o[prevent setting of an option that is already set]' \
|
||||
'-q[suppress errors about unknown or ambiguous options]' \
|
||||
|
@ -796,6 +791,7 @@ _tmux-set-window-option() {
|
|||
typeset -A opt_args
|
||||
_arguments -C -s : \
|
||||
'-a[append to string options]' \
|
||||
'-F[expand formats in the option value]' \
|
||||
'-g[set a global window option]' \
|
||||
'-o[prevent setting of an option that is already set]' \
|
||||
'-q[suppress errors about unknown or ambiguous options]' \
|
||||
|
@ -811,8 +807,9 @@ _tmux-set-hook() {
|
|||
_arguments -s \
|
||||
'-g[add hook to global list]' \
|
||||
'-u[unset a hook]' \
|
||||
'-t+[specify target session]:session:__tmux-sessions'
|
||||
':command'
|
||||
'-t+[specify target session]:session:__tmux-sessions' \
|
||||
':hook name:_tmux_hooks' \
|
||||
'*:::command:= _tmux'
|
||||
}
|
||||
|
||||
_tmux-show-hooks() {
|
||||
|
@ -820,7 +817,6 @@ _tmux-show-hooks() {
|
|||
_arguments -s -S -A "-*" \
|
||||
'-g[show global list of hooks]' \
|
||||
'-t+[specify target session]:session:__tmux-sessions' \
|
||||
':hook name:(alert-activity alert-bell alert-silence client-attached client-detached client-resized pane-died pane-exited)' \
|
||||
}
|
||||
|
||||
_tmux-show-buffer() {
|
||||
|
@ -1105,6 +1101,12 @@ function __tmux-colours() {
|
|||
fi
|
||||
}
|
||||
|
||||
_tmux_hooks() {
|
||||
_alternative \
|
||||
'hooks:hook name:(alert-activity alert-bell alert-silence client-attached client-detached client-resized client-session-changed pane-died pane-exited pane-set-clipboard session-created session-closed session-renamed window-linked window-renamed window-unlinked)' \
|
||||
'post-hooks:command post-hook:compadd - after-${_tmux_aliasmap}'
|
||||
}
|
||||
|
||||
function __tmux-get-optarg() {
|
||||
local opt="$1"
|
||||
local -i i
|
||||
|
|
|
@ -43,6 +43,9 @@ case $OSTYPE in
|
|||
"(-c)-S[don't report signals received by the process]"
|
||||
'(*)-p[trace specified existing processes]:pid:_pids'
|
||||
)
|
||||
;|
|
||||
freebsd<10->.*)
|
||||
args+=( '-H[include thread ID in the output of each event]' )
|
||||
;;
|
||||
esac
|
||||
|
||||
|
|
|
@ -71,6 +71,7 @@ _arguments -C -s \
|
|||
'(--adjust-extension -E)'{--adjust-extension,-E}'[save all HTML/CSS documents with proper extensions]' \
|
||||
"--ignore-length[ignore \`Content-Length' header field]" \
|
||||
'*--header=[send a custom HTTP header]:header:->header' \
|
||||
'--compression=:compression:(auto gzip none)' \
|
||||
'--max-redirect=:number' \
|
||||
'--proxy-user=:user' \
|
||||
'--proxy-password=:password' \
|
||||
|
@ -90,7 +91,7 @@ _arguments -C -s \
|
|||
'--content-disposition[honor the Content-Disposition header when choosing local file names]' \
|
||||
'--content-on-error[output received content on server errors]' \
|
||||
"--auth-no-challenge[send basic HTTP authentication without first waiting for server's challenge]" \
|
||||
'--secure-protocol=[choose secure protocol]:protocol:(SSLv2 SSLv3 TLSv1)' \
|
||||
'--secure-protocol=[choose secure protocol]:protocol:(SSLv2 SSLv3 TLSv1 TLSv1_1 TLSv1_2 PFS)' \
|
||||
--https-only \
|
||||
"--no-check-certificate=[don't check the server certificate]" \
|
||||
'--certificate=[specify client certificate]:client certificate file:_files' \
|
||||
|
@ -142,6 +143,7 @@ _arguments -C -s \
|
|||
'(-np --no-parent)'{-np,--no-parent}"[don't ascend to parent directory]" \
|
||||
'--no-verbose' \
|
||||
'--no-clobber' \
|
||||
'--no-netrc' \
|
||||
'--no-use-server-timestamps[do not set timestamp to server provided value]' \
|
||||
'--htmlify=:htmlify:' \
|
||||
'--no:no:->noflags' \
|
||||
|
|
Loading…
Reference in a new issue