diff options
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | Completion/Unix/Command/_subversion | 14 |
2 files changed, 17 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog index 96436c5a9..2968e369f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -3,6 +3,9 @@ * 23301: Paul Ackersviller: Functions/Misc/add-zsh-hook: fix semicolon mistyped as a colon. + * 23302: Completion/Unix/Command/_subversion: complete properties + after svn propget and propedit. + 2007-04-19 Peter Stephenson <pws@csr.com> * unposted: Config/version.mk: set release string to 4.3.4-dev-0. 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 "$@" ;; |