From ea78d0d4ae47a3d6c5fa56eb6d8b2b4129572366 Mon Sep 17 00:00:00 2001 From: Oliver Kiddle Date: Fri, 18 Oct 2019 22:52:32 +0200 Subject: c.f. 44831: remove completion functions included in upstream projects --- Completion/Unix/Command/_hg | 1077 -------------------------------------- Completion/Unix/Command/_notmuch | 81 --- 2 files changed, 1158 deletions(-) delete mode 100644 Completion/Unix/Command/_hg delete mode 100644 Completion/Unix/Command/_notmuch (limited to 'Completion/Unix/Command') diff --git a/Completion/Unix/Command/_hg b/Completion/Unix/Command/_hg deleted file mode 100644 index 7b72605b3..000000000 --- a/Completion/Unix/Command/_hg +++ /dev/null @@ -1,1077 +0,0 @@ -#compdef hg - -# Zsh completion script for mercurial. Rename this file to _hg and copy -# it into your zsh function path (/usr/share/zsh/site-functions for -# instance) -# -# If you do not want to install it globally, you can copy it somewhere -# else and add that directory to $fpath. This must be done before -# compinit is called. If the file is copied to ~/.zsh.d, your ~/.zshrc -# file could look like this: -# -# fpath=("$HOME/.zsh.d" $fpath) -# autoload -U compinit -# compinit -# -# Copyright (C) 2005, 2006 Steve Borho -# Copyright (C) 2006-9 Brendan Cully -# -# Permission is hereby granted, without written agreement and without -# licence or royalty fees, to use, copy, modify, and distribute this -# software and to distribute modified versions of this software for any -# purpose, provided that the above copyright notice and the following -# two paragraphs appear in all copies of this software. -# -# In no event shall the authors be liable to any party for direct, -# indirect, special, incidental, or consequential damages arising out of -# the use of this software and its documentation, even if the authors -# have been advised of the possibility of such damage. -# -# The authors specifically disclaim any warranties, including, but not -# limited to, the implied warranties of merchantability and fitness for -# a particular purpose. The software provided hereunder is on an "as -# is" basis, and the authors have no obligation to provide maintenance, -# support, updates, enhancements, or modifications. - -emulate -LR zsh -setopt extendedglob - -local curcontext="$curcontext" state line -typeset -A _hg_cmd_globals - -_hg() { - local cmd _hg_root - integer i=2 - _hg_cmd_globals=() - - while (( i < $#words )) - do - case "$words[$i]" in - -R|--repository) - eval _hg_root="$words[$i+1]" - _hg_cmd_globals+=("$words[$i]" "$_hg_root") - (( i += 2 )) - continue - ;; - -R*) - _hg_cmd_globals+="$words[$i]" - eval _hg_root="${words[$i]#-R}" - (( i++ )) - continue - ;; - --cwd|--config) - # pass along arguments to hg completer - _hg_cmd_globals+=("$words[$i]" "$words[$i+1]") - (( i += 2 )) - continue - ;; - -*) - # skip option - (( i++ )) - continue - ;; - esac - if [[ -z "$cmd" ]] - then - cmd="$words[$i]" - words[$i]=() - (( CURRENT-- )) - fi - (( i++ )) - done - - if [[ -z "$cmd" ]] - then - _arguments -s -S : $_hg_global_opts \ - ':mercurial command:_hg_commands' - return - fi - - # resolve abbreviations and aliases - if ! (( $+functions[_hg_cmd_${cmd}] )) - then - local cmdexp - (( $#_hg_cmd_list )) || _hg_get_commands - - cmdexp=$_hg_cmd_list[(r)${cmd}*] - if [[ $cmdexp == $_hg_cmd_list[(R)${cmd}*] ]] - then - # might be nice to rewrite the command line with the expansion - cmd="$cmdexp" - fi - if [[ -n $_hg_alias_list[$cmd] ]] - then - cmd=$_hg_alias_list[$cmd] - fi - fi - - curcontext="${curcontext%:*:*}:hg-${cmd}:" - - zstyle -s ":completion:$curcontext:" cache-policy update_policy - - if [[ -z "$update_policy" ]] - then - zstyle ":completion:$curcontext:" cache-policy _hg_cache_policy - fi - - if (( $+functions[_hg_cmd_${cmd}] )) - then - _hg_cmd_${cmd} - else - # complete unknown commands normally - _arguments -s -S : $_hg_global_opts \ - '*:files:_hg_files' - fi -} - -_hg_cache_policy() { - typeset -a old - - # cache for a minute - old=( "$1"(mm+10) ) - (( $#old )) && return 0 - - return 1 -} - -_hg_get_commands() { - typeset -ga _hg_cmd_list - typeset -gA _hg_alias_list - local hline cmd cmdalias - - _call_program hg hg debugcomplete -v | while read -A hline - do - cmd=$hline[1] - _hg_cmd_list+=($cmd) - - for cmdalias in $hline[2,-1] - do - _hg_cmd_list+=($cmdalias) - _hg_alias_list+=($cmdalias $cmd) - done - done -} - -_hg_commands() { - (( $#_hg_cmd_list )) || _hg_get_commands - _describe -t commands 'mercurial command' _hg_cmd_list -} - -_hg_revrange() { - compset -P 1 '*:' - _hg_tags "$@" -} - -_hg_tags_internal() { - local -a expl - typeset -a hgtags - hgtags=( ${(f)"$(_hg_cmd tags -q 2>/dev/null)"} ) - _wanted tags expl 'tags' compadd -a - hgtags -} - -_hg_bookmarks_internal() { - local -a expl - typeset -a hgbookmarks - hgbookmarks=( ${(f)"$(_hg_cmd bookmarks -q 2>/dev/null)"} ) - _wanted bookmarks expl 'bookmarks' compadd -a - hgbookmarks -} - -_hg_branches_internal() { - local -a expl - typeset -a hgbranches - hgbranches=( ${(f)"$(_hg_cmd branches -q 2>/dev/null)"} ) - _wanted branches expl 'branches' compadd -a - hgbranches -} - -_hg_tags() { - _alternative \ - 'bookmarks:bookmark:_hg_bookmarks_internal' \ - 'tags:tag:_hg_tags_internal' -} - -# likely merge candidates -_hg_mergerevs() { - typeset -a heads - local revset='sort(head() and not ., -rev)' - - heads=(${(f)"$(_hg_cmd log -r '$revset' --template '{rev}\\n')"}) - (( $#heads )) && _describe -t heads 'heads' heads -} - -_hg_files() { - if [[ -n "$_hg_root" ]] - then - [[ -d "$_hg_root/.hg" ]] || return - case "$_hg_root" in - /*) - _files -W $_hg_root - ;; - *) - _files -W $PWD/$_hg_root - ;; - esac - else - _files - fi -} - -_hg_status() { - [[ -d $PREFIX ]] || PREFIX=$PREFIX:h - status_files=(${(ps:\0:)"$(_hg_cmd status -0n$1 ./$PREFIX 2>/dev/null)"}) -} - -_hg_unknown() { - typeset -a status_files - _hg_status u - _wanted files expl 'unknown files' _multi_parts / status_files -} - -_hg_missing() { - typeset -a status_files - _hg_status d - _wanted files expl 'missing files' _multi_parts / status_files -} - -_hg_modified() { - typeset -a status_files - _hg_status m - _wanted files expl 'modified files' _multi_parts / status_files -} - -_hg_committable() { - typeset -a status_files - # A file is a candidate for `hg commit` if it is: - # - modified (m), or - # - added (a), or - # - removed (r) - _hg_status mar - _wanted files expl 'committable files' _multi_parts / status_files -} - -_hg_resolve() { - local rstate rpath - - [[ -d $PREFIX ]] || PREFIX=$PREFIX:h - - _hg_cmd resolve -l ./$PREFIX 2> /dev/null | while read rstate rpath - do - [[ $rstate == 'R' ]] && resolved_files+=($rpath) - [[ $rstate == 'U' ]] && unresolved_files+=($rpath) - done -} - -_hg_resolved() { - typeset -a resolved_files unresolved_files - _hg_resolve - _wanted files expl 'resolved files' _multi_parts / resolved_files -} - -_hg_unresolved() { - typeset -a resolved_files unresolved_files - _hg_resolve - _wanted files expl 'unresolved files' _multi_parts / unresolved_files -} - -_hg_config() { - typeset -a items - items=(${${(%f)"$(_call_program hg hg showconfig)"}%%\=*}) - (( $#items )) && _describe -t config 'config item' items -} - -_hg_internal_merge_tools=( - \\:dump \\:fail \\:local \\:merge \\:merge-local \\:merge-other \\:merge3 - \\:other \\:prompt \\:tagmerge \\:union -) - -_hg_merge_tools() { - typeset -a external_tools - _describe -t internal_tools 'internal merge tools' _hg_internal_merge_tools - external_tools=(${(f)"$(_hg_cmd showconfig merge-tools | cut -d . -f 2)"}) - (( $#external_tools )) && _describe -t external_tools 'external merge tools' external_tools -} - -_hg_addremove() { - _alternative 'files:unknown files:_hg_unknown' \ - 'files:missing files:_hg_missing' -} - -_hg_ssh_urls() { - if [[ -prefix */ ]] - then - if zstyle -T ":completion:${curcontext}:files" remote-access - then - local host=${PREFIX%%/*} - typeset -a remdirs - compset -p $(( $#host + 1 )) - local rempath=${(M)PREFIX##*/} - local cacheid="hg:${host}-${rempath//\//_}" - cacheid=${cacheid%[-_]} - compset -P '*/' - if _cache_invalid "$cacheid" || ! _retrieve_cache "$cacheid" - then - remdirs=(${${(M)${(f)"$(_call_program files ssh -a -x $host ls -1FL "${(q)rempath}" 2> /dev/null)"}##*/}%/}) - _store_cache "$cacheid" remdirs - fi - _describe -t directories 'remote directory' remdirs -S/ - else - _message 'remote directory' - fi - else - if compset -P '*@' - then - _hosts -S/ - else - _alternative 'hosts:remote host name:_hosts -S/' \ - 'users:user:_users -S@' - fi - fi -} - -_hg_urls() { - if compset -P bundle:// - then - _files - elif compset -P ssh:// - then - _hg_ssh_urls - elif [[ -prefix *: ]] - then - _urls - else - local expl - compset -S '[^:]*' - _wanted url-schemas expl 'URL schema' compadd -S '' - \ - http:// https:// ssh:// bundle:// - fi -} - -_hg_paths() { - typeset -a paths pnames - _hg_cmd paths 2> /dev/null | while read -A pnames - do - paths+=($pnames[1]) - done - (( $#paths )) && _describe -t path-aliases 'repository alias' paths -} - -_hg_remote() { - _alternative 'path-aliases:repository alias:_hg_paths' \ - 'directories:directory:_files -/' \ - 'urls:URL:_hg_urls' -} - -_hg_clone_dest() { - _alternative 'directories:directory:_files -/' \ - 'urls:URL:_hg_urls' -} - -# Common options -_hg_global_opts=( - '(--repository -R)'{-R+,--repository=}'[repository root directory or name of overlay bundle file]:repository:_files -/' - '--cwd=[change working directory]:new working directory:_files -/' - '(--noninteractive -y)'{-y,--noninteractive}'[do not prompt, automatically pick the first choice for all prompts]' - '(--verbose -v)'{-v,--verbose}'[enable additional output]' - '*--config[set/override config option]:defined config items:_hg_config' - '(--quiet -q)'{-q,--quiet}'[suppress output]' - '(--help -h)'{-h,--help}'[display help and exit]' - '--debug[enable debugging output]' - '--debugger[start debugger]' - '--encoding=[set the charset encoding]:encoding' - '--encodingmode=[set the charset encoding mode]:encoding mode' - '--traceback[always print a traceback on exception]' - '--time[time how long the command takes]' - '--profile[print command execution profile]' - '--version[output version information and exit]' - '--hidden[consider hidden changesets]' -) - -_hg_pat_opts=( - '*'{-I+,--include=}'[include names matching the given patterns]:dir:_files -W $(_hg_cmd root) -/' - '*'{-X+,--exclude=}'[exclude names matching the given patterns]:dir:_files -W $(_hg_cmd root) -/') - -_hg_diff_opts=( - '(--text -a)'{-a,--text}'[treat all files as text]' - '(--git -g)'{-g,--git}'[use git extended diff format]' - '--nodates[omit dates from diff headers]' -) - -_hg_mergetool_opts=( - '(--tool -t)'{-t+,--tool=}'[specify merge tool]:merge tool:_hg_merge_tools' -) - -_hg_dryrun_opts=( - '(--dry-run -n)'{-n,--dry-run}'[do not perform actions, just print output]') - -_hg_template_opts=( - '--template[display with template]:template' -) - -_hg_commit_opts=( - '(-m --message -l --logfile --edit -e)'{-e,--edit}'[edit commit message]' - '(-e --edit -l --logfile --message -m)'{-m+,--message=}'[use as commit message]:message:' - '(-e --edit -m --message --logfile -l)'{-l+,--logfile=}'[read the commit message from ]:log file:_files') - -_hg_remote_opts=( - '(--ssh -e)'{-e+,--ssh=}'[specify ssh command to use]:command' - '--remotecmd=[specify hg command to run on the remote side]:remote command' - '--insecure[do not verify server certificate (ignoring web.cacerts config)]' -) - -_hg_subrepos_opts=( - '(--subrepos -S)'{-S,--subrepos}'[recurse into subrepositories]' -) - -_hg_cmd() { - _call_program hg hg --config ui.verbose=0 --config defaults."$1"= \ - "$_hg_cmd_globals[@]" "$@" 2> /dev/null -} - -_hg_cmd_add() { - _arguments -s -S : $_hg_global_opts $_hg_pat_opts $_hg_dryrun_opts $_hg_subrepos_opts \ - '*:unknown files:_hg_unknown' -} - -_hg_cmd_addremove() { - _arguments -s -S : $_hg_global_opts $_hg_pat_opts $_hg_dryrun_opts $_hg_subrepos_opts \ - '(--similarity -s)'{-s+,--similarity=}'[guess renamed files by similarity (0<=s<=100)]:similarity' \ - '*:unknown or missing files:_hg_addremove' -} - -_hg_cmd_annotate() { - _arguments -s -S : $_hg_global_opts $_hg_pat_opts \ - '(--rev -r)'{-r+,--rev=}'[annotate the specified revision]:revision:_hg_tags' \ - "--no-follow[don't follow copies and renames]" \ - '(--text -a)'{-a,--text}'[treat all files as text]' \ - '(--user -u)'{-u,--user}'[list the author (long with -v)]' \ - '(--file -f)'{-f,--file}'[list the filename]' \ - '(--date -d)'{-d,--date}'[list the date (short with -q)]' \ - '(--number -n)'{-n,--number}'[list the revision number (default)]' \ - '(--changeset -c)'{-c,--changeset}'[list the changeset]' \ - '(--line-number -l)'{-l,--line-number}'[show line number at the first appearance]' \ - '*:files:_hg_files' -} - -_hg_cmd_archive() { - _arguments -s -S : $_hg_global_opts $_hg_pat_opts $_hg_subrepos_opts \ - '--no-decode[do not pass files through decoders]' \ - '(--prefix -p)'{-p+,--prefix=}'[directory prefix for files in archive]:prefix' \ - '(--rev -r)'{-r+,--rev=}'[revision to distribute]:revision:_hg_tags' \ - '(--type -t)'{-t+,--type=}'[type of distribution to create]:archive type:(files tar tbz2 tgz uzip zip)' \ - '*:destination:_files' -} - -_hg_cmd_backout() { - _arguments -s -S : $_hg_global_opts $_hg_mergetool_opts $_hg_pat_opts \ - '--merge[merge with old dirstate parent after backout]' \ - '(--date -d)'{-d+,--date=}'[record the specified date as commit date]:date' \ - '--parent[parent to choose when backing out merge]' \ - '(--user -u)'{-u+,--user=}'[record the specified user as committer]:user' \ - '(--rev -r)'{-r+,--rev=}'[revision]:revision:_hg_tags' \ - '(--message -m)'{-m+,--message=}'[specify commit message]:text' \ - '(--logfile -l)'{-l+,--logfile=}'[read commit message from specified file]:log file:_files' -} - -_hg_cmd_bisect() { - _arguments -s -S : $_hg_global_opts \ - '(-)'{-r,--reset}'[reset bisect state]' \ - '(--extend -e)'{-e,--extend}'[extend the bisect range]' \ - '(--good -g --bad -b --skip -s --reset -r)'{-g,--good}'[mark changeset good]'::revision:_hg_tags \ - '(--good -g --bad -b --skip -s --reset -r)'{-b,--bad}'[mark changeset bad]'::revision:_hg_tags \ - '(--good -g --bad -b --skip -s --reset -r)'{-s,--skip}'[skip testing changeset]' \ - '(--command -c --noupdate -U)'{-c+,--command=}'[use command to check changeset state]':commands:_command_names \ - '(--command -c --noupdate -U)'{-U,--noupdate}'[do not update to target]' -} - -_hg_cmd_bookmarks() { - _arguments -s -S : $_hg_global_opts \ - '(--force -f)'{-f,--force}'[force]' \ - '(--rev -r --delete -d --rename -m)'{-r+,--rev=}'[set bookmark at revision]:revision:_hg_tags' \ - '(--rev -r --delete -d --rename -m)'{-d,--delete}'[delete a given bookmark]' \ - '(--rev -r --delete -d --rename -m)'{-m+,--rename=}'[rename given bookmark]:bookmark:_hg_bookmarks_internal' \ - '(--inactive -i)'{-i,--inactive}'[mark a bookmark inactive]' \ - ':bookmark:_hg_bookmarks_internal' -} - -_hg_cmd_branch() { - _arguments -s -S : $_hg_global_opts \ - '(--force -f)'{-f,--force}'[set branch name even if it shadows an existing branch]' \ - '(--clean -C)'{-C,--clean}'[reset branch name to parent branch name]' -} - -_hg_cmd_branches() { - _arguments -s -S : $_hg_global_opts \ - '(--closed -c)'{-c,--closed}'[show normal and closed branches]' -} - -_hg_cmd_bundle() { - _arguments -s -S : $_hg_global_opts $_hg_remote_opts \ - '(--force -f)'{-f,--force}'[run even when the destination is unrelated]' \ - '(2)*--base[a base changeset assumed to be available at the destination]:revision:_hg_tags' \ - '*'{-b+,--branch=}'[a specific branch you would like to bundle]:branch:_hg_branches_internal' \ - '*'{-r+,--rev=}'[a changeset intended to be added to the destination]:revision:_hg_tags' \ - '--all[bundle all changesets in the repository]' \ - '--type[bundle compression type to use (default: bzip2)]:bundle type' \ - ':output file:_files' \ - ':destination repository:_files -/' -} - -_hg_cmd_cat() { - _arguments -s -S : $_hg_global_opts $_hg_pat_opts \ - '(--output -o)'{-o+,--output=}'[print output to file with formatted name]:format string' \ - '(--rev -r)'{-r+,--rev=}'[revision]:revision:_hg_tags' \ - '--decode[apply any matching decode filter]' \ - '*:file:_hg_files' -} - -_hg_cmd_clone() { - _arguments -s -S : $_hg_global_opts $_hg_remote_opts \ - '(--noupdate -U)'{-U,--noupdate}'[do not update the new working directory]' \ - '(--rev -r)'{-r+,--rev=}'[include the specified changeset]:revision' \ - '--uncompressed[use uncompressed transfer (fast over LAN)]' \ - ':source repository:_hg_remote' \ - ':destination:_hg_clone_dest' -} - -_hg_cmd_commit() { - _arguments -s -S : $_hg_global_opts $_hg_pat_opts $_hg_subrepos_opts \ - '(--addremove -A)'{-A,--addremove}'[mark new/missing files as added/removed before committing]' \ - '(--message -m)'{-m+,--message=}'[specify commit message]:text' \ - '(--logfile -l)'{-l+,--logfile=}'[read commit message from specified file]:log file:_files' \ - '(--date -d)'{-d+,--date=}'[record the specified date as commit date]:date' \ - '(--user -u)'{-u+,--user=}'[record the specified user as committer]:user' \ - '--amend[amend the parent of the working directory]' \ - '--close-branch[mark a branch head as closed]' \ - '(--interactive -i)'{-i,--interactive}'[use interactive mode]' \ - '(--secret -s)'{-s,--secret}'[use the secret phase for committing]' \ - '*:file:_hg_committable' -} - -_hg_cmd_copy() { - _arguments -s -S : $_hg_global_opts $_hg_pat_opts $_hg_dryrun_opts \ - '(--after -A)'{-A,--after}'[record a copy that has already occurred]' \ - '(--force -f)'{-f,--force}'[forcibly copy over an existing managed file]' \ - '*:file:_hg_files' -} - -_hg_cmd_diff() { - local context state state_descr line ret=1 - typeset -A opt_args - - _arguments -s -S : $_hg_global_opts $_hg_pat_opts $_hg_diff_opts $_hg_subrepos_opts \ - '*'{-r+,--rev=}'[revision]:revision:_hg_revrange' \ - '(--show-function -p)'{-p,--show-function}'[show which function each change is in]' \ - '(--ignore-all-space -w)'{-w,--ignore-all-space}'[ignore white space when comparing lines]' \ - '(--ignore-space-change -b)'{-b,--ignore-space-change}'[ignore changes in the amount of white space]' \ - '(--ignore-blank-lines -B)'{-B,--ignore-blank-lines}'[ignore changes whose lines are all blank]' \ - '*:file:->diff_files' && ret=0 - - if [[ $state == 'diff_files' ]] - then - if [[ -n ${opt_args[(I)-r|--rev]} ]] - then - _hg_files && ret=0 - else - _hg_modified && ret=0 - fi - fi - - return ret -} - -_hg_cmd_export() { - _arguments -s -S : $_hg_global_opts $_hg_diff_opts \ - '(--output -o)'{-o+,--output=}'[print output to file with formatted name]:format string' \ - '--switch-parent[diff against the second parent]' \ - '*:revision:_hg_tags' -} - -_hg_cmd_forget() { - _arguments -s -S : $_hg_global_opts $_hg_pat_opts \ - '*:file:_hg_files' -} - -_hg_cmd_grep() { - _arguments -s -S : $_hg_global_opts $_hg_pat_opts \ - '(--print0 -0)'{-0,--print0}'[end filenames with NUL]' \ - '--all[print all revisions with matches]' \ - '(--follow -f)'{-f,--follow}'[follow changeset or file history]' \ - '(--ignore-case -i)'{-i,--ignore-case}'[ignore case when matching]' \ - '(--files-with-matches -l)'{-l,--files-with-matches}'[print only filenames and revs that match]' \ - '(--line-number -n)'{-n,--line-number}'[print matching line numbers]' \ - '*'{-r+,--rev=}'[search in given revision range]:revision:_hg_revrange' \ - '(--user -u)'{-u,--user}'[print user who committed change]' \ - '1:search pattern:' \ - '*:files:_hg_files' -} - -_hg_cmd_heads() { - _arguments -s -S : $_hg_global_opts $_hg_template_opts \ - '(--topo -t)'{-t,--topo}'[show topological heads only]' \ - '(--closed -c)'{-c,--closed}'[show normal and closed branch heads]' \ - '(--rev -r)'{-r+,--rev=}'[show only heads which are descendants of rev]:revision:_hg_tags' -} - -_hg_cmd_help() { - _arguments -s -S : $_hg_global_opts \ - '(--extension -e)'{-e,--extension}'[show only help for extensions]' \ - '(--command -c)'{-c,--command}'[show only help for commands]' \ - '(--keyword -k)'{-k,--keyword}'[show topics matching keyword]' \ - '*:mercurial command:_hg_commands' -} - -_hg_cmd_identify() { - _arguments -s -S : $_hg_global_opts \ - '(--rev -r)'{-r+,--rev=}'[identify the specified rev]:revision:_hg_tags' \ - '(--num -n)'{-n,--num}'[show local revision number]' \ - '(--id -i)'{-i,--id}'[show global revision id]' \ - '(--branch -b)'{-b,--branch}'[show branch]' \ - '(--tags -t)'{-t,--tags}'[show tags]' \ - '(--bookmarks -B)'{-B,--bookmarks}'[show bookmarks]' -} - -_hg_cmd_import() { - _arguments -s -S : $_hg_global_opts \ - '(--strip -p)'{-p+,--strip=}'[directory strip option for patch (default: 1)]:count' \ - '(--message -m)'{-m+,--message=}'[use as commit message]:text:' \ - '(--force -f)'{-f,--force}'[skip check for outstanding uncommitted changes]' \ - '--bypass[apply patch without touching the working directory]' \ - '--no-commit[do not commit, just update the working directory]' \ - '--partial[commit even if some hunks fail]' \ - '--exact[abort if patch would apply lossily]' \ - '--import-branch[use any branch information in patch (implied by --exact)]' \ - '(--date -d)'{-d+,--date=}'[record the specified date as commit date]:date' \ - '(--user -u)'{-u+,--user=}'[record the specified user as committer]:user' \ - '(--similarity -s)'{-s+,--similarity=}'[guess renamed files by similarity (0<=s<=100)]:similarity' \ - '*:patch:_files' -} - -_hg_cmd_incoming() { - _arguments -s -S : $_hg_global_opts $_hg_remote_opts $_hg_template_opts $_hg_subrepos_opts \ - '(--no-merges -M)'{-M,--no-merges}'[do not show merge revisions]' \ - '(--force -f)'{-f,--force}'[run even when the remote repository is unrelated]' \ - '(--patch -p)'{-p,--patch}'[show patch]' \ - '*'{-r+,--rev=}'[a remote changeset intended to be added]:revision:_hg_tags' \ - '(--newest-first -n)'{-n,--newest-first}'[show newest record first]' \ - '--bundle[file to store the bundles into]:bundle file:_files' \ - ':source:_hg_remote' -} - -_hg_cmd_init() { - _arguments -s -S : $_hg_global_opts $_hg_remote_opts \ - ':dir:_files -/' -} - -_hg_cmd_locate() { - _arguments -s -S : $_hg_global_opts $_hg_pat_opts \ - '(--rev -r)'{-r+,--rev=}'[search repository as it stood at revision]:revision:_hg_tags' \ - '(--print0 -0)'{-0,--print0}'[end filenames with NUL, for use with xargs]' \ - '(--fullpath -f)'{-f,--fullpath}'[print complete paths from the filesystem root]' \ - '*:search pattern:_hg_files' -} - -_hg_cmd_log() { - _arguments -s -S : $_hg_global_opts $_hg_pat_opts $_hg_template_opts \ - '(--follow --follow-first -f)'{-f,--follow}'[follow changeset or history]' \ - '(-f --follow)--follow-first[only follow the first parent of merge changesets]' \ - '(--copies -C)'{-C,--copies}'[show copied files]' \ - '*'{-k+,--keyword=}'[search for a keyword]:keyword' \ - '(--limit -l)'{-l+,--limit=}'[limit number of changes displayed]:limit' \ - '*'{-r+,--rev=}'[show the specified revision or revset]:revision:_hg_revrange' \ - '(--no-merges -M)'{-M,--no-merges}'[do not show merges]' \ - '(--only-merges -m)'{-m,--only-merges}'[show only merges]' \ - '(--patch -p)'{-p,--patch}'[show patch]' \ - '*'{-P+,--prune=}'[do not display revision or any of its ancestors]:revision:_hg_tags' \ - '*:files:_hg_files' -} - -_hg_cmd_manifest() { - _arguments -s -S : $_hg_global_opts \ - '--all[list files from all revisions]' \ - ':revision:_hg_tags' -} - -_hg_cmd_merge() { - _arguments -s -S : $_hg_global_opts $_hg_mergetool_opts \ - '(--force -f)'{-f,--force}'[force a merge with outstanding changes]' \ - '(--rev -r 1)'{-r+,--rev=}'[revision to merge]:revision:_hg_mergerevs' \ - '(--preview -P)'{-P,--preview}'[review revisions to merge (no merge is performed)]' \ - ':revision:_hg_mergerevs' -} - -_hg_cmd_outgoing() { - _arguments -s -S : $_hg_global_opts $_hg_remote_opts $_hg_template_opts $_hg_subrepos_opts \ - '(--no-merges -M)'{-M,--no-merges}'[do not show merge revisions]' \ - '(--force -f)'{-f,--force}'[run even when the remote repository is unrelated]' \ - '(--patch -p)'{-p,--patch}'[show patch]' \ - '*'{-r+,--rev=}'[a changeset intended to be included in the destination]:revision:_hg_tags' \ - '(--newest-first -n)'{-n,--newest-first}'[show newest record first]' \ - ':destination:_hg_remote' -} - -_hg_cmd_parents() { - _arguments -s -S : $_hg_global_opts $_hg_template_opts \ - '(--rev -r)'{-r+,--rev=}'[show parents of the specified rev]:revision:_hg_tags' \ - ':last modified file:_hg_files' -} - -_hg_cmd_paths() { - _arguments -s -S : $_hg_global_opts \ - ':path:_hg_paths' -} - -_hg_cmd_phase() { - _arguments -s -S : $_hg_global_opts \ - '(--public -p --draft -d --secret -s)'{-p,--public}'[set changeset phase to public]' \ - '(--public -p --draft -d --secret -s)'{-d,--draft}'[set changeset phase to draft]' \ - '(--public -p --draft -d --secret -s)'{-s,--secret}'[set changeset phase to secret]' \ - '(--force -f)'{-f,--force}'[allow to move boundary backward]' \ - '*'{-r+,--rev=}'[target revision]:revision:_hg_tags' \ - '*:revision:_hg_tags' -} - -_hg_cmd_pull() { - _arguments -s -S : $_hg_global_opts $_hg_remote_opts \ - '(--force -f)'{-f,--force}'[run even when the remote repository is unrelated]' \ - '(--update -u)'{-u,--update}'[update to new tip if changesets were pulled]' \ - '(--rev -r)'{-r+,--rev=}'[a specific revision up to which you would like to pull]:revision' \ - ':source:_hg_remote' -} - -_hg_cmd_push() { - _arguments -s -S : $_hg_global_opts $_hg_remote_opts \ - '(--force -f)'{-f,--force}'[force push]' \ - '*'{-r+,--rev=}'[a changeset intended to be included in the destination]:revision:_hg_tags' \ - '*'{-B,--bookmark=}'[bookmark to push]:bookmark:_hg_bookmarks_internal' \ - '*'{-b,--branch=}'[branch to push]:branch:_hg_branches_internal' \ - '--new-branch[allow pushing a new branch]' \ - ':destination:_hg_remote' -} - -_hg_cmd_remove() { - _arguments -s -S : $_hg_global_opts $_hg_pat_opts $_hg_subrepos_opts \ - '(--after -A)'{-A,--after}'[record delete for missing files]' \ - '(--force -f)'{-f,--force}'[forget added files, delete modified files]' \ - '*:file:_hg_files' -} - -_hg_cmd_rename() { - _arguments -s -S : $_hg_global_opts $_hg_pat_opts $_hg_dryrun_opts \ - '(--after -A)'{-A,--after}'[record a rename that has already occurred]' \ - '(--force -f)'{-f,--force}'[forcibly copy over an existing managed file]' \ - '*:file:_hg_files' -} - -_hg_cmd_resolve() { - local context state state_descr line ret=1 - typeset -A opt_args - - _arguments -s -S : $_hg_global_opts $_hg_mergetool_opts \ - '(--all -a)'{-a,--all}'[select all unresolved files]' \ - '(--no-status -n)'{-n,--no-status}'[hide status prefix]' \ - '(--list -l --mark -m --unmark -u)'{-l,--list}'[list state of files needing merge]:*:merged files:->resolve_files' \ - '(--mark -m --list -l --unmark -u)'{-m,--mark}'[mark files as resolved]:*:unresolved files:_hg_unresolved' \ - '(--unmark -u --list -l --mark -m)'{-u,--unmark}'[mark files as unresolved]:*:resolved files:_hg_resolved' \ - '*:file:_hg_unresolved' && ret=0 - - if [[ $state == 'resolve_files' ]] - then - _alternative 'files:resolved files:_hg_resolved' \ - 'files:unresolved files:_hg_unresolved' && ret=0 - fi - - return ret -} - -_hg_cmd_revert() { - local context state state_descr line ret=1 - typeset -A opt_args - - _arguments -s -S : $_hg_global_opts $_hg_pat_opts $_hg_dryrun_opts \ - '(--all -a :)'{-a,--all}'[revert all changes when no arguments given]' \ - '(--rev -r)'{-r+,--rev=}'[revision to revert to]:revision:_hg_tags' \ - '(--no-backup -C)'{-C,--no-backup}'[do not save backup copies of files]' \ - '(--date -d)'{-d+,--date=}'[tipmost revision matching date]:date' \ - '*:file:->diff_files' && ret=0 - - if [[ $state == 'diff_files' ]] - then - if [[ -n ${opt_args[(I)-r|--rev]} ]] - then - _hg_files && ret=0 - else - typeset -a status_files - _hg_status mard - _wanted files expl 'modified, added, removed or deleted file' _multi_parts / status_files && ret=0 - fi - fi - - return ret -} - -_hg_cmd_serve() { - _arguments -s -S : $_hg_global_opts $_hg_subrepos_opts \ - '(--accesslog -A)'{-A+,--accesslog=}'[name of access log file to write to]:log file:_files' \ - '(--errorlog -E)'{-E+,--errorlog=}'[name of error log file to write to]:log file:_files' \ - '(--daemon -d)'{-d,--daemon}'[run server in background]' \ - '(--port -p)'{-p+,--port=}'[port to listen on (default: 8000)]:listen port' \ - '(--address -a)'{-a+,--address=}'[address to listen on (default: all interfaces)]:interface address' \ - '--prefix[prefix path to serve from (default: server root)]:prefix' \ - '(--name -n)'{-n+,--name=}'[name to show in web pages (default: working directory)]:repository name' \ - '--web-conf=[name of the hgweb config file]:config file:_files' \ - '--pid-file=[name of file to write process ID to]:pid file:_files' \ - '--cmdserver[for remote clients]' \ - '(--templates -t)'{-t+,--templates=}'[web template directory]:template dir:_files -/' \ - '--style=[web template style]:style' \ - '--stdio[for remote clients]' \ - '(--ipv6 -6)'{-6,--ipv6}'[use IPv6 in addition to IPv4]' \ - '--certificate=[SSL certificate file]:certificate file:_files' -} - -_hg_cmd_showconfig() { - _arguments -s -S : $_hg_global_opts \ - '(--untrusted -u)'{-u,--untrusted}'[show untrusted configuration options]' \ - '(--edit -e)'{-e,--edit}'[edit user config]' \ - '(--local -l --global -g)'{-l,--local}'[edit repository config]' \ - '(--local -l --global -g)'{-g,--global}'[edit global config]' \ - ':config item:_hg_config' -} - -_hg_cmd_status() { - _arguments -s -S : $_hg_global_opts $_hg_pat_opts $_hg_subrepos_opts \ - '(--all -A)'{-A,--all}'[show status of all files]' \ - '(--modified -m)'{-m,--modified}'[show only modified files]' \ - '(--added -a)'{-a,--added}'[show only added files]' \ - '(--removed -r)'{-r,--removed}'[show only removed files]' \ - '(--deleted -d)'{-d,--deleted}'[show only deleted (but tracked) files]' \ - '(--clean -c)'{-c,--clean}'[show only files without changes]' \ - '(--unknown -u)'{-u,--unknown}'[show only unknown (not tracked) files]' \ - '(--ignored -i)'{-i,--ignored}'[show ignored files]' \ - '(--no-status -n)'{-n,--no-status}'[hide status prefix]' \ - '(--copies -C)'{-C,--copies}'[show source of copied files]' \ - '(--print0 -0)'{-0,--print0}'[end filenames with NUL, for use with xargs]' \ - '*--rev=[show difference from revision]:revision:_hg_tags' \ - '--change=[list the changed files of a revision]:revision:_hg_tags' \ - '*:files:_files' -} - -_hg_cmd_summary() { - _arguments -s -S : $_hg_global_opts \ - '--remote[check for push and pull]' -} - -_hg_cmd_tag() { - _arguments -s -S : $_hg_global_opts \ - '(--local -l)'{-l,--local}'[make the tag local]' \ - '(--message -m)'{-m+,--message=}'[message for tag commit log entry]:message' \ - '(--date -d)'{-d+,--date=}'[record the specified date as commit date]:date' \ - '(--user -u)'{-u+,--user=}'[record the specified user as committer]:user' \ - '(--rev -r)'{-r+,--rev=}'[revision to tag]:revision:_hg_tags' \ - '(--force -f)'{-f,--force}'[force tag]' \ - '--remove[remove a tag]' \ - ':tag name:' -} - -_hg_cmd_tip() { - _arguments -s -S : $_hg_global_opts $_hg_template_opts \ - '(--patch -p)'{-p,--patch}'[show patch]' -} - -_hg_cmd_unbundle() { - _arguments -s -S : $_hg_global_opts \ - '(--update -u)'{-u,--update}'[update to new tip if changesets were unbundled]' \ - '*:files:_files' -} - -_hg_cmd_update() { - _arguments -s -S : $_hg_global_opts $_hg_mergetool_opts \ - '(--clean -C)'{-C,--clean}'[discard uncommitted changes (no backup)]' \ - '(--check -c)'{-c,--check}'[require clean working directory]' \ - '(--date -d)'{-d+,--date=}'[tipmost revision matching date]:date' \ - '(--rev -r)'{-r+,--rev=}'[revision]:revision:_hg_tags' \ - ':revision:_hg_tags' -} - -# HGK -_hg_cmd_view() { - _arguments -s -S : $_hg_global_opts \ - '(--limit -l)'{-l+,--limit=}'[limit number of changes displayed]:limit' \ - ':revision range:_hg_tags' -} - -# MQ -_hg_qseries() { - typeset -a patches - patches=(${(f)"$(_hg_cmd qseries 2> /dev/null)"}) - (( $#patches )) && _describe -t hg-patches 'patches' patches -} - -_hg_qapplied() { - typeset -a patches - patches=(${(f)"$(_hg_cmd qapplied 2> /dev/null)"}) - if (( $#patches )) - then - patches+=(qbase qtip) - _describe -t hg-applied-patches 'applied patches' patches - fi -} - -_hg_qunapplied() { - typeset -a patches - patches=(${(f)"$(_hg_cmd qunapplied 2> /dev/null)"}) - (( $#patches )) && _describe -t hg-unapplied-patches 'unapplied patches' patches -} - -# unapplied, including guarded patches -_hg_qdeletable() { - typeset -a unapplied - unapplied=(${(f)"$(_hg_cmd qseries 2> /dev/null)"}) - for p in $(_hg_cmd qapplied) - do - unapplied=(${unapplied:#$p}) - done - - (( $#unapplied )) && _describe -t hg-allunapplied-patches 'all unapplied patches' unapplied -} - -_hg_qguards() { - typeset -a guards - local guard - compset -P "+|-" - _hg_cmd qselect -s 2> /dev/null | while read guard - do - guards+=(${guard#(+|-)}) - done - (( $#guards )) && _describe -t hg-guards 'guards' guards -} - -_hg_qseries_opts=( - '(--summary -s)'{-s,--summary}'[print first line of patch header]') - -_hg_cmd_qapplied() { - _arguments -s -S : $_hg_global_opts $_hg_qseries_opts -} - -_hg_cmd_qdelete() { - _arguments -s -S : $_hg_global_opts \ - '(--keep -k)'{-k,--keep}'[keep patch file]' \ - '*'{-r+,--rev=}'[stop managing a revision]:applied patch:_hg_revrange' \ - '*:unapplied patch:_hg_qdeletable' -} - -_hg_cmd_qdiff() { - _arguments -s -S : $_hg_global_opts $_hg_pat_opts \ - '*:pattern:_hg_files' -} - -_hg_cmd_qfold() { - _arguments -s -S : $_hg_global_opts $_h_commit_opts \ - '(--keep -k)'{-k,--keep}'[keep folded patch files]' \ - '*:unapplied patch:_hg_qunapplied' -} - -_hg_cmd_qgoto() { - _arguments -s -S : $_hg_global_opts \ - '(--force -f)'{-f,--force}'[overwrite any local changes]' \ - ':patch:_hg_qseries' -} - -_hg_cmd_qguard() { - _arguments -s -S : $_hg_global_opts \ - '(--list -l)'{-l,--list}'[list all patches and guards]' \ - '(--none -n)'{-n,--none}'[drop all guards]' \ - ':patch:_hg_qseries' \ - '*:guards:_hg_qguards' -} - -_hg_cmd_qheader() { - _arguments -s -S : $_hg_global_opts \ - ':patch:_hg_qseries' -} - -_hg_cmd_qimport() { - _arguments -s -S : $_hg_global_opts \ - '(--existing -e)'{-e,--existing}'[import file in patch dir]' \ - '(--name -n 2)'{-n+,--name=}'[patch file name]:name:' \ - '(--force -f)'{-f,--force}'[overwrite existing files]' \ - '*'{-r+,--rev=}'[place existing revisions under mq control]:revision:_hg_revrange' \ - '*:patch:_files' -} - -_hg_cmd_qnew() { - _arguments -s -S : $_hg_global_opts $_hg_commit_opts \ - '(--force -f)'{-f,--force}'[import uncommitted changes into patch]' \ - ':patch:' -} - -_hg_cmd_qnext() { - _arguments -s -S : $_hg_global_opts $_hg_qseries_opts -} - -_hg_cmd_qpop() { - _arguments -s -S : $_hg_global_opts \ - '(--all -a :)'{-a,--all}'[pop all patches]' \ - '(--name -n)'{-n+,--name=}'[queue name to pop]:' \ - '(--force -f)'{-f,--force}'[forget any local changes]' \ - ':patch:_hg_qapplied' -} - -_hg_cmd_qprev() { - _arguments -s -S : $_hg_global_opts $_hg_qseries_opts -} - -_hg_cmd_qpush() { - _arguments -s -S : $_hg_global_opts \ - '(--all -a :)'{-a,--all}'[apply all patches]' \ - '(--list -l)'{-l,--list}'[list patch name in commit text]' \ - '(--merge -m)'{-m+,--merge=}'[merge from another queue]:' \ - '(--name -n)'{-n+,--name=}'[merge queue name]:' \ - '(--force -f)'{-f,--force}'[apply if the patch has rejects]' \ - ':patch:_hg_qunapplied' -} - -_hg_cmd_qrefresh() { - _arguments -s -S : $_hg_global_opts $_hg_pat_opts $_hg_commit_opts \ - '(--git -g)'{-g,--git}'[use git extended diff format]' \ - '(--short -s)'{-s,--short}'[short refresh]' \ - '*:files:_hg_files' -} - -_hg_cmd_qrename() { - _arguments -s -S : $_hg_global_opts \ - ':patch:_hg_qseries' \ - ':destination:' -} - -_hg_cmd_qselect() { - _arguments -s -S : $_hg_global_opts \ - '(--none -n :)'{-n,--none}'[disable all guards]' \ - '(--series -s :)'{-s,--series}'[list all guards in series file]' \ - '--pop[pop to before first guarded applied patch]' \ - '--reapply[pop and reapply patches]' \ - '*:guards:_hg_qguards' -} - -_hg_cmd_qseries() { - _arguments -s -S : $_hg_global_opts $_hg_qseries_opts \ - '(--missing -m)'{-m,--missing}'[print patches not in series]' -} - -_hg_cmd_qunapplied() { - _arguments -s -S : $_hg_global_opts $_hg_qseries_opts -} - -_hg_cmd_qtop() { - _arguments -s -S : $_hg_global_opts $_hg_qseries_opts -} - -_hg_cmd_strip() { - _arguments -s -S : $_hg_global_opts \ - '*'{-r+,--rev=}'[revision]:revision:_hg_tags' \ - '(--force -f)'{-f,--force}'[force removal of changesets, discard uncommitted changes (no backup)]' \ - '--no-backup[no backups]' \ - '(--keep -k)'{-k,--keep}'[do not modify working directory during strip]' \ - '*'{-B+,--bookmark=}'[remove revs only reachable from given bookmark]:bookmark:_hg_bookmarks_internal' \ - '*:revision:_hg_tags' -} - -_hg "$@" diff --git a/Completion/Unix/Command/_notmuch b/Completion/Unix/Command/_notmuch deleted file mode 100644 index 6174d2c00..000000000 --- a/Completion/Unix/Command/_notmuch +++ /dev/null @@ -1,81 +0,0 @@ -#compdef notmuch - -_notmuch_commands() -{ - local -a notmuch_commands - notmuch_commands=( - 'setup:interactively set up notmuch for first use' - 'new:find and import any new message to the database' - 'insert:add a new message into the maildir and notmuch database' - 'search:search for messages matching the search terms, display matching threads as results' - 'address:get addresses from messages matching the given search terms' - 'reply:constructs a reply template for a set of messages' - 'show:show all messages matching the search terms' - 'tag:add or remove tags for all messages matching the search terms' - 'dump:creates a plain-text dump of the tags of each message' - 'restore:restores the tags from the given file' - 'compact:compact the notmuch database' - 'reindex:re-index all messages matching the search terms' - 'help:show details on a command' - 'compact:compact the notmuch database' - 'config:access the notmuch configuration file' - 'count:count messages matching the given search terms' - ) - - _describe -t command 'command' notmuch_commands -} - -_notmuch_dump() -{ - _files -} - -_notmuch_help_topics() -{ - local -a notmuch_help_topics - notmuch_help_topics=( - 'search-terms:common search-term syntax' - 'hooks:hooks that will be run before or after certain commands' - 'properties:message property conventions and documentation' - ) - _describe -t notmuch-help-topics 'topic' notmuch_help_topics -} - -_notmuch_help() -{ - _alternative \ - _notmuch_commands \ - _notmuch_help_topics -} - -_notmuch_restore() -{ - _files -} - -_notmuch_search() -{ - _arguments -s : \ - '--max-threads=[display only the first x threads from the search results]:number of threads to show: ' \ - '--first=[omit the first x threads from the search results]:number of threads to omit: ' \ - '--sort=[sort results]:sorting:((newest-first\:"reverse chronological order" oldest-first\:"chronological order"))' -} - -_notmuch() -{ - local ret=1 - if (( CURRENT > 2 )) ; then - local cmd=${words[2]} - curcontext="${curcontext%:*:*}:notmuch-$cmd" - (( CURRENT-- )) - shift words - if ! _call_function ret _notmuch_$cmd; then - _default && ret=0 - fi - return ret - else - _notmuch_commands - fi -} - -_notmuch "$@" -- cgit 1.4.1