From 37569049f092a841047413709cd39b2480211ecc Mon Sep 17 00:00:00 2001 From: Bart Schaefer Date: Sat, 21 Jan 2023 19:21:30 -0800 Subject: 51313: fix "git rerere forget" completion --- ChangeLog | 2 ++ Completion/Unix/Command/_git | 6 +++--- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 2143d9fcb..3ceb2aa73 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,7 @@ 2023-01-21 Bart Schaefer + * 51313: Completion/Unix/Command/_git: fix "git rerere forget" + * 51310: Src/Zle/zle_main.c: zle -F handlers preserve LASTWIDGET 2023-01-16 Peter Stephenson diff --git a/Completion/Unix/Command/_git b/Completion/Unix/Command/_git index 14fa01436..b3ed7b5c8 100644 --- a/Completion/Unix/Command/_git +++ b/Completion/Unix/Command/_git @@ -4259,14 +4259,14 @@ _git-rerere () { _arguments -C -S -s $endopt \ '--rerere-autoupdate[register clean resolutions in index]' \ - ': :->command' && ret=0 + ': :->command' \ + '*: :{ [[ $words[CURRENT-1] = forget ]] && __git_cached_files }' && ret=0 case $state in (command) - # TODO: This isn't optimal, as forget get confused. _values command \ 'clear[reset metadata used by rerere]' \ - 'forget[resets metadata used by rerere for specific conflict]: :__git_cached_files' \ + 'forget[resets metadata used by rerere for specific conflict]' \ 'diff[output diffs for the current state of the resolution]' \ 'status[print paths with conflicts whose merge resolution rerere will record]' \ 'remaining[print paths with conflicts that have not been autoresolved by rerere]' \ -- cgit 1.4.1