From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9121 invoked by alias); 13 Jul 2017 15:48:57 -0000 Mailing-List: contact zsh-workers-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Workers List List-Post: List-Help: X-Seq: 41419 Received: (qmail 609 invoked from network); 13 Jul 2017 15:48:57 -0000 X-Qmail-Scanner-Diagnostics: from nm6-vm2.bullet.mail.ir2.yahoo.com by f.primenet.com.au (envelope-from , uid 7791) with qmail-scanner-2.11 (clamdscan: 0.99.2/21882. spamassassin: 3.4.1. Clear:RC:0(212.82.96.118):SA:0(-3.5/5.0):. Processed in 1.145062 secs); 13 Jul 2017 15:48:57 -0000 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-3.5 required=5.0 tests=FREEMAIL_FROM, RCVD_IN_DNSWL_LOW,RCVD_IN_MSPIKE_H2,SPF_PASS,T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.1 X-Envelope-From: okiddle@yahoo.co.uk X-Qmail-Scanner-Mime-Attachments: | X-Qmail-Scanner-Zip-Files: | Received-SPF: pass (ns1.primenet.com.au: SPF record at _spf.mail.yahoo.com designates 212.82.96.118 as permitted sender) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.co.uk; s=s2048; t=1499960570; bh=2H5da645McRSY1poX/ri3FlCEMRmZNQO3kB9pLNL9BQ=; h=From:To:Subject:Date:From:Subject; b=bK05lSKBtv6xLnpoAO/5EMxjBFA9nZHzdLeoFf9zgBMbRomyn9m7RvAMjWk7QrCviEd6u9nzsDmXBV2i5ya3HwZf+7tabB11vXMFw4pzlps5HOgpKE70tAjXyGzjfGqioAuVuvH+bYiEbeB6DjAKa5iEBctlsG9NfznSJnSQWIEQmA9UK4t8NmWbPN6k2Rb6A6LgRgNM7MgIAZ/ppwhK21vYVdOVU4s4A9VE4or9jrlEbUYSQRfn5c0zp3KgoVSVOKCJ414jhbZw3hwKtXNiBOgXdpX/xOZ1uI+m/I+ZtEnzsOrmgg3enO2P5CzF2XLFvmtLYzb4F75hCknJ1fLo5w== X-Yahoo-Newman-Id: 922137.98415.bm@smtp119.mail.ir2.yahoo.com X-Yahoo-Newman-Property: ymail-3 X-YMail-OSG: IGQKNOgVM1mNkmegjFLqxkrKpel55ajvUgo6I7ZFxo6.SAd bxRd2CbZfz3NKXaWJbZNZq9mg.KePtKhEqYiUkLDfx4WgcQNxKpQCVt314Rh 6rV5xLAHAEDZY8TQLPi7fxJ_eQz1MSfw3691Z3KIpgzrxWgBcB1K_ajEHviC jBE_T_9hc4VyVqg1NBCr19H8GjliigMRmuFJ6u8avuVhT.mp5Fz3yPTyQVzo oxO12Y3k0wDqW.jh2JS4jAUM4iGBrFiTJcJrUn3xwVK_2GgHpxFUgKhJxKt. 71TRq.tq485S9WXGZuOcJCHEust7VeEYdBgh.a78i_YvRJJ.EsoAj7Y5NKjw uGc.jAxkqfANkCFabWtEwsR4GOLFT65kz97IsPMMaZaifdeGox.kLYymqIof E9820Djmx7atEbKQ7uzdpv_c5MNlX78sgN6v5Nq78KwsuI166nkQSVaDgTgu G8drPsABhTEvZsajKjJ4EUumcAxtTsWFV02o440iYsZwhSBBh1UKZyYhX_iY 9Q3kuGBPNxrOAb06Q3Wpe2uzhVi5sjMR1nZ7H2wt1 X-Yahoo-SMTP: opAkk_CswBAce_kJ3nIPlH80cJI- From: Oliver Kiddle To: Zsh workers Subject: PATCH: update git completion through git 2.13.2 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <8626.1499960569.1@thecus.kiddle.eu> Content-Transfer-Encoding: quoted-printable Date: Thu, 13 Jul 2017 17:42:50 +0200 Message-ID: <8627.1499960570@thecus.kiddle.eu> update for a few new options Oliver diff --git a/Completion/Unix/Command/_git b/Completion/Unix/Command/_git index f764daf75..98db5b933 100644 --- a/Completion/Unix/Command/_git +++ b/Completion/Unix/Command/_git @@ -292,7 +292,7 @@ _git-branch () { declare l c m d e = l=3D'--color --no-color -r --remotes -a -v --verbose --abbrev --no-abbr= ev --list --points-at --sort' - c=3D'-l --create-reflog -f --force -t --track --no-track -u --set-upstr= eam --set-upstream-to --unset-upstream --contains --merged --no-merged' + c=3D'-l --create-reflog -f --force -t --track --no-track -u --set-upstr= eam --set-upstream-to --unset-upstream --contains --no-contains --merged -= -no-merged' m=3D'-m --move -M' d=3D'-d --delete -D' e=3D'--edit-description' @@ -341,9 +341,10 @@ _git-branch () { "($l $m $d $e)--no-track[override the branch.autosetupmerge configura= tion variable]" \ "($l $m $d $e -u --set-upstream --set-upstream-to --unset-upstream)"{= -u+,--set-upstream-to=3D}"[set up configuration so that pull merges]:remot= e-branches:__git_remote_branch_names" \ "($l $m $d $e -u --set-upstream --set-upstream-to --unset-upstream)--= unset-upstream[remove upstream configuration]" \ - "($l $m $d $e)--contains=3D[only list branches which contain the spec= ified commit]: :__git_committishs" \ - "($l $m $d $e)--merged=3D[only list branches which are fully containe= d by HEAD]: :__git_committishs" \ - "($l $m $d $e)--no-merged=3D[don't list branches which are fully cont= ained by HEAD]: :__git_committishs" \ + "($l $m $d $e)*--contains=3D[only list branches that contain the spec= ified commit]: :__git_committishs" \ + "($l $m $d $e)*--no-contains=3D[only list branches that don't contain= the specified commit]: :__git_committishs" \ + "($l $m $d $e)--merged=3D[only list branches that are fully contained= by HEAD]: :__git_committishs" \ + "($l $m $d $e)--no-merged=3D[don't list branches that are fully conta= ined by HEAD]: :__git_committishs" \ "($c $l $m $d)--edit-description[edit branch description]" \ $dependent_creation_args \ "($l $c $d $m $e)"{-m,--move}"[rename a branch and the corresponding = reflog]" \ @@ -461,6 +462,7 @@ _git-checkout () { '(-)'{-p,--patch}'[interactively select hunks in diff between given t= ree-ish and working tree]' \ "--ignore-skip-worktree-bits[don't limit pathspecs to sparse entries = only]" \ "--ignore-other-worktrees[don't check if another worktree is holding = the given ref]" \ + '--recurse-submodules=3D-[control recursive updating of submodules]::= checkout:__git_commits' \ '(-q --quiet)--progress[force progress reporting]' \ '(-)--[start file arguments]' \ '*:: :->branch-or-tree-ish-or-file' && ret=3D0 @@ -628,7 +630,7 @@ _git-clone () { '(--single-branch)--no-single-branch[clone history leading up to each= branch]' \ '--shallow-submodules[any cloned submodules will be shallow]' \ '--recursive[initialize all contained submodules]' \ - '--recurse-submodules[initialize submodules in the clone]' \ + '--recurse-submodules=3D-[initialize submodules in the clone]::file:_= _git_files' \ '--separate-git-dir[place .git dir outside worktree]:path to .git dir= :_path_files -/' \ '(-4 --ipv4 -6 --ipv6)'{-4,--ipv4}'[use IPv4 addresses only]' \ '(-4 --ipv4 -6 --ipv6)'{-6,--ipv6}'[use IPv6 addresses only]' \ @@ -724,6 +726,7 @@ _git-commit () { _git-describe () { _arguments -S -s \ '(*)--dirty=3D-[describe HEAD, adding mark if dirty]::mark' \ + '(*)--broken=3D-[describe HEAD, adding mark if broken]::mark' \ '--all[use any ref found in "$GIT_DIR/refs/"]' \ '--tags[use any ref found in "$GIT_DIR/refs/tags"]' \ '(--tags)--contains[find the tag after the commit instead of before]'= \ @@ -732,7 +735,8 @@ _git-describe () { '(--candidates )--exact-match[only output exact matches,= same as --candidates=3D0]' \ '--debug[display information about the searching strategy]' \ '(--abbrev)--long[always show full format, even for exact matches]' \ - '--match=3D[only consider tags matching glob pattern]:pattern' \ + '*--match=3D[only consider tags matching glob pattern]:pattern' \ + "*--exclude=3D[don't consider tags matching glob pattern]:pattern" \ '--always[show uniquely abbreviated commit object as fallback]' \ '--first-parent[follow only the first parent of merge commits]' \ '*: :__git_committishs' @@ -1609,6 +1613,7 @@ _git-stash () { = _arguments -C \ '*::: :->args' \ + '(-m --message)'{-m,--message}'[specify stash description]' \ ${save_arguments//#\(/(* } && ret=3D0 = if [[ -n $state ]]; then @@ -1616,7 +1621,7 @@ _git-stash () { local -a commands = commands=3D( - save:'save your local modifications to a new stash' + {push,save}:'save your local modifications to a new stash' list:'list the stashes that you currently have' show:'show the changes recorded in the stash as a diff' pop:'remove and apply a single stashed state from the stash list' @@ -1638,6 +1643,12 @@ _git-stash () { $save_arguments \ ':: :_guard "([^-]?#|)" message' && ret=3D0 ;; + (push) + _arguments -S \ + $save_arguments \ + '(-m --message)'{-m,--message}'[specify stash description]' \ + ':: :__git_modified_files' && ret=3D0 + ;; (list) local -a log_options revision_options __git_setup_log_options @@ -1956,7 +1967,8 @@ _git-tag () { '(-l --list)'{-l,--list}'[list tags matching pattern]' \ '(--no-column)--column=3D-[display tag listing in columns]::column.= tag option:((always\:"always show in columns" never\:"never show in column= s" auto\:"show in columns if the output is to the terminal" column\:"fill = columns before rows (default)" row\:"fill rows before columns" plain\:"sho= w in one column" dense\:"make unequal size columns to utilize more space" = nodense\:"make equal size columns"))' \ '(--column)--no-column[do not display in columns]' \ - '--contains=3D[only list tags which contain the specified commit]: = :__git_commits' \ + '*--contains=3D[only list tags that contain the specified commit]: = :__git_commits' \ + "*--no-contains=3D[only list tags that don't contain the specified = commit]: :__git_commits" \ '--merged=3D-[print only tags that are merged]:: :__git_commits' \ '--no-merged=3D-[print only tags that are not merged]:: :__git_comm= its' \ '--sort=3D[specify how the tags should be sorted]:mode:((refname\:"= lexicographic order" @@ -4886,7 +4898,8 @@ _git-for-each-ref () { '*--points-at=3D[print only refs which point at the given object]:obj= ect:__git_commits' \ '*--merged=3D[print only refs that are merged]:object:__git_commits' = \ '*--no-merged=3D[print only refs that are not merged]:object:__git_co= mmits' \ - '*--contains=3D[print only refs which contain the commit]:object:__gi= t_commits' \ + '*--contains=3D[print only refs that contain specified commit]:object= :__git_commits' \ + "*--no-contains=3D[print only refs that don't contain specified commi= t]:object:__git_commits" \ '--ignore-case[sorting and filtering are case-insensitive]' \ '(-s --shell -p --perl --python --tcl)'{-s,--shell}'[use string liter= als suitable for sh]' \ '(-s --shell -p --perl --python --tcl)'{-p,--perl}'[use string litera= ls suitable for Perl]' \ @@ -5306,7 +5319,7 @@ _git-check-attr () { {-a,--all}'[list all attributes that are associated with the specifie= d paths]' \ '--stdin[read file names from stdin instead of from command line]' \ '--cached[consider .gitattributes in the index only, ignoring the wor= king tree.]' \ - '-z[make output format machine-parseable and treat input-paths as NUL= -separated with --stdin]' \ + '-z[terminate input and output records by a NUL character]' \ $z_opt \ '(-)--[interpret preceding arguments as attributes and following argu= ments as path names]' \ '*:: :->attribute-or-file' && ret=3D0