summaryrefslogtreecommitdiff
path: root/tools/fossil-autocomplete.zsh
diff options
context:
space:
mode:
authorcashmere <cashmere@autistici.org>2026-09-04 09:05:24 +0200
committercashmere <cashmere@autistici.org>2026-09-04 09:05:24 +0200
commit4f49b16079b27d7ce633619e4cddfdf2bffbc952 (patch)
treec296c1e7f3c3e2f6859c6d3a1b1b208779b89679 /tools/fossil-autocomplete.zsh
downloadrelic-4f49b16079b27d7ce633619e4cddfdf2bffbc952.tar.gz
initial commitHEADmaster
Diffstat (limited to 'tools/fossil-autocomplete.zsh')
-rwxr-xr-xtools/fossil-autocomplete.zsh3529
1 files changed, 3529 insertions, 0 deletions
diff --git a/tools/fossil-autocomplete.zsh b/tools/fossil-autocomplete.zsh
new file mode 100755
index 0000000..0c34951
--- /dev/null
+++ b/tools/fossil-autocomplete.zsh
@@ -0,0 +1,3529 @@
+#compdef fossil
+# Origin: https://chiselapp.com/user/lifepillar/repository/fossil-zsh-completion
+#################################################################################
+# #
+# Copyright 2020 Lifepillar #
+# #
+# Permission is hereby granted, free of charge, to any person obtaining a copy #
+# of this software and associated documentation files (the "Software"), to deal #
+# in the Software without restriction, including without limitation the rights #
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell #
+# copies of the Software, and to permit persons to whom the Software is #
+# furnished to do so, subject to the following conditions: #
+# #
+# The above copyright notice and this permission notice shall be included in #
+# all copies or substantial portions of the Software. #
+# #
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR #
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, #
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE #
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER #
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, #
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE #
+# SOFTWARE. #
+# #
+#################################################################################
+
+# To reload the completion function after it has been modified:
+#
+# $ unfunction _fossil
+# $ autoload -U _fossil
+#
+# See also: http://zsh.sourceforge.net/Doc/Release/Completion-System.html
+# See also: https://github.com/zsh-users/zsh-completions/blob/master/zsh-completions-howto.org
+
+################################################################################
+# Functions that help build this completion file #
+################################################################################
+
+# This function can be used to generate scaffolding code for the options of all
+# the commands. Copy and paste the result at the suitable spot in this script
+# to update it. To parse all commands:
+#
+# __fossil_parse_help -a
+#
+# To parse all test commands:
+#
+# __fossil_parse_help -t
+#
+# NOTE: The code must be adapted manually. Diff with previous version!
+function __fossil_parse_help() {
+ echo ' case "$words[1]" in'
+ for c in `fossil help $1 | xargs -n1 | sort`;
+ do
+ echo " ($c)"
+ echo ' _arguments \\'
+ __fossil_format_options $c;
+ echo " '(- *)'--help'[Show help and exit]' \\"
+ echo " '*:files:_files'"
+ echo ''
+ echo ' ;;'
+ done;
+ echo ' esac'
+ echo ' ;;'
+}
+
+# Extract the options of a command and format it in a way that can be used in
+# a ZSH completion script.
+# Use `__fossil_format_options -o` to extract the common options.
+function __fossil_format_options() {
+ fossil help $1 2>&1 \
+ | grep '^\s\{1,3\}-' \
+ | sed -E 's/^ +//' \
+ | awk -F ' +' '{
+ v=match($1,/\|/)
+ split($1,y,"|")
+ printf " "
+ if (v>0)
+ printf "\"(--help %s %s)\"{%s,%s}",y[1],y[2],y[1],y[2];
+ else
+ printf "\"(--help %s)\"%s",y[1],y[1];
+ $1=""
+ gsub(/^ +| +$/,"",$0);
+ gsub(/^ +| +$/,"",$0);
+ gsub(/\x27/,"\x27\"\x27\"\x27",$0);
+ print "\x27["$0"]\x27 \\";
+ }'
+}
+
+
+################################################################################
+# Helper functions used for completion. #
+################################################################################
+
+function __fossil_commands() {
+ fossil help --all
+}
+
+function __fossil_test_commands() {
+ fossil help --test
+}
+
+function __fossil_all_commands() {
+ __fossil_commands
+ __fossil_test_commands
+}
+
+function __fossil_users() {
+ fossil user ls 2>/dev/null | awk '{print $1}'
+}
+
+function __fossil_branches() {
+ fossil branch ls -a 2>/dev/null | sed 's/\* *//'
+}
+
+function __fossil_tags() {
+ fossil tag ls 2>/dev/null
+}
+
+function __fossil_repos() {
+ ls | grep .fossil
+ fossil all ls 2>/dev/null
+}
+
+function __fossil_remotes() {
+ fossil remote list 2>/dev/null | awk '{print $1}'
+}
+
+function __fossil_wiki_pages() {
+ fossil wiki list 2>/dev/null
+}
+
+function __fossil_areas() {
+ compadd all email project shun skin ticket user alias subscriber
+ return 0
+}
+
+function __fossil_settings() {
+ fossil help --setting
+}
+
+function __fossil_urls() {
+ local u
+ u=($(__fossil_remotes))
+ compadd -a u
+ compadd -S '' file:// http:// https:// ssh://
+ return 0
+}
+
+################################################################################
+# Main #
+################################################################################
+
+function _fossil() {
+ local context state state_descr line
+ typeset -A opt_args
+
+ local -a _common_options
+ # Scaffolding code for common options can be generated with `__fossil_format_options -o`.
+ _common_options=(
+ "(--help --args)"--args'[FILENAME Read additional arguments and options from FILENAME]:file:_files'
+ "(--help --cgitrace)"--cgitrace'[Active CGI tracing]'
+ "(--help --comfmtflags --comment-format)"--comfmtflags'[VALUE Set comment formatting flags to VALUE]:value:'
+ "(--help --comment-format --comfmtflags)"--comment-format'[VALUE Alias for --comfmtflags]:value:'
+ "(--help --errorlog)"--errorlog'[FILENAME Log errors to FILENAME]:file:_files'
+ "(- -? --help)"{-?,--help}'[Show help on the command rather than running it]'
+ "(--help --httptrace)"--httptrace'[Trace outbound HTTP requests]'
+ "(--help --localtime)"--localtime'[Display times using the local timezone]'
+ "(--help --no-th-hook)"--no-th-hook'[Do not run TH1 hooks]'
+ "(--help --quiet)"--quiet'[Reduce the amount of output]'
+ "(--help --sqlstats)"--sqlstats'[Show SQL usage statistics when done]'
+ "(--help --sqltrace)"--sqltrace'[Trace all SQL commands]'
+ "(--help --sshtrace)"--sshtrace'[Trace SSH activity]'
+ "(--help --ssl-identity)"--ssl-identity'[NAME Set the SSL identity to NAME]:name:'
+ "(--help --systemtrace)"--systemtrace'[Trace calls to system()]'
+ "(--help --user -U)"{--user,-U}'[USER Make the default user be USER]:user:($(__fossil_users))'
+ "(--help --utc)"--utc'[Display times using UTC]'
+ "(--help --vfs)"--vfs'[NAME Cause SQLite to use the NAME VFS]:name:'
+ )
+
+ local -a _fossil_clean_options
+ _fossil_clean_options=(
+ "(--help --allckouts)"--allckouts'[Check for empty directories within any checkouts]'
+ "(--help --case-sensitive)"--case-sensitive'[BOOL Override case-sensitive setting]:bool:(yes no)'
+ "(--help --dirsonly)"--dirsonly'[Only remove empty directories]'
+ "(--help --disable-undo)"--disable-undo'[Disables use of the undo]'
+ "(--help --dotfiles)"--dotfiles'[Include files beginning with a dot (".")]'
+ "(--help --emptydirs)"--emptydirs'[Remove empty directories]'
+ "(--help -f --force)"{-f,--force}'[Remove files without prompting]'
+ "(--help -i --prompt)"{-i,--prompt}'[Prompt before removing each file]'
+ "(--help -x --verily)"{-x,--verily}'[Remove everything that is not managed]'
+ "(--help --clean)"--clean'[CSG Never prompt to delete files matching CSG glob pattern]:pattern:'
+ "(--help --ignore)"--ignore'[CSG Ignore files matching CSG glob pattern]:pattern:'
+ "(--help --keep)"--keep'[CSG Keep files matching CSG glob pattern]:pattern:'
+ "(--help -n --dry-run)"{-n,--dry-run}'[Delete nothing, but display what would have been deleted]'
+ "(--help --no-prompt)"--no-prompt'[Assume NO for every question]'
+ "(--help --temp)"--temp'[Remove only Fossil-generated temporary files]'
+ "(--help -v --verbose)"{-v,--verbose}'[Show all files as they are removed]'
+ )
+
+ local -a _fossil_rebuild_options
+ _fossil_rebuild_options=(
+ "(--help --analyze)"--analyze'[Run ANALYZE on the database after rebuilding]'
+ "(--help --cluster)"--cluster'[Compute clusters for unclustered artifacts]'
+ "(--help --compress)"--compress'[Strive to make the database as small as possible]'
+ "(--help --compress-only)"--compress-only'[Skip the rebuilding step. Do --compress only]'
+ "(--help --deanalyze)"--deanalyze'[Remove ANALYZE tables from the database]'
+ "(--help --ifneeded)"--ifneeded'[Only do the rebuild if it would change the schema version]'
+ "(--help --index)"--index'[Always add in the full-text search index]'
+ "(--help --noverify)"--noverify'[Skip the verification of changes to the BLOB table]'
+ "(--help --noindex)"--noindex'[Always omit the full-text search index]'
+ "(--help --pagesize)"--pagesize'[N Set the database pagesize to N. (512..65536 and power of 2)]:number:'
+ "(--help --quiet)"--quiet'[Only show output if there are errors]'
+ "(--help --stats)"--stats'[Show artifact statistics after rebuilding]'
+ "(--help --vacuum)"--vacuum'[Run VACUUM on the database after rebuilding]'
+ "(--help --wal)"--wal'[Set Write-Ahead-Log journalling mode on the database]'
+ )
+
+ local -a _fossil_dbstat_options
+ _fossil_dbstat_options=(
+ "(--help --brief -b)"{--brief,-b}'[Only show essential elements]'
+ "(--help --db-check)"--db-check'[Run "PRAGMA quick_check" on the repository database]'
+ "(--help --db-verify)"--db-verify'[Run a full verification of the repository integrity]'
+ "(--help --omit-version-info)"--omit-version-info'[Omit the SQLite and Fossil version information]'
+ )
+
+ local -a _fossil_diff_options
+ _fossil_diff_options=(
+ "(--help --binary)"--binary'[PATTERN Treat files that match the glob PATTERN as binary]:pattern:'
+ "(--help --branch)"--branch'[BRANCH Show diff of all changes on BRANCH]:branch:($(__fossil_branches))'
+ "(--help --brief)"--brief'[Show filenames only]'
+ "(--help --checkin)"--checkin'[VERSION Show diff of all changes in VERSION]:version:'
+ "(--help --command)"--command'[PROG External diff program - overrides "diff-command"]:program:'
+ "(--help --context -c)"{--context,-c}'[N Use N lines of context]:number:'
+ "(--help --diff-binary)"--diff-binary'[BOOL Include binary files when using external commands]:bool:(yes no)'
+ "(--help --exec-abs-paths)"--exec-abs-paths'[Force absolute path names with external commands]'
+ "(--help --exec-rel-paths)"--exec-rel-paths'[Force relative path names with external commands]'
+ "(--help --from -r)"{--from,-r}'[VERSION Select VERSION as source for the diff]:version:'
+ "(--help --internal -i)"{--internal,-i}'[Use internal diff logic]'
+ "(--help --new-file -N)"{--new-file,-N}'[Show complete text of added and deleted files]'
+ "(--help --numstat)"--numstat'[Show only the number of lines delete and added]'
+ "(--help --side-by-side -y)"{--side-by-side,-y}'[Side-by-side diff]'
+ "(--help --strip-trailing-cr)"--strip-trailing-cr'[Strip trailing CR]'
+ "(--help --tclsh)"--tclsh'[PATH Tcl/Tk used for --tk (default: "tclsh")]'
+ "(--help --tk)"--tk'[Launch a Tcl/Tk GUI for display]'
+ "(--help --to)"--to'[VERSION Select VERSION as target for the diff]:version:'
+ "(--help --undo)"--undo'[Diff against the "undo" buffer]'
+ "(--help --unified)"--unified'[Unified diff]'
+ "(--help -v --verbose)"{-v,--verbose}'[Output complete text of added or deleted files]'
+ "(--help -w --ignore-all-space)"{-w,--ignore-all-space}'[Ignore white space when comparing lines]'
+ "(--help -W --width)"{-W,--width}'[NUM Width of lines in side-by-side diff]:number:'
+ "(--help -Z --ignore-trailing-space)"{-Z,--ignore-trailing-space}'[Ignore changes to end-of-line whitespace]'
+ )
+
+ local -a _fossil_extras_options
+ _fossil_extras_options=(
+ "(--help --abs-paths)"--abs-paths'[Display absolute pathnames]'
+ "(--help --case-sensitive)"--case-sensitive'[BOOL Override case-sensitive setting]:bool:(yes no)'
+ "(--help --dotfiles)"--dotfiles'[Include files beginning with a dot (".")]'
+ "(--help --header)"--header'[Identify the repository if there are extras]'
+ "(--help --ignore)"--ignore'[CSG Ignore files matching patterns from the argument]:pattern:'
+ "(--help --rel-paths)"--rel-paths'[Display pathnames relative to the current working]'
+ )
+
+ local -a _fossil_server_options
+ _fossil_server_options=(
+ "(--help --baseurl)"--baseurl'[URL Use URL as the base]:url:__fossil_urls'
+ "(--help --create)"--create'[Create a new REPOSITORY if it does not already exist]'
+ "(--help --extroot)"--extroot'[DIR Document root for the /ext extension mechanism]:directory:_files -/'
+ "(--help --files)"--files'[GLOBLIST Comma-separated list of glob patterns for static files]:pattern:'
+ "(--help --localauth)"--localauth'[Enable automatic login for requests from localhost]'
+ "(--help --localhost)"--localhost'[Listen on 126.0.0.1 only]'
+ "(--help --https)"--https'[Input passes through a reverse HTTPS->HTTP proxy]'
+ "(--help --jsmode)"--jsmode'[MODE Determine how JavaScript is delivered with pages]:mode:(inline separate bundled)'
+ "(--help --max-latency)"--max-latency'[N Do not let any single HTTP request run for more than N seconds]:number:'
+ "(--help --nocompress)"--nocompress'[Do not compress HTTP replies]'
+ "(--help --nojail)"--nojail'[Drop root privileges but do not enter the chroot jail]'
+ "(--help --nossl)"--nossl'[Signal that no SSL connections are available]'
+ "(--help --notfound)"--notfound'[URL Redirect]:url:__fossil_urls'
+ "(--help --page)"--page'[PAGE Start "ui" on PAGE. ex: --page "timeline?y=ci"]:number:'
+ "(--help -P --port)"{-P,--port}'[TCPPORT Listen to request on port TCPPORT]:number:'
+ "(--help --th-trace)"--th-trace'[Trace TH0 execution (for debugging purposes)]'
+ "(--help --repolist)"--repolist'[If REPOSITORY is dir, URL "/" lists repos]'
+ "(--help --scgi)"--scgi'[Accept SCGI rather than HTTP]'
+ "(--help --skin)"--skin'[LABEL Use override skin LABEL]:label:'
+ "(--help --usepidkey)"--usepidkey'[Use saved encryption key from parent process]'
+ )
+
+ _arguments -C \
+ ${_common_options[@]} \
+ '1:command:->command' \
+ '*::args:->args'
+
+ case $state in
+ (command)
+ if [[ $line =~ '^te' ]]; then
+ _arguments '*:test commands:($(__fossil_test_commands))'
+ else
+ _arguments '*:commands:($(__fossil_commands))'
+ fi
+ ;;
+ (args)
+ if [[ $line[1] =~ '^test-' ]]; then
+ __fossil_complete_test_commands
+ return 0
+ fi
+
+ case $line[1] in
+ (3-way-merge)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (add)
+ _arguments \
+ "(--help --case-sensitive)"--case-sensitive'[BOOL Override the case-sensitive setting]:bool:(yes no)' \
+ "(--help --dotfiles)"--dotfiles'[include files beginning with a dot (".")]' \
+ "(--help -f --force)"{-f,--force}'[Add files without prompting]' \
+ "(--help --ignore)"--ignore'[CSG Ignore unmanaged files matching Comma Separated Glob]:pattern:' \
+ "(--help --clean)"--clean'[CSG Also ignore files matching Comma Separated Glob]:pattern:' \
+ "(--help --reset)"--reset'[Reset the ADDED state of a checkout]' \
+ "(--help -v --verbose)"{-v,--verbose}'[Outputs information about each --reset file]' \
+ "(--help -n --dry-run)"{-n,--dry-run}'[Display instead of run actions]' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (addremove)
+ _arguments \
+ "(--help --case-sensitive)"--case-sensitive'[BOOL Override the case-sensitive setting]:bool:(yes no)' \
+ "(--help --dotfiles)"--dotfiles'[Include files beginning with a dot (".")]' \
+ "(--help --ignore)"--ignore'[CSG Ignore unmanaged files matching Comma Separated Glob]:pattern:' \
+ "(--help --clean)"--clean'[CSG Also ignore files matching Comma Separated Glob]:pattern:' \
+ "(--help -n --dry-run)"{-n,--dry-run}'[If given, display instead of run actions]' \
+ "(--help --reset)"--reset'[Reset the ADDED/DELETED state of a checkout]' \
+ "(--help --verbose -v)"{--verbose,-v}'[Outputs information about each --reset file]' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (alerts)
+ __fossil_alerts
+
+ ;;
+ (all)
+ __fossil_all
+
+ ;;
+ (amend)
+ _arguments \
+ ':hash:' \
+ "(--help --author)"--author'[USER Make USER the author for check-in]:user:($(__fossil_users))' \
+ "(--help -m --comment)"{-m,--comment}'[COMMENT Make COMMENT the check-in comment]:comment:' \
+ "(--help -M --message-file)"{-M,--message-file}'[FILE Read the amended comment from FILE]:file:_files' \
+ "(--help -e --edit-comment)"{-e,--edit-comment}'[Launch editor to revise comment]' \
+ "(--help --date)"--date'[DATETIME Make DATETIME the check-in time]:datetime:(now)' \
+ "(--help --bgcolor)"--bgcolor'[COLOR Apply COLOR to this check-in]:color:' \
+ "(--help --branchcolor)"--branchcolor'[COLOR Apply and propagate COLOR to the branch]:color:' \
+ "(--help --tag)"--tag'[TAG Add new TAG to this check-in]:tag:($(__fossil_tags))' \
+ "(--help --cancel)"--cancel'[TAG Cancel TAG from this check-in]:tag:($(__fossil_tags))' \
+ "(--help --branch)"--branch'[NAME Make this check-in the start of branch NAME]:name:($(__fossil_branches))' \
+ "(--help --hide)"--hide'[Hide branch starting from this check-in]' \
+ "(--help --close)"--close'[Mark this "leaf" as closed]' \
+ "(--help -n --dry-run)"{-n,--dry-run}'[Print control artifact, but make no changes]' \
+ "(--help --date-override)"--date-override'[DATETIME Set the change time on the control artifact]:datetime:(now)' \
+ "(--help --user-override)"--user-override'[USER Set the user name on the control artifact]:user:($(__fossil_users))' \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (annotate|blame|praise)
+ _arguments \
+ "(--help --filevers)"--filevers'[Show file version numbers]' \
+ "(--help -r --revision)"{-r,--revision}'[VERSION The specific check-in containing the file]:version:' \
+ "(--help -l --log)"{-l,--log}'[List all versions analyzed]' \
+ "(--help -n --limit)"{-n,--limit}'[LIMIT Limit versions]:limit:(none)' \
+ "(--help -o --origin)"{-o,--origin}'[VERSION The origin check-in]:version:' \
+ "(--help -w --ignore-all-space)"{-w,--ignore-all-space}'[Ignore white space when comparing lines]' \
+ "(--help -Z --ignore-trailing-space)"{-Z,--ignore-trailing-space}'[Ignore whitespace at line end]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:file:_files'
+
+ ;;
+ (artifact)
+ _arguments \
+ "(--help -R --repository)"{-R,--repository}'[FILE Extract artifacts from repository FILE]:fossils:($(__fossil_repos))' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:artifact id:' \
+ '2::output file:_files'
+
+ ;;
+ (attachment)
+ _arguments \
+ "(--help -t --technote)"{-t,--technote}'[DATETIME The timestamp of the technote]:datetime:(now)' \
+ "(--help -t --technote)"{-t,--technote}'[TECHNOTE-ID The technote to be updated]:technote-id:' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:what:(add)' \
+ '::pagename:($(__fossil_wiki_pages))' \
+ ':file:_files'
+
+ ;;
+ (backoffice)
+ _arguments \
+ "(--help --debug)"--debug'[Show what this command is doing]' \
+ "(--help --logfile)"--logfile'[FILE Append a log of backoffice actions onto FILE]:file:_files' \
+ "(--help --min)"--min'[N Invoke backoffice at least once every N seconds]:number:' \
+ "(--help --poll)"--poll'[N Polling frequency]:number:' \
+ "(--help --trace)"--trace'[Enable debugging output on stderr]' \
+ "(--help --nodelay)"--nodelay'[Do not queue up or wait for a backoffice job]' \
+ "(--help --nolease)"--nolease'[Always run backoffice]' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:fossils:($(__fossil_repos))'
+
+ ;;
+ (backup)
+ _arguments \
+ "(--help --overwrite)"--overwrite'[OK to overwrite an existing file]' \
+ "(--help -R)"-R'[NAME Filename of the repository to backup]:fossils:($(__fossil_repos))' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:file:_files'
+
+ ;;
+ (bisect)
+ __fossil_bisect
+
+ ;;
+ (branch)
+ __fossil_branch
+
+ ;;
+ (bundle)
+ __fossil_bundle
+
+ ;;
+ (cache)
+ __fossil_cache
+
+ ;;
+ (cat)
+ _arguments \
+ "(--help -R --repository)"{-R,--repository}'[FILE Extract artifacts from repository FILE]:fossils:($(__fossil_repos))' \
+ "(--help -r)"-r'[VERSION The specific check-in containing the file]:version:' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (cgi)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '::cgi:' \
+ ':file:_files'
+
+ ;;
+ (changes|status)
+ _arguments \
+ "(--help --abs-paths)"--abs-paths'[Display absolute pathnames]' \
+ "(--help --rel-paths)"--rel-paths'[Display pathnames relative to the current directory]' \
+ "(--help --hash)"--hash'[Verify file status using hashing]' \
+ "(--help --case-sensitive)"--case-sensitive'[BOOL Override case-sensitive setting]:bool:(yes no)' \
+ "(--help --dotfiles)"--dotfiles'[Include unmanaged files beginning with a dot]' \
+ "(--help --ignore)"--ignore'[CSG Ignore unmanaged files matching CSG glob patterns]:pattern:' \
+ "(--help --header)"--header'[Identify the repository if report is non-empty.]' \
+ "(--help -v --verbose)"{-v,--verbose}'[Say "(none)" if the change report is empty]' \
+ "(--help --classify)"--classify'[Start each line with the file'"'"'s change type]' \
+ "(--help --no-classify)"--no-classify'[Do not print file change types]' \
+ "(--help --edited)"--edited'[Display edited, merged, and conflicted files]' \
+ "(--help --updated)"--updated'[Display files updated by merge/integrate]' \
+ "(--help --changed)"--changed'[Combination of --edited and --updated]' \
+ "(--help --missing)"--missing'[Display missing files]' \
+ "(--help --added)"--added'[Display added files]' \
+ "(--help --deleted)"--deleted'[Display deleted files]' \
+ "(--help --renamed)"--renamed'[Display renamed files]' \
+ "(--help --conflict)"--conflict'[Display files having merge conflicts]' \
+ "(--help --meta)"--meta'[Display files with metadata changes]' \
+ "(--help --unchanged)"--unchanged'[Display unchanged files]' \
+ "(--help --all)"--all'[Display all managed files]' \
+ "(--help --extra)"--extra'[Display unmanaged files]' \
+ "(--help --differ)"--differ'[Display modified and extra files]' \
+ "(--help --merge)"--merge'[Display merge contributors]' \
+ "(--help --no-merge)"--no-merge'[Do not display merge contributors]' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (checkout|co)
+ _arguments \
+ "(--help --force)"--force'[Ignore edited files in the current checkout]' \
+ "(--help --keep)"--keep'[Only update the manifest and manifest.uuid files]' \
+ "(--help --force-missing)"--force-missing'[Force checkout even if content is missing]' \
+ "(--help --setmtime)"--setmtime'[Set timestamps of all files to match their SCM-side]' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (ci|commit)
+ _arguments \
+ "(--help --allow-conflict)"--allow-conflict'[Allow unresolved merge conflicts]' \
+ "(--help --allow-empty)"--allow-empty'[Allow a commit with no changes]' \
+ "(--help --allow-fork)"--allow-fork'[Allow the commit to fork]' \
+ "(--help --allow-older)"--allow-older'[Allow a commit older than its ancestor]' \
+ "(--help --baseline)"--baseline'[Use a baseline manifest in the commit process]' \
+ "(--help --bgcolor)"--bgcolor'[COLOR Apply COLOR to this one check-in only]:color:' \
+ "(--help --branch)"--branch'[NEW-BRANCH-NAME check in to this new branch]:new branch:' \
+ "(--help --branchcolor)"--branchcolor'[COLOR Apply given COLOR to the branch]:color:' \
+ "(--help --close)"--close'[Close the branch being committed]' \
+ "(--help --date-override)"--date-override'[DATETIME DATE to use instead of '"'"'now'"'"']:datetime:' \
+ "(--help --delta)"--delta'[Use a delta manifest in the commit process]' \
+ "(--help --hash)"--hash'[Verify file status using hashing]' \
+ "(--help --integrate)"--integrate'[Close all merged-in branches]' \
+ "(--help -m --comment)"{-m,--comment}'[COMMENT Use COMMENT as commit comment]:comment:' \
+ "(--help -M --message-file)"{-M,--message-file}'[FILE Read the commit comment from given file]:file:_files' \
+ "(--help --mimetype)"--mimetype'[MIMETYPE Mimetype of check-in comment]:mimetype:' \
+ "(--help -n --dry-run)"{-n,--dry-run}'[If given, display instead of run actions]' \
+ "(--help --no-prompt)"--no-prompt'[Assume NO for every question]' \
+ "(--help --no-warnings)"--no-warnings'[Omit all warnings about file contents]' \
+ "(--help --no-verify)"--no-verify'[Do not run before-commit hooks]' \
+ "(--help --nosign)"--nosign'[Do not attempt to sign this commit with gpg]' \
+ "(--help --override-lock)"--override-lock'[Allow a check-in even though parent is locked]' \
+ "(--help --private)"--private'[Do not sync changes and their descendants]' \
+ "(--help --tag)"--tag'[TAG-NAME Assign given tag TAG-NAME to the check-in]:tag:($(__fossil_tags))' \
+ "(--help --trace)"--trace'[Debug tracing]' \
+ "(--help --user-override)"--user-override'[USER Use USER instead of the current default]:user:($(__fossil_users))' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (clean)
+ _arguments \
+ ${_fossil_clean_options[@]} \
+ '*:files:_files'
+
+ ;;
+ (clone)
+ _arguments \
+ "(--help --admin-user -A)"{--admin-user,-A}'[USERNAME Make USERNAME the administrator]:user:($(__fossil_users))' \
+ "(--help --httpauth -B)"{--httpauth,-B}'[USER:PASS Add HTTP Basic Authorization to requests]:user pass:' \
+ "(--help --nocompress)"--nocompress'[Omit extra delta compression]' \
+ "(--help --once)"--once'[Don'"'"'t remember the URI]' \
+ "(--help --private)"--private'[Also clone private branches]' \
+ "(--help --save-http-password)"--save-http-password'[Remember the HTTP password without asking]' \
+ "(--help --ssh-command -c)"{--ssh-command,-c}'[SSH Use SSH as the "ssh" command]:ssh command:' \
+ "(--help --ssl-identity)"--ssl-identity'[FILENAME Use the SSL identity if requested by the server]:file:_files' \
+ "(--help -u --unversioned)"{-u,--unversioned}'[Also sync unversioned content]' \
+ "(--help -v --verbose)"{-v,--verbose}'[Show more statistics in output]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:uri:__fossil_urls' \
+ '2:file:_files'
+
+ ;;
+ (close)
+ _arguments \
+ "(--help --force -f)"{--force,-f}'[Close a check out with uncommitted changes]' \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (configuration)
+ __fossil_configuration
+
+ ;;
+ (dbstat)
+ _arguments \
+ ${_fossil_dbstat_options[@]} \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (deconstruct)
+ _arguments \
+ "(--help -R --repository)"{-R,--repository}'[REPOSITORY Deconstruct given REPOSITORY]:fossils:($(__fossil_repos))' \
+ "(--help -K --keep-rid1)"{-K,--keep-rid1}'[Save the filename of the artifact with RID=1]' \
+ "(--help -L --prefixlength)"{-L,--prefixlength}'[N Set the length of the names of the DESTINATION]:number:' \
+ "(--help --private)"--private'[Include private artifacts]' \
+ "(--help -P --keep-private)"{-P,--keep-private}'[Save the list of private artifacts to .private]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:destination:_files -/'
+
+ ;;
+ (delete|forget|rm)
+ _arguments \
+ "(--help --soft)"--soft'[Skip removing files from the checkout]' \
+ "(--help --hard)"--hard'[Remove files from the checkout]' \
+ "(--help --case-sensitive)"--case-sensitive'[BOOL Override the case-sensitive setting]:bool:(yes no)' \
+ "(--help -n --dry-run)"{-n,--dry-run}'[If given, display instead of run actions]' \
+ "(--help --reset)"--reset'[Reset the DELETED state of a checkout]' \
+ "(--help --verbose -v)"{--verbose,-v}'[Outputs information about each --reset file]' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (descendants)
+ _arguments \
+ "(--help -R --repository)"{-R,--repository}'[FILE Extract info from repository FILE]:fossils:($(__fossil_repos))' \
+ "(--help -W --width)"{-W,--width}'[NUM Width of lines]:number:' \
+ '(- *)'--help'[Show help and exit]' \
+ '1::check-in:'
+
+ ;;
+ (diff|gdiff)
+ _arguments \
+ ${_fossil_diff_options[@]} \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (export)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (extras)
+ _arguments \
+ ${_fossil_extras_options[@]} \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files -/'
+
+ ;;
+ (finfo)
+ _arguments \
+ "(--help -b --brief)"{-b,--brief}'[Display a brief (one line / revision) summary]' \
+ "(--help --case-sensitive)"--case-sensitive'[BOOL Enable or disable case-sensitive filenames]:bool:(yes no)' \
+ "(--help -l --log)"{-l,--log}'[Select log mode (the default)]' \
+ "(--help -n --limit)"{-n,--limit}'[N Display only the first N changes]:number:' \
+ "(--help --offset)"--offset'[P Skip P changes]:number:' \
+ "(--help -p --print)"{-p,--print}'[Select print mode]' \
+ "(--help -r --revision)"{-r,--revision}'[R Print the given revision]:version:' \
+ "(--help -s --status)"{-s,--status}'[Select status mode (print a status indicator for FILE)]' \
+ "(--help -W --width)"{-W,--width}'[NUM Width of lines]:number:' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:file:_files'
+
+ ;;
+ (fts-config)
+ __fossil_fts_config
+
+ ;;
+ (git)
+ __fossil_git
+
+ ;;
+ (grep)
+ _arguments \
+ "(--help -c --count)"{-c,--count}'[Suppress normal output; print count of files]' \
+ "(--help -i --ignore-case)"{-i,--ignore-case}'[Ignore case]' \
+ "(--help -l --files-with-matches)"{-l,--files-with-matches}'[List only hash for each match]' \
+ "(--help --once)"--once'[Stop searching after the first match]' \
+ "(--help -s --no-messages)"{-s,--no-messages}'[Suppress error messages]' \
+ "(--help -v --invert-match)"{-v,--invert-match}'[Invert the sense of matching]' \
+ "(--help --verbose)"--verbose'[Show each file as it is analyzed]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:pattern:' \
+ '*:files:_files'
+
+ ;;
+ (hash-policy)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1::policy:(sha1 auto sha3 sha3-only shun-sha1)'
+
+ ;;
+ (help)
+ _arguments \
+ "(- :)"{-a,--all}'[List both common and auxiliary commands]' \
+ "(- :)"{-o,--options}'[List command-line options common to all commands]' \
+ "(- :)"{-s,--setting}'[List setting names]' \
+ "(- :)"{-t,--test}'[List unsupported "test" commands]' \
+ "(- :)"{-x,--aux}'[List only auxiliary commands]' \
+ "(- :)"{-w,--www}'[List all web pages]' \
+ "(- :):all commands:($(__fossil_all_commands))" \
+ "(- *)"--html'[Format output as HTML rather than plain text]'
+
+ ;;
+ (hook)
+ __fossil_hook
+
+ ;;
+ (http)
+ _arguments \
+ "(--help --baseurl)"--baseurl'[URL Base URL (useful with reverse proxies)]:url:__fossil_urls' \
+ "(--help --extroot)"--extroot'[DIR Document root for the /ext extension mechanism]:file:_files -/' \
+ "(--help --files)"--files'[GLOB Comma-separate glob patterns for static file to serve]:pattern:' \
+ "(--help --host)"--host'[NAME Specify hostname of the server]:name:' \
+ "(--help --https)"--https'[Signal a request coming in via https]' \
+ "(--help --in)"--in'[FILE Take input from FILE instead of standard input]:file:_files' \
+ "(--help --ipaddr)"--ipaddr'[ADDR Assume the request comes from the given IP address]:address:' \
+ "(--help --jsmode)"--jsmode'[MODE Determine how JavaScript is delivered with pages]:mode:(inline separate bundled)' \
+ "(--help --localauth)"--localauth'[Enable automatic login for local connections]' \
+ "(--help --nocompress)"--nocompress'[Do not compress HTTP replies]' \
+ "(--help --nodelay)"--nodelay'[Omit backoffice processing if it would delay process exit]' \
+ "(--help --nojail)"--nojail'[Drop root privilege but do not enter the chroot jail]' \
+ "(--help --nossl)"--nossl'[Signal that no SSL connections are available]' \
+ "(--help --notfound)"--notfound'[URL Use URL as "HTTP 404, object not found" page]:url:__fossil_urls' \
+ "(--help --out)"--out'[FILE Write results to FILE instead of to standard output]:file:_files' \
+ "(--help --repolist)"--repolist'[If REPOSITORY is directory, URL "/" lists all repos]' \
+ "(--help --scgi)"--scgi'[Interpret input as SCGI rather than HTTP]' \
+ "(--help --skin)"--skin'[LABEL Use override skin LABEL]:label:' \
+ "(--help --th-trace)"--th-trace'[Trace TH1 execution (for debugging purposes)]' \
+ "(--help --usepidkey)"--usepidkey'[Use saved encryption key from parent process]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1::fossils:_files'
+
+ ;;
+ (import)
+ _arguments \
+ "(--help --git)"--git'[Import from the git-fast-export file format (default)]' \
+ "(--help --import-marks)"--import-marks'[FILE Restore marks table from FILE]:file:_files' \
+ "(--help --export-marks)"--export-marks'[FILE Save marks table to FILE]:files:_files' \
+ "(--help --rename-master)"--rename-master'[NAME Renames the master branch to NAME]:name:' \
+ "(--help --use-author)"--use-author'[Uses author as the committer]:user:($(__fossil_users))' \
+ "(--help --svn)"--svn'[Import from the svnadmin-dump file format]' \
+ "(--help --trunk)"--trunk'[FOLDER Name of trunk folder]:file:_files -/' \
+ "(--help --branches)"--branches'[FOLDER Name of branches folder]:file:_files -/' \
+ "(--help --tags)"--tags'[FOLDER Name of tags folder]:file:_files -/' \
+ "(--help --base)"--base'[PATH Path to project root in repository]:file:_files' \
+ "(--help --flat)"--flat'[The whole dump is a single branch]' \
+ "(--help --rev-tags)"--rev-tags'[Tag each revision, implied by -i]' \
+ "(--help --no-rev-tags)"--no-rev-tags'[Disables tagging effect of -i]' \
+ "(--help --rename-rev)"--rename-rev'[PAT Rev tag names, default "svn-rev-%"]:pattern:' \
+ "(--help --ignore-tree)"--ignore-tree'[DIR Ignores subtree rooted at DIR]:file:_files -/' \
+ "(--help -i --incremental)"{-i,--incremental}'[Allow importing into an existing repository]' \
+ "(--help -f --force)"{-f,--force}'[Overwrite repository if already exists]' \
+ "(--help -q --quiet)"{-q,--quiet}'[Omit progress output]' \
+ "(--help --no-rebuild)"--no-rebuild'[Skip the "rebuilding metadata" step]' \
+ "(--help --no-vacuum)"--no-vacuum'[Skip the final VACUUM of the database file]' \
+ "(--help --rename-trunk)"--rename-trunk'[NAME use NAME as name of imported trunk branch]:name:' \
+ "(--help --rename-branch)"--rename-branch'[PAT Rename all branch names using PAT pattern]:pattern:' \
+ "(--help --rename-tag)"--rename-tag'[PAT Rename all tag names using PAT pattern]:pattern:' \
+ "(--help --admin-user -A)"{--admin-user,-A}'[NAME Use NAME for the admin user]:user:($(__fossil_users))' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (info)
+ _arguments \
+ "(--help -R --repository)"{-R,--repository}'[FILE Extract info from repository FILE]:fossils:($(__fossil_repos))' \
+ "(--help -v --verbose)"{-v,--verbose}'[Show extra information about repositories]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:fossils:($(__fossil_repos))'
+
+ ;;
+ (init|new)
+ _arguments \
+ "(--help --template)"--template'[FILE Copy settings from repository file]:file:_files' \
+ "(--help --admin-user -A)"{--admin-user,-A}'[USERNAME Select given USERNAME as admin user]:user:($(__fossil_users))' \
+ "(--help --date-override)"--date-override'[DATETIME Use DATETIME as time of the initial check-in]:datetime:(now)' \
+ "(--help --sha1)"--sha1'[Use an initial hash policy of "sha1"]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:file:_files'
+
+ ;;
+ (json)
+ __fossil_json
+
+ ;;
+ (leaves)
+ _arguments \
+ "(--help -a --all)"{-a,--all}'[Show ALL leaves]' \
+ "(--help --bybranch)"--bybranch'[Order output by branch name]' \
+ "(--help -c --closed)"{-c,--closed}'[Show only closed leaves]' \
+ "(--help -m --multiple)"{-m,--multiple}'[Show only cases with multiple leaves on a single branch]' \
+ "(--help --recompute)"--recompute'[Recompute the "leaf" table in the repository DB]' \
+ "(--help -W --width)"{-W,--width}'[NUM Width of lines (default is to auto-detect)]:number:' \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (login-group)
+ __fossil_login_group
+
+ ;;
+ (ls)
+ _arguments \
+ "(--help --age)"--age'[Show when each file was committed]' \
+ "(--help -v --verbose)"{-v,--verbose}'[Provide extra information about each file]' \
+ "(--help -t)"-t'[Sort output in time order]' \
+ "(--help -r)"-r'[VERSION The specific check-in to list]:version:' \
+ "(--help -R --repository)"{-R,--repository}'[FILE Extract info from repository FILE]:fossils:($(__fossil_repos))' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (md5sum)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (merge)
+ _arguments \
+ "(--help --backout)"--backout'[Do a reverse cherrypick merge against VERSION]' \
+ "(--help --baseline)"--baseline'[BASELINE Use BASELINE as the "pivot" of the merge instead]:version:' \
+ "(--help --binary)"--binary'[GLOBPATTERN Treat files that match GLOBPATTERN as binary]:pattern:' \
+ "(--help --case-sensitive)"--case-sensitive'[BOOL Override the case-sensitive setting]:bool:(yes no)' \
+ "(--help --cherrypick)"--cherrypick'[Do a cherrypick merge VERSION into the current checkout]' \
+ "(--help -f --force)"{-f,--force}'[Force the merge even if it would be a no-op]' \
+ "(--help --force-missing)"--force-missing'[Force the merge even if there is missing content]' \
+ "(--help --integrate)"--integrate'[Merged branch will be closed when committing]' \
+ "(--help -K --keep-merge-files)"{-K,--keep-merge-files}'[On merge conflict, retain the temporary files]' \
+ "(--help -n --dry-run)"{-n,--dry-run}'[If given, display instead of run actions]' \
+ "(--help -v --verbose)"{-v,--verbose}'[Show additional details of the merge]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:version:'
+
+ ;;
+ (mv|rename)
+ _arguments \
+ "(--help --soft)"--soft'[Skip moving files within the checkout]' \
+ "(--help --hard)"--hard'[Move files within the checkout]' \
+ "(--help --case-sensitive)"--case-sensitive'[BOOL Override the case-sensitive setting]:bool:(yes no)' \
+ "(--help -n --dry-run)"{-n,--dry-run}'[If given, display instead of run actions]' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (open)
+ _arguments \
+ "(--help --empty)"--empty'[Initialize checkout as being empty, but still connected]' \
+ "(--help --force)"--force'[Continue even if the directory is not empty]' \
+ "(--help --force-missing)"--force-missing'[Force opening a repository with missing content]' \
+ "(--help --keep)"--keep'[Only modify the manifest and manifest.uuid files]' \
+ "(--help --nested)"--nested'[Allow opening a repository inside an opened checkout]' \
+ "(--help --repodir)"--repodir'[DIR Store the clone in DIR]:directory:_files -/' \
+ "(--help --setmtime)"--setmtime'[Set timestamps of all files to match their SCM-side times]' \
+ "(--help --workdir)"--workdir'[DIR Use DIR as the working directory]:directory:_files -/' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:fossils:($(__fossil_repos))' \
+ '::version:'
+
+ ;;
+ (pop3d)
+ _arguments \
+ "(--help --logdir)"--logdir'[DIR Create log files inside DIR]:directory:_files -/' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:fossils:($(__fossil_repos))'
+
+ ;;
+ (publish)
+ _arguments \
+ '(--help --only)'--only'[Publish only the specific artifacts identified by the tags]' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:tags:($(__fossil_tags))'
+
+ ;;
+ (pull)
+ _arguments \
+ "(--help -B --httpauth)"{-B,--httpauth}'[USER:PASS Credentials for the simple HTTP auth protocol]:user pass:' \
+ "(--help --from-parent-project)"--from-parent-project'[Pull content from the parent project]' \
+ "(--help --ipv4)"--ipv4'[Use only IPv4, not IPv6]' \
+ "(--help --once)"--once'[Do not remember URL for subsequent syncs]' \
+ "(--help --private)"--private'[Pull private branches too]' \
+ "(--help --project-code)"--project-code'[CODE Use CODE as the project code]:project code:' \
+ "(--help --proxy)"--proxy'[PROXY Use the specified HTTP proxy]:proxy:' \
+ "(--help -R --repository)"{-R,--repository}'[REPO Local repository to pull into]:fossils:($(__fossil_repos))' \
+ "(--help --ssl-identity)"--ssl-identity'[FILE Local SSL credentials]:ssl credentials:' \
+ "(--help --ssh-command)"--ssh-command'[SSH Use SSH as the "ssh" command]:ssh command:' \
+ "(--help -v --verbose)"{-v,--verbose}'[Additional (debugging) output]' \
+ "(--help --verily)"--verily'[Exchange extra information with the remote]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:url:__fossil_urls'
+
+ ;;
+ (purge)
+ __fossil_purge
+
+ ;;
+ (push)
+ _arguments \
+ "(--help -B --httpauth)"{-B,--httpauth}'[USER:PASS Credentials for the simple HTTP auth protocol]:user pass:' \
+ "(--help --ipv4)"--ipv4'[Use only IPv4, not IPv6]' \
+ "(--help --once)"--once'[Do not remember URL for subsequent syncs]' \
+ "(--help --proxy)"--proxy'[PROXY Use the specified HTTP proxy]' \
+ "(--help --private)"--private'[Push private branches too]' \
+ "(--help -R --repository)"{-R,--repository}'[REPO Local repository to push from]:fossils:($(__fossil_repos))' \
+ "(--help --ssl-identity)"--ssl-identity'[FILE Local SSL credentials]:ssl credentials:' \
+ "(--help --ssh-command)"--ssh-command'[SSH Use SSH as the "ssh" command]:ssh command:' \
+ "(--help -v --verbose)"{-v,--verbose}'[Additional (debugging) output]' \
+ "(--help --verily)"--verily'[Exchange extra information with the remote]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1::url:__fossil_urls'
+
+ ;;
+ (rebuild)
+ _arguments \
+ ${_fossil_rebuild_options[@]} \
+ "(--help --force)"--force'[Force the rebuild to complete even if errors are seen]' \
+ "(--help --randomize)"--randomize'[Scan artifacts in a random order]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:fossils:($(__fossil_repos))'
+
+ ;;
+ (reconstruct)
+ _arguments \
+ "(--help -K --keep-rid1)"{-K,--keep-rid1}'[Read the filename of the artifact with RID=1 from .rid]' \
+ "(--help -P --keep-private)"{-P,--keep-private}'[Mark the artifacts listed in .private as private]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:file:_files' \
+ '2:directory:_files -/'
+
+ ;;
+ (redo|undo)
+ _arguments \
+ "(--help -n --dry-run)"{-n,--dry-run}'[Do not make changes but show what would be done]' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (remote|remote-url)
+ __fossil_remote
+
+ ;;
+ (reparent)
+ _arguments \
+ "(--help --test)"--test'[Make database entries but do not add the tag artifact]' \
+ "(--help -n --dryrun)"{-n,--dryrun}'[Do not actually change the database]' \
+ "(--help --date-override)"--date-override'[DATETIME Set the change time on the control artifact]:datetime:' \
+ "(--help --user-override)"--user-override'[USER Set the user name on the control artifact]:user:($(__fossil_users))' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:check-in:' \
+ '*:parents:'
+
+ ;;
+ (revert)
+ _arguments \
+ "(--help -r --revision)"{-r,--revision}'[VERSION Revert to given VERSION]:version:' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (rss)
+ _arguments \
+ "(--help -type -y)"{-type,-y}'[FLAG]:type:(all ci t w)' \
+ "(--help -limit -n)"{-limit,-n}'[LIMIT The maximum number of items to show]:number:' \
+ "(--help -tkt)"-tkt'[HASH Filters for only those events for the specified ticket]:hash:' \
+ "(--help -tag)"-tag'[TAG Filters for a tag]:tag:($(__fossil_tags))' \
+ "(--help -wiki)"-wiki'[NAME Filters on a specific wiki page]:wiki page:($(__fossil_wiki_pages))' \
+ "(--help -name)"-name'[FILENAME filters for a specific file]:file:_files' \
+ "(--help -url)"-url'[STRING Sets the RSS feed'"'"'s root URL to the given string]:url:__fossil_urls' \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (scrub)
+ _arguments \
+ "(--help --force)"--force'[Do not prompt for confirmation]' \
+ "(--help --private)"--private'[Only private branches are removed from the repository]' \
+ "(--help --verily)"--verily'[Scrub real thoroughly (see above)]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1::fossils:($(__fossil_repos))'
+
+ ;;
+ (search)
+ _arguments \
+ "(--help -a --all)"{-a,--all}'[Output all matches, not just best matches]' \
+ "(--help -n --limit)"{-n,--limit}'[N Limit output to N matches]:number:' \
+ "(--help -W --width)"{-W,--width}'[WIDTH Set display width to WIDTH columns]:number:' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:patterns:'
+
+ ;;
+ (server|ui)
+ _arguments \
+ ${_fossil_server_options[@]} \
+ '1::fossils:($(__fossil_repos))'
+
+ ;;
+ (set|settings)
+ _arguments \
+ "(--global)"--global'[Set or unset the given property globally]' \
+ "(--exact)"--exact'[Only consider exact name matches]' \
+ "1:setting:($(__fossil_settings))" \
+ '2:value:'
+
+ ;;
+ (sha1sum)
+ _arguments \
+ "(--help -h --dereference)"{-h,--dereference}'[Resolve symbolic links]' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (sha3sum)
+ _arguments \
+ "(--help --224 --256 --384 --512 --size)"--224'[Compute a SHA3-224 hash]' \
+ "(--help --256 --224 --384 --512 --size)"--256'[Compute a SHA3-256 hash (the default)]' \
+ "(--help --384 --224 --256 --512 --size)"--384'[Compute a SHA3-384 hash]' \
+ "(--help --512 --224 --256 --384 --size)"--512'[Compute a SHA3-512 hash]' \
+ "(--help --size --224 --256 --384 --512 --size)"--size'[N An N-bit hash]:number:' \
+ "(--help -h --dereference)"{-h,--dereference}'[Resolve symbolic links]' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (shell)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (smtpd)
+ _arguments \
+ "(--help --dryrun)"--dryrun'[Do not record any emails in the database]' \
+ "(--help --trace)"--trace'[Print a transcript of the conversation on stderr]' \
+ "(--help --ipaddr)"--ipaddr'[ADDR The SMTP connection originates at ADDR]:address:' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:fossils:($(__fossil_repos))'
+
+ ;;
+ (sql|sqlite3)
+ _arguments \
+ "(--help --no-repository)"--no-repository'[Skip opening the repository database]' \
+ "(--help --readonly)"--readonly'[Open the repository read-only]' \
+ "(--help -R)"-R'[REPOSITORY Use REPOSITORY as the repository database]:fossils:($(__fossil_repos))' \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (sqlar)
+ _arguments \
+ "(--help -X --exclude)"{-X,--exclude}'[GLOBLIST Comma-separated list of GLOBs of files to exclude]:pattern:' \
+ "(--help --include)"--include'[GLOBLIST Comma-separated list of GLOBs of files to include]:pattern:' \
+ "(--help --name)"--name'[DIR The name of the top-level directory in the archive]:directory:_files -/' \
+ "(--help -R)"-R'[REPOSITORY Specify a Fossil repository]:fossils:($(__fossil_repos))' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:version:' \
+ '2:output file:_files'
+
+ ;;
+ (stash)
+ __fossil_stash
+
+ ;;
+ (sync)
+ _arguments \
+ "(--help -B --httpauth)"{-B,--httpauth}'[USER:PASS Credentials for the simple HTTP auth protocol]:user pass:' \
+ "(--help --ipv3)"--ipv4'[Use only IPv4, not IPv6]' \
+ "(--help --once)"--once'[Do not remember URL for subsequent syncs]' \
+ "(--help --proxy)"--proxy'[PROXY Use the specified HTTP proxy]:proxy:' \
+ "(--help --private)"--private'[Sync private branches too]' \
+ "(--help -R --repository)"{-R,--repository}'[REPO Local repository to sync with]:fossils:($(__fossil_repos))' \
+ "(--help --ssl-identity)"--ssl-identity'[FILE Local SSL credentials]:ssl credentials:' \
+ "(--help --ssh-command)"--ssh-command'[SSH Use SSH as the "ssh" command]:ssh command:' \
+ "(--help -u --unversioned)"{-u,--unversioned}'[Also sync unversioned content]' \
+ "(--help -v --verbose)"{-v,--verbose}'[Additional (debugging) output]' \
+ "(--help --verily)"--verily'[Exchange extra information with the remote]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1::url:__fossil_urls'
+
+ ;;
+ (tag)
+ __fossil_tag
+
+ ;;
+ (tarball)
+ _arguments \
+ "(--help -X --exclude)"{-X,--exclude}'[GLOBLIST Comma-separated list of GLOBs of files to exclude]:pattern:' \
+ "(--help --include)"--include'[GLOBLIST Comma-separated list of GLOBs of files to include]:pattern:' \
+ "(--help --name)"--name'[DIR The name of the top-level directory in the archive]:directory:_files -/' \
+ "(--help -R)"-R'[REPOSITORY Specify a Fossil repository]:fossils:($(__fossil_repos))' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:version:' \
+ '2:ouput file:_files'
+
+ ;;
+ (ticket)
+ __fossil_ticket
+
+ ;;
+ (timeline)
+ _arguments \
+ "(--help -n --limit)"{-n,--limit}'[N Output the first N entries]:number:' \
+ "(--help -p --path)"{-p,--path}'[PATH Output items affecting PATH only]:path:_files' \
+ "(--help --offset)"--offset'[P skip P changes]:number:' \
+ "(--help --sql)"--sql'[Show the SQL used to generate the timeline]' \
+ "(--help -t --type)"{-t,--type}'[TYPE Output items from the given types only]:type:(ci e t w)' \
+ "(--help -v --verbose)"{-v,--verbose}'[Output the list of files changed by each commit]' \
+ "(--help -W --width)"{-W,--width}'[NUM Width of lines (default is to auto-detect)]:number:' \
+ "(--help -R)"-R'[REPO Specifies the repository db to use]:fossils:($(__fossil_repos))' \
+ '(- *)'--help'[Show help and exit]' \
+ '::when:(before after descendants children ancestors parents)' \
+ '::check-in:' \
+ '::datetime:'
+
+ ;;
+ (tls-config)
+ __fossil_tls_config
+
+ ;;
+ (touch)
+ _arguments \
+ "(--help --now -c --checkin -C --checkout)"--now'[Stamp each affected file with the current time]' \
+ "(--help -c --checkin --now -C --checkout)"{-c,--checkin}'[Stamp with the last modification time]' \
+ "(--help -C --checkout -c --checkin --now)"{-C,--checkout}'[Stamp with the time of the current checkout]' \
+ "(--help -g)"-g'[GLOBLIST Comma-separated list of glob patterns]:pattern:' \
+ "(--help -G)"-G'[GLOBFILE Like -g but reads globs from glob default file]:pattern:' \
+ "(--help -v -verbose)"{-v,-verbose}'[Outputs extra information about its globs]' \
+ "(--help -n --dry-run)"{-n,--dry-run}'[Do not touch anything]' \
+ "(--help -q --quiet)"{-q,--quiet}'[Suppress warnings]' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (unpublished)
+ _arguments \
+ "(--help --all)"--all'[Show all artifacts, not just check-ins]' \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (unset)
+ _arguments \
+ "(--global)"--global'[Set or unset the given property globally]' \
+ "(--exact)"--exact'[Only consider exact name matches]' \
+ "1:setting:($(__fossil_settings))"
+
+ ;;
+ (unversioned|uv)
+ __fossil_unversioned
+
+ ;;
+ (update)
+ _arguments \
+ "(--help --case-sensitive)"--case-sensitive'[BOOL Override case-sensitive setting]:bool:(yes no)' \
+ "(--help --debug)"--debug'[Print debug information on stdout]' \
+ "(--help --latest)"--latest'[Update to latest version]' \
+ "(--help --force-missing)"--force-missing'[Force update if missing content after sync]' \
+ "(--help -n --dry-run)"{-n,--dry-run}'[If given, display instead of run actions]' \
+ "(--help -v --verbose)"{-v,--verbose}'[Print status information about all files]' \
+ "(--help -W --width)"{-W,--width}'[WIDTH Width of lines (default is to auto-detect)]:number:' \
+ "(--help --setmtime)"--setmtime'[Set timestamps of all files to match their SCM-side times]' \
+ "(--help -K --keep-merge-files)"{-K,--keep-merge-files}'[On merge conflict, retain the temporary files]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1::version:' \
+ '*::files:_files'
+
+ ;;
+ (user)
+ __fossil_user
+
+ ;;
+ (version)
+ _arguments \
+ "(--help -v --verbose)"{-v,--verbose}'[Additional details about optional features]' \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (whatis)
+ _arguments \
+ "(--help --type)"--type'[TYPE Only find artifacts of TYPE]:type:(ci t w g e)' \
+ "(--help -v --verbose)"{-v,--verbose}'[Provide extra information (such as the RID)]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:name:'
+
+ ;;
+ (wiki)
+ __fossil_wiki
+
+ ;;
+ (zip)
+ _arguments \
+ "(--help -X --exclude)"{-X,--exclude}'[GLOBLIST Comma-separated list of GLOBs of files to exclude]:pattern:' \
+ "(--help --include)"--include'[GLOBLIST Comma-separated list of GLOBs of files to include]:pattern:' \
+ "(--help --name)"--name'[DIR The name of the top-level directory in the archive]:directory:_files -/' \
+ "(--help -R)"-R'[REPOSITORY Specify a Fossil repository]:fossils:($(__fossil_repos))' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:version:' \
+ '2:output file:_files'
+
+ ;;
+ esac
+ ;;
+ *)
+ esac
+ return 0
+}
+
+################################################################################
+# Subcommands #
+################################################################################
+
+########################################
+# fossil alerts #
+########################################
+function __fossil_alerts_settings() {
+ fossil alerts settings 2>/dev/null
+}
+
+function __fossil_alerts_subscribers() {
+ fossil alerts subscribers 2>/dev/null
+}
+
+function __fossil_alerts() {
+ local curcontext="$curcontext" state line
+ typeset -A opt_args
+ local -a _common_options
+
+ _common_options=(
+ "(--help -R --repository)"{-R,--repository}'[FILE Run command on repository FILE]:fossils:($(__fossil_repos))'
+ "(-)"--help'[Show help and exit]'
+ )
+
+ _arguments -C \
+ ${_common_options[@]} \
+ '1:subcommand:->subcommand' \
+ '*::options:->options'
+
+ case $state in
+ (subcommand)
+ _values 'subcommand' \
+ pending reset send settings status subscribers \
+ test-message unsubscribe
+
+ ;;
+ (options)
+ case $line[1] in
+ (pending|reset)
+ _arguments \
+ ${_common_options[@]}
+
+ ;;
+ (send)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help --digest)"--digest'[Send digests]' \
+ "(--help --test)"--test'[Write to standard output]'
+
+ ;;
+ (set|settings)
+ _arguments \
+ ${_common_options[@]} \
+ '1::name:($(__fossil_alerts_settings))' \
+ '2::value:'
+
+ ;;
+ (subscribers)
+ _arguments \
+ ${_common_options[@]} \
+ '1::pattern:'
+
+ ;;
+ (test-message)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help --body)"--body'[FILENAME]:file:_files' \
+ "(--help --smtp-trace)"--smtp-trace'[]' \
+ "(--help --stdout)"--stdout'[]' \
+ "(--help --subject -S)"{--subject,-S}'[SUBJECT]:subject:' \
+ '1:recipient:'
+
+ ;;
+ unsubscribe)
+ _arguments \
+ ${_common_options[@]} \
+ '1:email:($(__fossil_alerts_subscribers))'
+
+ ;;
+ *)
+ _message 'no more arguments'
+
+ ;;
+ esac
+ ;;
+ esac
+ return 0
+}
+
+########################################
+# fossil all #
+########################################
+function __fossil_all() {
+ local curcontext="$curcontext" state line
+ typeset -A opt_args
+ local -a _common_options
+
+ _common_options=(
+ "(-)"--help'[Show help and exit]'
+ "(--help --showfile)"--showfile'[Show the repository or checkout being operated upon]'
+ "(--help --dontstop)"--dontstop'[Continue with other repositories even after an error]'
+ "(--help --dry-run)"--dry-run'[If given, display instead of run actions]'
+ )
+
+ _arguments -C \
+ ${_common_options[@]} \
+ '1:subcommand:->subcommand' \
+ '*::options:->options'
+
+ case $state in
+ (subcommand)
+ _values 'subcommand' \
+ backup cache changes clean config dbstat extras fts-config info \
+ pull push rebuild sync set unset server ui add ignore list ls
+
+ ;;
+ (options)
+ case $line[1] in
+ (backup)
+ _arguments \
+ ${_common_options[@]} \
+ '1:output directory:_files -/'
+
+ ;;
+ (cache)
+ __fossil_cache
+
+ ;;
+ (clean)
+ _arguments \
+ ${_common_options[@]} \
+ ${_fossil_clean_options[@]} \
+ "(--help --whatif)"--whatif'[Review the files to be deleted]'
+
+ ;;
+ (config)
+ _arguments \
+ ${_common_options[@]} \
+ '1:what:(pull)' \
+ '2:area:'
+
+ ;;
+ (dbstat)
+ _arguments \
+ ${_fossil_dbstat_options[@]}
+
+ ;;
+ (extras)
+ _arguments \
+ ${_fossil_extras_options[@]}
+
+ ;;
+ (fts-config)
+ __fossil_fts_config
+
+ ;;
+ (pull|push)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help -v --verbose)"{-v,--verbose}'[Additional (debugging) output]'
+
+ ;;
+ (rebuild)
+ _arguments \
+ ${_common_options[@]} \
+ ${_fossil_rebuild_options[@]}
+
+ ;;
+ (sync)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help -u --unversioned)"{-u,--unversioned}'[Also sync unversioned content]' \
+ "(--help -v --verbose)"{-v,--verbose}'[Additional (debugging) output]'
+
+ ;;
+ (set|unset)
+ _arguments \
+ ${_common_options[@]} \
+ "1:setting:($(__fossil_settings))" \
+ '2:value:' \
+ "(--help --global)"--global'[Set or unset the given property globally]' \
+ "(--help --exact)"--exact'[Only consider exact name matches]'
+
+ ;;
+ (server|ui)
+ _arguments \
+ ${_common_options[@]} \
+ ${_fossil_server_options[@]}
+
+ ;;
+ (add)
+ _arguments \
+ ${_common_options[@]} \
+ '*:fossils:($(__fossil_repos))'
+
+ ;;
+ (ignore)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help -c --ckout)"{-c,--ckout}'[Ignore local checkouts instead of repositories]' \
+ '*:fossils:($(__fossil_repos))'
+
+ ;;
+ (list|ls)
+ _arguments \
+ "(-)"--help'[Show help and exit]' \
+ "(--help -c --ckout)"{-c,--ckout}'[List local checkouts instead of repositories]'
+
+ ;;
+ *)
+ _message 'no more arguments'
+
+ ;;
+ esac
+ ;;
+ esac
+ return 0
+}
+
+
+########################################
+# fossil bisect #
+########################################
+function __fossil_bisect() {
+ local curcontext="$curcontext" state line
+ typeset -A opt_args
+ local -a _common_options
+
+ _common_options=(
+ "(-)"--help'[Show help and exit]'
+ )
+
+ _arguments -C \
+ ${_common_options[@]} \
+ '1:subcommand:->subcommand' \
+ '*::options:->options'
+
+ case $state in
+ (subcommand)
+ _values 'subcommand' \
+ bad good log chart next options reset skip vlist ls status ui undo
+
+ ;;
+ (options)
+ case $line[1] in
+ (bad|good|skip)
+ _arguments \
+ '1:version:'
+
+ ;;
+ (options)
+ _arguments \
+ "1::name:($(fossil bisect options 2>/dev/null | awk '{print $1}'))" \
+ '2::value:'
+
+ ;;
+ (vlist|ls|status)
+ _arguments \
+ "(-a --all)"{-a,--all}'[List all]'
+
+ ;;
+ (ui)
+ _arguments \
+ ${_fossil_server_options[@]}
+
+ ;;
+ *)
+ _message 'no more arguments'
+
+ ;;
+ esac
+ ;;
+ esac
+ return 0
+}
+
+########################################
+# fossil branch #
+########################################
+function __fossil_branch() {
+ local curcontext="$curcontext" state line
+ typeset -A opt_args
+ local -a _common_options
+
+ _common_options=(
+ "(-)"--help'[Show help and exit]'
+ "(--help -R --repository)"{-R,--repository}'[FILE Run commands on repository FILE]:fossils:($(__fossil_repos))'
+ )
+
+ _arguments -C \
+ ${_common_options[@]} \
+ '1:subcommand:->subcommand' \
+ '*::options:->options'
+
+ case $state in
+ (subcommand)
+ _values 'subcommand' \
+ current info list ls new
+
+ ;;
+ (options)
+ case $line[1] in
+ (current)
+ _arguments \
+ ${_common_options[@]}
+
+ ;;
+ (info)
+ _arguments \
+ ${_common_options[@]} \
+ ':branch:($(__fossil_branches))'
+
+ ;;
+ (list|ls)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help -a --all)"{-a,--all}'[List all branches]' \
+ "(--help -c --closed)"{-c,--closed}'[List closed branches]' \
+ "(--help -r)"-r'[Reverse the sort order]' \
+ "(--help -t)"-t'[Show recently changed branches first]'
+
+ ;;
+ (new)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help --private)"--private'[Branch is private]' \
+ "(--help --bgcolor)"--bgcolor'[COLOR Use COLOR instead of automatic background]:color:' \
+ "(--help --nosign)"--nosign'[Do not sign contents on this branch]' \
+ "(--help --date-override)"--date-override'[DATE Use DATE instead of '"'"'now'"'"']:date:(now)' \
+ "(--help --user-override)"--user-override'[USER Use USER instead of the default]:user:($(__fossil_users))' \
+ '1:branch name:' \
+ '2:base check-in:'
+
+ ;;
+ *)
+ _message 'no more arguments'
+
+ ;;
+ esac
+ ;;
+ esac
+ return 0
+}
+
+########################################
+# fossil bundle #
+########################################
+function __fossil_bundle() {
+ local curcontext="$curcontext" state line
+ typeset -A opt_args
+ local -a _common_options
+
+ _common_options=(
+ "(-)"--help'[Show help and exit]'
+ )
+
+ _arguments -C \
+ ${_common_options[@]} \
+ '1:subcommand:->subcommand' \
+ '*::options:->options'
+
+ case $state in
+ (subcommand)
+ _values 'subcommand' \
+ append cat export extend import ls purge
+
+ ;;
+ (options)
+ case $line[1] in
+ (append)
+ _arguments \
+ '1:bundle:_files' \
+ '*:files:_files'
+
+ ;;
+ (bundle)
+ _arguments \
+ '1:what:(cat)' \
+ '2:bundle:_files' \
+ '*:hashes:'
+
+ ;;
+ (export)
+ _arguments \
+ "(--branch)"--branch'[BRANCH Package all check-ins on BRANCH]:branch:($(__fossil_branches))' \
+ "(--from)"--from'[TAG1 --to TAG2 Package check-ins starting with TAG1]:tag:($(__fossil_tags))' \
+ "(--to)"--to'[TAG2 Package check-ins up to TAG2]:tag:($(__fossil_tags))' \
+ "(--checkin)"--checkin'[TAG Package the single check-in TAG]:tag:($(__fossil_tags))' \
+ "(--standalone)"--standalone'[Do no use delta-encoding against]' \
+ '1:bundle:_files'
+
+ ;;
+ (extend|ls|purge)
+ _arguments \
+ '1:bundle:_files'
+
+ ;;
+ (import)
+ _arguments \
+ "(--publish)"--publish'[Make the import public]' \
+ "(--force)"--force'[Import even if project codes do not match]' \
+ '1:bundle:_files'
+
+ ;;
+ *)
+ _message 'no more arguments'
+
+ ;;
+ esac
+ ;;
+ esac
+ return 0
+}
+
+########################################
+# fossil cache #
+########################################
+function __fossil_cache_subcommand {
+}
+
+function __fossil_cache() {
+ local curcontext="$curcontext" state line
+ typeset -A opt_args
+ local -a _common_options
+
+ _common_options=(
+ "(-)"--help'[Show help and exit]'
+ )
+
+ _arguments -C \
+ ${_common_options[@]} \
+ '1:subcommand:->subcommand' \
+ '*::options:->options'
+
+ case $state in
+ (subcommand)
+ _values 'subcommand' \
+ clear init list ls status
+
+ ;;
+ *)
+ _message 'no more arguments'
+
+ ;;
+ esac
+ return 0
+}
+
+########################################
+# fossil configuration #
+########################################
+function __fossil_configuration() {
+ local curcontext="$curcontext" state line
+ typeset -A opt_args
+ local -a _common_options
+
+ _common_options=(
+ "(--help -R --repository)"{-R,--repository}'[FILE Extract info from repository FILE]:fossils:($(__fossil_repos))'
+ "(-)"--help'[Show help and exit]'
+ )
+
+ _arguments -C \
+ ${_common_options[@]} \
+ '1:method:->method' \
+ '*::options:->options'
+
+ case $state in
+ (method)
+ _values 'method' \
+ export import merge pull push reset sync
+
+ ;;
+ (options)
+ case $line[1] in
+ (export)
+ _arguments \
+ ${_common_options[@]} \
+ '1:area:__fossil_areas' \
+ '2:file:_files'
+
+ ;;
+ (import|merge)
+ _arguments \
+ ${_common_options[@]} \
+ '1:file:_files'
+
+ ;;
+ (pull)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help --overwrite)"--overwrite'[Replace local settings]' \
+ '1:area:__fossil_areas' \
+ '2::url:__fossil_urls'
+
+ ;;
+ (push|sync)
+ _arguments \
+ ${_common_options[@]} \
+ '1:area:__fossil_areas' \
+ '2::url:__fossil_urls'
+
+ ;;
+ (reset)
+ _arguments \
+ ${_common_options[@]} \
+ '1:area:__fossil_areas'
+
+ ;;
+ *)
+ _message 'no more arguments'
+
+ ;;
+ esac
+ ;;
+ esac
+ return 0
+}
+
+########################################
+# fossil fts-config #
+########################################
+function __fossil_fts_config() {
+ local curcontext="$curcontext" state line
+ typeset -A opt_args
+ local -a _common_options
+
+ _common_options=(
+ "(-)"--help'[Show help and exit]'
+ )
+
+ _arguments -C \
+ ${_common_options[@]} \
+ '1:subcommand:->subcommand' \
+ '*::options:->options'
+
+ case $state in
+ (subcommand)
+ _values 'subcommand' \
+ reindex index enable disable stemmer
+
+ ;;
+ (options)
+ case $line[1] in
+ index|stemmer)
+ _arguments \
+ "(- *):setting:(on off)"
+
+ ;;
+ enable|disable)
+ _arguments \
+ "(- *):setting:(cdtwe)"
+
+ ;;
+ *)
+ _message 'no more arguments'
+
+ ;;
+ esac
+ ;;
+ esac
+ return 0
+}
+
+########################################
+# fossil git #
+########################################
+function __fossil_git() {
+ local curcontext="$curcontext" state line
+ typeset -A opt_args
+ local -a _common_options
+
+ _common_options=(
+ "(-)"--help'[Show help and exit]'
+ )
+
+ _arguments -C \
+ ${_common_options[@]} \
+ '1:subcommand:->subcommand' \
+ '*::options:->options'
+
+ case $state in
+ subcommand)
+ _values 'subcommand' \
+ export import status
+
+ ;;
+ options)
+ case $line[1] in
+ (export)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help --autopush)"--autopush'[URL Automatically do a '"'"'git push'"'"' to URL]:url:__fossil_urls' \
+ "(--help --debug)"--debug'[FILE Write fast-export text to FILE]:file:_files' \
+ "(--help --force -f)"{--force,-f}'[Do the export even if nothing has changed]' \
+ "(--help --limit)"--limit'[N Add no more than N new check-ins to MIRROR]:number:' \
+ "()*"{--quiet,-q}'[Reduce output. Repeat for even less output]' \
+ "(--verbose -v)"{--verbose,-v}'[More output]'
+
+ ;;
+ (import)
+ _arguments \
+ ${_common_options[@]} \
+ ':url:__fossil_urls'
+
+ ;;
+ (status)
+ _arguments \
+ ${_common_options[@]}
+
+ ;;
+ *)
+ _message 'no more arguments'
+
+ ;;
+ esac
+ ;;
+ esac
+ return 0
+}
+
+########################################
+# fossil hook #
+########################################
+function __fossil_hook() {
+ local curcontext="$curcontext" state line
+ typeset -A opt_args
+ local -a _common_options
+
+ _common_options=(
+ "(-)"--help'[Show help and exit]'
+ )
+
+ _arguments -C \
+ ${_common_options[@]} \
+ '1:subcommand:->subcommand' \
+ '*::options:->options'
+
+ case $state in
+ (subcommand)
+ _values 'subcommand' \
+ add delete edit list status test
+
+ ;;
+ (options)
+ case $line[1] in
+ (add)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help --command)"--command'[COMMAND]:command:' \
+ "(--help --type)"--type'[TYPE]:type:' \
+ "(--help --sequence)"--sequence'[NUM]:number:'
+
+ ;;
+ (delete)
+ _arguments \
+ ${_common_options[@]} \
+ '*:IDs:'
+
+ ;;
+ (edit)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help --command)"--command'[COMMAND]:command:' \
+ "(--help --type)"--type'[TYPE]:type:' \
+ "(--help --sequence)"--sequence'[NUM]:number:' \
+ '*:IDs:'
+
+ ;;
+ (list|status)
+ _arguments \
+ ${_common_options[@]} \
+
+ ;;
+ (test)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help --dry-run)"--dry-run'[Print the script on stdout rather than run it]' \
+ "(--help --base-rcvid)"--base-rcvid'[N Pretend that the hook-last-rcvid value is N]:number:' \
+ "(--help --new-rcvid)"--new-rcvid'[M Pretend that the last rcvid valud is M]:number:' \
+ "(--help --aux-file)"--aux-file'[NAME NAME is substituted for %A in the script]:name:' \
+ '1:ID:'
+
+ ;;
+ *)
+ _message 'no more arguments'
+
+ ;;
+ esac
+ ;;
+ esac
+ return 0
+}
+
+########################################
+# fossil json #
+########################################
+function __fossil_json_subcommands() {
+ _values 'subcommand' \
+ anonymousPassword artifact branch cap config diff dir g login logout \
+ query rebuild report resultCodes stat tag timeline user version \
+ whoami wiki
+}
+
+function __fossil_json() {
+ local curcontext="$curcontext" state line
+ typeset -A opt_args
+ local -a _common_options
+
+ _common_options=(
+ "(-)"--help'[Show help and exit]'
+ "(--help -R --repository)"{-R,--repository}'[FILE Run commands on repository FILE]:fossils:($(__fossil_repos))'
+ )
+
+ _arguments -C \
+ ${_common_options[@]} \
+ '1:subcommand:->subcommand' \
+ '*::options:->options'
+
+ case $state in
+ (subcommand)
+ _arguments \
+ '(- *)'-json-input'[FILE Read JSON data from FILE]:file:_files' \
+ '1:subcommand:__fossil_json_subcommands'
+
+ ;;
+ (options)
+ case $line[1] in
+ -json-input)
+ _arguments \
+ ${_common_options[@]} \
+ '1:file:_files'
+
+ ;;
+ *)
+ _message 'no more arguments'
+
+ ;;
+ esac
+ ;;
+ *)
+ esac
+ return 0
+}
+
+########################################
+# fossil login-group #
+########################################
+function __fossil_login_group() {
+ local curcontext="$curcontext" state line
+ typeset -A opt_args
+ local -a _common_options
+
+ _common_options=(
+ "(-)"--help'[Show help and exit]'
+ )
+
+ _arguments -C \
+ ${_common_options[@]} \
+ '1:subcommand:->subcommand' \
+ '*::options:->options'
+
+ case $state in
+ (subcommand)
+ _values 'subcommand' \
+ join leave
+
+ ;;
+ (options)
+ case $line[1] in
+ (join)
+ _arguments \
+ "(-name)"-name'[Specified the name of the login group]:name:' \
+ ':fossils:($(__fossil_repos))'
+
+ ;;
+ *)
+ _message 'no more arguments'
+
+ ;;
+ esac
+ ;;
+ esac
+ return 0
+}
+
+########################################
+# fossil purge #
+########################################
+function __fossil_purge() {
+ local curcontext="$curcontext" state line
+ typeset -A opt_args
+ local -a _common_options
+
+ _common_options=(
+ "(--help --explain --dry-run)"--explain'[Make no changes, but show what would happen]'
+ "(--help --dry-run --explain)"--dry-run'[An alias for --explain]'
+ "(-)"--help'[Show help and exit]'
+ )
+
+ _arguments -C \
+ "(-)"--help'[Show help and exit]' \
+ '1:subcommand:->subcommand' \
+ '*::options:->options'
+
+ case $state in
+ (subcommand)
+ _values 'subcommand' \
+ artifacts cat checkins files list ls obliterate tickets undo wiki
+
+ ;;
+ (options)
+ case $line[1] in
+ (artifacts|cat)
+ _arguments \
+ ${_common_options[@]} \
+ '*:hashes:'
+
+ ;;
+ (checkins)
+ _arguments \
+ ${_common_options[@]} \
+ '*:tags:($(__fossil_tags))'
+
+ ;;
+ (files)
+ _arguments \
+ ${_common_options[@]} \
+ '*:files:_files'
+
+ ;;
+ (list|ls)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help -l)"-l'[Provide more details]'
+
+ ;;
+ (obliterate)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help --force)"--force'[Suppress confirmation prompt]' \
+ '*:IDs:'
+
+ ;;
+ (tickets)
+ _arguments \
+ ${_common_options[@]} \
+ '*:ticket names:'
+
+ ;;
+ (undo)
+ _arguments \
+ ${_common_options[@]} \
+ '1:ID:'
+
+ ;;
+ (wiki)
+ _arguments \
+ ${_common_options[@]} \
+ '*:wiki pages:($(__fossil_wiki_pages))'
+
+ ;;
+ *)
+ _message 'no more arguments'
+
+ ;;
+ esac
+ ;;
+ esac
+ return 0
+}
+
+########################################
+# fossil remote #
+########################################
+function __fossil_remote() {
+ local curcontext="$curcontext" state line
+ typeset -A opt_args
+ local -a _common_options
+
+ _common_options=(
+ "(-)"--help'[Show help and exit]'
+ )
+
+ _arguments -C \
+ ${_common_options[@]} \
+ '1:subcommand:->subcommand' \
+ '*::options:->options'
+
+ case $state in
+ (subcommand)
+ _values 'subcommand' \
+ add delete list off
+
+ ;;
+ (options)
+ case $line[1] in
+ (add)
+ _arguments \
+ '1:name:' \
+ '2:url:__fossil_urls'
+
+ ;;
+
+ (delete)
+ _arguments \
+ '1:name:($(__fossil_remotes))'
+
+ ;;
+ *)
+ _message 'no more arguments'
+
+ ;;
+ esac
+ ;;
+ esac
+ return 0
+}
+
+########################################
+# fossil stash #
+########################################
+function __fossil_stash_ids() {
+ fossil stash ls | grep '^\s*\d\+:' | awk -F ':' '{print $1}' | sed 's/^ *//'
+}
+
+function __fossil_stash() {
+ local curcontext="$curcontext" state line
+ typeset -A opt_args
+ local -a _common_options
+
+ _common_options=(
+ "(-)"--help'[Show help and exit]'
+ )
+
+ _arguments -C \
+ ${_common_options[@]} \
+ '1:subcommand:->subcommand' \
+ '*::options:->options'
+
+ case $state in
+ (subcommand)
+ _values 'subcommand' \
+ save snapshot list ls show gshow pop apply goto drop diff gdiff
+
+ ;;
+ (options)
+ case $line[1] in
+ (save|snapshot)
+ _arguments \
+ "(-m --comment)"{-m,--comment}'[MSG Add comment]:comment:' \
+ '*:files:_files'
+
+ ;;
+ (list|ls)
+ _arguments \
+ "(-v --verbose)"{-v,--verbose}'[Show info about individual files]' \
+ "(-W --width)"{-W,--width}'[N Set width]:number:'
+
+ ;;
+ (show|cat|diff|gdiff)
+ _arguments \
+ ${_fossil_diff_options[@]} \
+ '1::stash ID:($(__fossil_stash_ids))'
+
+ ;;
+ (apply|goto)
+ _arguments \
+ '1::stash ID:($(__fossil_stash_ids))'
+
+ ;;
+ (drop|rm)
+ _arguments \
+ "(-a --all)"{-a,--all}'[Forget the whole stash (CANNOT UNDO!)]' \
+ '1::stash ID:($(__fossil_stash_ids))'
+
+ ;;
+ *)
+ _message 'no more arguments'
+
+ ;;
+ esac
+ ;;
+ esac
+ return 0
+}
+
+########################################
+# fossil tag #
+########################################
+function __fossil_tag() {
+ local curcontext="$curcontext" state line
+ typeset -A opt_args
+ local -a _common_options
+
+ _common_options=(
+ "(-)"--help'[Show help and exit]'
+ )
+
+ _arguments -C \
+ ${_common_options[@]} \
+ '1:subcommand:->subcommand' \
+ '*::options:->options'
+
+ case $state in
+ (subcommand)
+ _values 'subcommand' \
+ add cancel find list ls
+
+ ;;
+ (options)
+ case $line[1] in
+ (add)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help --raw)"--raw'[Raw tag name]' \
+ "(--help --propagate)"--propagate'[Propagating tag]' \
+ "(--help --date-override)"--date-override'[DATETIME Set date and time added]:datetime:' \
+ "(--help --user-override)"--user-override'[USER Name USER when adding the tag]:user:($(__fossil_users))' \
+ "(--help --dryrun -n)"{--dryrun,-n}'[Display the tag text, but do not]' \
+ '1:tag name:($(__fossil_tags))' \
+ '2:check-in:' \
+ '3::value:'
+
+ ;;
+ (cancel)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help --raw)"--raw'[Raw tag name]' \
+ "(--help --date-override)"--date-override'[DATETIME Set date and time deleted]:datetime:' \
+ "(--help --user-override)"--user-override'[USER Name USER when deleting the tag]:user:($(__fossil_users))' \
+ "(--help --dryrun -n)"{--dryrun,-n}'[Display the control artifact, but do]' \
+ '1:tag name:($(__fossil_tags))' \
+ '2:check-in:'
+
+ ;;
+ (find)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help --raw)"--raw'[Raw tag name]' \
+ "(--help -t --type)"{-t,--type}'[TYPE One of "ci", or "e"]:(ci e)' \
+ "(--help -n --limit)"{-n,--limit}'[N Limit to N results]:number:' \
+ '1:tag name:($(__fossil_tags))'
+
+ ;;
+ (list|ls)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help --raw)"--raw'[List tags raw names of tags]' \
+ "(--help --tagtype)"--tagtype'[TYPE List only tags of type TYPE]:tag type:(ci e)' \
+ "(--help -v --inverse)"{-v,--inverse}'[Inverse the meaning of --tagtype TYPE]' \
+ '1::check-in:'
+
+ ;;
+ *)
+ _message 'no more arguments'
+
+ ;;
+ esac
+ ;;
+ esac
+ return 0
+}
+
+########################################
+# fossil ticket #
+########################################
+function __fossil_ticket() {
+ local curcontext="$curcontext" state line
+ typeset -A opt_args
+ local -a _common_options
+
+ _common_options=(
+ "(-)"--help'[Show help and exit]'
+ )
+
+ _arguments -C \
+ ${_common_options[@]} \
+ '1:subcommand:->subcommand' \
+ '*::options:->options'
+
+ case $state in
+ (subcommand)
+ _values 'subcommand' \
+ show list ls set change add history
+
+ ;;
+ (options)
+ case $line[1] in
+ (show)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help -l --limit)"{-l,--limit}'[LIMITCHAR]:limit:' \
+ "(--help -q --quote)"{-q,--quote}'[]' \
+ "(--help -R --repository)"{-R,--repository}'[FILE]:fossils:($(__fossil_repos))' \
+ '1:report title/nr:' \
+ '2::ticket filter:'
+
+ ;;
+ (list|ls)
+ _arguments \
+ ':what:(fields reports)'
+
+ ;;
+ (set|change)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help -q --quote)"{-q,--quote}'[]' \
+ '1:ticket UUID:' \
+ '*:field/value:'
+
+ ;;
+ (add)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help -q --quote)"{-q,--quote}'[]' \
+ '*:field/value:'
+
+ ;;
+ (history)
+ _arguments \
+ ':ticket UUID:'
+
+ ;;
+ *)
+ _message 'no more arguments'
+
+ ;;
+ esac
+ ;;
+ esac
+ return 0
+}
+
+########################################
+# fossil tls-config #
+########################################
+function __fossil_tls_config() {
+ local curcontext="$curcontext" state line
+ typeset -A opt_args
+ local -a _common_options
+
+ _common_options=(
+ "(-)"--help'[Show help and exit]'
+ )
+
+ _arguments -C \
+ ${_common_options[@]} \
+ '1:subcommand:->subcommand' \
+ '*::options:->options'
+
+ case $state in
+ (subcommand)
+ _values 'subcommand' \
+ show remove-exception
+
+ ;;
+ (options)
+ case $line[1] in
+ (remove-exception)
+ _arguments \
+ '*:domains:'
+
+ ;;
+ *)
+ _message 'no more arguments'
+
+ ;;
+ esac
+ ;;
+ esac
+ return 0
+}
+
+########################################
+# fossil unversioned/uv #
+########################################
+function __fossil_unversioned() {
+ local curcontext="$curcontext" state line
+ typeset -A opt_args
+ local -a _common_options
+
+ _common_options=(
+ "(--help -R --repository)"{-R,--repository}'[FILE Use FILE as the repository]:fossils:($(__fossil_repos))'
+ "(--help --mtime)"--mtime'[TIMESTAMP Use TIMESTAMP instead of "now"]:timestamp:'
+ "(-)"--help'[Show help and exit]'
+ )
+
+ _arguments -C \
+ ${_common_options[@]} \
+ '1:subcommand:->subcommand' \
+ '*::options:->options'
+
+ case $state in
+ (subcommand)
+ _values 'subcommand' \
+ add cat edit export list ls revert remove rm delete sync touch
+
+ ;;
+ (options)
+ case $line[1] in
+ (add)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help --as)"--as'[UVFILE]:file:_files' \
+ '*:files:_files'
+
+ ;;
+ (cat)
+ _arguments \
+ ${_common_options[@]} \
+ '*:files:_files'
+
+ ;;
+ (edit)
+ _arguments \
+ ${_common_options[@]} \
+ '1:file:_files'
+
+ ;;
+ (export)
+ _arguments \
+ ${_common_options[@]} \
+ '1:file:_files' \
+ '2:output file:_files'
+
+ ;;
+ (list|ls)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help --glob)"--glob'[PATTERN Show only files that match]:pattern:' \
+ "(--help --like)"--like'[PATTERN Show only files that match]:pattern:'
+
+ ;;
+ (revert)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help -v --verbose)"{-v,--verbose}'[Extra diagnostic output]' \
+ "(--help -n --dryrun)"{-n,--dryrun}'[Show what would have happened]' \
+ '1::url:__fossil_urls'
+
+ ;;
+ (remove|rm|delete)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help --glob)"--glob'[PATTERN Remove files that match]:pattern:' \
+ "(--help --like)"--like'[PATTERN Remove files that match]:pattern:' \
+ '*:files:_files'
+
+ ;;
+ (sync)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help -v --verbose)"{-v,--verbose}'[Extra diagnostic output]' \
+ "(--help -n --dryrun)"{-n,--dryrun}'[Show what would have happened]' \
+ '1::url:__fossil_urls'
+
+ ;;
+ (touch)
+ _arguments \
+ ${_common_options[@]} \
+ '*:files:_files'
+
+ ;;
+ *)
+ _message 'no more arguments'
+
+ ;;
+ esac
+ ;;
+ esac
+ return 0
+}
+
+########################################
+# fossil user #
+########################################
+function __fossil_user() {
+ local curcontext="$curcontext" state line
+ typeset -a opt_args
+ local -a _common_options
+
+ _common_options=(
+ "(--help -R --repository)"{-R,--repository}'[FILE Apply command to repository FILE]:fossils:($(__fossil_repos))'
+ "(-)"--help'[show help and exit]'
+ )
+
+ _arguments -c \
+ ${_common_options[@]} \
+ '1:subcommand:->subcommand' \
+ '*::options:->options'
+
+ case $state in
+ (subcommand)
+ _values 'subcommand' \
+ capabilities default list ls new password
+
+ ;;
+ (options)
+ case $line[1] in
+ (capabilities)
+ _arguments \
+ ${_common_options[@]} \
+ '1:user:($(__fossil_users))' \
+ '2::string:'
+
+ ;;
+ (default)
+ _arguments \
+ ${_common_options[@]} \
+ '1::user:($(__fossil_users))'
+
+ ;;
+ (list|ls)
+ _arguments \
+ ${_common_options[@]}
+
+ ;;
+ (new)
+ _arguments \
+ ${_common_options[@]} \
+ '1::username:' \
+ '2::contact info:' \
+ '3::password:'
+
+ ;;
+ (password)
+ _arguments \
+ ${_common_options[@]} \
+ '1:user:($(__fossil_users))' \
+ '2::password:'
+
+ ;;
+ *)
+ _message 'no more arguments'
+
+ ;;
+ esac
+ ;;
+ esac
+ return 0
+}
+
+########################################
+# fossil wiki #
+########################################
+function __fossil_wiki() {
+ local curcontext="$curcontext" state line
+ typeset -a opt_args
+ local -a _common_options
+
+ _common_options=(
+ "(-)"--help'[show help and exit]'
+ )
+
+ _arguments -c \
+ ${_common_options[@]} \
+ '1:subcommand:->subcommand' \
+ '*::options:->options'
+
+ case $state in
+ (subcommand)
+ _values 'subcommand' \
+ export create commit list
+
+ ;;
+ (options)
+ case $line[1] in
+ (export)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help --technote -t)"{--technote,-t}'[DATETIME|TECHNOTE-ID Export a technote]:datetime/technote-id:(now)' \
+ "(--help -h --html -H --HTML)"--html'[Render only HTML body]' \
+ "(--help -H --HTML -h --html)"--HTML'[Like -h|-html but wraps the output in <html>/</html>]' \
+ "(--help -p --pre)"{-p,--pre}'[Wrap into <pre>...</pre>]' \
+ '::pagename:($(__fossil_wiki_pages))' \
+ '::file:_files'
+
+ ;;
+ (create|commit)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help -M --mimetype)"{-M,--mimetype}'[TEXT-FORMAT The mime type of the update]:mimetype:' \
+ "(--help --technote -t)"{--technote,-t}'[DATETIME|TECHNOTE-ID]:datetime/technote-id:(now)' \
+ "(--help --technote-tags)"--technote-tags'[TAGS The set of tags for a technote]:tags:' \
+ "(--help --technote-bgcolor)"--technote-bgcolor'[COLOR The color used for the technote]:color:' \
+ '1:pagename:($(__fossil_wiki_pages))' \
+ '2::file:_files'
+
+ ;;
+ (list|ls)
+ _arguments \
+ ${_common_options[@]} \
+ "(--help -t --technote)"{-t,--technote}'[List technotes]' \
+ "(--help -s --show-technote-ids)"{-s,--show-technote-ids}'[The id of the tech note will be listed]'
+
+ ;;
+ *)
+ _message 'no more arguments'
+
+ ;;
+ esac
+ ;;
+ esac
+ return 0
+}
+
+
+########################################
+# fossil test commands #
+########################################
+
+function __fossil_complete_test_commands() {
+ case $line[1] in
+ (test-add-alerts)
+ _arguments \
+ "(--help --backoffice)"--backoffice'[Run alert_backoffice() after all alerts have been added]' \
+ "(--help --debug)"--debug'[Like --backoffice, but print to stdout]' \
+ "(--help --digest)"--digest'[Process emails using SENDALERT_DIGEST]' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:event IDs:'
+
+ ;;
+ (test-agg-cksum)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-alert)
+ _arguments \
+ "(--help --digest)"--digest'[Generate digest alert text]' \
+ "(--help --needmod)"--needmod'[Assume all events are pending moderator approval]' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:event IDs:'
+
+ ;;
+ (test-all-help)
+ _arguments \
+ "(--help -e --everything)"{-e,--everything}'[Show all commands and pages]' \
+ "(--help -t --test)"{-t,--test}'[Include test- commands]' \
+ "(--help -w --www)"{-w,--www}'[Show WWW pages]' \
+ "(--help -s --settings)"{-s,--settings}'[Show settings]' \
+ "(--help -h --html)"{-h,--html}'[Transform output to HTML]' \
+ "(--help -r --raw)"{-r,--raw}'[No output formatting]' \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-ambiguous)
+ _arguments \
+ "(--help --minsize)"--minsize'[N Show hases with N characters or more]:number:' \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-ancestor-path)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:version 1:' \
+ '2:version 2:'
+
+ ;;
+ (test-approx-match)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-backlinks)
+ _arguments \
+ "(--help --mtime)"--mtime'[DATETIME Use an alternative date/time]:datetime:' \
+ "(--help --mimetype)"--mimetype'[TYPE Use an alternative mimetype]:mimetype:' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:srctype:' \
+ '2:srcid:' \
+ '3:input file:_files'
+
+ ;;
+ (test-backoffice-lease)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-builtin-get)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:name:' \
+ '2::output file:_files'
+
+ ;;
+ (test-builtin-list)
+ _arguments \
+ "(--help --verbose)"--verbose'[Output total item count and size]' \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-canonical-name)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (test-captcha)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '*:numbers:'
+
+ ;;
+ (test-ci-mini)
+ _arguments \
+ "(--help --repository -R)"{--repository,-R}'[REPO The repository file to commit to]:fossils:($(__fossil_repos))' \
+ "(--help --as)"--as'[FILENAME The repository-side name of the input file]:file:_files' \
+ "(--help --comment -m)"{--comment,-m}'[COMMENT Required checkin comment]:comment:' \
+ "(--help --comment-file -M)"{--comment-file,-M}'[FILE Reads checkin comment from the given file]:file:_files' \
+ "(--help --revision -r)"{--revision,-r}'[VERSION Commit from this version]:version:' \
+ "(--help --allow-fork)"--allow-fork'[Allow commit against a non-leaf parent]' \
+ "(--help --allow-merge-conflict)"--allow-merge-conflict'[Allow checkin of a file with conflict markers]' \
+ "(--help --user-override)"--user-override'[USER User to use instead of the default]:user:($(__fossil_users))' \
+ "(--help --date-override)"--date-override'[DATETIME Date to use instead of '"'"'now'"'"']:datetime:(now)' \
+ "(--help --allow-older)"--allow-older'[Allow a commit to be older than its ancestor]' \
+ "(--help --convert-eol-inherit)"--convert-eol-inherit'[Inherit EOL style from previous content]' \
+ "(--help --convert-eol-unix)"--convert-eol-unix'[Convert the EOL style to Unix]' \
+ "(--help --convert-eol-windows)"--convert-eol-windows'[Convert the EOL style to Windows]' \
+ "(--help --delta)"--delta'[Prefer to generate a delta manifest]' \
+ "(--help --allow-new-file)"--allow-new-file'[Allow addition of a new file this way]' \
+ "(--help --dump-manifest -d)"{--dump-manifest,-d}'[Dumps the generated manifest to stdout]' \
+ "(--help --save-manifest)"--save-manifest'[FILE Saves the generated manifest to a file]:file:_files' \
+ "(--help --wet-run)"--wet-run'[Disables the default dry-run mode]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:file:_files'
+
+ ;;
+ (test-clusters)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-command-stats)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-comment-format)
+ _arguments \
+ "(--help --file)"--file'[The comment text is really just a file name to read it from]' \
+ "(--help --decode)"--decode'[Decode the text using the same method used for a C-card from a manifest]' \
+ "(--help --legacy)"--legacy'[Use the legacy comment printing algorithm]' \
+ "(--help --trimcrlf)"--trimcrlf'[Enable trimming of leading/trailing CR/LF]' \
+ "(--help --trimspace)"--trimspace'[Enable trimming of leading/trailing spaces]' \
+ "(--help --wordbreak)"--wordbreak'[Attempt to break lines on word boundaries]' \
+ "(--help --origbreak)"--origbreak'[Attempt to break when the original comment text is detected]' \
+ "(--help --indent)"--indent'[NUM Number of spaces to indent]:number:' \
+ "(--help -W --width)"{-W,--width}'[NUM Width of lines]:number:' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:prefix:' \
+ '2:text:' \
+ '3::origtext:'
+
+ ;;
+ (test-commit-warning)
+ _arguments \
+ "(--help --no-settings)"--no-settings'[Do not consider any glob settings]' \
+ "(--help -v --verbose)"{-v,--verbose}'[Show per-file results for all pre-commit checks]' \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-compress)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:input file:_files' \
+ '2:output file:_files'
+
+ ;;
+ (test-compress-2)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:input file 1:_files' \
+ '2:input file 2:_files' \
+ '3:output file:_files'
+
+ ;;
+ (test-contains-selector)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:file:_files' \
+ '2:css selector:'
+
+ ;;
+ (test-content-deltify)
+ _arguments \
+ "(--help --force)"--force'[]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:rid:' \
+ '*:src id:'
+
+ ;;
+ (test-content-erase)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '*:rid:'
+
+ ;;
+ (test-content-put)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:file:_files'
+
+ ;;
+ (test-content-rawget)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-content-undelta)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:record id:'
+
+ ;;
+ (test-convert-stext)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:file:_files' \
+ '2:mimetype:'
+
+ ;;
+ (test-create-clusters)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-crosslink)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:record id:'
+
+ ;;
+ (test-cycle-compress)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-database-names)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-date-format)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '*:date string:'
+
+ ;;
+ (test-db-exec-error)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-decode-email)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:file:_files'
+
+ ;;
+ (test-decode64)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:string:'
+
+ ;;
+ (test-delta)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:file:_files' \
+ '2:file:_files'
+
+ ;;
+ (test-delta-analyze)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:file:_files' \
+ '2:file:_files'
+
+ ;;
+ (test-delta-apply)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:file:_files' \
+ '2:delta:_files'
+
+ ;;
+ (test-delta-create)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:file:_files' \
+ '2:file:_files' \
+ '3:delta:_files'
+
+ ;;
+ (test-describe-artifacts)
+ _arguments \
+ "(--help --from)"--from'[S An artifact]:artifact:' \
+ "(--help --count)"--count'[N Number of artifacts]:number:' \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-detach)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1::fossils:($(__fossil_repos))'
+
+ ;;
+ (test-diff)
+ _arguments \
+ ${_fossil_diff_options[@]} \
+ '1:file 1:_files' \
+ '2:file 2:_files'
+
+ ;;
+ (test-dir-size)
+ _arguments \
+ "(--help --nodots)"--nodots'[Omit files that begin with '"'"'.'"'"']' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:directory:_files -/' \
+ '2::glob pattern:'
+
+ ;;
+ (test-echo)
+ _arguments \
+ "(--help --hex)"--hex'[Show the output as hexadecimal]' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:args:'
+
+ ;;
+ (test-emailblob-refcheck)
+ _arguments \
+ "(--help --repair)"--repair'[Fix up the enref field]' \
+ "(--help --full)"--full'[Give a full report]' \
+ "(--help --clean)"--clean'[Used with --repair, removes entries with enref==0]' \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-encode64)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:string:'
+
+ ;;
+ (test-escaped-arg)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '*:args:'
+
+ ;;
+ (test-etag)
+ _arguments \
+ "(--help --key)"--key'[KEYNUM]:key number:' \
+ "(--help --hash)"--hash'[HASH]:hash:' \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-file-copy)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:source:_files' \
+ '2:destination:_files'
+
+ ;;
+ (test-file-environment)
+ _arguments \
+ "(--help --allow-symlinks)"--allow-symlinks'[BOOL Temporarily turn allow-symlinks on/off]:bool:(yes no)' \
+ "(--help --open-config)"--open-config'[Open the configuration database first]' \
+ "(--help --slash)"--slash'[Trailing slashes, if any, are retaine]' \
+ "(--help --reset)"--reset'[Reset cached stat() info for each file]' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (test-fileage)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:checkin:'
+
+ ;;
+ (test-filezip)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-find-mx)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '*:domain:'
+
+ ;;
+ (test-find-pivot)
+ _arguments \
+ "(--help --ignore-merges)"--ignore-merges'[Ignore merges for discovering name pivots]' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:args:'
+
+ ;;
+ (test-fingerprint)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1::rcvid:'
+
+ ;;
+ (test-forumthread)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:thread id:'
+
+ ;;
+ (test-fossil-system)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-fuzz)
+ _arguments \
+ "(--help --type)"--type'[TYPE]:type:(wiki markdown artifact)' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (test-glob)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:pattern:' \
+ '2:string:'
+
+ ;;
+ (test-grep)
+ _arguments \
+ "(--help -i --ignore-case)"{-i,--ignore-case}'[Ignore case]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:regexp:' \
+ '*:files:_files'
+
+ ;;
+ (test-gzip)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:file:_files'
+
+ ;;
+ (test-hash-color)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '*:tags:($(__fossil_tags))'
+
+ ;;
+ (test-hash-passwords)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:fossils:($(__fossil_repos))'
+
+ ;;
+ (test-html-tidy)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-html-to-text)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (test-html-tokenize)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-http)
+ _arguments \
+ "(--help --th-trace)"--th-trace'[Trace TH1 execution (for debugging purposes)]' \
+ "(--help --usercap)"--usercap'[CAP user capability string]:capability string:' \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-httpmsg)
+ _arguments \
+ "(--help --compress)"--compress'[Use ZLIB compression on the payload]' \
+ "(--help --mimetype)"--mimetype'[TYPE Mimetype of the payload]:mimetype:' \
+ "(--help --out)"--out'[FILE Store the reply in FILE]:file:_files' \
+ "(--help -v)"-v'[Verbose output]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:url:__fossil_urls' \
+ '2::payload:'
+
+ ;;
+ (test-integrity)
+ _arguments \
+ "(--help -d --db-only)"{-d,--db-only}'[Run "PRAGMA integrity_check" on the database only]' \
+ "(--help --parse)"--parse'[Parse all manifests, wikis, tickets, events, etc]' \
+ "(--help -q --quick)"{-q,--quick}'[Run "PRAGMA quick_check" on the database only]' \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-is-reserved-name|test-is-ckout-db)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (test-ishuman)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-isspace)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-leaf-ambiguity)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '*:names:'
+
+ ;;
+ (test-list-page)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:directory:_files -/'
+
+ ;;
+ (test-list-webpage)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-loadavg)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-looks-like-utf)
+ _arguments \
+ "(--help -n --limit)"{-n,--limit}'[NUM Repeat looks-like function NUM times]:number:' \
+ "(--help --utf8)"--utf8'[Ignoring BOM and file size, force UTF-8 checking]' \
+ "(--help --utf16)"--utf16'[Ignoring BOM and file size, force UTF-16 checking]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:file:_files'
+
+ ;;
+ (test-mailbox-hashname)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '*:human name:'
+
+ ;;
+ (test-markdown-render)
+ _arguments \
+ "(--help --safe)"--safe'[Restrict the output to use only "safe" HTML]' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (test-match)
+ _arguments \
+ "(--help --begin)"--begin'[TEXT Text to insert before each match]:text:' \
+ "(--help --end)"--end'[TEXT Text to insert after each match]:text:' \
+ "(--help --gap)"--gap'[TEXT Text to indicate elided content]:text:' \
+ "(--help --html)"--html'[Input is HTML]' \
+ "(--help --static)"--static'[Use the static Search object]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:search string:' \
+ '*:files:_files'
+
+ ;;
+ (test-mimetype)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (test-missing)
+ _arguments \
+ "(--help --notshunned)"--notshunned'[Do not report shunned artifacts]' \
+ "(--help --quiet)"--quiet'[Only show output if there are errors]' \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-move-repository)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:pathname:_files'
+
+ ;;
+ (test-name-changes)
+ _arguments \
+ "(--help --debug)"--debug'[Enable debugging]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:version 1:' \
+ '2:version 2:'
+
+ ;;
+ (test-name-to-id)
+ _arguments \
+ "(--help --count)"--count'[N Repeat the conversion N times]:number:' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:name:'
+
+ ;;
+ (test-obscure)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '*:args:'
+
+ ;;
+ (test-orphans)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-parse-all-blobs)
+ _arguments \
+ "(--help --limit)"--limit'[N Parse no more than N blobs]:number:' \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-parse-manifest)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:file:_files' \
+ '2::n:'
+
+ ;;
+ (test-phantoms)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-process-id)
+ _arguments \
+ "(--help --sleep)"--sleep'[N Sleep for N seconds before exiting]:number:' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:process id:'
+
+ ;;
+ (test-prompt-password)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:prompt:' \
+ '2:verify:(0 1 2)'
+
+ ;;
+ (test-prompt-user)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:prompt:'
+
+ ;;
+ (test-random-password)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1::length:'
+
+ ;;
+ (test-rawdiff)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:file 1:_files' \
+ '2:file 2:_files'
+
+ ;;
+ (test-relative-name)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-reserved-names)
+ _arguments \
+ "(--help -omitrepo)"-omitrepo'[]' \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-safe-html)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (test-sanitize-name)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '*:args:'
+
+ ;;
+ (test-search-stext)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:type:(c d e t w)' \
+ '2:rid:' \
+ '3:name:'
+
+ ;;
+ (test-set-mtime)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:file:_files' \
+ '2:date/time:'
+
+ ;;
+ (test-shortest-path)
+ _arguments \
+ "(--help --no-merge)"--no-merge'[Follow only direct parent-child paths]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:version 1:' \
+ '2:version 2:'
+
+ ;;
+ (test-simplify-name)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (test-smtp-probe)
+ _arguments \
+ "(--help --direct)"--direct'[Use DOMAIN directly without going through MX]' \
+ "(--help --port)"--port'[N Talk on TCP port N]:number:' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:domain:' \
+ '2::me:'
+
+ ;;
+ (test-smtp-send)
+ _arguments \
+ "(--help --direct)"--direct'[Bypass MX lookup]' \
+ "(--help --relayhost)"--relayhost'[HOST Use HOST as relay for delivery]:host:' \
+ "(--help --port)"--port'[Use TCP port N instead of 25]:number:' \
+ "(--help --trace)"--trace'[Show the SMTP conversation on the console]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:email:_files' \
+ '2:from:' \
+ '*:to:'
+
+ ;;
+ (test-smtp-senddata)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:file:_files'
+
+ ;;
+ (test-subtree)
+ _arguments \
+ "(--help --branch)"--branch'[BRANCH Include only check-ins on BRANCH]:branch:($(__fossil_branches))' \
+ "(--help --from)"--from'[TAG Start the subtree at TAG]:tag:($(__fossil_tags))' \
+ "(--help --to)"--to'[TAG End the subtree at TAG]:tag:($(__fossil_tags))' \
+ "(--help --checkin)"--checkin'[TAG The subtree is the single check-in TAG]:tag:($(__fossil_tags))' \
+ "(--help --all)"--all'[Include FILE and TAG artifacts]' \
+ "(--help --exclusive)"--exclusive'[Include FILES exclusively on check-ins]' \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-tag)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:tag:($(__fossil_tags))' \
+ '2:artifact id:' \
+ '3::value:'
+
+ ;;
+ (test-tarball)
+ _arguments \
+ "(--help -h --dereference)"{-h,--dereference}'[Follow symlinks; archive the files they point to]' \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-tempname)
+ _arguments \
+ "(--help --time)"--time'[SUFFIX Generate names based on the time of the day]:suffix:' \
+ "(--help --tag)"--tag'[NAME Try to use NAME as the differentiator]:name:' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:basename:'
+
+ ;;
+ (test-terminal-size)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-th-eval)
+ _arguments \
+ "(--help --cgi)"--cgi'[Include a CGI response header in the output]' \
+ "(--help --http)"--http'[Include an HTTP response header in the output]' \
+ "(--help --open-config)"--open-config'[Open the configuration database]' \
+ "(--help --set-anon-caps)"--set-anon-caps'[Set anonymous login capabilities]' \
+ "(--help --set-user-caps)"--set-user-caps'[Set user login capabilities]' \
+ "(--help --th-trace)"--th-trace'[Trace TH1 execution]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:script:_files'
+
+ ;;
+ (test-th-render)
+ _arguments \
+ "(--help --cgi)"--cgi'[Include a CGI response header in the output]' \
+ "(--help --http)"--http'[Include an HTTP response header in the output]' \
+ "(--help --open-config)"--open-config'[Open the configuration database]' \
+ "(--help --set-anon-caps)"--set-anon-caps'[Set anonymous login capabilities]' \
+ "(--help --set-user-caps)"--set-user-caps'[Set user login capabilities]' \
+ "(--help --th-trace)"--th-trace'[Trace TH1 execution]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:file:_files'
+
+ ;;
+ (test-th-source)
+ _arguments \
+ "(--help --cgi)"--cgi'[Include a CGI response header in the output]' \
+ "(--help --http)"--http'[Include an HTTP response header in the output]' \
+ "(--help --open-config)"--open-config'[Open the configuration database]' \
+ "(--help --set-anon-caps)"--set-anon-caps'[Set anonymous login capabilities]' \
+ "(--help --set-user-caps)"--set-user-caps'[Set user login capabilities]' \
+ "(--help --th-trace)"--th-trace'[Trace TH1 execution]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:file:_files'
+
+ ;;
+ (test-ticket-rebuild)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:ticket id:(all)'
+
+ ;;
+ (test-timespan)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:timestamp:'
+
+ ;;
+ (test-timewarp-list)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (test-topological-sort)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-tree-name)
+ _arguments \
+ "(--help --absolute)"--absolute'[Return an absolute path instead of a relative one]' \
+ "(--help --case-sensitive)"--case-sensitive'[BOOL Enable or disable case-sensitive filenames]:bool:(yes no)' \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-unclustered)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-uncompress)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:in:_files' \
+ '2:out:_files'
+
+ ;;
+ (test-unsent)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-urlparser)
+ _arguments \
+ "(--help --remember)"--remember'[Store results in last-sync-url]' \
+ "(--help --prompt-pw)"--prompt-pw'[Prompt for password if missing]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:url:__fossil_urls'
+
+ ;;
+ (test-usernames)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-valid-for-windows)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (test-var-get)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:var:' \
+ '2::file:_files'
+
+ ;;
+ (test-var-list)
+ _arguments \
+ "(--help --unset)"--unset'[Delete entries instead of displaying them]' \
+ "(--help --mtime)"--mtime'[Show last modification time]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1::pattern:'
+
+ ;;
+ (test-var-set)
+ _arguments \
+ "(--help --blob --file)"--blob'[FILE Binary file to read from]:file:_files' \
+ "(--help --file --blob)"--file'[FILE File to read from]:file:_files' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:var:' \
+ '2::value:'
+
+ ;;
+ (test-verify-all)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-whatis-all)
+ _arguments \
+ '(- *)'--help'[Show help and exit]'
+
+ ;;
+ (test-which)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '*:executable name:'
+
+ ;;
+ (test-wiki-relink)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:wiki page:($(__fossil_wiki_pages))'
+
+ ;;
+ (test-wiki-render)
+ _arguments \
+ "(--help --buttons)"--buttons'[Set the WIKI_BUTTONS flag]' \
+ "(--help --htmlonly)"--htmlonly'[Set the WIKI_HTMLONLY flag]' \
+ "(--help --linksonly)"--linksonly'[Set the WIKI_LINKSONLY flag]' \
+ "(--help --nobadlinks)"--nobadlinks'[Set the WIKI_NOBADLINKS flag]' \
+ "(--help --inline)"--inline'[Set the WIKI_INLINE flag]' \
+ "(--help --noblock)"--noblock'[Set the WIKI_NOBLOCK flag]' \
+ '(- *)'--help'[Show help and exit]' \
+ '1:file:_files'
+
+ ;;
+ (test-without-rowid)
+ _arguments \
+ "(--help -n --dryrun)"{-n,--dryrun}'[Just print what would happen]' \
+ '(- *)'--help'[Show help and exit]' \
+ '*:files:_files'
+
+ ;;
+ (test-xfer)
+ _arguments \
+ '(- *)'--help'[Show help and exit]' \
+ '1:xfer message:'
+
+ ;;
+ esac
+}
+
+################################################################################
+_fossil
+