Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

[PATCH] _subversion: Complete a few more option switches



The while (( idx )) form should guarantee that these switches are only
added if the 'svn' binary supports them.  (One of these switches isn't
present in svn 1.8 or earlier.)

---

diff --git a/Completion/Unix/Command/_subversion b/Completion/Unix/Command/_subversion
index 188a813..278f3bb 100644
--- a/Completion/Unix/Command/_subversion
+++ b/Completion/Unix/Command/_subversion
@@ -50,9 +50,27 @@ _svn () {
 	  args=(
 	    ${=${${${(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 "" `"'))' )
+          done
           while (( idx=$args[(I)*--c(l|hangelist):arg:] )); do
             args[(I)*--c(l|hangelist):arg:]=( \*{--cl,--changelist}':change list:_svn_changelists' )
           done
+          while (( idx=$args[(I)*--config-dir:arg:] )); do
+            args[(I)*--config-dir:arg:]=( --config-dir':config dir:_directories' )
+          done
+          while (( idx=$args[(I)*--depth:arg:] )); do
+            args[(I)*--depth:arg:]=( --depth':operation depth (how far to recurse):(empty files immediates infinity)' )
+          done
+          while (( idx=$args[(I)*(-F|--file):arg:] )); do
+            args[(I)*(-F|--file):arg:]=( '(-F --file)'{-F,--file}':log message file:_files' )
+          done
+          while (( idx=$args[(I)*--set-depth:arg:] )); do
+            args[(I)*--set-depth:arg:]=( --set-depth'[make working copy deeper or shallower]:new depth:(exclude empty files immediates infinity)' )
+          done
+          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
 	  _store_cache svn-${cmd}-args args
 	fi
 



Messages sorted by: Reverse Date, Date, Thread, Author