summaryrefslogtreecommitdiff
path: root/Completion/Unix/Command/_unison
diff options
context:
space:
mode:
authorPeter Stephenson <pws@users.sourceforge.net>2011-01-09 16:57:01 +0000
committerPeter Stephenson <pws@users.sourceforge.net>2011-01-09 16:57:01 +0000
commite72999c092b80b71c5913a52c411a1c7529971f4 (patch)
tree02974c6a4f7a4d73934481f731f12703a682fae7 /Completion/Unix/Command/_unison
parenta89f0559c210def9a40bfeb9da6b38128a49cb55 (diff)
downloadzsh-e72999c092b80b71c5913a52c411a1c7529971f4.tar.gz
zsh-e72999c092b80b71c5913a52c411a1c7529971f4.zip
gi1242+zsh@gmail.com: 28594:
Various new and improved completions
Diffstat (limited to 'Completion/Unix/Command/_unison')
-rw-r--r--Completion/Unix/Command/_unison92
1 files changed, 92 insertions, 0 deletions
diff --git a/Completion/Unix/Command/_unison b/Completion/Unix/Command/_unison
new file mode 100644
index 000000000..bb8edd489
--- /dev/null
+++ b/Completion/Unix/Command/_unison
@@ -0,0 +1,92 @@
+#compdef unison
+
+local context state line
+typeset -A opt_args
+
+_arguments \
+ '-auto[automatically accept default (nonconflicting) actions]' \
+ '-batch[batch mode\: ask no questions at all]' \
+ '-doc[show documentation]:topics:(about people lists status copying ack install tutorial basics failures running ssh news all topics)' \
+ '-follow[add a pattern to the follow list]:pattern:' \
+ '-force[force changes from this replica to the other]:replica:' \
+ '-group[synchronize group attributes]' \
+ '-ignore[add a pattern to the ignore list]:pattern:' \
+ '-ignorenot[add a pattern to the ignorenot list]:pattern:' \
+ '-owner[synchronize owner]' \
+ '-path[path to synchronize]:path:_files' \
+ '-perms[part of the permissions which is synchronized]:perms:' \
+ '-prefer[choose this replicas version for conflicting changes]:replica:' \
+ '-root[root of a replica (should be used exactly twice)]:path:_files -/' \
+ '-silent[print nothing except error messages]' \
+ '-terse[suppress status messages]' \
+ '-testserver[exit immediately after the connection to the server]' \
+ '-times[synchronize modification times]' \
+ '-version[print version and exit]' \
+ '-addprefsto[add new prefs to]:file:_files' \
+ '-addversionno[add version number to name of unison on server]' \
+ '-backup[add a pattern to the backup list]:pattern:' \
+ '-backupcurr[add a pattern to the backupcurr list]:pattern:' \
+ '-backupcurrnot[add a pattern to the backupcurrnot list]:pattern:' \
+ '-backupdir[directory for storing centralized backups]:directory:_files -/' \
+ '-backuploc[where backups are stored]:backup location:(local central)' \
+ '-backupnot[add a pattern to the backupnot list]:pattern:' \
+ '-backupprefix[prefix for the names of backup files]:prefix:' \
+ '-backups[keep backup copies of all files]' \
+ '-backupsuffix[a suffix to be added to names of backup files]:suffix:' \
+ '-confirmbigdel[ask about whole-replica (or path) deletes (default true)]' \
+ '-confirmmerge[ask for confirmation before commiting results of a merge]' \
+ '-contactquietly[suppress the "contacting server" message during startup]' \
+ '-copyprog[external program for copying large files]:program:_files -g "*(-x)"' \
+ '-copyprogrest[variant of copyprog for resuming partial transfers]:program:_files -g "*(-x)"' \
+ '-copyquoterem[add quotes to remote file name for copyprog]:quote style:(true false default)]' \
+ '-copythreshold[use copyprog on files bigger than this]:size (kb):' \
+ '-debug:debug module:(all verbose)' \
+ '-diff[command for showing differences between files]:program:_files -g "*(-x)"' \
+ '-dontchmod[When set, never use the chmod system call]' \
+ '-dumbtty[do not change terminal settings in text UI]' \
+ '-fastcheck:fast update detection:(true false default)' \
+ '-forcepartial[add a pattern to the forcepartial list]:pattern:' \
+ '-height[height of main window in graphical interface]:number (lines):' \
+ '-host[bind the socket to this host name in server socket mode]:host:_hosts' \
+ '-ignorecase[identify upper/lowercase filenames]:ignorecase:(true false default)' \
+ '-ignorelocks[ignore locks left over from previous run (dangerous!)]' \
+ '-immutable[add a pattern to the immutable list]:pattern:' \
+ '-immutablenot[add a pattern to the immutablenot list]:pattern:' \
+ '-key[define a keyboard shortcut for this profile (in some UIs)]:shortcut:' \
+ '-killserver[kill server when done (even when using sockets)]' \
+ '-label[provide a descriptive string label for this profile]:label:' \
+ '-log[record actions in logfile (default true)]' \
+ '-logfile:logfile name:_files' \
+ '-maxbackups[number of backed up versions of a file]:number:' \
+ '-maxthreads[maximum number of simultaneous file transfers]:number:' \
+ '-merge[add a pattern to the merge list]:pattern:' \
+ '-mountpoint[abort if this path does not exist]:mountpoint:_files -/' \
+ '-numericids[dont map uid/gid values by user/group names]' \
+ '-preferpartial[add a pattern to the preferpartial list]:pattern:' \
+ '-pretendwin[Use creation times for detecting updates]' \
+ '-repeat[synchronize repeatedly (text interface only)]:repeat:' \
+ '-retry[re-try failed synchronizations N times (text ui only)]:retry times:' \
+ '-rootalias[register alias for canonical root names]:root alias:' \
+ '-rsrc:synchronize resource forks:(true false default)' \
+ '-rsync[activate the rsync transfer mode (default true)]' \
+ '-selftest[run internal tests and exit]' \
+ '-servercmd[name of unison executable on remote server]:program:_files -g "*(-x)"' \
+ '-showarchive[show "true names" (for rootalias) of roots and archive]' \
+ '-socket[act as a server on a socket]:socket:_files -g "*(-=)"' \
+ '-sortbysize[list changed files by size, not name]' \
+ '-sortfirst[add a pattern to the sortfirst list]:pattern:' \
+ '-sortlast[add a pattern to the sortlast list]:pattern:' \
+ '-sortnewfirst[list new before changed files]' \
+ '-sshargs[other arguments (if any) for remote shell command]:ssh args:' \
+ '-sshcmd[path to the ssh executable]:program:_files -g "*(-x)"' \
+ '-ui:user interface:(text graphic)' \
+ '-xferbycopying[optimize transfers using local copies (default true)]' \
+ '*:profile:->profile'
+
+if [[ $state == profile ]]; then
+ local -a profiles
+
+ profiles=( ~/.unison/*.prf(N) )
+ (( $#profiles )) && \
+ compadd "$@" - ${${profiles#~/.unison/}%.prf}
+fi