summary refs log tree commit diff
path: root/Completion/Zsh/Command
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/Zsh/Command')
-rw-r--r--Completion/Zsh/Command/.distfiles2
-rw-r--r--Completion/Zsh/Command/_zmv18
2 files changed, 19 insertions, 1 deletions
diff --git a/Completion/Zsh/Command/.distfiles b/Completion/Zsh/Command/.distfiles
index 40275afbe..544daf4c1 100644
--- a/Completion/Zsh/Command/.distfiles
+++ b/Completion/Zsh/Command/.distfiles
@@ -2,7 +2,7 @@ DISTFILES_SRC='
 .distfiles
 _alias     _disable  _jobs_builtin  _read    _ttyctl    _which     _zstyle
 _autoload  _echotc   _kill          _sched   _typeset   _zcompile  _dirs
-_bindkey   _echoti   _limit         _set     _ulimit    _zed
+_bindkey   _echoti   _limit         _set     _ulimit    _zed       _zmv
 _builtin   _emulate  _mere          _setopt  _unhash    _zftp
 _cd        _enable   _precommand    _source  _unsetopt  _zle
 _command   _fc       _print         _stat    _vared     _zmodload
diff --git a/Completion/Zsh/Command/_zmv b/Completion/Zsh/Command/_zmv
new file mode 100644
index 000000000..bc639f3ec
--- /dev/null
+++ b/Completion/Zsh/Command/_zmv
@@ -0,0 +1,18 @@
+#compdef zmv zln zcp
+
+_arguments -s -S -A '-*' \
+  '(-C -L -s -p)-M[force mv]' \
+  '(-M -L -s -p)-C[force cp]' \
+  '(-M -C -p)-L[force ln]' \
+  '-f[force overwriting of destination files]' \
+  '-i[interactive: prompt for each operation]' \
+  '-n[no execution: just print what would happen]' \
+  '-Q[force bare glob qualifiers on]' \
+  '(-C -M)-s[symbolic, passed down to ln]' \
+  '-v[verbose: print line as it is executed]' \
+  '-o[specify options to pass to underlying command]: opt string' \
+  '(-M -C -L -s)-p+[specify program to run instead of cp, ln or mv]:program:_command_names -e' \
+  '(-W)-w[implicitly add parenthesis to wildcards in the pattern]' \
+  '(-w)-W[like -w, but turn wildcards in replacement patterns into references]' \
+  '1:source pattern:_files' \
+  '2:desination pattern:_files'