about summary refs log tree commit diff
path: root/Completion
diff options
context:
space:
mode:
Diffstat (limited to 'Completion')
-rw-r--r--Completion/Unix/Command/.distfiles1
-rw-r--r--Completion/Unix/Command/_monotone41
2 files changed, 42 insertions, 0 deletions
diff --git a/Completion/Unix/Command/.distfiles b/Completion/Unix/Command/.distfiles
index 973f7377e..9fcfe888f 100644
--- a/Completion/Unix/Command/.distfiles
+++ b/Completion/Unix/Command/.distfiles
@@ -22,6 +22,7 @@ _locate
 _look           _lp             _ls             _lsof           _lynx
 _lzop           _mail           _make           _man            _mencal
 _metaflac       _mh             _mount          _mpc            _mt
+_monotone
 _mtools         _mtr            _mutt           _mysqldiff      _mysql_utils
 _ncftp          _netcat         _nice           _nmap           _nslookup
 _pack           _patch          _pax            _pbm            _perforce
diff --git a/Completion/Unix/Command/_monotone b/Completion/Unix/Command/_monotone
new file mode 100644
index 000000000..83e18e306
--- /dev/null
+++ b/Completion/Unix/Command/_monotone
@@ -0,0 +1,41 @@
+#compdef mtn
+
+local context state line ret
+typeset -a cmds
+typeset -A opt_args
+
+_arguments \
+  '--brief[print a brief version of the normal output]' \
+  '--confdir[set location of configuration directory]:confdir:_files -/' \
+  '(-d --db)'{-d,--db}'[set name of database]:dbname' \
+  '--debug[print debug log to stderr while running]' \
+  '--dump[file to dump debugging log to, on failure]:dumpfile:_files' \
+  '--full-version[print detailed version number, then exit]' \
+  '(-h --help)'{-h,--help}'[display help message]' \
+  '(-k --key)'{-k,--key}'[set key for signatures]:key:' \
+  '--keydir[set location of key store]:keydir:_files -/' \
+  '--log[file to write the log to]:logfile:_files' \
+  '--norc[do not load ~/.monotone/monotonerc or _MTN/monotonerc lua files]' \
+  '--nostd[do not load standard lua hooks]' \
+  '--pid-file[record process id of server]:arg:' \
+  '--quiet[suppress verbose, informational and progress messages]' \
+  '--rcfile[load extra rc file]:extra rcfile:_files' \
+  '--reallyquiet[suppress warning, verbose, informational and progress messages]' \
+  '--root[limit search for workspace to specified root]:root:_files -/' \
+  '--ticker[set ticker style]:ticker style:(count dot none)' \
+  '--version[print version number, then exit]' \
+  '(-@ --xargs)'{-@,--xargs}'[insert command line arguments taken from the given file]:file:_files' \
+  '*:command:->cmd' && return 0
+
+case "$state" in
+  (cmd)
+  if (( CURRENT == 2 )); then
+    cmds=(automate:automation db:database fdiff:debug fload:debug fmerge:debug get_roster:debug identify:debug rcs_import:debug annotate:informative cat:informative complete:informative diff:informative help:informative list:informative log:informative ls:informative show_conflicts:informative status:informative cert:key+cert chkeypass:key+cert dropkey:key+cert genkey:key+cert trusted:key+cert pull:network push:network serve:network sync:network privkey:packet\ i/o pubkey:packet\ i/o read:packet\ i/o cvs_import:rcs approve:review comment:review disapprove:review tag:review testresult:review checkout:tree co:tree explicit_merge:tree heads:tree merge:tree merge_into_dir:tree migrate_workspace:tree propagate:tree refresh_inodeprints:tree setup:tree set:vars unset:vars add:workspace attr:workspace ci:workspace commit:workspace drop:workspace mv:workspace pivot_root:workspace pluck:workspace rename:workspace revert:workspace rm:workspace update:workspace)
+    _describe -t commands 'cmds' cmds && ret=0
+  else
+    _files
+  fi
+  ;;
+esac
+
+return ret