From 63b1dcd284df2a5dbb37bb0af3cdd13553576a85 Mon Sep 17 00:00:00 2001 From: Daniel Shahaf Date: Thu, 27 Aug 2015 22:45:49 +0000 Subject: 36304: _git-cat-file: Fix regression in 36237 This broke 'git cat-file blob origin:Etc/'. --- Completion/Unix/Command/_git | 1 + 1 file changed, 1 insertion(+) (limited to 'Completion/Unix/Command') diff --git a/Completion/Unix/Command/_git b/Completion/Unix/Command/_git index a096007d6..740969903 100644 --- a/Completion/Unix/Command/_git +++ b/Completion/Unix/Command/_git @@ -6008,6 +6008,7 @@ __git_tree_files () { if [[ $1 == --root-relative ]]; then extra_args+=(--full-tree) + shift fi zparseopts -D -E -a compadd_opts V: J: 1 2 n f X: M: P: S: r: R: q F: -- cgit v1.2.3 From d6ca3bc4b97f756dee2cbb738a0e835b97876a8c Mon Sep 17 00:00:00 2001 From: Daniel Shahaf Date: Thu, 27 Aug 2015 22:01:37 +0000 Subject: unposted: _subversion: Avoid SHORT_LOOPS --- ChangeLog | 3 +++ Completion/Unix/Command/_subversion | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) (limited to 'Completion/Unix/Command') diff --git a/ChangeLog b/ChangeLog index 0d858b0b5..553e5a23f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2015-08-27 Daniel Shahaf + * unposted: Completion/Unix/Command/_subversion: _subversion: + Avoid SHORT_LOOPS + * 36304: Completion/Unix/Command/_git: _git-cat-file: Fix regression in 36237 diff --git a/Completion/Unix/Command/_subversion b/Completion/Unix/Command/_subversion index 1cffc3c04..bbcaf3ac9 100644 --- a/Completion/Unix/Command/_subversion +++ b/Completion/Unix/Command/_subversion @@ -51,7 +51,7 @@ _svn () { ${=${${${(M)${(f)"$(_comp_locale; _call_program options svn help $cmd)"#(*Valid options:|(#e))}:#* :*}%% #:*}/ (arg|ARG)/:arg:}/(#b)(-##)([[:alpha:]]##) \[--([a-z-]##)\](:arg:)#/(--$match[3])$match[1]$match[2]$match[4] ($match[1]$match[2])--$match[3]$match[4]} ) while (( idx=$args[(I)*--accept:arg:] )); do - args[(I)*--accept:arg:]=( --accept':automatic conflict resolution action:((working\:working base\:base '"`for i j in p postpone mc mine-conflict tc theirs-conflict mf mine-full tf theirs-full e edit l launch; print -rn $i\\\\:$j $j\\\\:$j "" `"'))' ) + args[(I)*--accept:arg:]=( --accept':automatic conflict resolution action:((working\:working base\:base '"`for i j in p postpone mc mine-conflict tc theirs-conflict mf mine-full tf theirs-full e edit l launch; do print -rn $i\\\\:$j $j\\\\:$j ""; done `"'))' ) done while (( idx=$args[(I)*--c(l|hangelist):arg:] )); do args[(I)*--c(l|hangelist):arg:]=( \*{--cl,--changelist}':change list:_svn_changelists' ) -- cgit v1.2.3 From d2e920d5d089e1d60a5bfefa7f0426069fa44c2a Mon Sep 17 00:00:00 2001 From: Daniel Shahaf Date: Thu, 27 Aug 2015 22:02:03 +0000 Subject: 36306: _subversion: Complete --show-item values --- ChangeLog | 5 +++++ Completion/Unix/Command/_subversion | 18 ++++++++++++++++++ 2 files changed, 23 insertions(+) (limited to 'Completion/Unix/Command') diff --git a/ChangeLog b/ChangeLog index 7f4675d11..05b478624 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2015-08-28 Daniel Shahaf + + * 36306: Completion/Unix/Command/_subversion: _subversion: + Complete --show-item values + 2015-08-28 Peter Stephenson * users/20475: Doc/Zsh/contrib.yo: mention that cdr mechanism diff --git a/Completion/Unix/Command/_subversion b/Completion/Unix/Command/_subversion index bbcaf3ac9..3cc9e8a0b 100644 --- a/Completion/Unix/Command/_subversion +++ b/Completion/Unix/Command/_subversion @@ -4,6 +4,20 @@ _svn () { local curcontext="$curcontext" state line expl ret=1 typeset -A opt_args + # Colons in values must be escaped. + local -A show_item_keys=( + kind "the kind of TARGET (file or dir)" + url "the URL of TARGET in the repository" + relative-url "the repository-relative URL" + repos-root-url "the repository root URL" + repos-uuid "the repository UUID" + revision "the revision of TARGET" + last-changed-revision "the most recent revision in which TARGET was changed" + last-changed-date "the date of the last-changed revision" + last-changed-author "the author of the last-changed revision" + wc-root "the working copy root path" + ) + local update_policy zstyle -s ":completion:*:*:$service:*" cache-policy update_policy if [[ -z "$update_policy" ]]; then @@ -71,6 +85,10 @@ _svn () { while (( idx=$args[(I)*--trust-server-cert-failures:arg:] )); do args[(I)*--trust-server-cert-failures:arg:]=( --trust-server-cert-failures':failures:_values -s , "certificate failures to ignore" "unknown-ca[unknown authority]" "cn-mismatch[hostname mismatch]" "expired[certificate expired]" "not-yet-valid[certificate not yet valid]" "other[all other failures]"' ) done + while (( idx=$args[(I)*--show-item:arg:] )); do + # (q) to quote the parentheses in the value + args[(I)*--show-item:arg:]=( --show-item':item key:(('"`for i j in ${(kv)show_item_keys}; do print -rn - $i\\\\:"${(q)j}" ""; done`"'))' ) + done _store_cache svn-${cmd}-args args fi -- cgit v1.2.3