#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