summaryrefslogtreecommitdiff
path: root/Completion/Unix/Command/_subversion
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/Unix/Command/_subversion')
-rw-r--r--Completion/Unix/Command/_subversion14
1 files changed, 14 insertions, 0 deletions
diff --git a/Completion/Unix/Command/_subversion b/Completion/Unix/Command/_subversion
index 84e63a343..88a8f1d66 100644
--- a/Completion/Unix/Command/_subversion
+++ b/Completion/Unix/Command/_subversion
@@ -72,6 +72,12 @@ _svn () {
'*:file:_files -g "*(e:_svn_controlled:)"'
)
;;
+ (propget|propedit)
+ args+=(
+ '1:property name:_svn_props'
+ '2:target: _alternative "files:file:_files" "urls:URL:_svn_urls"'
+ )
+ ;;
(propset)
args=(
':propname:(svn:ignore svn:keywords svn:executable svn:eol-style svn:mime-type svn:externals svn:needs-lock)'
@@ -234,6 +240,14 @@ _svnadmin_commands() {
compadd "$@" -k _svnadmin_cmds || compadd "$@" ${(s.:.)_svnadmin_cmds}
}
+(( $+functions[_svn_props] )) ||
+_svn_props() {
+ local properties
+
+ properties=( ${${(M)${(f)"$(svn proplist 2>/dev/null)"}:# [^ ]*}# } )
+ compadd "$@" -a properties && return 0
+}
+
_subversion () {
case $service in
(svn) _svn "$@" ;;